/*
Theme Name: UMDAA
Theme URI: https://umdaa.pk/
Author: UMDAA Studio
Author URI: https://umdaa.pk/
Description: Custom UMDAA furniture theme — made-to-order furniture for modern Pakistani homes. Ported pixel-faithful from the approved UMDAA design demo (v1: static port, WooCommerce integration in phase 2).
Version: 1.0.0
Requires at least: 6.0
Tested up to: 7.1
Requires PHP: 7.4
License: GNU General Public License v2 or later
License URI: http://www.gnu.org/licenses/gpl-2.0.html
Text Domain: umdaa
Tags: custom-colors, custom-logo, e-commerce, featured-images
*/
    :root{
      color-scheme:light dark;
      --paper:#f4f0e9;--paper-2:#e9e1d6;--card:#fbf8f3;--ink:#241d18;--muted:#6a5d53;
      --line:#d4c8ba;--walnut:#38271e;--walnut-2:#211713;--brass:#a7793f;--brass-soft:#d6b17b;
      --white:#fffdf9;--danger:#8f4034;--shadow:0 24px 60px rgba(44,31,23,.13);--product-backdrop:#dacdbd;
      --display:"Cormorant Garamond",Georgia,serif;--body:"Manrope",sans-serif;
      --text-accent:#785126;--interactive-underline:#a7793f;--eyebrow-color:var(--text-accent);--heading-color:var(--walnut);--subheading-color:var(--muted);--section-heading-size:clamp(38px,4.7vw,68px);--section-subheading-size:15px;--icon-size:20px;
    }

    @media(prefers-color-scheme:dark){:root{--paper:#181410;--paper-2:#211b16;--card:#27211b;--ink:#f1e9df;--muted:#c1b4a6;--line:#493c31;--walnut:#30231c;--walnut-2:#110d0b;--brass:#c39556;--brass-soft:#e1bd83;--white:#fff9f0;--danger:#e69488;--shadow:0 24px 70px rgba(0,0,0,.35);--text-accent:#e1bd83;--heading-color:#f1e9df;--subheading-color:#c1b4a6;--eyebrow-color:#e1bd83}
}

    *{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;background:var(--paper);color:var(--ink);font-family:var(--body);font-size:14px;line-height:1.6;overflow-x:hidden}
body.locked{overflow:hidden}

    img{display:block;width:100%}
a{color:inherit;text-decoration:none}
button,input,select,textarea{font:inherit;color:inherit}
button{cursor:pointer}
:focus-visible{outline:2px solid var(--brass);outline-offset:3px}

    :where(.ph){width:var(--icon-size);height:var(--icon-size);display:inline-flex;align-items:center;justify-content:center;flex:0 0 var(--icon-size);font-size:var(--icon-size);line-height:1}

    .announcement{height:30px;display:flex;align-items:center;justify-content:center;padding:6px 20px;background:#211713;color:#ead8bd;border-bottom:1px solid rgba(214,177,123,.22);font-size:10px;font-weight:600;letter-spacing:.13em;text-transform:uppercase;text-align:center}

    .site-head{position:sticky;top:0;z-index:40;background:#f4f0e9;color:#241d18;--ink:#241d18;--muted:#6a5d53;--paper-2:#e9e1d6;--brass:#a7793f;--brass-soft:#d6b17b;--line:#d4c8ba;backdrop-filter:none;-webkit-backdrop-filter:none;border-bottom:1px solid var(--line)}

    .nav{width:calc(100% - 64px);max-width:none;height:72px;margin:auto;display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:28px}
.nav-links,.nav-actions{display:flex;align-items:center;gap:18px}
.nav-actions{gap:8px}
.nav-links{justify-content:center}
.nav-actions{justify-content:flex-end}
.nav button{background:none;border:0;padding:8px}
.nav-link{position:relative;white-space:nowrap;font-size:16px;font-weight:400;letter-spacing:0;text-transform:uppercase}
.nav button{font-size:12px;font-weight:400;letter-spacing:0;text-transform:uppercase}
.nav-link:after,.footer-links span:after{content:"";position:absolute;left:0;bottom:-9px;width:100%;height:1px;background:var(--interactive-underline);transform:scaleX(0);transform-origin:left center;transition:transform .25s ease}
.nav-link:hover:after,.nav-link.active:after,.nav-link:focus-visible:after,.footer-links span:hover:after,.footer-links span:focus-visible:after{transform:scaleX(1)}
.brand{font-family:var(--display);font-size:24px;letter-spacing:.18em;line-height:1}
.icon-btn{width:39px;height:39px;display:inline-grid!important;place-items:center;border:1px solid var(--line)!important;background:transparent!important}
.icon-btn .ph{font-size:22px}
.menu-btn{display:none!important}
.cart-button{position:relative}
.cart-count{position:absolute;right:-2px;top:2px;width:17px;height:17px;display:grid;place-items:center;background:var(--brass);color:#18110d;border-radius:50%;font-size:9px;font-weight:700;letter-spacing:0}

    .nav-item{height:72px;display:flex;align-items:center}
.mega-menu{position:absolute;left:0;right:0;top:72px;padding:34px max(24px,calc((100vw - 1280px)/2));background:#f4f0e9;color:#241d18;--ink:#241d18;--muted:#6a5d53;--paper-2:#e9e1d6;--brass:#a7793f;--line:#d4c8ba;backdrop-filter:none;border-bottom:1px solid var(--line);box-shadow:0 24px 28px -22px rgba(32,22,16,.22);display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:28px;opacity:0;visibility:hidden;transform:translateY(-8px);transition:.18s;z-index:50}
.nav-item:hover .mega-menu,.nav-item:focus-within .mega-menu{opacity:1;visibility:visible;transform:none}
.mega-menu.wide,.mega-menu.shop-mega{grid-template-columns:repeat(4,minmax(0,1fr))}
.mega-group h3{margin:0 0 12px;font-size:14px;font-weight:700;letter-spacing:0;text-transform:uppercase;color:var(--brass)}
.mega-group a{display:block;padding:5px 0;color:var(--muted);font-size:14px;font-weight:400;text-transform:none;letter-spacing:0}
.mega-group a:hover{color:var(--ink)}
.mega-feature{width:100%;height:176px;padding:18px;background:var(--paper-2);align-self:start}
.mega-feature strong{display:block;font-family:var(--display);font-size:24px;line-height:1.05}
.mega-feature span{display:block;margin-top:8px;color:var(--muted);font-size:11px}
.header-search{position:relative;width:230px;height:36px;background:var(--paper-2);transition:box-shadow .2s}
.header-search:focus-within{box-shadow:inset 0 0 0 2px var(--brass)}
.header-search input{width:100%;height:100%;padding:8px 42px 8px 12px;background:transparent;border:0;font-size:12px;color:var(--ink)}
.header-search input:focus-visible{outline:0}
.header-search input::placeholder{color:var(--ink);opacity:1}
.header-search input::-webkit-search-cancel-button{display:none}
.search-submit{position:absolute;right:2px;top:2px;width:32px!important;height:32px!important;padding:0!important;display:grid!important;place-items:center;background:transparent!important;border:0!important}
.search-submit .ph{font-size:22px}
.nav-actions>.icon-btn{width:36px;height:36px;border:0!important;cursor:pointer;transition:background .2s,color .2s}
.nav-actions>span.icon-btn:hover,.nav-actions>span.icon-btn:focus-visible,.nav-actions>.cart-button:hover,.nav-actions>.cart-button:focus-visible{background:transparent!important;color:var(--brass)}
.nav-actions>.icon-btn .ph{font-size:22px}
.account-icon{position:relative}
.account-badge{position:absolute;right:-3px;top:-6px;min-width:23px;height:23px;padding:0 6px;display:grid;place-items:center;background:var(--brass);color:#18110d;border-radius:999px;font-size:11px;font-weight:700;line-height:1}
.cart-button{position:relative}

    section.page{display:none}
section.page.active{display:block}
.container{width:min(1680px,calc(100% - (2 * clamp(36.4px,7.8vw,124.8px))));margin:auto}
.section{padding:clamp(74px,8vw,126px) 0}
.eyebrow{margin:0 0 17px;color:var(--eyebrow-color);font-size:12px;font-weight:700;line-height:1.35;letter-spacing:.16em;text-transform:uppercase}
h1,h2,h3,p{margin-top:0}
h1,h2{font-family:var(--display);font-weight:600;letter-spacing:-.03em;color:var(--heading-color)}
h1{font-size:clamp(50px,6.2vw,94px);line-height:.92}
h2{font-size:var(--section-heading-size);line-height:1}
.section-head{display:flex;align-items:end;justify-content:space-between;gap:34px;margin-bottom:38px}
.section-head h2{margin:0;color:var(--heading-color);font-size:var(--section-heading-size);font-weight:600}
.section-head>p{max-width:430px;margin:0;color:var(--subheading-color);font-size:var(--section-subheading-size);line-height:1.65}
.faq-intro .eyebrow{color:var(--eyebrow-color)}
.faq-intro h2{color:var(--heading-color);font-size:var(--section-heading-size);font-weight:600}
.faq-intro>p:not(.eyebrow),.page-hero-row>p{color:var(--subheading-color);font-size:var(--section-subheading-size);line-height:1.65}

    .btn{min-height:49px;padding:13px 22px;border:1px solid transparent;display:inline-flex;align-items:center;justify-content:center;gap:10px;background:transparent;font-size:12px;font-weight:700;letter-spacing:.1em;text-transform:uppercase;transition:background .2s,color .2s,border-color .2s}
.btn-dark{background:var(--walnut-2);color:#fff}
.btn-dark:hover,.btn-dark:focus-visible{background:var(--brass);color:#18110d}
.btn-light{background:#f5ede3;color:#241b16}
.btn-light:hover,.btn-light:focus-visible{background:var(--brass-soft)}
.btn-outline{border-color:var(--walnut-2);color:var(--ink)}
.btn-outline:hover,.btn-outline:focus-visible{background:var(--walnut-2);border-color:var(--walnut-2);color:#fff}
.btn-block{width:100%}
.text-link{display:inline-flex;align-items:center;gap:8px;border-bottom:1px solid currentColor;font-size:11px;font-weight:700;letter-spacing:.08em;text-transform:uppercase}

    .hero{--heading-color:#f7efe5;--subheading-color:#d9cdc0;--eyebrow-color:var(--brass-soft);position:relative;isolation:isolate;height:calc(100svh - 126px);min-height:520px;max-height:720px;display:grid;grid-template-columns:minmax(0,43%) minmax(0,57%);overflow:hidden;background:var(--walnut);color:#f7efe5}
.hero-copy{position:relative;z-index:2;min-width:0;min-height:0;padding:clamp(58px,7vw,112px) clamp(28px,6vw,96px) clamp(58px,7vw,112px) clamp(36.4px,7.8vw,124.8px);display:flex;flex-direction:column;justify-content:center;overflow:hidden}
.hero-copy h1{max-width:640px;margin-bottom:24px}
.hero-copy>p:not(.eyebrow){max-width:470px;color:#d9cdc0;font-size:16px;line-height:1.8}
.hero-actions{display:flex;gap:12px;margin-top:18px;flex-wrap:wrap}
.hero-actions .btn{font-family:var(--body);font-size:10px;font-weight:700;font-style:normal}
.hero-actions .btn-outline:hover,.hero-actions .btn-outline:focus-visible{background:var(--brass-soft);border-color:var(--brass-soft)!important;color:#241b16!important}
.hero-media{position:relative;z-index:1;min-width:0;min-height:0;width:100%;height:100%;overflow:hidden;contain:paint;background:var(--walnut-2)}
.hero-slide{position:absolute;inset:0;overflow:hidden;opacity:0;transition:opacity 1.35s ease;pointer-events:none}
.hero-slide.active{opacity:1}
.hero-slide img{width:100%;height:100%;max-width:100%;max-height:100%;object-fit:cover;object-position:50% 52%}
.hero-slide:nth-child(2) img{object-position:50% 48%}
.hero-slide:nth-child(3) img{object-position:50% 52%}
.hero-media:after{content:"";position:absolute;z-index:1;inset:0;pointer-events:none;background:linear-gradient(90deg,rgba(55,39,30,.2),transparent 32%),linear-gradient(0deg,rgba(20,14,11,.24),transparent 42%)}
.hero-note{position:absolute;z-index:3;right:24px;bottom:24px;padding:15px 18px;background:rgba(26,18,14,.88);color:#efe3d3;font-size:10px;letter-spacing:.08em;text-transform:uppercase;transition:opacity .35s ease}
.hero-dots{position:absolute;z-index:4;left:24px;bottom:28px;display:flex;align-items:center;gap:9px}
.hero-dot{width:24px;height:24px;padding:0;border:0;background:transparent;display:grid;place-items:center}
.hero-dot:before{content:"";width:6px;height:6px;background:rgba(255,249,240,.58);transition:width .25s,background .25s}
.hero-dot:hover:before,.hero-dot:focus-visible:before{background:#fff9f0}
.hero-dot.active:before{width:20px;background:var(--brass-soft)}

    .trust-strip{position:relative;z-index:2;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));overflow:hidden;background:var(--paper);border-bottom:1px solid var(--line)}
.trust-item{padding:22px 24px;border-right:1px solid var(--line)}
.trust-item:first-child{padding-left:0}
.trust-item:last-child{border:0}
.trust-item strong{display:block;font-size:12px}
.trust-item span{font-size:11px;color:var(--muted)}
.trust-icon{display:flex;margin-bottom:10px;color:var(--brass)}

    .category-carousel{position:relative}
.category-grid{display:flex;gap:16px;overflow-x:auto;overscroll-behavior-inline:contain;scroll-snap-type:x mandatory;scroll-padding-inline:1px;-ms-overflow-style:none;scrollbar-width:none;cursor:grab;touch-action:pan-x pan-y;user-select:none}
.category-grid::-webkit-scrollbar{display:none;width:0;height:0}
.category-grid.dragging{cursor:grabbing;scroll-snap-type:none}
.category-control{position:absolute;z-index:4;top:50%;width:46px;height:46px;display:grid;place-items:center;border:1px solid color-mix(in srgb,var(--walnut) 28%,var(--line));border-radius:0;background:color-mix(in srgb,var(--card) 94%,transparent);color:var(--walnut-2);box-shadow:0 10px 30px rgba(44,31,23,.2);backdrop-filter:blur(8px);transform:translateY(-50%);transition:background .2s,color .2s,opacity .2s,transform .2s}
.category-control:hover:not(:disabled){background:var(--walnut-2);color:#fff;transform:translateY(-50%) scale(1.04)}
.category-control:disabled{opacity:.3;cursor:default}
.category-control .ph{font-size:22px}
.category-control.prev{left:-23px}
.category-control.next{right:-23px}
.category-card{position:relative;flex:0 0 320px;min-height:410px;overflow:hidden;background:var(--paper-2);color:#fff;scroll-snap-align:start;-webkit-user-drag:none}
.category-card.featured{flex-basis:320px}
.category-card img{height:100%;object-fit:cover;transition:transform .65s cubic-bezier(.2,.7,.2,1);pointer-events:none;-webkit-user-drag:none}
.category-card:hover img{transform:scale(1.025)}
.category-card:after{content:"";position:absolute;inset:0;background:linear-gradient(0deg,rgba(18,12,9,.78),rgba(18,12,9,.02) 62%)}
.category-copy{position:absolute;z-index:2;left:24px;right:24px;bottom:24px;display:flex;flex-direction:column;align-items:flex-start;justify-content:flex-end;gap:16px}
.category-copy>div{width:100%;min-width:0;display:flex;flex-direction:column;gap:9px}
.category-copy h3{margin:0;font-family:var(--display);font-size:32px;font-weight:500;line-height:1.04}
.category-copy span{font-size:10px;letter-spacing:.11em;text-transform:uppercase;color:#e4c99a}
.category-copy>span{display:inline-flex;white-space:nowrap}
.category-sublinks{display:flex;width:100%;align-items:center;gap:12px;white-space:nowrap}
.category-sublinks a{font-size:13px;font-weight:400;line-height:1.3;letter-spacing:0;text-transform:uppercase;color:#fff2df;text-decoration:none;text-underline-offset:3px;transition:color .18s}
.category-sublinks a:hover,.category-sublinks a:focus-visible{color:var(--brass-soft);text-decoration:underline}
.category-sublinks i{color:var(--brass-soft);font-size:20px;font-weight:400;font-style:normal;line-height:.7;opacity:.92;transform:translateY(-1px)}
.category-copy>a{display:inline-flex;align-items:center;min-height:36px;padding:9px 14px;background:var(--brass-soft);color:#241b16;font-size:10px;font-weight:700;line-height:1;letter-spacing:.08em;text-transform:uppercase;border:1px solid var(--brass-soft);transition:background .2s,color .2s,border-color .2s}
.category-copy>a:hover,.category-copy>a:focus-visible{background:var(--white);border-color:var(--white);color:#241b16}

    .product-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:42px 16px}
.product-card{position:relative;min-width:0;cursor:pointer}
.card-detail-link{position:absolute;inset:0;z-index:2}
.product-media{position:relative;overflow:hidden;background:var(--product-backdrop);aspect-ratio:4/5}
.product-media img{width:100%;height:100%;object-fit:contain;object-position:center;transition:opacity .2s}
.product-tag,.discount-tag{position:absolute;z-index:3;top:14px;padding:6px 8px;line-height:1.2;text-transform:uppercase}
.product-tag{left:14px;background:color-mix(in srgb,var(--card) 92%,transparent);font-size:9px;font-weight:600;letter-spacing:.08em}
.discount-tag{right:14px;background:var(--walnut-2);color:#fff;font-size:10px;font-weight:700;letter-spacing:.05em}
.quick-view{position:absolute;z-index:3;left:14px;right:14px;bottom:14px;display:grid;place-items:center;transform:translateY(calc(100% + 20px));opacity:0;visibility:hidden;pointer-events:none;background:var(--walnut-2);color:#fff;border:0;min-height:48px;font-size:10px;font-weight:700;letter-spacing:.1em;text-transform:uppercase;transition:transform .25s,opacity .25s,background .2s,color .2s,border-color .2s,visibility 0s linear .25s}
.product-card:hover .quick-view,.product-card:focus-within .quick-view,.quick-view:focus{transform:none;opacity:1;visibility:visible;pointer-events:auto;transition:transform .25s,opacity .25s,background .2s,color .2s,border-color .2s,visibility 0s}
.quick-view:hover,.quick-view:focus-visible{background:var(--brass);color:#18110d}
.product-info{padding-top:15px;display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:start;gap:16px}
.product-title{min-width:0;margin:0;font-size:16px;font-weight:600;line-height:1.35}
.product-pricing{display:flex;align-items:baseline;justify-content:flex-end;gap:7px;white-space:nowrap}
.product-price-old{color:var(--muted);font-size:12px;text-decoration:line-through;text-decoration-thickness:1px}
.product-price-new{font-size:18px;font-weight:700;line-height:1.15;color:var(--ink)}
.product-grid.compact{grid-template-columns:repeat(4,1fr)}
.product-grid.compact .product-media{aspect-ratio:4/5}
.products-carousel{position:relative}
.product-scroll{display:flex;gap:16px;overflow-x:auto;overscroll-behavior-inline:contain;scroll-snap-type:x mandatory;scroll-padding-inline:1px;scrollbar-width:none;-ms-overflow-style:none;cursor:grab;touch-action:pan-x pan-y;user-select:none}
.product-scroll::-webkit-scrollbar{display:none}
.product-scroll.dragging{cursor:grabbing;scroll-snap-type:none}
.product-scroll .product-card{flex:0 0 calc((100% - 48px)/4);scroll-snap-align:start;-webkit-user-drag:none}
.product-scroll .product-card img{pointer-events:none;-webkit-user-drag:none}
.product-control{position:absolute;z-index:4;top:42%;width:46px;height:46px;display:grid;place-items:center;border:1px solid color-mix(in srgb,var(--walnut) 28%,var(--line));border-radius:0;background:color-mix(in srgb,var(--card) 96%,transparent);color:var(--walnut-2);box-shadow:0 10px 30px rgba(44,31,23,.2);transform:translateY(-50%);transition:background .2s,color .2s,opacity .2s,transform .2s}
.product-control:hover:not(:disabled){background:var(--walnut-2);color:#fff;transform:translateY(-50%) scale(1.04)}
.product-control:disabled{opacity:.28;cursor:default}
.product-control .ph{font-size:22px}
.product-control.prev{left:-23px}
.product-control.next{right:-23px}
.products-footer{display:flex;justify-content:center;margin-top:38px}
.shop-all-btn{min-height:49px;padding:13px 22px;border:1px solid var(--walnut-2);display:inline-flex;align-items:center;justify-content:center;gap:10px;background:transparent;color:var(--ink);font-size:12px;font-weight:700;letter-spacing:.1em;text-transform:uppercase;transition:background .2s,color .2s,border-color .2s}
.shop-all-btn:hover,.shop-all-btn:focus-visible{background:var(--walnut-2);border-color:var(--walnut-2);color:#fff}

    .feature-band{--heading-color:#f7efe5;--subheading-color:#d9cdc0;--eyebrow-color:var(--brass-soft);display:grid;grid-template-columns:1.1fr .9fr;background:var(--walnut-2);color:#f5ece1}
.feature-band img{height:100%;min-height:560px;object-fit:cover}
.feature-copy{padding:clamp(54px,7vw,106px);display:flex;flex-direction:column;justify-content:center}
.feature-copy h2{margin-bottom:24px}
.feature-copy p:not(.eyebrow){max-width:510px;color:var(--subheading-color);font-size:var(--section-subheading-size);line-height:1.65}
.feature-list{list-style:none;padding:0;margin:32px 0 36px}
.feature-list li{position:relative;display:grid;grid-template-columns:46px minmax(0,1fr);align-items:start;column-gap:24px;min-height:78px;padding:0 0 24px}
.feature-list li:not(:last-child):after{content:"";position:absolute;left:22.5px;top:46px;bottom:0;width:1px;background:linear-gradient(180deg,var(--brass-soft),rgba(214,177,123,.3))}
.feature-step-num{position:relative;z-index:1;width:46px;height:46px;display:grid;place-items:center;border:1px solid var(--brass-soft);border-radius:50%;background:var(--walnut-2);color:var(--brass-soft);font-family:var(--display);font-size:21px;font-variant-numeric:tabular-nums;line-height:1;text-align:center}
.feature-step-copy{padding-top:2px}
.feature-step-copy strong{display:flex;align-items:center;gap:10px;margin-bottom:5px;font-family:var(--display);font-size:24px;font-weight:500;line-height:1.1}
.feature-step-copy strong .ph{color:var(--brass-soft);font-size:22px}
.feature-step-copy span{display:block;max-width:430px;color:#d9cdc0;font-size:13px;line-height:1.55}

    .steps{display:grid;grid-template-columns:repeat(4,1fr);border-top:1px solid var(--line)}
.step{min-height:210px;padding:27px 27px 8px 0;border-right:1px solid var(--line)}
.step+.step{padding-left:27px}
.step:last-child{border:0}
.step-num{font-family:var(--display);font-size:32px;color:var(--brass)}
.step h3{display:flex;align-items:center;gap:10px;margin:22px 0 8px;font-family:var(--display);font-size:26px}
.step h3 .ph{color:var(--brass);font-size:22px}
.step p{color:var(--muted);font-size:12px}

    .reviews-section{background:var(--card)}
.reviews-grid{display:grid;grid-template-columns:repeat(4,1fr);border-top:1px solid var(--line);border-bottom:1px solid var(--line)}
.review{min-height:318px;padding:31px 26px 28px;border-right:1px solid var(--line);display:flex;flex-direction:column}
.review:first-child{padding-left:0}
.review:last-child{padding-right:0;border-right:0}
.review-head{display:flex;align-items:flex-start;justify-content:space-between;gap:14px;margin-bottom:25px}
.review-stars{display:flex;align-items:center;gap:2px;color:#b27a2e;line-height:1}
.review-stars .ph{width:16px;height:16px;flex-basis:16px;font-size:16px}
.review-date{color:var(--muted);font-size:11px;white-space:nowrap}
.review-quote{margin:0;font-family:var(--display);font-size:clamp(21px,1.65vw,27px);font-weight:500;line-height:1.25;letter-spacing:-.02em}
.review-meta{display:grid;gap:8px;margin-top:auto;padding-top:27px}
.review-buyer{display:flex;align-items:baseline;justify-content:space-between;gap:12px}
.review-buyer strong{font-size:13px}
.review-city{color:var(--muted);font-size:11px}
.review-product{color:var(--muted);font-size:12px}
.verified-badge{display:inline-flex;align-items:center;gap:6px;width:max-content;color:var(--walnut);font-size:10px;font-weight:700;letter-spacing:.07em;text-transform:uppercase}
.verified-badge .ph{color:var(--brass);font-size:18px}
.custom-order-wrap{--heading-color:#f7efe5;--subheading-color:#d9cdc0;--eyebrow-color:var(--brass-soft);padding:0;background:#38271e}
.custom-order-banner{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:48px;padding:clamp(56px,6.6vw,104px) clamp(36.4px,7.8vw,124.8px);background:#38271e;color:#f7efe5}
.custom-order-banner .eyebrow{color:var(--brass-soft)}
.custom-order-banner h2{max-width:800px;margin:0 0 15px;font-size:var(--section-heading-size);font-weight:600;color:var(--heading-color)}
.custom-order-banner p:not(.eyebrow){max-width:720px;margin:0;color:var(--subheading-color);font-size:var(--section-subheading-size);line-height:1.65}
.custom-order-actions{display:flex;gap:12px;flex-wrap:wrap;justify-content:flex-end}
.custom-order-actions .btn{min-width:196px}
.custom-order-actions .btn-light{background:var(--brass-soft);color:#241b16}
.custom-order-actions .btn-light:hover,.custom-order-actions .btn-light:focus-visible{background:#f7efe5;color:#241b16}
.custom-order-actions .btn-outline{color:#f7efe5;border-color:rgba(247,239,229,.68)}
.custom-order-actions .btn-outline:hover,.custom-order-actions .btn-outline:focus-visible{background:#f7efe5;border-color:#f7efe5;color:#241b16}

    .new-arrivals{background:var(--card)}
.new-arrivals .product-grid{grid-template-columns:repeat(4,1fr)}

    .materials-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:16px}
.material-card{position:relative;aspect-ratio:1;overflow:hidden;background:var(--walnut-2);color:#fff}
.material-card img{height:100%;object-fit:cover;transition:transform .55s cubic-bezier(.2,.7,.2,1),filter .25s;filter:saturate(.92) contrast(1.03)}
.material-card:after{content:"";position:absolute;inset:0;background:linear-gradient(0deg,rgba(20,13,10,.86),rgba(20,13,10,.03) 68%)}
.material-card:hover img{transform:scale(1.035);filter:saturate(1) contrast(1.08)}
.material-card-copy{position:absolute;z-index:2;left:24px;right:24px;bottom:24px}
.material-icon{margin-bottom:10px;color:#ead8bd;font-size:22px}
.material-card-copy:before{content:"Material";display:block;margin-bottom:10px;color:#ead8bd;font-size:10px;font-weight:700;letter-spacing:.14em;text-transform:uppercase}
.material-card-copy h3{margin:0 0 10px;font-family:var(--display);font-size:clamp(34px,3.1vw,48px);font-weight:500;line-height:.94}
.material-card-copy span{display:block;color:#f2dfc5;font-size:14px;font-weight:500;line-height:1.45}
.material-card:focus-visible{outline-offset:4px}

    .homes-section{background:var(--paper-2)}
.homes-carousel{position:relative}
.homes-grid{display:flex;gap:8px;overflow-x:auto;overscroll-behavior-inline:contain;scroll-snap-type:x mandatory;scroll-padding-inline:1px;scrollbar-width:none;-ms-overflow-style:none;cursor:grab;touch-action:pan-x pan-y;user-select:none}
.homes-grid::-webkit-scrollbar{display:none}
.homes-grid.dragging{cursor:grabbing;scroll-snap-type:none}
.home-shot{position:relative;flex:0 0 22%;aspect-ratio:1;margin:0;overflow:hidden;background:var(--card);scroll-snap-align:start;-webkit-user-drag:none}
.home-shot img{height:100%;object-fit:cover;transition:transform .55s cubic-bezier(.2,.7,.2,1);pointer-events:none;-webkit-user-drag:none}
.home-shot:hover img{transform:scale(1.02)}
.home-shot span{position:absolute;left:14px;bottom:14px;padding:7px 9px;background:rgba(27,18,14,.84);color:#f8efe3;font-size:11px;letter-spacing:.05em;text-transform:uppercase}
.gallery-note{margin:18px 0 0;color:var(--muted);font-size:14px;line-height:1.65}

    .faq-teaser-grid{display:grid;grid-template-columns:minmax(260px,.72fr) minmax(0,1.28fr);gap:clamp(50px,8vw,120px);align-items:start}
.faq-intro h2{margin-bottom:20px}
.faq-intro p:not(.eyebrow){max-width:420px;color:var(--muted);font-size:15px;line-height:1.75}
.faq-intro .btn{margin-top:12px}
.faq-list{border-top:1px solid var(--line)}
.faq-list .accordion-button{width:calc(100% + 24px);margin-left:-12px;display:flex;align-items:center;justify-content:space-between;gap:24px;padding:19px 12px;border:0;border-bottom:1px solid var(--line);background:transparent;text-align:left;font-size:14px;font-weight:700;letter-spacing:0;text-transform:none;cursor:pointer;transition:color .2s ease}
.faq-list .accordion-button:hover,.faq-list .accordion-button:focus-visible{background:transparent;color:var(--text-accent)}
.faq-list .accordion-button:focus-visible{outline-offset:-2px}
.faq-list .accordion-button .ph{flex:0 0 auto;width:28px;height:28px;display:grid;place-items:center;color:var(--brass);font-weight:400;line-height:1}
.faq-list .accordion-panel{padding:18px 42px 19px 0;font-size:14px;line-height:1.75}
.faq-page-list{max-width:980px;margin:0 auto 110px}
.faq-page-list .accordion-button{font-size:16px;letter-spacing:0;text-transform:none}
.faq-page-list .accordion-panel{font-size:14px;line-height:1.75}

    .page-hero{padding:clamp(58px,8vw,110px) 0 45px;border-bottom:1px solid var(--line)}
.breadcrumb{display:flex;gap:8px;align-items:center;margin-bottom:25px;color:var(--muted);font-size:10px;font-weight:700;letter-spacing:.09em;text-transform:uppercase}
.breadcrumb button{border:0;background:transparent;padding:0;color:inherit}
.page-hero h1{font-size:clamp(48px,7vw,88px);margin:0}
.page-hero-row{display:flex;align-items:end;justify-content:space-between;gap:30px}
.page-hero-row p{max-width:480px;margin:0;color:var(--muted)}

    .shop-layout{display:grid;grid-template-columns:220px 1fr;gap:50px;padding:42px 0 110px}
.filter-title{font-size:11px;font-weight:700;letter-spacing:.1em;text-transform:uppercase;margin-bottom:15px}
.filter-group{padding:20px 0;border-bottom:1px solid var(--line)}
.filter-group:first-child{padding-top:0}
.filter-button{display:flex;width:100%;align-items:center;justify-content:space-between;background:none;border:0;padding:8px 0;color:var(--muted);text-align:left}
.filter-button.active{color:var(--ink);font-weight:700}
.shop-top{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-bottom:26px}
.shop-top p{margin:0;color:var(--muted);font-size:11px}
.sort-select{min-height:42px;padding:0 34px 0 13px;background:var(--card);border:1px solid var(--line)}

    .product-media-column{position:relative;min-width:0;align-self:start;background:transparent}
.product-breadcrumb-bar{position:absolute;z-index:3;top:0;left:0;right:0;display:flex;align-items:center;gap:14px;min-height:42px;padding:12px clamp(20px,3vw,48px);background:transparent!important;background-image:none!important;border:0;box-shadow:none;backdrop-filter:none;-webkit-backdrop-filter:none;color:var(--ink)}
.product-breadcrumb-bar,.product-breadcrumb-bar *{box-shadow:none}
.product-breadcrumb-bar button{background:transparent!important}
.product-back{display:inline-flex;align-items:center;gap:7px;padding:3px 14px 3px 0;border:0;border-right:1px solid var(--line);background:transparent;color:var(--ink);font-size:13px;font-weight:700;line-height:1.3;transition:color .2s}
.product-back:hover,.product-back:focus-visible{color:var(--text-accent)}
.product-path{display:flex;min-width:0;align-items:center;gap:8px;color:var(--muted);font-size:13px;font-weight:600;line-height:1.3}
.product-path button{border:0;background:transparent;padding:3px 0;color:var(--ink);font:inherit;font-weight:700;transition:color .2s}
.product-path button:hover,.product-path button:focus-visible{color:var(--text-accent)}
.product-path [aria-current="page"]{font-weight:700;color:var(--muted)}

    .product-layout{display:grid;grid-template-columns:58% 42%;min-height:calc(100vh - 104px)}
.product-gallery{position:relative;display:grid;grid-template-columns:1fr 1fr;gap:4px;background:var(--paper);align-self:start}
.product-gallery .gallery-open{border:0;margin:0;padding:0;background:var(--product-backdrop);overflow:hidden}
.product-gallery .gallery-open{position:relative;aspect-ratio:4/5}
.product-gallery .gallery-open img{position:absolute;inset:0;width:100%;height:100%;object-fit:contain;object-position:50% 50%;transition:transform .58s cubic-bezier(.2,.7,.2,1),filter .3s}
.product-gallery .gallery-open:hover img{transform:scale(1.8)}
.product-gallery .gallery-open.is-hidden{display:none}
.product-gallery[data-finish="walnut"] .gallery-open:not(.is-lifestyle) img,.variant-option[data-finish="Walnut"] img,#lightboxImage.finish-walnut{filter:sepia(.34) saturate(1.15) hue-rotate(-12deg) brightness(.82) contrast(1.08)}
.product-gallery[data-finish="natural-oak"] .gallery-open:not(.is-lifestyle) img,.variant-option[data-finish="Natural Oak"] img,#lightboxImage.finish-natural-oak{filter:sepia(.12) saturate(.78) brightness(1.08) contrast(.98)}
.product-gallery[data-finish="matte-black"] .gallery-open:not(.is-lifestyle) img,.variant-option[data-finish="Matte Black"] img,#lightboxImage.finish-matte-black{filter:grayscale(.82) saturate(.42) brightness(.58) contrast(1.28)}
.gallery-toggle{min-width:154px;width:fit-content;margin:20px auto 24px;display:flex;align-items:center;justify-content:center;gap:9px;background:transparent!important;background-image:none!important;box-shadow:none}
.gallery-toggle:hover,.gallery-toggle:focus-visible{background:var(--walnut-2)!important}
.product-panel{padding:clamp(42px,5.5vw,86px);position:sticky;top:104px;align-self:start}
.product-title-row{display:flex;flex-direction:column;align-items:flex-start;margin-bottom:0}
.product-panel h1{width:100%;font-size:clamp(44px,5vw,68px);margin:0 0 16px;line-height:.96}
.product-rating{display:flex;align-items:center;gap:9px;flex:0 0 auto;margin:0 0 14px;color:var(--ink);font-size:13px;font-weight:700;white-space:nowrap}
.product-rating-score{font-size:14px}
.product-rating-stars{display:flex;align-items:center;gap:1px;color:var(--brass)}
.product-rating-stars .ph{font-size:16px!important;width:16px!important;height:16px!important;flex-basis:16px!important}
.product-price-row{display:flex;align-items:center;gap:12px;margin:0}
.product-price-row .sale-price{font-size:25px;font-weight:700;line-height:1;color:var(--ink)}
.product-price-row .original-price{color:var(--muted);font-size:15px;text-decoration:line-through}
.product-price-row .sale-badge{padding:5px 7px;background:var(--walnut-2);color:#fff;font-size:11px;font-weight:700;line-height:1}
.product-status{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:14px 0;border-top:1px solid var(--line);border-bottom:1px solid var(--line);font-size:12px}
.product-status strong{color:var(--brass)}
.product-desc{margin:18px 0 20px;color:var(--muted)}
.product-variants{display:none}
.product-variants.has-variants{display:block}
.option-label{display:flex;justify-content:space-between;gap:20px;margin:0 0 12px;font-size:12px;font-weight:700;letter-spacing:.08em;text-transform:uppercase}
.option-label span{color:var(--muted);font-weight:600;letter-spacing:0;text-transform:none}
.variant-options{display:flex;flex-wrap:wrap;gap:8px}
.variant-option{flex:0 0 92px;min-width:0;padding:0 0 7px;border:1px solid var(--line);background:var(--card);text-align:left;transition:border-color .2s,box-shadow .2s,color .2s}
.variant-option:hover,.variant-option:focus-visible{border-color:var(--text-accent);color:var(--text-accent)}
.variant-option.active{border-color:var(--walnut-2);box-shadow:inset 0 -3px 0 var(--walnut-2)}
.variant-option img{width:100%;aspect-ratio:4/3;object-fit:contain;object-position:50% 50%;background:var(--paper-2);transition:filter .25s}
.variant-option span{display:block;padding:7px 7px 0;font-size:11px;font-weight:700;line-height:1.25}
.product-cta{display:grid;grid-template-columns:152px 1fr;gap:12px;margin:24px 0}
.qty{min-height:56px;display:grid;grid-template-columns:48px 1fr 48px;align-items:stretch;border:1px solid var(--line);background:var(--card)}
.qty button{display:grid;place-items:center;border:0;background:transparent;padding:0;transition:background .2s,color .2s}
.qty button:first-child{border-right:1px solid var(--line)}
.qty button:last-child{border-left:1px solid var(--line)}
.qty button:hover,.qty button:focus-visible{background:var(--paper-2);color:var(--text-accent)}
.qty span{display:grid;place-items:center;font-size:16px;font-weight:700}
.product-cta>.btn{min-height:56px}
.accordion{border-top:1px solid var(--line)}
.accordion button{width:100%;display:flex;justify-content:space-between;align-items:center;padding:20px 0;border:0;border-bottom:1px solid var(--line);background:none;text-align:left;font-size:15px;font-weight:700;letter-spacing:0;text-transform:none;transition:color .2s}
.accordion button:hover,.accordion button:focus-visible{color:var(--text-accent)}
.accordion button[aria-expanded="true"]{border-bottom-color:transparent}
.accordion-panel{display:none;padding:8px 34px 18px 0;border-bottom:1px solid var(--line);color:var(--muted);font-size:14px;line-height:1.75}
.accordion-panel.open{display:block}
.product-policy-links{border-bottom:1px solid var(--line)}
.product-policy-link{display:grid;grid-template-columns:24px minmax(0,1fr) 20px;align-items:center;gap:12px;min-height:58px;padding:14px 0;color:var(--ink);transition:color .2s}
.product-policy-link+.product-policy-link{border-top:1px solid var(--line)}
.product-policy-link:hover,.product-policy-link:focus-visible{color:var(--text-accent)}
.product-policy-link>.ph:first-child{color:var(--brass)}
.product-policy-link>.ph:last-child{justify-self:end}
.product-policy-link span{display:flex;align-items:baseline;gap:8px;font-size:13px;font-weight:700}
.product-policy-link small{color:var(--muted);font-size:11px;font-weight:500}

    .commerce-shell{padding:45px 0 110px}
.commerce-grid{display:grid;grid-template-columns:minmax(0,1fr) 390px;gap:70px;align-items:start}
.cart-line{display:grid;grid-template-columns:150px 1fr auto;gap:23px;padding:24px 0;border-top:1px solid var(--line)}
.cart-line img{aspect-ratio:1;object-fit:contain;object-position:50% 50%;background:var(--paper-2)}
.cart-line h3{margin:5px 0 8px;font-family:var(--display);font-size:28px}
.meta{margin:4px 0;color:var(--muted);font-size:11px}
.remove{border:0;background:none;color:var(--danger);padding:0;font-size:10px;font-weight:700;letter-spacing:.08em;text-transform:uppercase}
.line-side{text-align:right;display:flex;flex-direction:column;justify-content:space-between;align-items:flex-end}
.summary{padding:28px;background:var(--card);box-shadow:var(--shadow)}
.summary h2{font-size:34px;margin-bottom:20px}
.summary-row{display:flex;justify-content:space-between;gap:20px;padding:12px 0;border-bottom:1px solid var(--line);font-size:12px}
.summary-row span:last-child{text-align:right}
.summary-note{margin:17px 0;color:var(--muted);font-size:11px}
.empty-cart{display:none;padding:80px 20px;text-align:center;border-top:1px solid var(--line)}
.empty-cart h2{font-size:48px;margin-bottom:12px}
.empty-cart p{color:var(--muted)}

    .checkout-form h2{font-size:36px;margin:0 0 24px}
.form-section{padding:0 0 38px;margin-bottom:36px;border-bottom:1px solid var(--line)}
.fields{display:grid;grid-template-columns:1fr 1fr;gap:17px}
.field.full{grid-column:1/-1}
.field label{display:block;margin-bottom:7px;font-size:10px;font-weight:700;letter-spacing:.08em;text-transform:uppercase}
.field input,.field select,.field textarea{width:100%;min-height:49px;padding:12px 13px;background:var(--card);border:1px solid var(--line);border-radius:0}
.field textarea{min-height:100px;resize:vertical}
.payment-choice{padding:18px;border:1px solid var(--brass);background:var(--card)}
.payment-choice strong{display:block;font-size:12px}
.payment-choice span{color:var(--muted);font-size:11px}
.checkout-summary-item{display:grid;grid-template-columns:68px 1fr;gap:13px;padding-bottom:16px;margin-bottom:10px;border-bottom:1px solid var(--line)}
.checkout-summary-item img{aspect-ratio:1;object-fit:contain;object-position:50% 50%;background:var(--paper-2)}
.checkout-summary-item h3{font-size:12px;margin:5px 0}
.notice{padding:14px 16px;margin-bottom:18px;border:1px solid var(--line);color:var(--muted);font-size:11px}

    .footer{padding:0;background:#120d0b;color:#e7ddd2;--interactive-underline:#a7793f}
.footer-lead{display:grid;grid-template-columns:1fr minmax(340px,.8fr);gap:70px;align-items:end;padding:64px 0 48px;border-bottom:1px solid rgba(255,255,255,.16)}
.footer-name{font-family:var(--display);font-size:42px;letter-spacing:.18em;line-height:1}
.footer-lead p{max-width:430px;margin:12px 0 0;color:#ad9f92;font-size:12px}
.newsletter label{display:block;margin-bottom:12px;font-size:11px;font-weight:700;letter-spacing:.1em;text-transform:uppercase}
.newsletter-row{display:grid;grid-template-columns:1fr auto;border:1px solid transparent;border-bottom-color:#e7ddd2;transition:border-color .2s,box-shadow .2s}
.newsletter-row:focus-within{border-color:var(--brass);box-shadow:inset 0 0 0 1px var(--brass)}
.newsletter-row input{min-width:0;height:48px;padding:0 12px;background:transparent;border:0;color:#fff}
.newsletter-row input:focus-visible{outline:0}
.newsletter-row input::placeholder{color:#a99b8f}
.newsletter-row button{width:48px;height:48px;padding:0;display:grid;place-items:center;align-self:center;border:0;background:transparent;color:#fff;line-height:1}
.newsletter-row .ph{font-size:22px}
.footer-columns{display:grid;grid-template-columns:1.35fr 1.2fr 1fr .65fr;gap:54px;padding:50px 0}
.footer-group h3{margin:0 0 18px;font-size:12px;font-weight:700;letter-spacing:.1em;text-transform:uppercase;color:#fff}
.footer-links{list-style:none;margin:0;padding:0}
.footer-links li+li{margin-top:10px}
.footer-links span{position:relative;display:inline-block;color:#b9ada1;font-size:11px;line-height:1.45;cursor:pointer;transition:color .2s}
.footer-links span:hover,.footer-links span:focus-visible{color:#fff}
.footer-social{display:flex;gap:12px}
.social-icon{width:36px;height:36px;display:grid;place-items:center;border:1px solid rgba(255,255,255,.22);color:#ad9f92;cursor:pointer;transition:color .2s,background .2s,border-color .2s,transform .2s}
.social-icon:hover{color:#18110d;background:var(--brass);border-color:var(--brass);transform:translateY(-2px)}
.social-icon .ph{font-size:22px}
.footer-bottom{padding:19px 0;border-top:1px solid rgba(255,255,255,.16);color:#8f8174;font-size:10px;letter-spacing:.04em}
.footer-bottom .container{display:flex;justify-content:space-between;gap:24px}
.footer-bottom span:last-child{text-align:right}

    .mobile-panel{position:fixed;z-index:70;inset:0;padding:22px;background:var(--paper);transform:translateX(-100%);transition:transform .28s;display:flex;flex-direction:column;overflow-y:auto}
.mobile-panel.open{transform:none}
.mobile-head{display:flex;align-items:center;justify-content:space-between;padding-bottom:20px;border-bottom:1px solid var(--line)}
.mobile-nav{display:flex;flex-direction:column;padding:32px 0}
.mobile-nav button{padding:12px 0;background:none;border:0;border-bottom:1px solid var(--line);font-family:var(--display);font-size:25px;text-align:left}
.toast{position:fixed;z-index:80;right:24px;bottom:24px;max-width:350px;padding:15px 18px;background:var(--walnut-2);color:#fff;box-shadow:var(--shadow);transform:translateY(130%);opacity:0;transition:.25s}
.toast.show{transform:none;opacity:1}
.lightbox{position:fixed;z-index:90;inset:0;display:none;place-items:center;padding:28px;background:rgba(15,10,8,.88)}
.lightbox.open{display:grid}
.lightbox img{max-width:min(900px,92vw);max-height:88vh;object-fit:contain}
.lightbox-close{position:absolute;right:20px;top:20px;color:#fff;border-color:rgba(255,255,255,.45)!important}

    /* Comfortable reading sizes across navigation, commerce, cards and footer. */
    .announcement{font-size:11px}
.nav button,.header-search input{font-size:13px}
.cart-count{font-size:10px}
.mega-feature span{font-size:13px}
.eyebrow{font-size:12px}
.btn,.text-link{font-size:12px}
.hero-actions .btn{font-size:12px}
.hero-note{font-size:12px}
.trust-item strong{font-size:13px}
.trust-item span{font-size:13px;line-height:1.5}
.category-copy span{font-size:13px}
.category-copy>a{font-size:12px}
.product-tag{font-size:12px}
.quick-view{font-size:12px}
.product-kicker{font-size:12px}
.product-price,.product-sub{font-size:12px}
.step p{font-size:14px;line-height:1.65}
.breadcrumb,.shop-top p{font-size:12px}
.filter-title,.filter-button,.product-status,.size-btn{font-size:12px}
.option-label{font-size:12px}
.product-desc{font-size:14px}
.accordion button{font-size:15px}
.accordion-panel{font-size:14px}
.meta{font-size:12px}
.remove{font-size:12px}
.summary-row{font-size:13px}
.summary-note{font-size:12px}
.field label{font-size:12px}
.payment-choice strong{font-size:13px}
.payment-choice span{font-size:12px}
.checkout-summary-item h3{font-size:13px}
.notice{font-size:12px}
.footer-lead p{font-size:13px}
.newsletter label{font-size:12px}
.footer-links span{font-size:13px}
.footer-bottom{font-size:12px}

    /* One Phosphor Regular icon system: one stroke family and one optical size site-wide. */
    .ph{width:var(--icon-size)!important;height:var(--icon-size)!important;flex-basis:var(--icon-size)!important;font-size:var(--icon-size)!important}

    /* Final homepage QA: consistent hierarchy, true image centering and clear interaction feedback. */
    .section-head{align-items:flex-end}
.section-head>div{min-width:0}
.section-head h2,.faq-intro h2,.custom-order-banner h2,.feature-copy h2{line-height:1.02}
.section-head>p,.faq-intro>p:not(.eyebrow),.custom-order-banner p:not(.eyebrow),.feature-copy p:not(.eyebrow){font-weight:400}
.related-section-head .btn,.related-section-head .shop-all-btn{flex:0 0 auto;white-space:nowrap}

    .category-card img,.material-card img,.home-shot img{object-position:50% 50%}

    /* One uncropped product-image treatment across home carousels, shop/category grids and related-product grids. */
    .product-card{display:flex;flex-direction:column}
.product-media{position:relative;z-index:3;display:block;aspect-ratio:4/5;overflow:hidden;contain:paint}
.product-media>img{position:absolute;inset:0;width:100%;height:100%;max-width:100%;max-height:100%;object-fit:contain;object-position:50% 50%;transform:scale(1)!important;transition:transform .45s cubic-bezier(.2,.7,.2,1),opacity .2s;will-change:transform}
.product-card:hover .product-media>img,.product-card:focus-within .product-media>img{transform:scale(1.025)!important}
.product-tag,.discount-tag{position:absolute;z-index:3;top:14px;min-height:28px;display:flex;align-items:center}
.product-tag{left:14px}
.discount-tag{right:14px}
.product-info{position:relative;z-index:1;min-height:60px;flex:0 0 auto}
.product-card:hover .product-title,.product-card:focus-within .product-title{color:var(--text-accent)}
.product-title{transition:color .2s ease}

    /* Product detail gallery: every photo fills its own cell; cells are separated by the permanent 4px hairline gaps (see the PERMANENT RULE below). */
    .product-media-column{overflow:hidden}
.product-gallery{grid-template-columns:repeat(2,minmax(0,1fr));column-gap:4px!important;row-gap:4px!important;background:var(--paper)}
.product-gallery .gallery-open{display:block;width:100%;min-width:0;margin:0!important;padding:0!important;aspect-ratio:7/9;overflow:hidden;contain:paint;border:0!important;border-radius:0!important;outline:0;box-shadow:none!important;background:var(--product-backdrop)!important;line-height:0;vertical-align:top;cursor:zoom-in}
.product-gallery .gallery-open.is-hidden{display:none}
.product-gallery .gallery-open img{display:block;position:absolute;inset:0;width:100%;height:100%;max-width:none;max-height:none;margin:0!important;padding:0!important;border:0!important;opacity:1!important;visibility:visible!important;object-fit:cover;object-position:50% 50%;transform:scale(1);transform-origin:var(--zoom-x,50%) var(--zoom-y,50%);transition:transform .4s ease-out,filter .3s;will-change:transform}
.product-gallery .gallery-open:hover img,.product-gallery .gallery-open:focus-visible img{transform:scale(1.8)}
.variant-option img,.cart-line img,.checkout-summary-item img{width:100%;height:100%;max-width:100%;max-height:100%;object-fit:contain;object-position:50% 50%}
.product-variants{margin-top:2px}
.option-label{margin-bottom:15px}
.variant-options{gap:12px}
.variant-option{flex-basis:104px;padding-bottom:10px}
.variant-option span{padding:10px 9px 0;font-size:14px;line-height:1.35}
.product-cta{margin:26px 0}
.product-panel .accordion .accordion-button{color:var(--ink)}
.product-panel .accordion .accordion-button:hover,.product-panel .accordion .accordion-button:focus-visible{color:var(--text-accent)}

    /* PERMANENT RULE — never remove: the gallery cells are separated by 4px hairline gaps. The grid's own background is the page colour (--paper), so the 4px column/row gaps always read as visible hairlines between the fixed-backdrop cells; the cells themselves keep the one fixed backdrop colour. Do not paint the grid background with the backdrop colour again — that is what made the gaps disappear. */
    .product-gallery{gap:4px!important;border:0!important;background-color:var(--paper)!important;background-image:none!important;overflow:hidden}

    .product-gallery .gallery-open{appearance:none;-webkit-appearance:none;background-color:var(--product-backdrop)!important;background-image:none!important;border:0!important;outline:0!important;box-shadow:none!important;font-size:0}

    /* Gallery rule: every photo always renders in a standard half-width cell of the 2-column grid. No photo ever spans the full row — not on Show more, not on an odd count; photos only ever appear as pairs of cells (2, 4, 6, 8). */
    .product-gallery .gallery-open{grid-column:auto;aspect-ratio:7/9}

    /* FINISH variants: one aligned row — identical thumbnail boxes, one even gap between thumbnails, labels clear of the thumbnails, and a clean gap before the quantity / Add to Cart row. */
    .product-variants{margin-top:4px}

    .product-variants .option-label{margin:0 0 14px}

    .variant-options{display:flex;flex-wrap:nowrap;align-items:stretch;gap:12px}

    .variant-option{flex:1 1 0;min-width:0;max-width:120px;display:flex;flex-direction:column;align-items:stretch;padding:0 0 12px}

    .variant-option img{flex:0 0 auto;display:block;width:100%;height:auto;aspect-ratio:4/3;object-fit:contain;object-position:50% 50%}

    .variant-option span{display:block;margin-top:12px;padding:0 9px;font-size:14px;line-height:1.35;min-height:38px}

    .product-cta{margin:28px 0 24px}

    @media(max-width:720px){.variant-options{gap:10px}
.variant-option span{padding:0 7px}
}

    /* Finish selector cards — every preview sits on the SAME fixed backdrop colour the product cards use (--product-backdrop), identical in all three cards. The backdrop is painted by the card's ::before layer (exactly the preview box) so the per-finish tint filter on the image can never shift it; the transparent product cutout sits on top of it (contain, never cropped), each finish keeping its own tint so the three previews read differently. The label gets one even gap under the preview. The selected card keeps its black border. */
    .variant-option{position:relative;padding-bottom:0}

    .variant-option::before{content:"";position:absolute;top:0;left:0;right:0;aspect-ratio:4/3;background:var(--product-backdrop)}

    .variant-option img{position:relative;opacity:1!important;object-fit:contain;object-position:50% 50%;background:transparent;padding:5px}

    /* Label zone: fills the rest of the card under the preview, with exactly equal padding above and below the text (10px top = 10px bottom) and the text vertically centred in the zone. All three cards stretch to one height, so every label — one line (Walnut) or two (Natural Oak, Matte Black) — gets the identical space above it (preview → label) and below it (label → card bottom edge), and the selected card's label sits on the same geometry. */
    .variant-option span{flex:1 1 auto;display:flex;align-items:center;margin-top:0;padding:10px;min-height:0}

    .brand,.text-link,.breadcrumb button,.mobile-nav button{transition:color .2s ease}
.brand:hover,.brand:focus-visible,.text-link:hover,.text-link:focus-visible,.breadcrumb button:hover,.breadcrumb button:focus-visible{color:var(--text-accent)}
.mobile-nav button:hover,.mobile-nav button:focus-visible{color:var(--text-accent);padding-left:8px}
.social-icon:focus-visible{color:#fff;border-color:var(--brass-soft)}

    .search-submit,.newsletter-row button{transition:color .2s ease,background-color .2s ease}
.search-submit:hover,.search-submit:focus-visible{color:var(--text-accent);background:color-mix(in srgb,var(--brass-soft) 24%,transparent)!important;outline-offset:0}
.newsletter-row button:hover,.newsletter-row button:focus-visible{color:#18110d;background:var(--brass-soft);outline-offset:-2px}

    @media(max-width:1120px){.nav{grid-template-columns:auto 1fr}
.nav-links{display:none}
.brand{justify-self:start}
.nav-actions{grid-column:2}
.menu-btn{display:inline-grid!important}
.category-grid{grid-template-columns:1fr 1fr}
.category-card.featured{grid-column:span 2}
.product-scroll .product-card{flex-basis:calc((100% - 32px)/3)}
.product-grid.compact{grid-template-columns:repeat(3,1fr)}
.reviews-grid{grid-template-columns:repeat(2,1fr)}
.review:nth-child(2){border-right:0;padding-right:0}
.review:nth-child(3){padding-left:0;border-top:1px solid var(--line)}
.review:nth-child(4){border-top:1px solid var(--line)}
.product-layout{grid-template-columns:1fr}
.product-panel{position:static}
.commerce-grid{grid-template-columns:1fr}
.summary{box-shadow:none;border:1px solid var(--line)}
.footer-columns{grid-template-columns:1fr 1fr}
.footer-social{grid-column:1/-1}
.footer-lead{gap:40px}
}

    @media(max-width:720px){.announcement{height:28px;padding:5px 12px;font-size:10px;letter-spacing:.1em}
.nav{width:calc(100% - 32px);height:64px}
.brand{font-size:20px}
.nav-actions .nav-link{display:none}
.header-search{width:36px;background:transparent}
.header-search input{display:none}
.header-search.mobile-open{position:fixed;left:16px;right:16px;top:72px;width:auto;height:46px;padding:5px;background:var(--card);box-shadow:var(--shadow);z-index:75}
.header-search.mobile-open input{display:block;padding-left:10px;padding-right:40px}
.header-search.mobile-open .search-submit{right:7px;top:7px}
.nav-actions>.icon-btn{width:32px}
.container{width:calc(100% - 32px)}
.section{padding:66px 0}
.section-head,.page-hero-row{align-items:flex-start;flex-direction:column}
.section-head{gap:16px;margin-bottom:30px}
.section-head .eyebrow{margin-bottom:12px}
.section-head>p{max-width:36rem}
.hero{display:grid;grid-template-columns:1fr;grid-template-rows:auto minmax(270px,42svh);height:auto;min-height:calc(100svh - 92px);max-height:none}
.hero-copy{min-height:0;padding:38px 20px 34px;overflow:visible}
.hero-media{min-height:270px;height:100%}
.hero-copy h1{font-size:clamp(43px,13vw,58px);margin-bottom:16px}
.hero-copy>p:not(.eyebrow){font-size:15px;line-height:1.65}
.hero-actions{margin-top:10px}
.hero-actions .btn{min-height:46px}
.hero-note{font-size:10px}
.hero-actions .btn{width:100%}
.hero-note{right:12px;bottom:12px;max-width:245px}
.hero-dots{left:12px;bottom:16px}
.trust-strip{grid-template-columns:1fr 1fr}
.trust-item{padding:15px 10px!important;border-right:0}
.trust-item:nth-child(even){border-left:1px solid var(--line);padding-left:16px!important}
.category-grid{grid-template-columns:1fr}
.category-card.featured{grid-column:auto}
.category-card{min-height:390px}
.product-grid,.product-grid.compact{grid-template-columns:1fr 1fr;gap:32px 10px}
.product-scroll{gap:10px}
.product-scroll .product-card{flex-basis:calc((100% - 10px)/2)}
.product-control{width:42px;height:42px}
.product-control.prev{left:5px}
.product-control.next{right:5px}
.product-title{font-size:16px}
.product-price{grid-column:1/-1;text-align:left}
.quick-view{position:absolute;left:10px;right:10px;bottom:10px;transform:none;opacity:1;visibility:visible;pointer-events:auto;width:auto;margin:0;height:48px}
.feature-band{grid-template-columns:1fr}
.feature-band img{min-height:430px}
.feature-copy{padding:48px 22px}
.steps{grid-template-columns:1fr}
.step,.step+.step{min-height:0;padding:22px 0;border-right:0;border-top:1px solid var(--line)}
.reviews-grid{grid-template-columns:1fr}
.review,.review+.review{min-height:0;padding:28px 0;border-right:0;border-bottom:1px solid var(--line)}
.review:last-child{border-bottom:0}
.review-meta{margin-top:24px}
.custom-order-banner{grid-template-columns:1fr;gap:28px;padding:44px 24px}
.custom-order-actions{justify-content:flex-start}
.custom-order-actions .btn{width:100%}
.shop-layout{grid-template-columns:1fr;gap:22px;padding-top:28px}
.filters{display:flex;gap:10px;overflow:hidden}
.filter-group{min-width:0;flex:1;padding:0;border:0}
.filter-group:nth-child(n+3){display:none}
.filter-title{display:none}
.filter-button{border:1px solid var(--line);padding:10px;justify-content:center}
.filter-button span:last-child{display:none}
.shop-top{align-items:flex-start;flex-direction:column}
.product-breadcrumb-bar{min-height:40px;padding:9px 16px;gap:10px;overflow:hidden}
.product-back{padding-right:10px}
.product-path{min-width:0;gap:6px;font-size:12px;white-space:nowrap}
.product-gallery{gap:4px}
.product-panel{padding:38px 16px}
.product-title-row{align-items:flex-start;flex-direction:column;gap:0}
.product-rating{padding-bottom:0}
.product-price-row{flex-wrap:wrap}
.product-cta{grid-template-columns:130px 1fr}
.qty{grid-template-columns:40px 1fr 40px}
.commerce-shell{padding-top:30px}
.cart-line{grid-template-columns:100px 1fr;gap:16px}
.line-side{grid-column:2;align-items:flex-start;text-align:left}
.fields{grid-template-columns:1fr}
.field.full{grid-column:auto}
.footer-lead{grid-template-columns:1fr;gap:34px;padding:50px 0 38px}
.newsletter{width:100%}
.footer-columns{grid-template-columns:1fr;gap:34px;padding:40px 0}
.footer-social{grid-column:auto}
.footer-bottom .container{align-items:flex-start;flex-direction:column}
.footer-bottom span:last-child{text-align:left}
.toast{left:16px;right:16px;bottom:16px}
.page-hero{padding:48px 0 34px}
.related-section-head{flex-direction:row;align-items:flex-end;gap:12px}
.related-section-head h2{font-size:clamp(32px,9.5vw,40px)}
.related-section-head .eyebrow{margin-bottom:10px}
.related-section-head .btn,.related-section-head .shop-all-btn{min-height:44px;padding:10px 13px;font-size:10px}
.category-control{width:42px;height:42px}
.category-control.prev{left:5px}
.category-control.next{right:5px}
}

    @media(max-width:1120px){.materials-grid{grid-template-columns:1fr 1fr}
.new-arrivals .product-grid{grid-template-columns:repeat(2,1fr)}
.home-shot{flex-basis:30%}
.faq-teaser-grid{grid-template-columns:1fr;gap:36px}
}

    @media(max-width:720px){.materials-grid{gap:10px}
.material-card-copy{left:16px;right:16px;bottom:16px}
.material-card-copy:before{margin-bottom:7px;font-size:9px}
.material-card-copy h3{font-size:30px}
.material-card-copy span{font-size:13px}
.new-arrivals .product-grid{gap:32px 10px}
.product-tag,.discount-tag{top:10px;min-height:28px;padding:5px 7px}
.product-tag{left:10px;font-size:9px;letter-spacing:.055em}
.discount-tag{right:10px;font-size:9px}
.product-info{grid-template-columns:1fr;gap:6px;min-height:88px;padding-top:13px}
.product-pricing{justify-content:flex-start;gap:6px}
.product-price-old{font-size:11px}
.product-price-new{font-size:17px}
.homes-grid{gap:6px}
.home-shot{flex-basis:42%}
.home-shot span{left:9px;bottom:9px;font-size:9px}
.faq-list .accordion-button,.faq-page-list .accordion-button{font-size:13px}
.faq-page-list{margin-bottom:70px}
}

    @media(max-width:390px){.product-grid,.product-grid.compact,.new-arrivals .product-grid{grid-template-columns:1fr}
.product-media{aspect-ratio:5/6}
.nav-actions{gap:6px}
.materials-grid{grid-template-columns:1fr}
}

    @media(prefers-reduced-motion:reduce){*,*:before,*:after{scroll-behavior:auto!important;transition-duration:.01ms!important}
.hero-slide{transition:none}
}

    /* Open accordion: title and content read as one unit. When a section is expanded, the title's bottom padding collapses and the panel's top padding shrinks, so the title text and the content text sit about 10px apart — tight and connected, but the text still has room to breathe. Closed sections keep their full rhythm. Applies to the product-panel accordions (e.g. "Made-to-order journey") and the FAQ accordions alike. */
    .accordion button[aria-expanded="true"]{padding-bottom:4px}

    .accordion-panel{padding-top:6px}

    .faq-list .accordion-button[aria-expanded="true"]{padding-bottom:4px}

    .faq-list .accordion-panel{padding-top:6px}

    /* Gallery Show more / Show less — Adidas-style overlap: the toggle straddles the gallery's bottom edge, half over the last photo row and half below it, centred. The negative top margin (half the 49px button height) removes the separate empty strip that used to sit under the photos, and the solid card background — the secondary button's look — keeps the label readable where it sits over the photo. Hover fill and the Show more/less toggle behaviour are unchanged, in both the collapsed and expanded states. */
    .gallery-toggle{position:relative;z-index:3;margin:-25px auto 0;background:var(--card)!important}

    /* Product detail — one type scale. Tiers, largest to smallest: product title (display serif) → sale price → accordion titles / section labels → body & option text → supporting meta (rating, breadcrumb, policy microcopy). This pass changes hierarchy, size, weight and colour only — no spacing is touched. All colours stay on the walnut / cream / brass tokens, in light and dark mode alike. */
    /* Breadcrumb: the quietest line on the page — smaller and lighter than the rating line above the title. Separators and the current page stay muted; links keep the ink colour at a calmer weight. */
    .product-path{font-size:12px;font-weight:600}

    .product-path button{font-weight:600}

    .product-path [aria-current="page"]{font-weight:600}

    /* Rating line: supporting meta, not a headline. The score keeps the emphasis, the stars stay brass, and the review count recedes to muted at a medium weight. */
    .product-rating{font-weight:600}

    .product-rating>span:last-child{color:var(--muted);font-weight:500}

    /* Price: a clear second tier under the title. Sale price steps up; the struck-through original settles onto the body size at a medium weight so it reads as reference, not competition. The discount badge is unchanged. */
    .product-price-row .sale-price{font-size:28px}

    .product-price-row .original-price{font-size:14px;font-weight:500}

    /* Finish variant names: option text — one step below the accordion titles in both size and weight, so the FINISH label and the accordion headings keep their rank. */
    .variant-option span{font-size:13px;font-weight:600}

    /* Policy microcopy ("Shipping charges") joins the site's 12px floor for supporting text. */
    .product-policy-link small{font-size:12px}

    /* The section below the panel ("You may also like") is a supporting section: its heading steps down a tier from the product title instead of matching it at the full section scale. */
    #page-product .related-section-head h2{font-size:clamp(34px,3.4vw,48px)}

    /* Product detail — spacing rhythm pass, three fixes. (1) One row pitch for the panel's stacked lists: a closed accordion row is 65px (20px padding + 24px line + its 1px rule), so the policy-link rows below move from a 58px min-height to 65px — every row in the stack, accordion or policy link, now measures the same 65px. The expanded-accordion treatment (collapsed title padding, tight panel top) is untouched. (2) The break between the panel's last element and "You may also like" shrinks from the full section gap (74–126px, plus the panel's own bottom padding when the panel is the taller column) to a balanced one: the panel's bottom padding and the related section's top padding are both trimmed, so the section break reads as a deliberate step up from the panel's internal gaps instead of dwarfing them. The related section's bottom padding keeps the site rhythm before the footer. (3) The panel top drops its 14/16/18/20px staircase for a single 16px beat: rating → title, title → price (already 16px), price → description and description → Finish now all step by the same 16px. */
    .product-policy-link{min-height:65px}

    #page-product .product-panel{padding-bottom:clamp(24px,3vw,40px)}

    #page-product>.section{padding-top:clamp(40px,4vw,56px)}

    .product-rating{margin-bottom:16px}

    .product-desc{margin:16px 0}

    /* Product detail — title breathing room. The panel's 16px beat was set equal on every step, but the step under the title is the one place it reads wrong: the title is a 44–68px display serif set at a tight .96 line-height, so its glyphs fill almost the whole line box and a 16px margin leaves the price visually stuck to the last title line. The title → price step therefore rises to 24px — one and a half beats: enough air for the big serif to land as its own tier, not so much that price and title split into separate groups. Every neighbouring step keeps the 16px beat (rating → title 16px, price → description 16px), and description → Finish now measures exactly 16px too: the variants block's stray 4px top margin, which had quietly made that step 20px, is removed. */
    .product-panel h1{margin-bottom:24px}

    .product-variants{margin-top:0}

    /* Gallery image rule: position #2 is ALWAYS the lifestyle photo — it renders full-bleed with its own natural room background (cover, flush to the cell edges) and the fixed-background rule never applies to it. Every other photo (1, 3, 4, 5, 6 — however many there are: 2, 4 or 6) is a transparent product cutout sitting on the one fixed background colour the product cards use (--product-backdrop, already the gallery cell colour), shown whole via contain and never cropped. The 1.8x hover zoom and the finish tint apply to the cutouts exactly as before; the lifestyle photo keeps its natural colours and is exempt from the finish tint. */
    .product-gallery .gallery-open img{object-fit:contain}

    .product-gallery .gallery-open.is-lifestyle img{object-fit:cover}

    /* Cart page — three fixes. (1) ONE divider under "Your cart": the page-hero already ends in a bottom rule, and the cart line (and the empty-cart state) each added their own top rule on top of it, so two parallel lines showed under the heading. The cart-side top rules are removed on this page only; the hero's single divider stays. (2) Quantity is a real stepper — the product page's .qty component (bordered box, minus / value / plus with the same hover treatment), sized to sit inside the cart line; the REMOVE link stays directly under it. (3) Continue shopping uses the site's secondary button (.shop-all-btn — the Show More style: outline, black text, dark fill on hover) and sits below the cart items at the left of the items column, clear of the thumbnail. */
    #page-cart .cart-line{border-top:0}

    #page-cart .empty-cart{border-top:0}

    .cart-qty-row{display:flex;align-items:center;gap:14px;margin-top:14px}

    .cart-qty-label{font-size:12px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--muted)}

    .qty.cart-qty{width:152px;min-height:46px;grid-template-columns:42px 1fr 42px}

    .qty.cart-qty span{font-size:15px}

    /* REMOVE sits directly beside the quantity stepper — immediately after it on the right, separated only by the row's flex gap, vertically centred on the stepper (the row's align-items:center). The old margin-left:auto that pushed it to the row's far right end, floating mid-column with a wide empty gap after the stepper, is gone. */
    .cart-qty-row .remove{margin-left:0}

    .continue-shopping{margin-top:26px}

    @media(max-width:720px){.continue-shopping{width:100%}
}

    /* Cart thumbnail — the product-card photo system, applied to the cart. The thumbnail is the transparent front cutout (the same image the product gallery leads with), sitting on the one fixed solid backdrop colour the product cards use (--product-backdrop), in a true square box shown whole via contain — so no part of the product is ever cropped top or bottom. The old opaque room photo is gone, and the shared height:100% rule that stretched the box to the row height (breaking the square and cutting the photo) is overridden for the cart only. */
    #page-cart .cart-line img{width:100%;height:auto;aspect-ratio:1;background:var(--product-backdrop);object-fit:contain;object-position:50% 50%}

    /* Cart page spacing — no empty strip under the header. The shared .page-hero top padding (clamp(58px,8vw,110px)) is the tall band that sat between the sticky nav and the "Home / Cart" breadcrumb on this page, so the cart hero gets a compact top step and a closer rule under the heading; the items block keeps the shared commerce-shell bottom rhythm but starts nearer the hero. Cart page only — the shared hero stays as-is on shop / checkout / FAQ. */
    #page-cart .page-hero{padding-top:34px;padding-bottom:32px}

    #page-cart .commerce-shell{padding-top:34px}

    @media(max-width:720px){#page-cart .page-hero{padding-top:26px;padding-bottom:26px}
#page-cart .commerce-shell{padding-top:26px}
}

    /* Cart line tidy-up: the item title used to sit under a "Signature concept 01" eyebrow, and its top margin was tuned for that eyebrow — with the eyebrow gone the title starts the block flush. In the right-hand column, "Quote pending" used to be spaced against a small "Made to order" note under it; that note is removed (the summary already explains the quote stage), so the column is just the status, top-aligned with the item. */
    #page-cart .cart-line h3{margin-top:0}

    #page-cart .line-side{justify-content:flex-start}

    /* The quantity row now carries label + stepper + Remove; let it wrap on narrow phones instead of overflowing the item column. */
    #page-cart .cart-qty-row{flex-wrap:wrap}

    /* Small phones: the label takes its own line so the stepper and REMOVE always stay together on the next line, REMOVE immediately right of the stepper — the same pairing as desktop, never wrapped away on its own. The stepper narrows slightly so the pair fits the item column down to ~360px wide. */
    @media(max-width:480px){#page-cart .cart-qty-label{flex-basis:100%}
#page-cart .qty.cart-qty{width:132px;grid-template-columns:38px 1fr 38px}
}

    /* Cart page — multiple items: every cart line after the first carries the divider between items; the first VISIBLE line stays rule-free under the hero's single divider (JS moves .no-top to whichever line is first, so removing an item never doubles or drops the rule). The header bag badge (.cart-count, styled with the nav) shows the total quantity across all items and hides when the bag is empty. */
    #page-cart .cart-line{border-top:1px solid var(--line)}

    #page-cart .cart-line.no-top{border-top:0}

    .cart-count[hidden]{display:none}

    /* Product detail — customer reviews (design B, locked from the reviews placement demo): full-width section under the buy panel, before "You may also like". Left sticky summary panel (Customer reviews heading, 4.7, stars, review count, distribution bars, % recommend, WRITE A REVIEW) + right review cards. The first 3 reviews show; SHOW ALL expands the remaining 15 inline in the same list and becomes SHOW LESS. Review content is sample copy — no verified badges or claims anywhere in the section. */
    .pdp-reviews{padding-bottom:0}

    .pdp-reviews-grid{display:grid;grid-template-columns:340px minmax(0,1fr);gap:28px;align-items:start}

    .pd-summary{position:sticky;top:118px;background:var(--card);border:1px solid var(--line);border-radius:8px;padding:30px}

    .pd-summary h2{font-size:28px;margin:0 0 20px}

    .pd-summary-big{display:flex;align-items:center;gap:16px}

    .pd-summary-num{font-family:var(--display);font-size:58px;font-weight:600;line-height:1;color:var(--heading-color)}

    .pd-summary-count{margin-top:5px;color:var(--muted);font-size:13px;font-weight:600}

    .pd-stars{position:relative;display:inline-block;font-size:15px;line-height:1;letter-spacing:2px;color:var(--line);white-space:nowrap}

    .pd-stars-fill{position:absolute;left:0;top:0;overflow:hidden;color:var(--brass)}

    .pd-stars-lg{font-size:18px}

    .pd-dist{display:grid;gap:8px;margin-top:24px}

    .pd-dist-row{display:flex;align-items:center;gap:10px;font-size:12px;font-weight:700;color:var(--muted)}

    .pd-dist-label{flex:0 0 26px}

    .pd-dist-track{flex:1;height:7px;border-radius:99px;background:color-mix(in srgb,var(--ink) 10%,transparent);overflow:hidden}

    .pd-dist-fill{display:block;height:100%;border-radius:99px;background:var(--brass)}

    .pd-dist-count{flex:0 0 16px;text-align:right}

    .pd-rec{display:flex;gap:9px;align-items:flex-start;margin-top:22px;padding-top:20px;border-top:1px solid var(--line);font-size:13px;line-height:1.55;color:var(--muted)}

    .pd-rec .ph{color:var(--brass);margin-top:1px}

    .pd-rec strong{color:var(--ink)}

    .pd-summary .btn{margin-top:22px}

    .pd-sample-note{margin:14px 0 0;color:var(--muted);font-size:11px;text-align:center}

    .pd-review-list{display:grid;gap:14px}

    .pd-review{background:var(--card);border:1px solid var(--line);border-radius:8px;padding:22px 24px}

    .pd-review-text{margin:10px 0 0;font-size:14px;line-height:1.65;color:var(--ink)}

    .pd-review-meta{display:flex;align-items:baseline;gap:10px;flex-wrap:wrap;margin-top:13px}

    .pd-review-meta strong{font-size:14px}

    .pd-review-meta span{color:var(--muted);font-size:12px;font-weight:600}

    .pd-review-extra{display:none}

    .pdp-reviews.expanded .pd-review-extra{display:block}

    .pd-reviews-foot{margin-top:18px}

    @media(max-width:1120px){.pdp-reviews-grid{grid-template-columns:1fr}
.pd-summary{position:static}
}

    @media(max-width:720px){.pd-summary{padding:24px}
.pd-review{padding:20px}
.pd-summary-num{font-size:50px}
.pd-reviews-foot .shop-all-btn{width:100%}
}

    /* Write a review modal (product page): same veil pattern as the lightbox; submitting prepends the review to the list above. */
    .review-modal-veil{position:fixed;inset:0;z-index:95;display:none;align-items:center;justify-content:center;padding:18px;background:rgba(15,10,8,.62)}

    .review-modal-veil.open{display:flex}

    .review-modal{width:100%;max-width:480px;max-height:88vh;overflow:auto;background:var(--card);color:var(--ink);border-radius:8px;box-shadow:var(--shadow);padding:30px}

    .review-modal h3{font-family:var(--display);font-size:29px;font-weight:600;margin:0 0 6px;color:var(--heading-color)}

    .review-modal-sub{margin:0 0 20px;color:var(--muted);font-size:13px;line-height:1.6}

    .review-modal .field{margin-bottom:16px}

    .pd-pick-stars{display:flex;gap:2px}

    .pd-pick-star{padding:2px;border:0;background:none;font-size:28px;line-height:1;color:var(--line);transition:color .15s}

    .pd-pick-star.on{color:var(--brass)}

    .pd-pick-star:hover,.pd-pick-star:focus-visible{color:var(--brass)}

    .review-modal-actions{display:flex;gap:10px;margin-top:22px}

    .review-modal-actions .btn-dark{flex:1}

/* WooCommerce — UMDAA design system. WC default styles disabled; all WC markup styled with UMDAA tokens. */
.umdaa-wc-wrap{font-family:var(--body);color:var(--ink)}

.umdaa-wc-wrap h2{font-family:var(--display);font-size:34px;font-weight:600;color:var(--heading-color);margin:0 0 20px}

.umdaa-wc-wrap table.shop_table{width:100%;border-collapse:collapse;margin-bottom:30px;background:var(--card)}

.umdaa-wc-wrap table.shop_table th{padding:14px 12px;text-align:left;font-size:11px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--muted);border-bottom:1px solid var(--line)}

.umdaa-wc-wrap table.shop_table td{padding:16px 12px;border-bottom:1px solid var(--line);vertical-align:middle}

.umdaa-wc-wrap .product-thumbnail img{width:80px;height:80px;object-fit:contain;background:var(--product-backdrop)}

.umdaa-wc-wrap .product-name a{color:var(--ink);font-weight:600}

.umdaa-wc-wrap .product-name a:hover{color:var(--text-accent)}

.umdaa-wc-wrap .product-price,.umdaa-wc-wrap .product-subtotal{font-weight:700}

.umdaa-wc-wrap .quantity input.qty{width:60px;min-height:42px;text-align:center;border:1px solid var(--line);background:var(--card)}

.umdaa-wc-wrap .coupon input{ min-height:42px;padding:0 12px;border:1px solid var(--line);background:var(--card)}

.umdaa-wc-wrap .button,.umdaa-wc-wrap button.button{background:var(--walnut-2);color:#fff;border:0;min-height:48px;padding:12px 24px;font-size:12px;font-weight:700;letter-spacing:.1em;text-transform:uppercase;cursor:pointer;transition:background .2s,color .2s}

.umdaa-wc-wrap .button:hover,.umdaa-wc-wrap button.button:hover{background:var(--brass);color:#18110d}

.umdaa-wc-wrap .button:disabled{opacity:.5;cursor:not-allowed}

.umdaa-wc-wrap .cart-collaterals .cart_totals{background:var(--card);padding:28px;box-shadow:var(--shadow)}

.umdaa-wc-wrap .cart-collaterals .cart_totals h2{font-size:28px}

.umdaa-wc-wrap .wc-proceed-to-checkout .button{display:block;width:100%;text-align:center;text-decoration:none}

.umdaa-wc-wrap .woocommerce-message,.umdaa-wc-wrap .woocommerce-info,.umdaa-wc-wrap .woocommerce-error{padding:14px 16px;margin-bottom:20px;border:1px solid var(--line);background:var(--card);font-size:13px}

.umdaa-wc-wrap .woocommerce-error{border-color:var(--danger)}

.umdaa-wc-wrap form.woocommerce-checkout .col2-set{display:grid;grid-template-columns:1fr 1fr;gap:40px;margin-bottom:30px}

.umdaa-wc-wrap .woocommerce-billing-fields__field-wrapper,.umdaa-wc-wrap .woocommerce-shipping-fields__field-wrapper{display:grid;grid-template-columns:1fr 1fr;gap:16px}

.umdaa-wc-wrap .form-row{margin-bottom:16px}

.umdaa-wc-wrap .form-row label{display:block;margin-bottom:6px;font-size:11px;font-weight:700;letter-spacing:.08em;text-transform:uppercase}

.umdaa-wc-wrap .form-row input,.umdaa-wc-wrap .form-row select,.umdaa-wc-wrap .form-row textarea{width:100%;min-height:48px;padding:12px;border:1px solid var(--line);background:var(--card);font:inherit}

.umdaa-wc-wrap .form-row textarea{min-height:100px}

.umdaa-wc-wrap #order_review{background:var(--card);padding:28px;box-shadow:var(--shadow)}

.umdaa-wc-wrap #payment .wc_payment_methods{list-style:none;padding:0;margin:0 0 20px}

.umdaa-wc-wrap #payment .wc_payment_method{padding:16px;border:1px solid var(--line);margin-bottom:12px;background:var(--card)}

.umdaa-wc-wrap #payment .wc_payment_method input{margin-right:8px}

.umdaa-wc-wrap #place_order{width:100%}

.umdaa-wc-wrap .woocommerce-order-details,.umdaa-wc-wrap .woocommerce-customer-details{background:var(--card);padding:28px;margin-bottom:24px}

@media(max-width:720px){.umdaa-wc-wrap form.woocommerce-checkout .col2-set{grid-template-columns:1fr}
.umdaa-wc-wrap .woocommerce-billing-fields__field-wrapper,.umdaa-wc-wrap .woocommerce-shipping-fields__field-wrapper{grid-template-columns:1fr}
}

/* UMDAA Info Pages */
.umdaa-page-hero{background:var(--walnut);color:#f4f0e9;padding:48px 0 40px;margin-bottom:40px}

.umdaa-page-hero h1{font-family:var(--display);font-size:44px;font-weight:600;margin:16px 0 0;color:#f4f0e9}

.umdaa-page-hero .breadcrumbs{font-size:14px;color:rgba(244,240,233,.7)}

.umdaa-page-hero .breadcrumbs a{color:#f4f0e9;text-decoration:none}

.umdaa-page-hero .breadcrumbs a:hover{color:var(--brass)}

.umdaa-page-hero .breadcrumbs span[aria-hidden]{margin:0 8px}

.umdaa-info-content{max-width:800px;margin:0 auto 80px;font-size:17px;line-height:1.8;color:var(--ink)}

.umdaa-info-content h2{font-family:var(--display);font-size:28px;font-weight:600;margin:40px 0 16px;color:var(--heading-color)}

.umdaa-info-content h3{font-size:20px;font-weight:700;margin:32px 0 12px;color:var(--heading-color)}

.umdaa-info-content p{margin:0 0 16px}

.umdaa-info-content ul,.umdaa-info-content ol{margin:0 0 16px;padding-left:24px}

.umdaa-info-content li{margin-bottom:8px}

.umdaa-info-content a{color:var(--brass)}

.umdaa-info-content a:hover{color:var(--walnut)}

@media(max-width:720px){.umdaa-page-hero h1{font-size:32px}
.umdaa-info-content{font-size:16px}
}

/* WC Product Gallery — Adidas-style mouse-follow zoom (1.8x) */
.woocommerce-product-gallery__image{overflow:hidden;cursor:zoom-in}

.woocommerce-product-gallery__image a{display:block;overflow:hidden}

.woocommerce-product-gallery__image img{transform:scale(1);transform-origin:var(--zoom-x,50%) var(--zoom-y,50%);transition:transform .4s ease-out;will-change:transform;display:block;width:100%;height:auto}

.woocommerce-product-gallery__image:hover img{transform:scale(1.8)}

/* UMDAA Product Accordions */
.umdaa-product-accordions{margin:32px 0;max-width:800px}

.umdaa-product-accordions .accordion{border-top:1px solid var(--line)}

.umdaa-product-accordions .accordion-button{width:100%;display:flex;align-items:center;justify-content:space-between;gap:24px;padding:20px 0;border:0;border-bottom:1px solid var(--line);background:transparent;text-align:left;font-size:15px;font-weight:700;cursor:pointer;color:var(--ink);transition:color .2s ease}

.umdaa-product-accordions .accordion-button:hover{color:var(--brass)}

.umdaa-product-accordions .accordion-button .ph{color:var(--brass);font-size:20px}

.umdaa-product-accordions .accordion-panel{display:none;padding:0 0 20px;font-size:15px;line-height:1.75;color:var(--ink)}

.umdaa-product-accordions .accordion-panel.open{display:block}

.umdaa-product-accordions .accordion-panel p{margin:0 0 12px}

.umdaa-product-accordions .accordion-panel a{color:var(--brass)}

.umdaa-product-accordions .accordion-panel a:hover{color:var(--walnut)}

/* Accordion plus/minus fallback (if .ph icon missing) */
.umdaa-product-accordions .accordion-button::after{content:'+';color:var(--brass);font-size:22px;font-weight:400;line-height:1}

.umdaa-product-accordions .accordion-button[aria-expanded="true"]::after{content:'−'}

.umdaa-product-accordions .accordion-button .ph{display:none}

/* UMDAA Product Accordions - Plus/Minus Icon Fix */
.umdaa-product-accordions .accordion-button{position:relative;padding-right:40px !important;}

.umdaa-product-accordions .accordion-button::after{content:'+';position:absolute;right:0;top:50%;transform:translateY(-50%);color:var(--brass);font-size:24px;font-weight:400;line-height:1;pointer-events:none;}

.umdaa-product-accordions .accordion-button[aria-expanded="true"]::after{content:'\2212';}

/* UMDAA Accordion Icon Span */
.umdaa-product-accordions .accordion-icon{color:var(--brass);font-size:24px;font-weight:400;line-height:1;flex-shrink:0;}

/* UMDAA Product Page - 2 Column Layout (Demo Parity) */
@media(min-width:721px){
  .woocommerce div.product{display:grid;grid-template-columns:58% 42%;gap:0;align-items:start;}

  .woocommerce div.product .woocommerce-product-gallery{grid-column:1;}

  .woocommerce div.product .summary.entry-summary{grid-column:2;padding:clamp(42px,5.5vw,86px);position:sticky;top:104px;}

}

/* UMDAA Product Page - 2 Column Layout FIX (higher specificity) */
@media(min-width:721px){
  body.woocommerce.single-product div.product{display:grid !important;grid-template-columns:58% 42% !important;gap:0 !important;align-items:start !important;}

  body.woocommerce.single-product div.product .woocommerce-product-gallery{grid-column:1 !important;width:100% !important;float:none !important;margin:0 !important;}

  body.woocommerce.single-product div.product .summary.entry-summary{grid-column:2 !important;width:100% !important;float:none !important;margin:0 !important;padding:clamp(42px,5.5vw,86px) !important;position:sticky !important;top:104px !important;}

}

/* UMDAA Newsletter Button - Restore Missing Rule */
.newsletter-row button{width:48px;height:48px;padding:0;display:grid;place-items:center;align-self:center;border:0;background:transparent;color:#fff;line-height:1;cursor:pointer;}

.newsletter-row button:hover,.newsletter-row button:focus-visible{color:#18110d;background:var(--brass-soft);}

/* UMDAA Footer Links - <a> tags (Demo Parity: demo styles targeted spans; theme uses real anchors) */
.footer-links a{position:relative;display:inline-block;color:#b9ada1;font-size:13px;line-height:1.45;cursor:pointer;transition:color .2s;text-decoration:none;}

.footer-links a:after{content:"";position:absolute;left:0;bottom:-9px;width:100%;height:1px;background:var(--interactive-underline);transform:scaleX(0);transform-origin:left center;transition:transform .25s ease;}

.footer-links a:hover,.footer-links a:focus-visible{color:#fff;}

.footer-links a:hover:after,.footer-links a:focus-visible:after{transform:scaleX(1);}

/* UMDAA Newsletter Button (Demo Parity - rule missing on server) */
.newsletter-row button{width:48px;height:48px;padding:0;display:grid;place-items:center;align-self:center;border:0;background:transparent;color:#fff;line-height:1;cursor:pointer;transition:color .2s ease,background-color .2s ease;}

.newsletter-row button:hover,.newsletter-row button:focus-visible{color:#18110d;background:var(--brass-soft);outline-offset:-2px;}

.newsletter-row .ph{font-size:22px;}

/* UMDAA Workshop Feature Copy (Demo Parity - desktop rule missing on server) */
.feature-copy{padding:clamp(54px,7vw,106px);display:flex;flex-direction:column;justify-content:center;}

@media(max-width:1120px){.feature-copy{padding:48px 22px;}
}

.footer-group h3{margin:0 0 18px;font-size:12px;font-weight:700;letter-spacing:.1em;text-transform:uppercase;color:#fff;}

.faq-list .accordion-button:focus-visible{background:transparent;color:var(--text-accent);outline-offset:-2px;}

/* UMDAA Feature Band Typography (merged from server) */
.feature-band h2{margin-bottom:24px;}

.feature-band p:not(.eyebrow){max-width:510px;color:var(--subheading-color);font-size:var(--section-subheading-size);line-height:1.65;}

