:root{--paper:#f7f4ee;--white:#fff;--ink:#17201d;--muted:#6d716b;--forest:#1f4034;--forest2:#294f42;--line:#ddd9d0;--warm:#eee8df;--serif:'Playfair Display',Georgia,serif;--sans:'DM Sans',Arial,sans-serif;--max:1540px}
*{box-sizing:border-box}html{scroll-behavior:smooth;background:var(--paper)}body{margin:0;background:var(--paper);color:var(--ink);font-family:var(--sans);font-size:15px;line-height:1.55;-webkit-font-smoothing:antialiased}img{display:block;width:100%}a{color:inherit;text-decoration:none}button,input,select,textarea{font:inherit;color:inherit}button{cursor:pointer}.ph-shell{width:min(var(--max),calc(100% - 56px));margin-inline:auto}.sr-only{position:absolute!important;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.ph-kicker{margin:0 0 10px;font-size:10px;font-weight:600;letter-spacing:.22em;text-transform:uppercase}.ph-link{font-size:12px;font-weight:600;border-bottom:1px solid #969c97;padding-bottom:3px}.ph-button{display:inline-flex;align-items:center;gap:24px;background:var(--forest);color:#fff;padding:13px 22px;font-size:11px;font-weight:600;letter-spacing:.02em;border:0;min-height:46px}.ph-button:hover,.ph-quote:hover,.ph-add:hover{background:#122d25}

/* Header */
.ph-topbar{height:34px;background:var(--forest);color:#f1f2ed;display:grid;grid-template-columns:repeat(3,1fr) auto;gap:20px;align-items:center;padding:0 max(28px,calc((100vw - var(--max))/2));font-size:9px;letter-spacing:.04em}.ph-topbar span{text-align:center}.ph-topbar a{white-space:nowrap}.ph-header{height:82px;background:rgba(255,255,255,.97);border-bottom:1px solid rgba(42,55,49,.12);display:grid;grid-template-columns:240px 1fr auto;align-items:center;padding:0 max(28px,calc((100vw - var(--max))/2));position:sticky;top:0;z-index:100;backdrop-filter:blur(12px)}.ph-brand{line-height:1;width:max-content}.ph-brand strong{display:block;font-family:var(--serif);font-size:31px;font-weight:500;letter-spacing:.2em}.ph-brand small{display:block;margin-top:6px;font-size:7px;letter-spacing:.31em}.ph-nav{display:flex;justify-content:center;gap:34px}.ph-nav a{font-size:11px}.ph-nav a:hover{text-decoration:underline;text-underline-offset:8px}.ph-actions{display:flex;align-items:center;gap:17px}.ph-action{display:flex;align-items:center;gap:6px;font-size:9px;position:relative}.ph-action svg{width:19px;height:19px;fill:none;stroke:currentColor;stroke-width:1.5}.ph-action b{position:absolute;top:-8px;left:12px;background:var(--forest);color:#fff;border-radius:999px;min-width:16px;height:16px;display:grid;place-items:center;font-size:8px}.ph-quote{height:44px;padding:0 19px;background:var(--forest);color:#fff;display:flex;align-items:center;gap:18px;font-size:10px;font-weight:600}.ph-menu{display:none;background:none;border:0;width:40px}.ph-menu span{display:block;width:22px;height:1px;background:var(--ink);margin:6px auto}

/* Home hero */
.ph-hero{height:min(760px,72vh);min-height:620px;position:relative;overflow:hidden;background:#d7d0c4}.ph-hero>img{width:100%;height:100%;object-fit:cover;object-position:center 55%}.ph-hero-shade{position:absolute;inset:0;background:linear-gradient(90deg,rgba(247,244,238,.86) 0%,rgba(247,244,238,.54) 27%,rgba(247,244,238,.03) 53%,rgba(0,0,0,.04) 100%)}.ph-hero-copy{position:absolute;left:max(9vw,calc((100vw - var(--max))/2 + 120px));top:50%;transform:translateY(-50%);max-width:510px}.ph-hero-copy h1{font:500 clamp(52px,5vw,83px)/.99 var(--serif);letter-spacing:-.04em;margin:0 0 23px}.ph-hero-copy>p:not(.ph-kicker){font-size:14px;line-height:1.7;margin:0 0 25px}.ph-category-strip{display:grid;grid-template-columns:repeat(4,1fr);gap:10px;padding-top:14px}.ph-photo-card{height:330px;position:relative;overflow:hidden;background:#d4cec5}.ph-photo-card img{height:100%;object-fit:cover;transition:transform .7s ease}.ph-photo-card:hover img{transform:scale(1.025)}.ph-photo-shade,.ph-room-grid a>span{position:absolute;inset:0;background:linear-gradient(0deg,rgba(14,20,18,.65),rgba(14,20,18,0) 62%)}.ph-photo-card>div{position:absolute;left:20px;right:18px;bottom:17px;color:#fff}.ph-photo-card h2{font:500 30px/1 var(--serif);margin:0 0 5px}.ph-photo-card p{font-size:9px;letter-spacing:.15em;text-transform:uppercase;margin:0 0 8px}.ph-photo-card b{font-size:10px;font-weight:500}.ph-section{padding-top:72px;padding-bottom:72px}.ph-heading-line{display:flex;justify-content:space-between;align-items:end;gap:30px;margin-bottom:20px}.ph-heading-line h2{font:500 38px/1.1 var(--serif);margin:0}.ph-heading-line>a{font-size:10px;font-weight:600}.ph-intro-copy{max-width:450px;color:var(--muted);font-size:12px}.ph-room-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:10px}.ph-room-grid>a{height:330px;position:relative;overflow:hidden}.ph-room-grid img{height:100%;object-fit:cover}.ph-room-grid>a>div{position:absolute;left:17px;right:17px;bottom:14px;color:#fff}.ph-room-grid h3{font:500 25px/1 var(--serif);margin:0 0 5px}.ph-room-grid p{font-size:9px;letter-spacing:.13em;text-transform:uppercase;margin:0}.ph-values{background:#fbfaf7;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}.ph-values-grid{display:grid;grid-template-columns:repeat(4,1fr)}.ph-values-grid>div{display:grid;grid-template-columns:42px 1fr;grid-template-rows:auto auto;padding:24px 30px;border-right:1px solid var(--line)}.ph-values-grid>div:last-child{border-right:0}.ph-values-grid span{grid-row:1/3;font-size:29px}.ph-values-grid strong{font-family:var(--serif);font-weight:500;font-size:15px}.ph-values-grid small{font-size:9px;line-height:1.5;color:#555b57}.ph-feature-split{display:grid;grid-template-columns:1.05fr .95fr;min-height:390px;background:#fff}.ph-feature-photo{overflow:hidden}.ph-feature-photo img{height:100%;object-fit:cover}.ph-feature-copy{display:flex;flex-direction:column;justify-content:center;padding:60px 8vw}.ph-feature-copy h2{font:500 40px/1 var(--serif);margin:0 0 12px}.ph-feature-copy>p:not(.ph-kicker){font-size:12px;max-width:430px;color:#444b47;margin:0 0 25px}.ph-feature-copy .ph-button{align-self:flex-start}.ph-testimonials{display:grid;grid-template-columns:1.1fr repeat(3,1fr);border-top:1px solid var(--line);padding-top:36px;padding-bottom:42px;gap:0}.ph-testimonials h2{font:500 28px/1.15 var(--serif);margin:0;padding-right:40px}.ph-testimonials blockquote{margin:0;padding:0 32px;border-left:1px solid var(--line);font-family:var(--serif);font-size:13px;line-height:1.6}.ph-testimonials cite{display:block;font:600 8px/1.3 var(--sans);letter-spacing:.12em;text-transform:uppercase;margin-top:12px;color:#666}

/* Collection */
.ph-collection-hero{height:520px;position:relative;overflow:hidden;background:#d0cbc2}.ph-collection-hero>img{height:100%;object-fit:cover}.ph-collection-hero>span{position:absolute;inset:0;background:linear-gradient(90deg,rgba(15,24,20,.72),rgba(15,24,20,.05) 70%)}.ph-collection-hero>div{position:absolute;left:50%;transform:translateX(-50%);bottom:55px;color:#fff}.ph-collection-hero h1{font:500 clamp(54px,6vw,82px)/.95 var(--serif);margin:0 0 15px}.ph-collection-hero p:not(.ph-kicker){max-width:560px;font-size:13px}.ph-tabs{display:flex;overflow:auto;border-bottom:1px solid var(--line)}.ph-tabs a{font-size:10px;padding:16px 22px 13px;border-bottom:2px solid transparent;white-space:nowrap}.ph-tabs a:first-child{padding-left:0}.ph-tabs a.active{border-color:var(--forest);font-weight:600}.ph-product-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:58px 15px}.ph-product-card-wide{grid-column:span 2}.ph-product-image{height:540px;background:#ddd7ce;position:relative;overflow:hidden}.ph-product-card-wide .ph-product-image{height:690px}.ph-product-image img{height:100%;object-fit:cover;transition:transform .65s ease}.ph-product-card:hover .ph-product-image img{transform:scale(1.018)}.ph-product-hover{position:absolute;right:14px;bottom:14px;background:rgba(255,255,255,.94);padding:10px 13px;font-size:9px;opacity:0;transform:translateY(4px);transition:.2s}.ph-product-card:hover .ph-product-hover{opacity:1;transform:none}.ph-product-meta{display:flex;justify-content:space-between;gap:20px;padding-top:12px}.ph-product-meta h3{font:500 27px/1.1 var(--serif);margin:0 0 4px}.ph-product-meta p{margin:0;color:var(--muted);font-size:10px}.ph-product-meta>strong{font-size:10px;font-weight:600;white-space:nowrap}

/* Product page */
.ph-breadcrumb{display:flex;align-items:center;gap:9px;padding-top:18px;padding-bottom:18px;font-size:9px;color:#727772}.ph-breadcrumb b{color:var(--ink)}.ph-product-layout{display:grid;grid-template-columns:minmax(0,1.34fr) minmax(420px,.66fr);gap:24px;align-items:start}.ph-gallery-main{height:690px;position:relative;overflow:hidden;background:#ddd8d0}.ph-gallery-main img{height:100%;object-fit:cover;transition:opacity .2s}.ph-gallery-main img.is-changing{opacity:.35}.ph-gallery-main button{position:absolute;top:50%;transform:translateY(-50%);width:39px;height:39px;border-radius:50%;border:1px solid rgba(0,0,0,.15);background:rgba(255,255,255,.94);font-size:22px}.ph-gallery-main button[data-gallery-prev]{left:13px}.ph-gallery-main button[data-gallery-next]{right:13px}.ph-thumbnails{display:grid;grid-template-columns:repeat(4,1fr);gap:10px;margin-top:10px}.ph-thumbnails button{height:110px;padding:0;border:1px solid transparent;background:none;overflow:hidden}.ph-thumbnails button.active{border-color:var(--forest)}.ph-thumbnails img{height:100%;object-fit:cover}.ph-product-benefits{display:grid;grid-template-columns:repeat(3,1fr);margin-top:28px;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}.ph-product-benefits>div{padding:22px 20px;text-align:center;border-right:1px solid var(--line)}.ph-product-benefits>div:last-child{border-right:0}.ph-product-benefits span{display:block;font-size:24px}.ph-product-benefits strong{display:block;font-family:var(--serif);font-weight:500;font-size:14px;margin:4px 0}.ph-product-benefits small{font-size:9px;color:var(--muted)}.ph-config-panel{background:#fff;border:1px solid #dedbd4;padding:28px 28px 24px;position:sticky;top:98px}.ph-config-panel h1{font:500 47px/1 var(--serif);letter-spacing:-.03em;margin:0 0 11px}.ph-subtitle{font:500 17px/1.4 var(--serif);margin:0 0 7px}.ph-description{font-size:11px;color:#666e69;margin:0 0 18px}.ph-config-state{display:flex;align-items:center;gap:10px;padding:10px 0;border-top:1px solid var(--line);border-bottom:1px solid var(--line);margin-bottom:12px}.status-pill{font-size:8px;text-transform:uppercase;letter-spacing:.1em;background:#efece6;padding:5px 7px}.config-summary{font-size:9px;color:var(--muted)}.qr-fields{display:grid;gap:0}.qr-field{display:grid;grid-template-columns:135px minmax(0,1fr);gap:12px;align-items:center;padding:7px 0}.qr-field>label,.room-reference>label{font-size:10px;font-weight:600}.qr-field select,.qr-field input,.qr-field textarea,.room-reference input{width:100%;min-height:43px;border:1px solid #d7d7d2;background:#fff;border-radius:2px;padding:0 12px;font-size:11px;outline:none}.qr-field textarea{padding-top:10px;min-height:74px}.qr-field select:focus,.qr-field input:focus,.room-reference input:focus{border-color:#6b7f77;box-shadow:0 0 0 2px rgba(31,64,52,.06)}.qr-group,.qr-set{margin:8px 0;padding:9px 0;border-top:1px solid #ece9e2}.qr-group h3,.qr-set h3{font:500 17px/1.2 var(--serif);margin:0 0 6px}.qr-block--dimensions{display:grid;grid-template-columns:1fr 1fr;gap:10px}.qr-block--dimensions .qr-field{display:block;padding:4px 0}.qr-block--dimensions label{display:block;margin-bottom:5px}.qr-choice-grid{display:flex;flex-wrap:wrap;gap:7px}.qr-choice{border:1px solid #d5d6d1;background:#fff;min-height:37px;padding:0 11px;font-size:9px}.qr-choice.selected{border-color:var(--forest);background:#eef2ef}.qr-choice.unavailable{opacity:.5}.qr-message{font-size:9px;line-height:1.45;margin-top:5px;color:#8d392c}.qr-conflict-warning{background:#fff4e9;border:1px solid #e6ccb1;padding:11px 12px;font-size:10px;line-height:1.5;margin-bottom:10px}.loading-state{font-size:10px;color:var(--muted);padding:14px 0}.room-reference{display:grid;grid-template-columns:135px 1fr;gap:12px;align-items:center;padding:10px 0 16px;border-top:1px solid #ece9e2}.room-reference small{font-weight:400;color:var(--muted)}.ph-purchase{display:grid;grid-template-columns:1fr 1.15fr;gap:12px;align-items:center;border-top:1px solid var(--line);padding-top:17px}.ph-price small,.ph-price span{display:block;font-size:8px;color:var(--muted)}.ph-price strong{font:600 33px/1 var(--sans);display:inline-block;margin:3px 5px 2px 0}.ph-price span{display:inline-block}.ph-add{min-height:52px;border:0;background:var(--forest);color:#fff;font-size:12px;font-weight:600;display:flex;align-items:center;justify-content:center;gap:10px}.ph-add:disabled{opacity:.45;cursor:not-allowed}.ph-add svg{width:19px;fill:none;stroke:currentColor;stroke-width:1.5}.ph-lead{display:flex;gap:10px;align-items:center;margin-top:11px;background:#f4f2ed;padding:11px 13px}.ph-lead span{font-size:20px}.ph-lead strong,.ph-lead small{display:block}.ph-lead strong{font-size:9px}.ph-lead small{font-size:8px;color:var(--muted)}.ph-simple-price{border-top:1px solid var(--line);padding:20px 0}.ph-simple-price small{display:block;font-size:9px}.ph-simple-price strong{font-size:32px}.ph-nonconfig-actions{display:flex;gap:18px;align-items:center}.ph-product-tabs{display:flex;gap:35px;margin-top:38px;border-bottom:1px solid var(--line);overflow:auto}.ph-product-tabs span{font-size:10px;padding:0 0 12px;white-space:nowrap}.ph-product-tabs .active{border-bottom:2px solid var(--forest);font-weight:600}.ph-editorial{display:grid;grid-template-columns:.85fr 1.15fr;gap:70px;padding-top:50px;padding-bottom:90px;align-items:center}.ph-editorial h2{font:500 45px/1.05 var(--serif);margin:0 0 18px}.ph-editorial p:not(.ph-kicker){font-size:12px;color:var(--muted);max-width:540px}.ph-editorial ul{padding:0;list-style:none}.ph-editorial li{font-size:10px;border-bottom:1px solid var(--line);padding:9px 0}.ph-editorial img{height:520px;object-fit:cover}.ph-related-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:12px}.ph-related-grid img{height:330px;object-fit:cover}.ph-related-grid h3{font:500 23px/1.1 var(--serif);margin:10px 0 3px}.ph-related-grid p{font-size:9px;color:var(--muted);margin:0}

/* Footer */
.ph-footer{background:#fff;border-top:1px solid var(--line)}.ph-footer-main{min-height:115px;display:grid;grid-template-columns:280px 1fr 250px;align-items:center;gap:40px}.ph-footer-brand{line-height:1}.ph-footer-brand strong{display:block;font:500 30px/1 var(--serif);letter-spacing:.19em}.ph-footer-brand small{font-size:7px;letter-spacing:.3em}.ph-footer nav{display:flex;justify-content:center;gap:28px;font-size:9px}.ph-footer-note{font-family:var(--serif);font-size:12px}.ph-footer-bottom{border-top:1px solid var(--line);display:flex;gap:22px;padding-top:12px;padding-bottom:15px;font-size:8px;color:#727772}.ph-build{position:fixed;left:10px;bottom:10px;z-index:9999;background:#183f36;color:#fff;font:600 8px/1 var(--sans);letter-spacing:.13em;padding:7px 9px}

/* Existing utility/customer pages */
.page-hero,.page-hero-simple,.section,.content-page,.contact-layout,.service-grid,.gallery-grid,.journal-grid,.cart-page,.checkout-page,.order-success{width:min(1200px,calc(100% - 56px));margin-inline:auto}.page-hero,.page-hero-simple,.content-page{padding:70px 0}.page-hero h1,.page-hero-simple h1,.content-page h1,.cart-page>h1,.checkout-page>h1,.order-success>h1{font:500 54px/1 var(--serif)}.section{padding:55px 0}.section h2,.content-page h2{font:500 36px/1.1 var(--serif)}.button{display:inline-flex;align-items:center;justify-content:center;min-height:46px;padding:0 20px;background:var(--forest);color:#fff;border:1px solid var(--forest);font-size:10px}.button-outline{background:#fff;color:var(--ink)}.eyebrow{font-size:9px;letter-spacing:.2em;text-transform:uppercase}.split-feature,.contact-layout,.cart-layout,.checkout-layout{display:grid;grid-template-columns:1fr 1fr;gap:40px}.gallery-grid,.product-grid{display:grid;grid-template-columns:1fr 1fr;gap:22px}.gallery-item img,.product-image img{height:480px;object-fit:cover}.contact-form-wrap,.cart-summary,.checkout-order,.checkout-section,.admin-panel{background:#fff;border:1px solid var(--line);padding:24px}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px}.field{display:grid;gap:6px}.field-full{grid-column:1/3}.field input,.field select,.field textarea{width:100%;border:1px solid #d7d7d2;background:#fff;padding:10px 12px}.cart-page,.checkout-page,.order-success{padding-top:60px;padding-bottom:90px}.cart-line{display:grid;grid-template-columns:110px 1fr auto;gap:18px;padding:18px 0;border-bottom:1px solid var(--line)}.cart-line img{height:90px;object-fit:cover}.summary-row{display:flex;justify-content:space-between;padding:7px 0}.admin-table{width:100%;border-collapse:collapse}.admin-table th,.admin-table td{padding:10px;border-bottom:1px solid var(--line);text-align:left;font-size:10px}.not-found{padding:100px 0}.not-found h1{font:500 50px/1 var(--serif)}

@media(max-width:1100px){.ph-header{grid-template-columns:200px 1fr auto}.ph-nav{gap:18px}.ph-action span{display:none}.ph-product-layout{grid-template-columns:1.1fr .9fr}.ph-gallery-main{height:600px}.ph-config-panel h1{font-size:40px}.qr-field,.room-reference{grid-template-columns:112px 1fr}}
@media(max-width:900px){.ph-shell{width:calc(100% - 32px)}.ph-topbar{grid-template-columns:1fr auto;padding:0 16px}.ph-topbar span:nth-child(2),.ph-topbar span:nth-child(3){display:none}.ph-header{height:70px;padding:0 16px;grid-template-columns:1fr auto auto}.ph-brand strong{font-size:26px}.ph-nav{display:none;position:fixed;inset:104px 0 0;background:#fff;flex-direction:column;justify-content:flex-start;align-items:flex-start;padding:25px 20px;z-index:120}.ph-nav.open{display:flex}.ph-nav a{width:100%;font:500 28px/1.2 var(--serif);padding:10px 0;border-bottom:1px solid var(--line)}.ph-menu{display:block}.ph-action-hide,.ph-quote{display:none}.ph-hero{min-height:560px;height:68vh}.ph-hero-copy{left:30px;right:30px;max-width:440px}.ph-category-strip{grid-template-columns:1fr 1fr}.ph-photo-card{height:360px}.ph-room-grid{grid-template-columns:1fr}.ph-room-grid>a{height:440px}.ph-values-grid{grid-template-columns:1fr 1fr}.ph-feature-split{grid-template-columns:1fr}.ph-feature-photo{height:420px}.ph-testimonials{grid-template-columns:1fr 1fr}.ph-testimonials h2{grid-column:1/3;padding-bottom:22px}.ph-product-grid{grid-template-columns:1fr}.ph-product-card-wide{grid-column:auto}.ph-product-image,.ph-product-card-wide .ph-product-image{height:58vh}.ph-product-layout,.ph-editorial{grid-template-columns:1fr}.ph-config-panel{position:relative;top:auto}.ph-gallery-main{height:64vh}.ph-related-grid{grid-template-columns:1fr}.ph-related-grid img{height:55vh}.ph-footer-main{grid-template-columns:1fr 1fr}.ph-footer nav{display:none}.ph-footer-note{text-align:right}.split-feature,.contact-layout,.cart-layout,.checkout-layout{grid-template-columns:1fr}}
@media(max-width:560px){.ph-shell{width:calc(100% - 24px)}.ph-topbar{height:29px;font-size:8px}.ph-hero{height:73vh;min-height:540px}.ph-hero>img{object-position:62% center}.ph-hero-shade{background:linear-gradient(90deg,rgba(247,244,238,.9),rgba(247,244,238,.42) 72%,rgba(247,244,238,.06))}.ph-hero-copy{left:23px;right:23px}.ph-hero-copy h1{font-size:46px}.ph-category-strip{grid-template-columns:1fr}.ph-photo-card{height:420px}.ph-heading-line{align-items:flex-start;flex-direction:column}.ph-room-grid>a{height:380px}.ph-values-grid{grid-template-columns:1fr}.ph-values-grid>div{border-right:0;border-bottom:1px solid var(--line)}.ph-feature-copy{padding:45px 24px}.ph-testimonials{grid-template-columns:1fr}.ph-testimonials h2{grid-column:auto}.ph-testimonials blockquote{border-left:0;border-top:1px solid var(--line);padding:18px 0}.ph-collection-hero{height:440px}.ph-collection-hero>div{bottom:35px}.ph-product-image,.ph-product-card-wide .ph-product-image{height:58vh}.ph-product-layout{width:100%}.ph-breadcrumb{width:calc(100% - 24px)}.ph-gallery-main{height:55vh}.ph-thumbnails{padding:0 12px}.ph-thumbnails button{height:78px}.ph-product-benefits{grid-template-columns:1fr 1fr;margin-inline:12px}.ph-product-benefits>div{border-bottom:1px solid var(--line)}.ph-config-panel{border-left:0;border-right:0;padding:24px 18px}.ph-config-panel h1{font-size:38px}.qr-field,.room-reference{grid-template-columns:1fr;gap:4px}.qr-block--dimensions{grid-template-columns:1fr 1fr}.ph-purchase{grid-template-columns:1fr}.ph-product-tabs{width:calc(100% - 24px)}.ph-editorial{width:calc(100% - 24px);gap:28px}.ph-editorial h2{font-size:38px}.ph-editorial img{height:46vh}.ph-footer-main{grid-template-columns:1fr;gap:20px;padding-top:30px;padding-bottom:30px}.ph-footer-note{text-align:left}.page-hero,.page-hero-simple,.section,.content-page,.contact-layout,.service-grid,.gallery-grid,.journal-grid,.cart-page,.checkout-page,.order-success{width:calc(100% - 24px)}.gallery-grid,.product-grid,.form-grid{grid-template-columns:1fr}.field-full{grid-column:auto}}

/* Development-only integration inspector */
.dev-mode-banner{display:flex;justify-content:space-between;align-items:center;gap:18px;padding:14px 18px;margin:0 0 26px;border:1px solid #d8d2c8;background:#f6f4ef;font-size:11px}.dev-mode-banner strong{letter-spacing:.14em}.dev-mode-banner.good{background:#edf4eb;border-color:#c9d9c5}.dev-mode-banner.warn{background:#fff7e7;border-color:#ead4a4}.dev-mode-banner.danger{background:#fff0eb;border-color:#e4c8bf}.dev-panel{padding:26px 0;border-top:1px solid #dedad2}.dev-panel h2{font:500 32px/1.1 var(--serif);margin:0 0 8px}.dev-panel h3{font:500 20px/1.2 var(--serif);margin:0}.dev-stat-grid,.dev-diagnostic-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}.dev-stat-grid>div,.dev-diagnostic-grid>div{border:1px solid #dedad2;background:#fff;padding:13px}.dev-stat-grid small,.dev-stat-grid strong,.dev-diagnostic-grid small,.dev-diagnostic-grid strong{display:block}.dev-stat-grid small,.dev-diagnostic-grid small{font-size:9px;color:#77716a;text-transform:uppercase;letter-spacing:.08em;margin-bottom:4px}.dev-heading-row{display:flex;justify-content:space-between;align-items:flex-start;gap:20px;margin-bottom:16px}.dev-heading-row p{margin:4px 0 0;color:#77716a}.dev-status{font-size:9px;letter-spacing:.1em;padding:7px 9px;border:1px solid #d8d2c8}.dev-status.pass{background:#edf4eb;border-color:#c9d9c5}.dev-status.warn{background:#fff7e7;border-color:#ead4a4}.dev-check-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:9px}.dev-check{display:flex;gap:10px;border:1px solid #dedad2;padding:12px;background:#fff}.dev-check b{width:20px;height:20px;display:grid;place-items:center;border-radius:50%;background:#edf4eb}.dev-check.fail b{background:#fff0eb;color:#8d392c}.dev-check strong,.dev-check small{display:block}.dev-check strong{font-size:10px}.dev-check small{font-size:9px;color:#77716a;margin-top:2px}.dev-code,.dev-panel pre{background:#171714;color:#f7f3ec;padding:20px;overflow:auto;max-height:650px;border-radius:3px;font-size:10px;line-height:1.55}.dev-two-col{display:grid;grid-template-columns:1fr 1fr;gap:20px}.dev-line{padding:20px 0;border-top:1px solid #dedad2}.dev-warning{padding:12px 14px;border:1px solid #e7c796;background:#fff7e7;font-size:10px;margin:10px 0}
@media(max-width:800px){.dev-stat-grid,.dev-diagnostic-grid,.dev-check-grid,.dev-two-col{grid-template-columns:1fr}.dev-heading-row,.dev-mode-banner{flex-direction:column}}

/* Quoterite dimension requirements - V6.2 */
.qr-size-requirements{grid-column:1/-1;background:#f6f4ef;border:1px solid #dedad2;margin:2px 0 8px;padding:12px 14px}.qr-size-requirements__heading{display:flex;justify-content:space-between;gap:14px;align-items:baseline;border-bottom:1px solid #e5e1d9;padding-bottom:8px;margin-bottom:8px}.qr-size-requirements__heading strong{font:500 14px/1.1 var(--serif)}.qr-size-requirements__heading small{font-size:8px;color:var(--muted)}.qr-size-requirements__grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px 16px}.qr-size-requirements__item{display:flex;justify-content:space-between;gap:12px;align-items:center;font-size:9px}.qr-size-requirements__item>span{color:var(--muted)}.qr-size-requirements__item b{font-size:10px;font-weight:600}.qr-size-requirements__item em{font-style:normal;font-weight:400;color:var(--muted);margin:0 3px}.qr-number-control{min-width:0}.qr-field-limits{display:flex;justify-content:space-between;gap:8px;margin-top:5px}.qr-field-limits>span{display:flex;gap:5px;align-items:baseline;min-width:0}.qr-field-limits small{font-size:7.5px;color:var(--muted);white-space:nowrap}.qr-field-limits strong{font-size:8px;font-weight:600;white-space:nowrap}.qr-number-control.is-out-of-range input{border-color:#a14c3a!important;background:#fff8f5}.qr-number-control.is-out-of-range .qr-field-limits{color:#8d392c}.qr-field input:invalid:not(:placeholder-shown){border-color:#a14c3a}
@media(max-width:560px){.qr-size-requirements__heading{display:block}.qr-size-requirements__heading small{display:block;margin-top:4px}.qr-size-requirements__grid{grid-template-columns:1fr}.qr-field-limits{flex-direction:column;gap:2px}.qr-field-limits>span{justify-content:space-between}}

/* Customer configuration micro-guidance - V6.3 */
.qr-customer-guide{display:grid;grid-template-columns:1fr 1fr;border-top:1px solid var(--line);border-bottom:1px solid var(--line);margin:18px 0 22px}.qr-customer-guide>div{display:grid;grid-template-columns:26px 1fr;gap:9px;padding:11px 10px 11px 0}.qr-customer-guide>div:nth-child(odd){border-right:1px solid var(--line)}.qr-customer-guide>div:nth-child(even){padding-left:12px}.qr-customer-guide>div:nth-child(-n+2){border-bottom:1px solid var(--line)}.qr-customer-guide>div>span{font:500 11px/1 var(--serif);color:var(--forest);padding-top:2px}.qr-customer-guide p{margin:0}.qr-customer-guide strong,.qr-customer-guide small{display:block}.qr-customer-guide strong{font-size:9px;letter-spacing:.02em}.qr-customer-guide small{font-size:8px;line-height:1.45;color:var(--muted);margin-top:3px}.qr-customer-guide a{color:var(--forest);text-decoration:none;border-bottom:1px solid currentColor}
.qr-field>label{align-self:start;display:flex;gap:3px;align-items:flex-start}.qr-field>label span{min-width:0}.qr-field>label b{font-size:10px;color:#9b4a3b;font-weight:600;line-height:1}.qr-field-meta{grid-column:2;display:flex;flex-wrap:wrap;gap:5px 7px;margin-top:-4px}.qr-field-meta span{font-size:7.5px;line-height:1.2;color:var(--muted);padding:3px 6px;background:#f5f3ee;border-radius:999px}.qr-field-meta span.required{color:#7d382f;background:#fbefec}.qr-field-meta span.optional{color:#65705e;background:#f0f3ed}.qr-field-help{grid-column:2;margin-top:-1px}.qr-field-help summary{list-style:none;display:inline-flex;align-items:center;gap:5px;color:var(--muted);font-size:8px;cursor:pointer;user-select:none}.qr-field-help summary::-webkit-details-marker{display:none}.qr-field-help summary>span{width:14px;height:14px;border:1px solid #cbc6bd;border-radius:50%;display:inline-grid;place-items:center;font:600 8px/1 var(--sans);color:#625f59}.qr-field-help[open] summary{color:var(--ink)}.qr-field-help p{margin:6px 0 0;padding:8px 10px;background:#faf9f6;border-left:2px solid #c8d0c2;font-size:8px;line-height:1.5;color:#66615a}.room-reference{position:relative}.room-reference label{display:flex;justify-content:space-between;gap:8px}.room-reference-help{display:block;color:var(--muted);font-size:8px;line-height:1.45;margin-top:5px}.qr-field select,.qr-field input,.qr-field textarea{transition:border-color .16s ease,box-shadow .16s ease}.qr-field select:focus,.qr-field input:focus,.qr-field textarea:focus{outline:0;border-color:#76806e;box-shadow:0 0 0 2px rgba(78,91,70,.08)}
@media(max-width:560px){.qr-customer-guide{grid-template-columns:1fr}.qr-customer-guide>div,.qr-customer-guide>div:nth-child(even){padding:10px 0;border-right:0;border-bottom:1px solid var(--line)}.qr-customer-guide>div:last-child{border-bottom:0}.qr-field-meta,.qr-field-help{grid-column:1}.qr-field-meta{margin-top:2px}}

/* ============================================================
   GRACE LUXURY STOREFRONT V7
   Editorial / quiet-luxury header, hero and collection discovery
   ============================================================ */
:root{
  --paper:#f6f3ed;
  --white:#fbfaf7;
  --ink:#17201c;
  --muted:#79766f;
  --forest:#132a21;
  --forest2:#1d382d;
  --brass:#a58964;
  --brass-soft:#c5b08e;
  --line:#d8d2c7;
  --warm:#ebe5db;
  --serif:'Bodoni Moda',Didot,'Bodoni 72','Times New Roman',serif;
  --sans:'Inter','Helvetica Neue',Arial,sans-serif;
  --max:1580px;
}
html,body{background:var(--paper)}
body{font-family:var(--sans);font-weight:300;color:var(--ink)}
a,button,input,select,textarea{transition:color .4s ease,background-color .4s ease,border-color .4s ease,opacity .4s ease,transform .4s ease}

/* Quiet top message */
.lux-topbar{
  height:28px;display:flex;align-items:center;justify-content:center;
  background:var(--forest);color:#f7f3ec;font-size:8px;font-weight:500;
  letter-spacing:.22em;text-transform:uppercase
}

/* Editorial header: nav left, logo dead-centre, actions right */
.lux-header{
  height:100px;display:grid;grid-template-columns:minmax(0,1fr) auto minmax(0,1fr);
  align-items:center;padding:0 max(34px,calc((100vw - var(--max))/2));
  background:rgba(246,243,237,.96);border-bottom:1px solid rgba(165,137,100,.18);
  position:sticky;top:0;z-index:120;backdrop-filter:blur(18px);-webkit-backdrop-filter:blur(18px)
}
.lux-header.scrolled{box-shadow:0 10px 38px rgba(25,32,28,.045)}
.lux-nav{display:flex;align-items:center;gap:27px;justify-self:start;min-width:0}
.lux-nav a{
  position:relative;font-size:8.5px;font-weight:500;letter-spacing:.16em;text-transform:uppercase;
  white-space:nowrap;padding:8px 0;color:#2a302c
}
.lux-nav a::after{
  content:"";position:absolute;left:0;bottom:1px;width:100%;height:1px;background:var(--brass);
  transform:scaleX(0);transform-origin:left;transition:transform .4s ease
}
.lux-nav a:hover{color:var(--brass)}
.lux-nav a:hover::after{transform:scaleX(1)}
.lux-brand{grid-column:2;justify-self:center;text-align:center;line-height:1;color:var(--ink);min-width:190px}
.lux-brand strong{display:block;font:400 36px/1 var(--serif);letter-spacing:.22em;margin-left:.22em}
.lux-brand small{display:block;margin-top:8px;font-size:6.8px;font-weight:500;letter-spacing:.42em;margin-left:.42em}
.lux-actions{grid-column:3;display:flex;align-items:center;justify-content:flex-end;gap:16px}
.lux-icon{position:relative;width:36px;height:36px;display:grid;place-items:center;color:var(--ink)}
.lux-icon svg{width:20px;height:20px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
.lux-icon:hover{color:var(--brass);transform:translateY(-1px)}
.lux-icon b{position:absolute;right:-1px;top:0;min-width:15px;height:15px;padding:0 3px;display:grid;place-items:center;background:var(--forest);color:#fff;border-radius:50%;font:500 7px/1 var(--sans)}
.lux-quote{
  height:42px;display:flex;align-items:center;justify-content:center;padding:0 18px;
  border:1px solid var(--forest);background:transparent;color:var(--forest);
  border-radius:0;font-size:8.5px;font-weight:500;letter-spacing:.14em;text-transform:uppercase
}
.lux-quote:hover{background:var(--forest);color:#fff;border-color:var(--forest)}
.lux-menu{display:none;border:0;background:none;width:42px;height:42px;padding:0}
.lux-menu span{display:block;width:23px;height:1px;background:var(--ink);margin:6px auto;transition:.35s ease}

/* Cinematic magazine-cover hero */
.ph-hero{
  width:calc(100% - 44px);height:min(810px,78vh);min-height:640px;margin:22px auto 0;
  position:relative;overflow:hidden;background:#b8b1a7
}
.ph-hero>img{
  width:100%;height:100%;object-fit:cover;object-position:center 55%;
  animation:graceHeroReveal 2s cubic-bezier(.2,.7,.2,1) both
}
@keyframes graceHeroReveal{from{transform:scale(1.05)}to{transform:scale(1)}}
.ph-hero-shade{
  position:absolute;inset:0;
  background:linear-gradient(90deg,rgba(10,18,15,.62) 0%,rgba(10,18,15,.38) 29%,rgba(10,18,15,.11) 58%,rgba(10,18,15,.04) 100%)
}
.ph-hero-copy{
  position:absolute;left:max(7vw,86px);top:50%;transform:translateY(-50%);max-width:710px;color:#f9f6f0;
  padding:44px 0
}
.ph-hero-copy .ph-kicker{
  color:#e9dfcf;margin:0 0 26px;font-size:9px;font-weight:500;letter-spacing:.26em;text-transform:uppercase
}
.ph-hero-copy h1{
  font:400 clamp(68px,6.4vw,112px)/.91 var(--serif);letter-spacing:-.055em;
  margin:0 0 34px;max-width:690px;text-wrap:balance
}
.ph-hero-copy>p:not(.ph-kicker){
  max-width:420px;margin:0 0 36px;color:rgba(255,255,255,.86);font-size:11px;font-weight:300;
  line-height:1.8;letter-spacing:.04em
}
.ph-button{
  display:inline-flex;align-items:center;gap:28px;min-height:48px;padding:0 22px;
  border:1px solid currentColor;border-radius:0;background:transparent;color:var(--forest);
  font-size:8.5px;font-weight:500;letter-spacing:.14em;text-transform:uppercase
}
.ph-hero .ph-button{color:#fff;border-color:rgba(255,255,255,.72)}
.ph-button:hover{background:var(--forest);border-color:var(--forest);color:#fff}
.ph-hero .ph-button:hover{background:#f7f3ec;border-color:#f7f3ec;color:var(--forest)}

/* Make the content beneath the hero feel more editorial, not app-like */
.ph-category-strip{padding-top:30px;gap:14px}
.ph-photo-card{height:390px;background:#d7d0c7}
.ph-photo-card h2{font:400 34px/.98 var(--serif);letter-spacing:-.025em}
.ph-photo-card p{font-size:8px;letter-spacing:.18em}
.ph-photo-card b{font-size:8px;letter-spacing:.1em;text-transform:uppercase}
.ph-photo-card img{transition:transform 1s cubic-bezier(.2,.7,.2,1)}
.ph-photo-card:hover img{transform:scale(1.035)}
.ph-section{padding-top:96px;padding-bottom:96px}
.ph-heading-line h2,.ph-feature-copy h2,.ph-testimonials h2{font-weight:400;letter-spacing:-.035em}
.ph-kicker{font-weight:500;letter-spacing:.22em;color:var(--brass);font-size:8px}
.ph-values{background:#f2eee7;border-color:#d8d1c6}
.ph-values-grid strong{font-family:var(--serif);font-weight:400}

/* Collection hero in the same editorial language */
.lux-collection-hero{height:600px;margin:22px 22px 0;width:calc(100% - 44px)}
.lux-collection-hero>span{background:linear-gradient(90deg,rgba(11,19,16,.67),rgba(11,19,16,.10) 72%)}
.lux-collection-hero>div{bottom:70px}
.lux-collection-hero h1{font:400 clamp(70px,7vw,112px)/.9 var(--serif);letter-spacing:-.055em}
.lux-collection-hero p:not(.ph-kicker){max-width:520px;font-size:11px;line-height:1.75;color:rgba(255,255,255,.84)}

/* Category -> family -> product discovery */
.lux-category-nav{
  display:flex;gap:0;overflow:auto;border-bottom:1px solid var(--line);padding-top:15px;background:var(--paper)
}
.lux-category-nav a{
  position:relative;white-space:nowrap;padding:18px 23px 16px;font-size:8px;font-weight:500;
  letter-spacing:.17em;text-transform:uppercase;color:#5d5b56
}
.lux-category-nav a:first-child{padding-left:0}
.lux-category-nav a::after{content:"";position:absolute;left:23px;right:23px;bottom:-1px;height:1px;background:var(--brass);transform:scaleX(0);transform-origin:left;transition:.4s ease}
.lux-category-nav a:first-child::after{left:0}
.lux-category-nav a:hover,.lux-category-nav a.active{color:var(--ink)}
.lux-category-nav a.active::after,.lux-category-nav a:hover::after{transform:scaleX(1)}

.lux-discovery{padding-top:110px;padding-bottom:120px}
.lux-discovery-heading{max-width:820px;margin-bottom:54px}
.lux-discovery-heading h2,.lux-family-title h2{
  margin:0;font:400 clamp(48px,4.7vw,76px)/.96 var(--serif);letter-spacing:-.055em
}
.lux-discovery-heading>p:last-child{max-width:620px;margin:22px 0 0;color:var(--muted);font-size:11px;line-height:1.8}
.lux-family-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:64px 22px}
.lux-family-card{display:block}
.lux-family-photo{position:relative;height:560px;overflow:hidden;background:#d7d0c7}
.lux-family-photo img{height:100%;object-fit:cover;transition:transform 1.1s cubic-bezier(.2,.7,.2,1)}
.lux-family-card:hover .lux-family-photo img{transform:scale(1.03)}
.lux-family-photo>span{position:absolute;inset:0;background:linear-gradient(0deg,rgba(10,16,13,.25),transparent 45%)}
.lux-family-photo small{
  position:absolute;left:18px;top:18px;padding:7px 9px;background:rgba(246,243,237,.88);backdrop-filter:blur(8px);
  font-size:7px;font-weight:500;letter-spacing:.16em
}
.lux-family-copy{padding:18px 0 0;border-top:1px solid transparent;transition:border-color .4s ease}
.lux-family-card:hover .lux-family-copy{border-color:var(--brass-soft)}
.lux-family-copy>p{margin:0 0 6px;color:var(--brass);font-size:7px;font-weight:500;letter-spacing:.18em;text-transform:uppercase}
.lux-family-copy h3{margin:0;font:400 38px/1 var(--serif);letter-spacing:-.035em}
.lux-family-copy>span{display:block;max-width:560px;margin-top:10px;color:var(--muted);font-size:10px;line-height:1.7}
.lux-family-copy b{display:inline-block;margin-top:18px;font-size:8px;font-weight:500;letter-spacing:.12em;text-transform:uppercase}

.lux-family-products{padding-top:74px;padding-bottom:120px}
.lux-back-link{display:inline-block;margin-bottom:55px;font-size:8px;font-weight:500;letter-spacing:.12em;text-transform:uppercase;color:var(--muted)}
.lux-back-link:hover{color:var(--brass)}
.lux-family-title{display:grid;grid-template-columns:1.2fr .8fr;gap:60px;align-items:end;margin-bottom:46px}
.lux-family-title>p{max-width:520px;margin:0;color:var(--muted);font-size:10px;line-height:1.8}
.lux-family-tabs{display:flex;gap:28px;overflow:auto;border-top:1px solid var(--line);border-bottom:1px solid var(--line);margin-bottom:50px}
.lux-family-tabs a{position:relative;white-space:nowrap;padding:15px 0 13px;font-size:7.5px;font-weight:500;letter-spacing:.14em;text-transform:uppercase;color:var(--muted)}
.lux-family-tabs a::after{content:"";position:absolute;left:0;right:0;bottom:-1px;height:1px;background:var(--brass);transform:scaleX(0);transform-origin:left;transition:.4s ease}
.lux-family-tabs a.active,.lux-family-tabs a:hover{color:var(--ink)}
.lux-family-tabs a.active::after,.lux-family-tabs a:hover::after{transform:scaleX(1)}
.lux-product-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:68px 18px}
.lux-product-card{display:block}
.lux-product-photo{height:520px;position:relative;overflow:hidden;background:#d7d0c7}
.lux-product-photo img{height:100%;object-fit:cover;transition:transform 1s cubic-bezier(.2,.7,.2,1)}
.lux-product-card:hover .lux-product-photo img{transform:scale(1.025)}
.lux-configurable{position:absolute;left:13px;top:13px;background:rgba(246,243,237,.90);padding:7px 9px;font-size:6.8px;font-weight:500;letter-spacing:.14em}
.lux-product-copy{padding-top:15px}
.lux-product-copy h3{margin:0;font:400 27px/1.05 var(--serif);letter-spacing:-.03em}
.lux-product-copy>p{margin:7px 0 16px;color:var(--muted);font-size:9px;line-height:1.6}
.lux-product-copy>div{display:flex;justify-content:space-between;gap:15px;padding-top:12px;border-top:1px solid var(--line);font-size:8px;font-weight:500;letter-spacing:.08em;text-transform:uppercase}
.lux-product-copy b{font-weight:500;color:var(--brass)}

/* Existing product/configurator: make typography fit the new brand voice */
.ph-breadcrumb{font-size:7.5px;letter-spacing:.08em;text-transform:uppercase}
.ph-config-panel{background:#f9f7f2;border-color:#d7d1c7}
.ph-config-panel h1{font-family:var(--serif);font-weight:400;letter-spacing:-.045em}
.ph-subtitle{font-family:var(--serif);font-weight:400}
.ph-add{border-radius:0;background:var(--forest);letter-spacing:.10em;text-transform:uppercase;font-size:8px}
.ph-add:hover{background:#0e211a}
.qr-field select,.qr-field input,.qr-field textarea{border-radius:0;background:#fbfaf7}

/* Keep the footer refined against the warmer page */
.ph-footer{background:#efebe3}

@media(max-width:1320px){
  .lux-header{grid-template-columns:minmax(0,1fr) auto minmax(0,1fr);padding-inline:24px}
  .lux-nav{gap:18px}.lux-nav a{font-size:7.5px;letter-spacing:.12em}
  .lux-brand strong{font-size:32px}.lux-quote{padding:0 13px}.lux-actions{gap:10px}
  .lux-product-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media(max-width:1040px){
  .lux-topbar{height:26px;font-size:7px}
  .lux-header{height:82px;grid-template-columns:60px 1fr auto;padding-inline:16px}
  .lux-brand{grid-column:2;grid-row:1;justify-self:center;min-width:0}.lux-brand strong{font-size:28px}.lux-brand small{font-size:5.8px}
  .lux-menu{display:block;grid-column:1;grid-row:1;justify-self:start}
  .lux-actions{grid-column:3;grid-row:1}.lux-wishlist,.lux-actions .lux-icon:first-child{display:none}.lux-quote{height:38px;font-size:7px}
  .lux-nav{display:none;position:fixed;left:0;right:0;top:108px;background:var(--paper);padding:30px 24px 40px;flex-direction:column;align-items:flex-start;gap:0;border-bottom:1px solid var(--line);box-shadow:0 24px 50px rgba(20,28,24,.08)}
  .lux-nav.open{display:flex}.lux-nav a{width:100%;padding:15px 0;font:400 28px/1 var(--serif);letter-spacing:-.02em;text-transform:none;border-bottom:1px solid var(--line)}
  .ph-hero{width:calc(100% - 24px);height:74vh;min-height:600px;margin-top:12px}.ph-hero-copy{left:52px}.ph-hero-copy h1{font-size:72px}
  .lux-collection-hero{width:calc(100% - 24px);margin:12px 12px 0;height:520px}
  .lux-family-photo{height:470px}
  .lux-family-title{grid-template-columns:1fr;gap:22px}
}
@media(max-width:720px){
  .lux-actions .lux-quote{display:none}.lux-icon{width:34px}.lux-brand strong{font-size:25px}
  .ph-hero{height:76vh;min-height:600px}.ph-hero>img{object-position:62% center}.ph-hero-shade{background:linear-gradient(90deg,rgba(10,18,15,.70),rgba(10,18,15,.30) 75%,rgba(10,18,15,.08))}
  .ph-hero-copy{left:26px;right:26px;max-width:none}.ph-hero-copy h1{font-size:clamp(52px,14vw,72px);line-height:.93}.ph-hero-copy>p:not(.ph-kicker){max-width:330px}
  .lux-discovery{padding-top:72px;padding-bottom:80px}.lux-family-grid{grid-template-columns:1fr;gap:54px}.lux-family-photo{height:62vh;min-height:430px}
  .lux-discovery-heading h2,.lux-family-title h2{font-size:50px}
  .lux-product-grid{grid-template-columns:1fr}.lux-product-photo{height:62vh;min-height:430px}
  .lux-family-products{padding-top:48px}.lux-back-link{margin-bottom:38px}
  .lux-category-nav a{padding-inline:14px}.lux-category-nav a:first-child{padding-left:0}.lux-category-nav a::after{left:14px;right:14px}.lux-category-nav a:first-child::after{left:0}
  .lux-collection-hero h1{font-size:64px}
}
@media(max-width:480px){
  .lux-topbar{height:24px}.lux-header{height:76px}.lux-nav{top:100px}
  .lux-brand strong{font-size:22px}.lux-brand small{letter-spacing:.3em;margin-left:.3em}
  .ph-hero{width:calc(100% - 16px);margin-top:8px;min-height:570px}.ph-hero-copy{left:22px;right:20px}.ph-hero-copy .ph-kicker{font-size:7px;margin-bottom:20px}.ph-hero-copy h1{font-size:49px;margin-bottom:26px}.ph-hero-copy>p:not(.ph-kicker){font-size:9px;margin-bottom:28px}.ph-hero .ph-button{min-height:44px;font-size:7.5px}
  .lux-collection-hero{width:calc(100% - 16px);margin:8px 8px 0;height:450px}.lux-collection-hero>div{bottom:36px}.lux-collection-hero h1{font-size:54px}
  .lux-family-photo,.lux-product-photo{height:55vh;min-height:380px}.lux-family-copy h3{font-size:32px}
}


/* ============================================================
   GRACE LUXURY STOREFRONT V8
   Structural refinement: alignment, legibility and commerce UX
   ============================================================ */
:root{--max:1400px;--container-gutter:24px}
.ph-shell,.lux-container{width:min(var(--max),calc(100% - (var(--container-gutter) * 2)));margin-inline:auto}

/* Header alignment and legibility */
.lux-header{height:104px;padding:0;background:rgba(246,243,237,.975)}
.lux-header-inner{height:100%;display:grid;grid-template-columns:minmax(0,1fr) auto minmax(0,1fr);align-items:center;position:relative}
.lux-nav{grid-column:1;justify-self:start;gap:25px}
.lux-nav a{font-size:12px;letter-spacing:.13em;line-height:1.2;padding:10px 0}
.lux-brand{grid-column:2;grid-row:1}
.lux-brand strong{font-size:38px}
.lux-brand small{font-size:7px}
.lux-menu{grid-column:1;grid-row:1}
.lux-actions{grid-column:3;grid-row:1;gap:13px}
.lux-icon{width:40px;height:40px}
.lux-icon svg{width:21px;height:21px;stroke-width:1.9}
.lux-quote{height:46px;padding:0 23px;border-width:1.5px;font-size:10px;letter-spacing:.13em}

/* Homepage hero now shares the same horizontal rhythm as the store */
.ph-hero{width:min(var(--max),calc(100% - (var(--container-gutter) * 2)));margin:24px auto 0;min-height:650px;height:min(820px,76vh)}
.ph-hero-copy{left:50%;width:min(var(--max),calc(100% - 48px));max-width:none;transform:translate(-50%,-50%);padding-left:42px}
.ph-hero-copy h1{max-width:720px}
.ph-hero-copy>p:not(.ph-kicker){max-width:470px}

/* Collection hero: cinematic, tall, sharp, centered editorial copy */
.lux-collection-hero{width:min(var(--max),calc(100% - (var(--container-gutter) * 2)));height:clamp(500px,48vh,680px);min-height:500px;margin:24px auto 0}
.lux-collection-hero>img{filter:none!important;transform:scale(1.05);animation:graceHeroReveal 2s cubic-bezier(.2,.7,.2,1) both;object-position:center}
.lux-collection-hero>span{background:linear-gradient(180deg,rgba(11,19,16,.10),rgba(11,19,16,.46))}
.lux-collection-hero>.lux-collection-copy{position:absolute;inset:0;left:auto;bottom:auto;transform:none;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;padding:64px 32px;color:#fff}
.lux-hero-breadcrumb{display:flex;align-items:center;justify-content:center;gap:8px;margin:0 0 22px;font-size:10px;font-weight:500;letter-spacing:.17em;text-transform:uppercase;color:rgba(255,255,255,.74)}
.lux-hero-breadcrumb a:hover{color:#fff}
.lux-hero-breadcrumb b{font-weight:500;color:#fff}
.lux-collection-hero .ph-kicker{margin-bottom:18px;color:#e9dfcf;font-size:9px;letter-spacing:.25em}
.lux-collection-hero h1{margin:0;font:400 clamp(66px,7vw,108px)/.92 var(--serif);letter-spacing:-.05em;color:#fff}
.lux-collection-hero .lux-hero-sub{max-width:650px;margin:22px auto 0;font-size:13px;line-height:1.75;letter-spacing:.02em;color:rgba(255,255,255,.88)}

/* Category and family navigation */
.lux-category-nav{padding-top:18px}
.lux-category-nav a{padding:20px 22px 17px;font-size:10.5px;letter-spacing:.14em}
.lux-family-tabs{gap:32px;margin-bottom:32px}
.lux-family-tabs a{font-size:10px;padding:17px 0 15px}

/* Discovery / product sections are always centered and full-width inside the global container */
.lux-discovery,.lux-family-products{width:min(var(--max),calc(100% - (var(--container-gutter) * 2)));margin-inline:auto}
.lux-discovery{padding-top:90px}
.lux-family-products{padding-top:64px}
.lux-family-title{margin-bottom:34px}
.lux-family-title>p{font-size:12px;line-height:1.75}

/* Functional filter / sort toolbar */
.lux-product-toolbar{display:flex;align-items:flex-end;justify-content:space-between;gap:32px;padding:18px 0 20px;margin:0 0 38px;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}
.lux-product-count{font-size:11px;font-weight:500;letter-spacing:.14em;text-transform:uppercase;color:var(--muted)}
.lux-toolbar-controls{display:flex;align-items:flex-end;gap:34px}
.lux-toolbar-field{display:grid;grid-template-columns:auto minmax(155px,220px);align-items:center;gap:14px}
.lux-toolbar-field>span{font-size:11px;font-weight:500;letter-spacing:.11em;text-transform:uppercase;color:#4f514d}
.lux-toolbar-field select{appearance:none;-webkit-appearance:none;border:0;border-bottom:1px solid #8d8a83;background:transparent url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='10' height='6' viewBox='0 0 10 6'%3E%3Cpath d='M1 1l4 4 4-4' fill='none' stroke='%2317201c' stroke-width='1'/%3E%3C/svg%3E") no-repeat right 4px center;padding:10px 26px 10px 2px;font-size:12px;font-weight:400;min-width:170px;outline:none}
.lux-toolbar-field select:focus{border-bottom-color:var(--brass)}

/* Product grid consistency */
.lux-product-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:64px 26px;width:100%}
.lux-product-card[hidden]{display:none!important}
.lux-product-photo{height:auto;aspect-ratio:4/5;background:#ddd6cc}
.lux-product-photo img{width:100%;height:100%;object-fit:cover}
.lux-product-copy{padding:22px 2px 0}
.lux-product-copy h3{font:400 30px/1.08 var(--serif);letter-spacing:-.028em}
.lux-product-copy>p{margin:9px 0 19px;font-size:11px;line-height:1.65}
.lux-product-copy>div{padding-top:14px;font-size:9.5px}
.lux-view-link{position:relative;color:var(--ink)!important}
.lux-view-link::after{content:"";position:absolute;left:0;bottom:-3px;width:100%;height:1px;background:var(--brass);transform:scaleX(.25);transform-origin:left;transition:transform .4s ease}
.lux-product-card:hover .lux-view-link{color:var(--brass)!important}
.lux-product-card:hover .lux-view-link::after{transform:scaleX(1)}
.lux-configurable{font-size:8px;padding:8px 10px}

/* Footer gets genuine structural weight */
.lux-footer{margin-top:110px;border-top:1px solid var(--line);background:#eee9e1}
.lux-footer-main{display:grid;grid-template-columns:.9fr .9fr 1.2fr;gap:72px;padding-top:72px;padding-bottom:64px}
.lux-footer-brand{line-height:1;margin-bottom:22px}
.lux-footer-brand strong{display:block;font:400 36px/1 var(--serif);letter-spacing:.2em;margin-left:.2em}
.lux-footer-brand small{display:block;margin-top:8px;font-size:7px;font-weight:500;letter-spacing:.37em;margin-left:.37em}
.lux-footer-intro p{max-width:350px;margin:0;color:#64645f;font-size:12px;line-height:1.8}
.lux-footer-links{display:grid;grid-template-columns:repeat(2,1fr);gap:45px}
.lux-footer-links>div{display:flex;flex-direction:column;align-items:flex-start;gap:10px}
.lux-footer-links small,.lux-newsletter-wrap>small{margin-bottom:8px;font-size:9px;font-weight:600;letter-spacing:.17em;text-transform:uppercase;color:var(--brass)}
.lux-footer-links a{position:relative;font-size:12px;padding:3px 0}
.lux-footer-links a:hover{color:var(--brass)}
.lux-newsletter-wrap h3{max-width:480px;margin:0;font:400 30px/1.15 var(--serif);letter-spacing:-.025em}
.lux-newsletter-wrap>p{max-width:460px;margin:12px 0 22px;color:#676761;font-size:11px;line-height:1.7}
.lux-newsletter{display:flex;align-items:stretch;max-width:520px;border-bottom:1px solid #918e86}
.lux-newsletter input{flex:1;min-width:0;border:0;background:transparent;padding:13px 3px;font-size:12px;outline:none}
.lux-newsletter input::placeholder{color:#7e7b75}
.lux-newsletter button{border:0;background:transparent;padding:0 4px 0 22px;font-size:9px;font-weight:600;letter-spacing:.13em;text-transform:uppercase}
.lux-newsletter button:hover{color:var(--brass)}
.lux-footer-bottom{display:flex;align-items:center;justify-content:space-between;gap:30px;padding-top:20px;padding-bottom:24px;border-top:1px solid rgba(71,70,65,.14);font-size:9px;letter-spacing:.08em;text-transform:uppercase;color:#6a6964}
.lux-footer-bottom>div{display:flex;gap:28px}

@media(max-width:1280px){
  .lux-nav{gap:17px}.lux-nav a{font-size:10.5px;letter-spacing:.1em}
  .lux-actions{gap:8px}.lux-quote{padding-inline:16px}
  .lux-product-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media(max-width:1040px){
  :root{--container-gutter:20px}
  .lux-header{height:88px}.lux-header-inner{grid-template-columns:60px 1fr auto}
  .lux-brand{grid-column:2}.lux-brand strong{font-size:30px}
  .lux-actions{grid-column:3}.lux-menu{display:block}
  .lux-nav{top:116px}
  .ph-hero-copy{padding-left:28px}
  .lux-product-toolbar{align-items:stretch;flex-direction:column}
  .lux-toolbar-controls{justify-content:space-between}
  .lux-footer-main{grid-template-columns:1fr 1fr;gap:50px}.lux-newsletter-wrap{grid-column:1/-1;max-width:650px}
}
@media(max-width:720px){
  :root{--container-gutter:16px}
  .lux-collection-hero{min-height:460px;height:52vh}.lux-collection-hero h1{font-size:58px}.lux-collection-hero .lux-hero-sub{font-size:11px}
  .lux-hero-breadcrumb{font-size:8px}
  .lux-toolbar-controls{display:grid;grid-template-columns:1fr;gap:14px}.lux-toolbar-field{grid-template-columns:90px 1fr}.lux-toolbar-field select{width:100%}
  .lux-product-grid{grid-template-columns:1fr;gap:52px}.lux-product-copy h3{font-size:28px}
  .lux-footer{margin-top:75px}.lux-footer-main{grid-template-columns:1fr;gap:45px;padding-top:52px}.lux-newsletter-wrap{grid-column:auto}.lux-footer-links{gap:30px}.lux-footer-bottom{align-items:flex-start;flex-direction:column;gap:14px}
}
@media(max-width:480px){
  .lux-header{height:80px}.lux-nav{top:108px}.lux-brand strong{font-size:25px}
  .lux-actions .lux-quote{display:none}
  .lux-collection-hero{min-height:430px}.lux-collection-hero>.lux-collection-copy{padding-inline:20px}.lux-collection-hero h1{font-size:50px}
  .lux-category-nav a{font-size:9px}.lux-family-tabs a{font-size:9px}
  .lux-product-toolbar{margin-bottom:30px}.lux-toolbar-field{grid-template-columns:1fr;gap:3px}.lux-toolbar-field select{min-width:0}
  .lux-footer-links{grid-template-columns:1fr 1fr}.lux-newsletter-wrap h3{font-size:27px}
}


/* ============================================================
   V8.1 CSS HARDENING — fixed parser-safe overrides
   ============================================================ */
:root{--max:1400px;--container-gutter:24px}
body{overflow-x:hidden}
main{display:block;width:100%}
.lux-container,.ph-shell{width:min(var(--max),calc(100% - (var(--container-gutter) * 2)));margin-left:auto;margin-right:auto}
.lux-header{width:100%}
.lux-header-inner{max-width:var(--max)}
.lux-category-nav,.lux-discovery,.lux-family-products{max-width:var(--max)}
.lux-family-grid{width:100%}
.lux-product-grid{margin:0}
@media(max-width:720px){:root{--container-gutter:16px}}

/* Luxury V8.1 homepage category photography */
.lux-home-collections{padding-top:92px;padding-bottom:28px}
.lux-home-collections-head{display:grid;grid-template-columns:minmax(0,1fr) minmax(320px,520px);gap:72px;align-items:end;margin-bottom:34px}
.lux-home-collections-head h2{margin:0;font:400 clamp(44px,4vw,66px)/.98 var(--serif);letter-spacing:-.045em}
.lux-home-collections-head>p{margin:0 0 5px;color:var(--muted);font-size:12px;line-height:1.85}
.lux-home-category-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:48px 22px}
.lux-home-category-card{display:block;min-width:0}
.lux-home-category-photo{position:relative;overflow:hidden;aspect-ratio:4/3;background:#d8d0c4}
.lux-home-category-photo img{width:100%;height:100%;object-fit:cover;transition:transform .9s cubic-bezier(.2,.7,.2,1)}
.lux-home-category-photo span{position:absolute;inset:0;background:linear-gradient(180deg,rgba(12,20,17,0),rgba(12,20,17,.08))}
.lux-home-category-card:hover .lux-home-category-photo img{transform:scale(1.025)}
.lux-home-category-copy{padding:20px 2px 0}
.lux-home-category-copy small{display:block;margin-bottom:7px;color:var(--brass);font-size:8px;font-weight:600;letter-spacing:.18em;text-transform:uppercase}
.lux-home-category-copy h3{margin:0;font:400 31px/1.02 var(--serif);letter-spacing:-.035em}
.lux-home-category-copy p{min-height:42px;margin:9px 0 15px;color:var(--muted);font-size:10.5px;line-height:1.65}
.lux-home-category-copy b{position:relative;font-size:8.5px;font-weight:600;letter-spacing:.13em;text-transform:uppercase}
.lux-home-category-copy b::after{content:"";position:absolute;left:0;bottom:-5px;width:38px;height:1px;background:var(--brass);transition:width .4s ease}
.lux-home-category-card:hover b{color:var(--brass)}
.lux-home-category-card:hover b::after{width:100%}
@media(max-width:980px){.lux-home-collections-head{grid-template-columns:1fr;gap:18px}.lux-home-category-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:560px){.lux-home-collections{padding-top:64px}.lux-home-category-grid{grid-template-columns:1fr;gap:40px}.lux-home-category-copy p{min-height:0}}

/* ============================================================
   GRACE STOREFRONT V9.1 — DESKTOP LAYOUT REPAIR
   Fixes header grid nesting, hero copy anchoring and responsive overlap.
   ============================================================ */

/* The header itself must NOT be a 3-column grid: .lux-header-inner owns the grid. */
.lux-header{
  display:block !important;
  width:100%;
  padding:0 !important;
}
.lux-header-inner{
  width:min(var(--max),calc(100% - (var(--container-gutter) * 2))) !important;
  max-width:var(--max);
  height:100%;
  margin-inline:auto;
  display:grid !important;
  grid-template-columns:minmax(0,1fr) 250px minmax(0,1fr) !important;
  align-items:center;
  position:relative;
  column-gap:18px;
}
.lux-nav{
  grid-column:1 !important;
  grid-row:1 !important;
  justify-self:start;
  display:flex;
  align-items:center;
  gap:clamp(13px,1.15vw,21px);
  min-width:0;
  z-index:2;
}
.lux-nav a{
  font-size:11px;
  letter-spacing:.115em;
}
.lux-brand{
  grid-column:2 !important;
  grid-row:1 !important;
  justify-self:center !important;
  position:static !important;
  left:auto !important;
  top:auto !important;
  transform:none !important;
  width:auto;
  min-width:0;
  z-index:3;
}
.lux-brand strong{font-size:36px;white-space:nowrap}
.lux-brand small{white-space:nowrap}
.lux-actions{
  grid-column:3 !important;
  grid-row:1 !important;
  justify-self:end;
  justify-content:flex-end;
  min-width:0;
  z-index:2;
}
.lux-quote{white-space:nowrap}

/* Collection / family hero copy must cover the full image, not shrink-wrap to the right. */
.lux-collection-hero>.lux-collection-copy{
  position:absolute !important;
  inset:0 !important;
  left:0 !important;
  right:0 !important;
  top:0 !important;
  bottom:0 !important;
  width:100% !important;
  max-width:none !important;
  transform:none !important;
  display:flex !important;
  flex-direction:column;
  align-items:center;
  justify-content:center;
  text-align:center;
  padding:72px 48px;
}
.lux-collection-hero h1{
  width:100%;
  max-width:1080px;
  margin-inline:auto;
  font-size:clamp(64px,6vw,96px);
  line-height:.94;
  text-wrap:balance;
}
.lux-collection-hero .lux-hero-sub{max-width:720px;font-size:13px}
.lux-hero-breadcrumb{flex-wrap:wrap}

/* Keep family/category imagery crisp; no browser blur/filtering. */
.lux-collection-hero>img{
  width:100%;
  height:100%;
  object-fit:cover;
  filter:none !important;
  image-rendering:auto;
}

@media(max-width:1280px) and (min-width:1121px){
  .lux-header-inner{grid-template-columns:minmax(0,1fr) 215px minmax(0,1fr) !important;column-gap:12px}
  .lux-nav{gap:12px}
  .lux-nav a{font-size:9.8px;letter-spacing:.085em}
  .lux-brand strong{font-size:31px}
  .lux-actions{gap:7px}
  .lux-icon{width:34px;height:34px}
  .lux-quote{padding-inline:14px;font-size:8.5px}
}

/* Switch to the mobile/tablet menu before desktop regions can collide. */
@media(max-width:1120px){
  .lux-header{height:82px !important}
  .lux-header-inner{
    grid-template-columns:52px minmax(0,1fr) auto !important;
    column-gap:10px;
  }
  .lux-menu{display:block !important;grid-column:1 !important;grid-row:1 !important;justify-self:start}
  .lux-brand{grid-column:2 !important;grid-row:1 !important}
  .lux-brand strong{font-size:28px}
  .lux-actions{grid-column:3 !important;grid-row:1 !important}
  .lux-wishlist,.lux-actions .lux-icon:first-child{display:none}
  .lux-nav{
    display:none;
    position:fixed;
    left:0;right:0;
    top:108px;
    background:var(--paper);
    padding:30px 24px 40px;
    flex-direction:column;
    align-items:flex-start;
    gap:0;
    border-bottom:1px solid var(--line);
    box-shadow:0 24px 50px rgba(20,28,24,.08);
    z-index:130;
  }
  .lux-nav.open{display:flex}
  .lux-nav a{
    width:100%;padding:15px 0;
    font:400 28px/1 var(--serif);
    letter-spacing:-.02em;text-transform:none;
    border-bottom:1px solid var(--line)
  }
}

@media(max-width:720px){
  .lux-collection-hero>.lux-collection-copy{padding:52px 22px}
  .lux-collection-hero h1{font-size:clamp(48px,14vw,62px);max-width:620px}
  .lux-collection-hero .lux-hero-sub{font-size:11px;max-width:520px}
}

/* =========================================================
   LUXURY CART V9.2 — editorial, instant-editable bag
   ========================================================= */
.lux-cart-page{padding:78px 0 118px;background:var(--paper)}
.lux-cart-heading{display:flex;align-items:end;justify-content:space-between;gap:48px;padding-bottom:34px;border-bottom:1px solid var(--line)}
.lux-cart-heading>div:first-child{max-width:760px}.lux-cart-kicker{margin:0 0 12px;color:var(--brass,#a67c45);font-size:8px;font-weight:500;letter-spacing:.22em;text-transform:uppercase}
.lux-cart-heading h1{margin:0;font:400 clamp(58px,6vw,92px)/.92 var(--serif);letter-spacing:-.055em}.lux-cart-intro{max-width:620px;margin:20px 0 0;color:var(--muted);font-size:11px;line-height:1.8;font-weight:300}
.lux-cart-count{display:grid;place-items:center;width:92px;height:92px;border:1px solid var(--line);border-radius:50%;flex:0 0 auto}.lux-cart-count span{font:400 30px/1 var(--serif)}.lux-cart-count small{margin-top:-10px;color:var(--muted);font-size:7px;letter-spacing:.16em;text-transform:uppercase}
.lux-cart-steps{display:grid;grid-template-columns:auto minmax(30px,1fr) auto minmax(30px,1fr) auto;align-items:center;gap:15px;max-width:680px;margin:26px 0 70px;color:#9a9a93}.lux-cart-steps span{display:flex;align-items:center;gap:9px;font-size:8px;letter-spacing:.13em;text-transform:uppercase;white-space:nowrap}.lux-cart-steps span b{font:400 16px/1 var(--serif);letter-spacing:0}.lux-cart-steps span.active{color:var(--forest)}.lux-cart-steps i{height:1px;background:var(--line);display:block}
.lux-cart-layout{display:grid;grid-template-columns:minmax(0,1.42fr) minmax(330px,.58fr);gap:84px;align-items:start}.lux-cart-lines{min-width:0}
.lux-cart-line{display:grid;grid-template-columns:210px minmax(0,1fr);gap:30px;padding:0 0 38px;margin-bottom:38px;border-bottom:1px solid var(--line);transition:opacity .25s ease,transform .25s ease}.lux-cart-line.is-saving{opacity:.75}.lux-cart-line.is-removing{opacity:0;transform:translateX(-10px)}
.lux-cart-line-image{height:244px;overflow:hidden;background:#e7e1d8}.lux-cart-line-image img{height:100%;object-fit:cover;transition:transform .7s cubic-bezier(.2,.7,.2,1)}.lux-cart-line-image:hover img{transform:scale(1.025)}
.lux-cart-line-main{min-width:0}.lux-cart-line-head{display:flex;align-items:start;justify-content:space-between;gap:24px}.lux-cart-line-head h2{margin:0;font:400 34px/1.03 var(--serif);letter-spacing:-.035em}.lux-cart-line-total{padding-top:2px;font:400 23px/1 var(--serif);white-space:nowrap}
.lux-cart-reference{display:block;margin-top:24px}.lux-cart-reference>span{display:block;margin-bottom:7px;color:var(--muted);font-size:7.5px;letter-spacing:.14em;text-transform:uppercase}.lux-cart-reference>div{display:flex;align-items:center;gap:12px;max-width:520px;border-bottom:1px solid #bbb5aa;transition:border-color .35s ease}.lux-cart-reference>div:focus-within{border-color:var(--forest)}.lux-cart-reference input{width:100%;height:38px;padding:0;border:0;outline:0;background:transparent;font:400 14px/1 var(--serif)}.lux-cart-save-state{flex:0 0 auto;color:#8b8c85;font-size:7px;letter-spacing:.12em;text-transform:uppercase;transition:color .2s}.lux-cart-save-state.saving{color:var(--brass,#a67c45)}
.lux-cart-specs{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0 28px;margin:25px 0 0;padding:17px 0;border-top:1px solid rgba(221,217,208,.8);border-bottom:1px solid rgba(221,217,208,.8)}.lux-cart-specs>div{display:grid;grid-template-columns:minmax(90px,.75fr) minmax(0,1.25fr);gap:12px;padding:5px 0}.lux-cart-specs dt{color:var(--muted);font-size:8px;letter-spacing:.08em;text-transform:uppercase}.lux-cart-specs dd{margin:0;font-size:9px;font-weight:500;text-align:right;overflow-wrap:anywhere}
.lux-cart-line-actions{display:flex;align-items:end;justify-content:space-between;gap:22px;margin-top:21px}.lux-cart-qty-wrap>span{display:block;margin-bottom:7px;color:var(--muted);font-size:7px;letter-spacing:.13em;text-transform:uppercase}.lux-cart-stepper{display:grid;grid-template-columns:34px 46px 34px;height:38px;border:1px solid #cfc9be}.lux-cart-stepper button,.lux-cart-stepper input{border:0;background:transparent;text-align:center}.lux-cart-stepper button{font-size:17px;transition:background .25s ease,color .25s ease}.lux-cart-stepper button:hover{background:var(--forest);color:#fff}.lux-cart-stepper input{width:46px;appearance:textfield;-moz-appearance:textfield;font-size:10px;border-left:1px solid #ddd7cd;border-right:1px solid #ddd7cd}.lux-cart-stepper input::-webkit-inner-spin-button,.lux-cart-stepper input::-webkit-outer-spin-button{-webkit-appearance:none;margin:0}.lux-cart-actions-right{display:flex;align-items:center;gap:22px}.lux-cart-actions-right a,.lux-cart-actions-right button{position:relative;border:0;background:none;padding:0 0 4px;color:#62655f;font-size:8px;font-weight:500;letter-spacing:.11em;text-transform:uppercase}.lux-cart-actions-right a::after,.lux-cart-actions-right button::after{content:"";position:absolute;left:0;bottom:0;width:100%;height:1px;background:var(--brass,#a67c45);transform:scaleX(0);transform-origin:left;transition:transform .35s ease}.lux-cart-actions-right a:hover,.lux-cart-actions-right button:hover{color:var(--ink)}.lux-cart-actions-right a:hover::after,.lux-cart-actions-right button:hover::after{transform:scaleX(1)}
.lux-cart-unit{margin-top:16px;color:var(--muted);font-size:8px;letter-spacing:.04em}.lux-cart-unit strong{color:var(--ink);font-weight:500}.lux-cart-unit span{font-size:7px}
.lux-cart-continue{display:flex;justify-content:space-between;align-items:flex-start;gap:30px;padding-top:4px}.lux-cart-continue>a{font-size:8px;font-weight:500;letter-spacing:.12em;text-transform:uppercase}.lux-cart-continue>a span{margin-right:7px}.lux-cart-continue small{max-width:410px;color:var(--muted);font-size:8px;line-height:1.65;text-align:right}
.lux-cart-summary{position:sticky;top:120px;padding:34px 34px 30px;background:#efebe3;border-top:1px solid #d7d0c5}.lux-cart-summary h2{margin:0 0 31px;font:400 38px/1 var(--serif);letter-spacing:-.04em}.lux-cart-summary-rows{border-top:1px solid #d5cfc4;border-bottom:1px solid #d5cfc4;padding:15px 0}.lux-cart-summary-rows>div{display:flex;justify-content:space-between;gap:18px;padding:8px 0;font-size:9px}.lux-cart-summary-rows strong{font-weight:500}.lux-cart-summary-rows em{font-style:normal;color:var(--muted);text-align:right}.lux-cart-grand-total{display:flex;align-items:end;justify-content:space-between;gap:20px;padding:25px 0}.lux-cart-grand-total>span{font:400 17px/1 var(--serif)}.lux-cart-grand-total>span small{display:block;margin-top:6px;color:var(--muted);font:400 7px/1 var(--sans);letter-spacing:.13em;text-transform:uppercase}.lux-cart-grand-total>strong{font:400 31px/1 var(--serif)}
.lux-cart-checkout{display:flex;align-items:center;justify-content:space-between;min-height:52px;padding:0 18px;background:var(--forest);color:#fff;border:1px solid var(--forest);font-size:8px;font-weight:500;letter-spacing:.14em;text-transform:uppercase;transition:background .4s ease,color .4s ease,border-color .4s ease}.lux-cart-checkout:hover{background:transparent;color:var(--forest)}.lux-cart-fineprint{margin:12px 0 0;color:var(--muted);font-size:7.5px;line-height:1.6}
.lux-cart-assurance{margin-top:28px;border-top:1px solid #d5cfc4}.lux-cart-assurance>div{display:grid;grid-template-columns:26px 1fr;gap:11px;padding:14px 0;border-bottom:1px solid #d5cfc4}.lux-cart-assurance>div>span{font-size:17px;color:var(--brass,#a67c45)}.lux-cart-assurance p{margin:0}.lux-cart-assurance strong,.lux-cart-assurance small{display:block}.lux-cart-assurance strong{font:400 13px/1.25 var(--serif)}.lux-cart-assurance small{margin-top:4px;color:var(--muted);font-size:7.5px;line-height:1.55}.lux-cart-assurance a{border-bottom:1px solid #aaa398}
.lux-cart-toast{position:fixed;right:28px;bottom:28px;z-index:300;max-width:320px;padding:13px 17px;background:var(--forest);color:#fff;font-size:9px;letter-spacing:.04em;box-shadow:0 16px 44px rgba(15,29,23,.18);opacity:0;transform:translateY(10px);pointer-events:none;transition:.3s ease}.lux-cart-toast.show{opacity:1;transform:none}.lux-cart-toast[data-type="error"]{background:#6b2c26}
.lux-cart-empty{max-width:820px;margin:90px auto 20px;padding:70px 20px;text-align:center;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}.lux-cart-empty h2{margin:0;font:400 clamp(46px,5vw,74px)/.96 var(--serif);letter-spacing:-.05em}.lux-cart-empty>p:not(.lux-cart-kicker){max-width:520px;margin:22px auto 33px;color:var(--muted);font-size:11px;line-height:1.8}.lux-cart-empty>div{display:flex;justify-content:center;align-items:center;gap:26px}.lux-cart-primary{display:inline-flex;align-items:center;gap:24px;min-height:48px;padding:0 20px;background:var(--forest);color:#fff;border:1px solid var(--forest);font-size:8px;font-weight:500;letter-spacing:.14em;text-transform:uppercase}.lux-cart-secondary{font-size:8px;font-weight:500;letter-spacing:.12em;text-transform:uppercase;border-bottom:1px solid #a9a399;padding-bottom:4px}
.qr-editing-banner{display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:12px;margin:0 0 18px;padding:11px 0;border-top:1px solid var(--brass,#a67c45);border-bottom:1px solid var(--brass,#a67c45);font-size:8px;letter-spacing:.1em;text-transform:uppercase}.qr-editing-banner span{color:var(--brass,#a67c45)}.qr-editing-banner strong{font-weight:500;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.qr-editing-banner a{justify-self:end;border-bottom:1px solid currentColor;padding-bottom:2px}

@media(max-width:1120px){
  .lux-cart-layout{grid-template-columns:minmax(0,1fr) 330px;gap:42px}.lux-cart-line{grid-template-columns:170px minmax(0,1fr)}.lux-cart-line-image{height:210px}.lux-cart-specs{grid-template-columns:1fr}.lux-cart-specs>div{grid-template-columns:1fr 1.2fr}.lux-cart-summary{padding:28px 24px}
}
@media(max-width:860px){
  .lux-cart-page{padding-top:52px}.lux-cart-heading{align-items:start}.lux-cart-count{width:76px;height:76px}.lux-cart-layout{grid-template-columns:1fr;gap:52px}.lux-cart-summary{position:relative;top:auto}.lux-cart-line{grid-template-columns:150px minmax(0,1fr);gap:22px}.lux-cart-line-image{height:190px}.lux-cart-continue{margin-bottom:8px}.lux-cart-summary{max-width:none}
}
@media(max-width:600px){
  .lux-cart-page{padding:36px 0 80px}.lux-cart-heading{display:block}.lux-cart-heading h1{font-size:56px}.lux-cart-intro{margin-top:15px}.lux-cart-count{display:none}.lux-cart-steps{margin:22px 0 48px;gap:8px}.lux-cart-steps span{font-size:6.8px}.lux-cart-steps span b{font-size:13px}.lux-cart-line{grid-template-columns:104px minmax(0,1fr);gap:16px;padding-bottom:30px;margin-bottom:30px}.lux-cart-line-image{height:136px}.lux-cart-line-head{display:block}.lux-cart-line-head h2{font-size:27px;padding-right:4px}.lux-cart-line-total{display:block;margin-top:8px;font-size:20px}.lux-cart-reference{grid-column:1/-1}.lux-cart-specs{grid-column:1/-1;margin-top:18px}.lux-cart-specs>div{grid-template-columns:1fr;gap:2px;padding:6px 0}.lux-cart-specs dd{text-align:left}.lux-cart-line-actions{grid-column:1/-1;align-items:flex-start;flex-direction:column}.lux-cart-actions-right{width:100%;justify-content:space-between}.lux-cart-unit{grid-column:1/-1}.lux-cart-continue{flex-direction:column}.lux-cart-continue small{text-align:left}.lux-cart-summary{padding:27px 21px}.lux-cart-empty{margin-top:54px;padding-inline:0}.lux-cart-empty>div{flex-direction:column}.lux-cart-toast{left:14px;right:14px;bottom:14px;max-width:none}.qr-editing-banner{grid-template-columns:1fr auto}.qr-editing-banner strong{grid-column:1/-1;grid-row:2}.qr-editing-banner a{grid-column:2;grid-row:1}
}

/* ============================================================
   GRACE LUXURY CHECKOUT V9.5
   Editorial, high-touch checkout with instant validation
   ============================================================ */
.lux-checkout-page{padding:54px 0 110px;background:var(--paper)}
.lux-checkout-heading{display:flex;align-items:flex-end;justify-content:space-between;gap:36px;padding:0 0 34px;border-bottom:1px solid var(--line)}
.lux-checkout-heading>div:first-child{max-width:760px}.lux-checkout-back{display:inline-flex;align-items:center;gap:9px;margin-bottom:24px;font-size:9px;font-weight:500;letter-spacing:.14em;text-transform:uppercase;color:var(--muted)}.lux-checkout-back:hover{color:var(--brass)}
.lux-checkout-kicker{margin:0 0 9px;font-size:8.5px;font-weight:500;letter-spacing:.2em;text-transform:uppercase;color:var(--brass)}
.lux-checkout-heading h1{margin:0;font:400 clamp(50px,5vw,76px)/.94 var(--serif);letter-spacing:-.045em}.lux-checkout-intro{max-width:650px;margin:18px 0 0;color:var(--muted);font-size:13px;line-height:1.75}
.lux-checkout-heading-meta{display:flex;align-items:flex-end;gap:24px;padding-bottom:5px;white-space:nowrap}.lux-checkout-heading-meta span{font-size:9px;letter-spacing:.12em;text-transform:uppercase;color:var(--muted)}.lux-checkout-heading-meta span b{color:var(--ink);font-weight:600}.lux-checkout-heading-meta strong{font:400 28px/1 var(--serif)}
.lux-checkout-steps{display:grid;grid-template-columns:auto minmax(50px,1fr) auto minmax(50px,1fr) auto;align-items:center;gap:18px;padding:21px 0 25px}.lux-checkout-steps>a,.lux-checkout-steps>span{display:flex;align-items:center;gap:8px;color:#a29d94;font-size:8px;letter-spacing:.14em;text-transform:uppercase}.lux-checkout-steps .active{color:var(--ink)}.lux-checkout-steps b{font:400 13px/1 var(--serif)}.lux-checkout-steps i{display:block;height:1px;background:#ded8cf}.lux-checkout-steps i.complete{background:var(--brass)}
.lux-checkout-alert{display:flex;align-items:flex-start;gap:13px;margin:0 0 28px;padding:15px 17px;border:1px solid #caa796;background:#fff8f4;color:#6f352c}.lux-checkout-alert>span{width:22px;height:22px;border:1px solid currentColor;border-radius:50%;display:grid;place-items:center;font:500 11px/1 var(--serif)}.lux-checkout-alert p{margin:1px 0 0;font-size:11px}
.lux-checkout-layout{display:grid;grid-template-columns:minmax(0,1.12fr) minmax(360px,.62fr);gap:74px;align-items:start}.lux-checkout-form-column{min-width:0}.lux-checkout-section{padding:36px 0 40px;border-top:1px solid var(--line);background:transparent}.lux-checkout-section:first-child{border-top:0;padding-top:14px}.lux-checkout-section-head{display:flex;justify-content:space-between;align-items:flex-start;gap:24px;margin-bottom:27px}.lux-checkout-section-head>div{display:flex;gap:17px;align-items:flex-start}.lux-checkout-section-head>div>span{width:30px;height:30px;border:1px solid #c8c0b5;display:grid;place-items:center;font:400 12px/1 var(--serif);color:var(--brass);margin-top:3px}.lux-checkout-section-head p{margin:0 0 5px;font-size:8px;font-weight:500;letter-spacing:.19em;text-transform:uppercase;color:var(--muted)}.lux-checkout-section-head h2{margin:0;font:400 32px/1.05 var(--serif);letter-spacing:-.025em}.lux-checkout-section-head>small{font-size:9px;color:var(--muted);padding-top:7px}.lux-checkout-section-head>small a{color:var(--forest);border-bottom:1px solid #a5a89e}
.lux-checkout-fields{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:19px 20px}.lux-checkout-field{display:block;position:relative}.lux-checkout-field-wide{grid-column:1/-1}.lux-checkout-field>span{display:flex;align-items:baseline;gap:4px;margin:0 0 7px;font-size:9px;font-weight:500;letter-spacing:.03em}.lux-checkout-field>span b{font-weight:500;color:#8a4338}.lux-checkout-field>span small{font-size:7.5px;color:var(--muted);font-weight:400;text-transform:uppercase;letter-spacing:.12em}.lux-checkout-field input,.lux-checkout-field select,.lux-checkout-field textarea{width:100%;border:0;border-bottom:1px solid #cfc8be;background:transparent;border-radius:0;padding:12px 2px 11px;outline:0;font-size:13px;font-weight:300;transition:border-color .25s ease,background-color .25s ease}.lux-checkout-field textarea{min-height:112px;resize:vertical;line-height:1.6}.lux-checkout-field select{appearance:none;background-image:linear-gradient(45deg,transparent 50%,#655f57 50%),linear-gradient(135deg,#655f57 50%,transparent 50%);background-position:calc(100% - 12px) 50%,calc(100% - 8px) 50%;background-size:4px 4px,4px 4px;background-repeat:no-repeat;padding-right:28px}.lux-checkout-field input:focus,.lux-checkout-field select:focus,.lux-checkout-field textarea:focus{border-color:var(--forest)}.lux-checkout-field input::placeholder,.lux-checkout-field textarea::placeholder{color:#aaa49b}.lux-checkout-field>em{display:none;margin-top:6px;color:#93473b;font-size:8px;font-style:normal}.lux-checkout-field.is-invalid input,.lux-checkout-field.is-invalid select{border-color:#a44d40}.lux-checkout-field.is-invalid>em{display:block}.lux-checkout-field.is-valid input:not(:placeholder-shown),.lux-checkout-field.is-valid select{border-color:#8da08f}
.lux-checkout-toggle{display:grid;grid-template-columns:22px 1fr;gap:12px;align-items:start;margin-top:25px;cursor:pointer}.lux-checkout-toggle>input{position:absolute;opacity:0;pointer-events:none}.lux-checkout-toggle>span{width:21px;height:21px;border:1px solid #aca59b;position:relative;transition:.25s ease}.lux-checkout-toggle>input[type=checkbox]:checked+span{background:var(--forest);border-color:var(--forest)}.lux-checkout-toggle>input[type=checkbox]:checked+span::after{content:"";position:absolute;left:6px;top:3px;width:6px;height:10px;border:solid #fff;border-width:0 1.5px 1.5px 0;transform:rotate(45deg)}.lux-checkout-toggle p{margin:0}.lux-checkout-toggle strong,.lux-checkout-toggle small{display:block}.lux-checkout-toggle strong{font-size:10px;font-weight:500}.lux-checkout-toggle small{margin-top:3px;font-size:8.5px;color:var(--muted)}
.lux-checkout-billing{margin-top:28px;padding:25px 27px 29px;background:#efebe3;border:1px solid #dcd5cb}.lux-checkout-subhead{display:flex;justify-content:space-between;align-items:baseline;gap:16px;margin-bottom:18px;padding-bottom:14px;border-bottom:1px solid #d8d0c5}.lux-checkout-subhead p{margin:0;font:400 20px/1 var(--serif)}.lux-checkout-subhead span{font-size:8px;text-transform:uppercase;letter-spacing:.12em;color:var(--muted)}
.lux-checkout-confirmation{display:grid;grid-template-columns:34px 1fr;gap:14px;padding:18px 20px;margin-bottom:18px;border:1px solid #d8d1c7;background:#f0ece4}.lux-checkout-confirmation>span{font-size:23px;color:var(--brass)}.lux-checkout-confirmation strong{font:400 16px/1 var(--serif)}.lux-checkout-confirmation p{margin:5px 0 0;font-size:9px;color:var(--muted);line-height:1.6}.lux-checkout-ack{display:grid;grid-template-columns:22px 1fr;gap:12px;align-items:start;cursor:pointer}.lux-checkout-ack>input{position:absolute;opacity:0}.lux-checkout-ack>span{width:21px;height:21px;border:1px solid #aca59b;position:relative}.lux-checkout-ack>input:checked+span{background:var(--forest);border-color:var(--forest)}.lux-checkout-ack>input:checked+span::after{content:"";position:absolute;left:6px;top:3px;width:6px;height:10px;border:solid #fff;border-width:0 1.5px 1.5px 0;transform:rotate(45deg)}.lux-checkout-ack p{margin:1px 0 0;font-size:9.5px;line-height:1.55;color:#454b47}.lux-checkout-ack.is-invalid>span{border-color:#a44d40}.lux-checkout-dev-note{display:flex;justify-content:space-between;gap:18px;margin-top:22px;padding:12px 14px;border-left:2px solid var(--brass);background:#f6f0e6}.lux-checkout-dev-note strong{font-size:8px;text-transform:uppercase;letter-spacing:.14em}.lux-checkout-dev-note span{font-size:8.5px;color:var(--muted);max-width:520px}.lux-checkout-save-note{display:flex;align-items:center;gap:8px;margin-top:8px;color:var(--muted);font-size:8px;letter-spacing:.03em}.lux-checkout-save-note>span{color:#617664}.lux-checkout-save-note.is-saving>span{animation:gracePulse 1s infinite}@keyframes gracePulse{50%{opacity:.3}}
.lux-checkout-summary{position:sticky;top:124px;background:#eeeadf;border-top:1px solid #d1c9bd;padding:31px 31px 28px}.lux-checkout-summary-head{display:flex;justify-content:space-between;align-items:flex-end;gap:20px;margin-bottom:22px}.lux-checkout-summary-head h2{margin:0;font:400 35px/1 var(--serif);letter-spacing:-.03em}.lux-checkout-summary-head>a{font-size:8px;font-weight:500;letter-spacing:.12em;text-transform:uppercase;border-bottom:1px solid #7f8078;padding-bottom:2px}.lux-checkout-items{border-top:1px solid #d2ccc2}.lux-checkout-item{display:grid;grid-template-columns:83px 1fr;gap:15px;padding:18px 0;border-bottom:1px solid #d2ccc2}.lux-checkout-item-image{height:101px;overflow:hidden;background:#d8d2c9}.lux-checkout-item-image img{height:100%;object-fit:cover}.lux-checkout-item-copy{min-width:0;display:flex;flex-direction:column}.lux-checkout-item-copy>div:first-child p{margin:0 0 3px;color:var(--brass);font-size:7.5px;text-transform:uppercase;letter-spacing:.14em;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.lux-checkout-item-copy h3{margin:0;font:400 15px/1.15 var(--serif)}.lux-checkout-item-copy dl{margin:9px 0 8px}.lux-checkout-item-copy dl>div{display:flex;justify-content:space-between;gap:10px;margin-top:3px;font-size:7.5px;color:var(--muted)}.lux-checkout-item-copy dt,.lux-checkout-item-copy dd{margin:0}.lux-checkout-item-copy dd{text-align:right;max-width:55%;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.lux-checkout-item-bottom{display:flex;justify-content:space-between;align-items:end;margin-top:auto;font-size:8px;color:var(--muted)}.lux-checkout-item-bottom strong{font:400 14px/1 var(--serif);color:var(--ink)}
.lux-checkout-totals{padding:18px 0 14px;border-bottom:1px solid #d2ccc2}.lux-checkout-totals>div{display:flex;justify-content:space-between;gap:18px;padding:5px 0;font-size:9px}.lux-checkout-totals strong{font-weight:500}.lux-checkout-grand-total{display:flex;justify-content:space-between;align-items:flex-end;gap:20px;padding:23px 0}.lux-checkout-grand-total>span{font:400 17px/1 var(--serif)}.lux-checkout-grand-total>span small{display:block;margin-top:6px;font:400 7px/1 var(--sans);text-transform:uppercase;letter-spacing:.13em;color:var(--muted)}.lux-checkout-grand-total>strong{font:400 30px/1 var(--serif)}
.lux-checkout-completion{padding:0 0 18px}.lux-checkout-completion>div{height:2px;background:#d6d0c6;overflow:hidden}.lux-checkout-completion>div>span{display:block;height:100%;width:0;background:var(--brass);transition:width .35s ease}.lux-checkout-completion p{display:flex;justify-content:flex-end;gap:4px;margin:6px 0 0;font-size:7.5px;color:var(--muted);letter-spacing:.08em;text-transform:uppercase}.lux-checkout-completion b{font-weight:600;color:var(--ink)}
.lux-checkout-submit{width:100%;min-height:54px;border:1.5px solid var(--forest);background:var(--forest);color:#fff;border-radius:0;display:flex;align-items:center;justify-content:space-between;padding:0 19px;font-size:9px;font-weight:500;letter-spacing:.15em;text-transform:uppercase}.lux-checkout-submit:hover:not(:disabled){background:#0d211a;border-color:#0d211a}.lux-checkout-submit:disabled{opacity:.35;cursor:not-allowed}.lux-checkout-submit>span{font-size:16px;line-height:1}.lux-checkout-submit-note{margin:10px 0 0;text-align:center;font-size:7.5px;line-height:1.5;color:var(--muted)}.lux-checkout-assurance{margin-top:23px;border-top:1px solid #d2ccc2}.lux-checkout-assurance>div{display:grid;grid-template-columns:29px 1fr;gap:10px;padding:13px 0;border-bottom:1px solid #d2ccc2}.lux-checkout-assurance>div>span{font-size:20px;color:var(--brass)}.lux-checkout-assurance p{margin:0}.lux-checkout-assurance strong,.lux-checkout-assurance small{display:block}.lux-checkout-assurance strong{font:400 12px/1.2 var(--serif)}.lux-checkout-assurance small{margin-top:3px;font-size:7.5px;line-height:1.45;color:var(--muted)}.lux-checkout-assurance a{border-bottom:1px solid #8e8e85}
@media(max-width:1100px){.lux-checkout-layout{grid-template-columns:minmax(0,1fr) 360px;gap:38px}.lux-checkout-heading h1{font-size:58px}.lux-checkout-summary{padding:27px 24px}}
@media(max-width:860px){.lux-checkout-page{padding-top:32px}.lux-checkout-heading{align-items:flex-start}.lux-checkout-heading-meta{display:none}.lux-checkout-layout{grid-template-columns:1fr;gap:34px}.lux-checkout-summary{position:relative;top:auto;order:-1}.lux-checkout-form-column{order:2}.lux-checkout-summary .lux-checkout-items{max-height:320px;overflow:auto}.lux-checkout-section:first-child{padding-top:0}}
@media(max-width:620px){.lux-checkout-page{padding-bottom:70px}.lux-checkout-heading{padding-bottom:24px}.lux-checkout-heading h1{font-size:45px}.lux-checkout-intro{font-size:11px}.lux-checkout-steps{gap:9px}.lux-checkout-steps>a,.lux-checkout-steps>span{gap:5px}.lux-checkout-steps>span span,.lux-checkout-steps>a span{display:none}.lux-checkout-fields{grid-template-columns:1fr}.lux-checkout-field-wide{grid-column:auto}.lux-checkout-section{padding:28px 0 32px}.lux-checkout-section-head{margin-bottom:21px}.lux-checkout-section-head>small{display:none}.lux-checkout-section-head h2{font-size:27px}.lux-checkout-summary{margin-inline:-12px;padding:25px 20px}.lux-checkout-billing{padding:20px}.lux-checkout-dev-note{display:block}.lux-checkout-dev-note span{display:block;margin-top:6px}.lux-checkout-item{grid-template-columns:72px 1fr}.lux-checkout-item-image{height:88px}}

/* ============================================================
   GRACE PRODUCT CONFIGURATOR V9.8
   Animated, accessible multi-step made-to-measure wizard
   ============================================================ */
.qr-wizard{margin-top:18px;border-top:1px solid var(--line)}
.qr-wizard-intro{display:flex;align-items:flex-end;justify-content:space-between;gap:18px;padding:17px 0 15px;border-bottom:1px solid var(--line)}
.qr-wizard-intro>div{display:grid;gap:3px}.qr-wizard-kicker{font-size:7.5px;font-weight:600;letter-spacing:.18em;text-transform:uppercase;color:var(--brass)}
.qr-wizard-intro strong{font:400 18px/1.15 var(--serif);letter-spacing:-.02em}.qr-wizard-intro>a{font-size:8px;font-weight:500;white-space:nowrap;border-bottom:1px solid #a8a198;padding-bottom:2px}
.qr-wizard-heading{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:20px;align-items:start;padding:20px 0 14px}.qr-wizard-heading>div{min-width:0}.qr-wizard-heading #qrWizardEyebrow{display:block;font-size:7.5px;font-weight:600;letter-spacing:.16em;text-transform:uppercase;color:var(--brass);margin-bottom:5px}.qr-wizard-heading h2{font:400 27px/.98 var(--serif);letter-spacing:-.035em;margin:0 0 7px}.qr-wizard-heading p{font-size:9px;line-height:1.5;color:var(--muted);margin:0;max-width:355px}.qr-wizard-heading .status-pill{align-self:start;margin-top:1px;background:#efeae2;border:1px solid #e0d9cf;color:#625f59}.qr-wizard-heading .status-pill.valid{background:#eaf0eb;border-color:#cad8cc;color:#1f4a35}
.qr-wizard-progress{height:2px;background:#dfdbd3;position:relative;overflow:hidden}.qr-wizard-progress>span{position:absolute;inset:0 auto 0 0;width:0;background:var(--forest);transition:width .285s cubic-bezier(.22,.75,.25,1)}
.qr-wizard-stepper{display:flex;gap:0;list-style:none;margin:0;padding:0;border-bottom:1px solid var(--line);overflow-x:auto;scrollbar-width:none}.qr-wizard-stepper::-webkit-scrollbar{display:none}.qr-wizard-stepper li{flex:1 0 68px;min-width:0}.qr-wizard-step{width:100%;min-height:60px;padding:10px 5px;border:0;background:transparent;display:flex;align-items:center;justify-content:center;gap:7px;text-align:left;color:#87827b;position:relative}.qr-wizard-step::after{content:"";position:absolute;left:50%;right:50%;bottom:-1px;height:1px;background:var(--forest);transition:left .25s ease,right .25s ease}.qr-wizard-step:hover:not(:disabled){color:var(--ink)}.qr-wizard-step.is-active{color:var(--ink)}.qr-wizard-step.is-active::after{left:8px;right:8px}.qr-wizard-step.is-locked{opacity:.38;cursor:not-allowed}.qr-wizard-step-number{width:22px;height:22px;flex:0 0 22px;border:1px solid #cfc9c0;border-radius:50%;display:grid;place-items:center;font-size:7.5px;font-weight:600;background:#f9f7f2}.qr-wizard-step.is-active .qr-wizard-step-number{background:var(--forest);border-color:var(--forest);color:#fff}.qr-wizard-step.is-complete:not(.is-active) .qr-wizard-step-number{background:#e9efe9;border-color:#cbd7cc;color:#254b38}.qr-wizard-step-copy{display:grid;gap:1px;min-width:0}.qr-wizard-step-copy b{font-size:7.5px;font-weight:600;letter-spacing:.02em;white-space:nowrap}.qr-wizard-step-copy small{font-size:6.5px;color:#9a958d;white-space:nowrap}
.qr-wizard-summary-line{display:grid;grid-template-columns:auto minmax(0,1fr);gap:12px;align-items:start;padding:10px 0;border-bottom:1px solid #e5e1d9}.qr-wizard-summary-line>span{font-size:7px;letter-spacing:.12em;text-transform:uppercase;color:#908a81;padding-top:1px}.qr-wizard-summary-line .config-summary{font-size:8px;line-height:1.45;color:#5f625f;text-align:right;white-space:normal;overflow-wrap:anywhere}
.qr-wizard-messages:empty{display:none}.qr-wizard-messages{margin-top:10px}.qr-wizard-notice{margin-top:10px;padding:9px 11px;border:1px solid #dec9aa;background:#fff8eb;color:#6e5430;font-size:8.5px;line-height:1.45}
.qr-wizard-stage{position:relative;overflow:hidden;min-height:150px;transition:height .285s cubic-bezier(.22,.75,.25,1)}.qr-wizard-panel{position:relative;width:100%;padding:12px 0 6px;will-change:transform,opacity}.qr-wizard-ghost{position:absolute!important;inset:0 0 auto 0;z-index:2;pointer-events:none;background:#f9f7f2}.qr-wizard-empty{display:grid;gap:4px;padding:30px 0;text-align:center}.qr-wizard-empty strong{font:400 18px/1.15 var(--serif)}.qr-wizard-empty span{font-size:8px;color:var(--muted)}
.qr-wizard .qr-group,.qr-wizard .qr-set{margin:0;padding:12px 0;border-top:0;border-bottom:1px solid #e7e2da}.qr-wizard .qr-group:last-child,.qr-wizard .qr-set:last-child{border-bottom:0}.qr-wizard .qr-group h3,.qr-wizard .qr-set h3{font:400 16px/1.15 var(--serif);margin:0 0 8px}.qr-wizard .qr-field{padding:8px 0}.qr-wizard .qr-field>label,.qr-wizard .room-reference>label{font-size:8.5px;letter-spacing:.01em}.qr-wizard .qr-field select,.qr-wizard .qr-field input,.qr-wizard .qr-field textarea,.qr-wizard .room-reference input{min-height:46px;border-color:#d5cfc5;background:#fcfbf8;padding-inline:13px;font-size:10px}.qr-wizard .qr-field textarea{padding-top:12px}.qr-wizard .qr-field-meta span{font-size:6.8px;background:#f1eee8}.qr-wizard .qr-field-help summary{font-size:7.2px}.qr-wizard .qr-field-help p{font-size:7.5px;background:#f4f1eb}
.qr-single-choice-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:7px}.qr-single-choice{min-height:52px;border:1px solid #d7d1c8;background:#fcfbf8;padding:9px 10px;text-align:left;display:flex;align-items:center;justify-content:space-between;gap:8px}.qr-single-choice span{font-size:8.5px;font-weight:500;line-height:1.25}.qr-single-choice small{font-size:6.5px;color:#999287;text-transform:uppercase;letter-spacing:.08em}.qr-single-choice:hover:not(:disabled){border-color:#9d9589;background:#fff}.qr-single-choice.selected{border-color:var(--forest);background:#edf1ed;box-shadow:inset 0 0 0 1px var(--forest)}.qr-single-choice.selected small{color:var(--forest)}.qr-single-choice.unavailable{opacity:.46;cursor:not-allowed}
.qr-wizard .qr-choice-grid{gap:6px}.qr-wizard .qr-choice{min-height:40px;border-color:#d7d1c8;background:#fcfbf8;font-size:8px}.qr-wizard .qr-choice.selected{border-color:var(--forest);background:#edf1ed;box-shadow:inset 0 0 0 1px var(--forest)}
.qr-wizard-review{padding:2px 0 5px}.qr-review-head{display:flex;justify-content:space-between;align-items:flex-start;gap:14px;padding:9px 0 12px;border-bottom:1px solid #ddd7cd}.qr-review-head>div{display:grid;gap:2px}.qr-review-head>div span{font-size:6.8px;letter-spacing:.14em;text-transform:uppercase;color:var(--brass)}.qr-review-head>div strong{font:400 18px/1.1 var(--serif)}.qr-review-head>span{font-size:7px;padding:5px 7px;border:1px solid #dfc9bd;background:#fbefea;color:#824b3a}.qr-review-head>span.is-ready{background:#eaf0eb;border-color:#c7d6c9;color:#28503a}.qr-review-selections{padding:8px 0}.qr-review-row{display:grid;grid-template-columns:minmax(110px,.85fr) minmax(0,1.15fr);gap:12px;padding:7px 0;border-bottom:1px solid #ebe6de}.qr-review-row span{font-size:7.5px;color:#807a72}.qr-review-row strong{font-size:8px;font-weight:500;text-align:right;overflow-wrap:anywhere}.qr-review-empty{font-size:8px;color:var(--muted);line-height:1.5}.qr-wizard-review .room-reference{grid-template-columns:1fr;padding:13px 0 3px;border-top:1px solid #ddd7cd;gap:5px}.qr-wizard-review .room-reference label{display:flex;justify-content:space-between}.qr-wizard-review .room-reference-help{font-size:7.2px}
.qr-wizard-footer{display:grid;grid-template-columns:auto minmax(92px,1fr) minmax(140px,1.15fr);gap:10px;align-items:center;padding-top:14px;border-top:1px solid var(--line);background:#f9f7f2}.qr-wizard-back,.qr-wizard-next{min-height:48px;border:1px solid #cbc5bb;background:transparent;padding:0 13px;font-size:8.5px;font-weight:600;display:flex;align-items:center;justify-content:center;gap:8px;white-space:nowrap}.qr-wizard-back:hover:not(:disabled){border-color:#91897e;background:#fff}.qr-wizard-next{background:var(--forest);border-color:var(--forest);color:#fff}.qr-wizard-next:hover:not(:disabled){background:#0f281f}.qr-wizard-back:disabled,.qr-wizard-next:disabled{opacity:.35;cursor:not-allowed}.qr-wizard-price{min-width:0}.qr-wizard-price small{font-size:6.8px}.qr-wizard-price strong{font-size:22px;white-space:nowrap}.qr-wizard-price span{font-size:6.5px}.qr-wizard-add{min-height:48px;font-size:9px}.qr-wizard-add[hidden],.qr-wizard-next[hidden]{display:none!important}
.qr-wizard .qr-size-requirements{margin:2px 0 10px;background:#f1eee8;border-color:#ddd6cc}.qr-wizard .qr-size-requirements__heading strong{font-size:12px}.qr-wizard .qr-size-requirements__heading small,.qr-wizard .qr-size-requirements__item{font-size:7.5px}

@media(max-width:1100px){.qr-wizard-step-copy small{display:none}.qr-wizard-step{gap:5px}.qr-wizard-footer{grid-template-columns:auto minmax(82px,1fr) minmax(130px,1.1fr)}}
@media(max-width:900px){.qr-wizard{margin-top:16px}.qr-wizard-footer{position:sticky;bottom:0;z-index:20;margin:0 -18px -24px;padding:12px 18px max(12px,env(safe-area-inset-bottom));box-shadow:0 -12px 28px rgba(23,32,28,.08)}.qr-wizard-stage{min-height:120px}}
@media(max-width:560px){.qr-wizard-intro{align-items:flex-start}.qr-wizard-intro strong{font-size:17px}.qr-wizard-heading{grid-template-columns:1fr auto;gap:10px}.qr-wizard-heading h2{font-size:25px}.qr-wizard-heading p{font-size:8.5px}.qr-wizard-stepper{margin-inline:-18px;padding-inline:12px}.qr-wizard-stepper li{flex:0 0 78px}.qr-wizard-step{min-height:57px;justify-content:flex-start;padding-inline:6px}.qr-wizard-step-copy b{font-size:7px}.qr-wizard-summary-line{grid-template-columns:1fr;gap:4px}.qr-wizard-summary-line .config-summary{text-align:left}.qr-wizard .qr-field,.qr-wizard .room-reference{grid-template-columns:1fr}.qr-wizard .qr-field-meta,.qr-wizard .qr-field-help{grid-column:1}.qr-single-choice-grid{grid-template-columns:1fr}.qr-wizard-footer{grid-template-columns:auto 1fr 1.25fr}.qr-wizard-price strong{font-size:18px}.qr-wizard-price span{display:none}.qr-wizard-back{padding-inline:11px}.qr-wizard-next,.qr-wizard-add{padding-inline:10px}.qr-review-row{grid-template-columns:1fr;gap:2px}.qr-review-row strong{text-align:left}.qr-review-head{align-items:center}}
@media(prefers-reduced-motion:reduce){.qr-wizard-progress>span,.qr-wizard-stage,.qr-wizard-step::after{transition:none!important}.qr-wizard-panel,.qr-wizard-ghost{animation:none!important}}
