/* Shared components: loaded on every page (after any page CSS) */
:root{--ink:#1C1F22;--mute:#6B675F;--line:#DDD8CE;--pale:#F4F2EE;--sig:#9A7640;--sig-d:#7E5F31;--navy:#1C1F22;--navy-2:#25292D;--navy-line:#3A3E42;--bg:#fff}
html{scroll-padding-top:76px}
body{-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility}
::selection{background:#E4D6BC}

/* eyebrow / section heads */
.eb{display:inline-block;font:600 12.5px/1 "Jost",sans-serif;letter-spacing:.14em;text-transform:uppercase;color:var(--sig);margin:0 0 14px}
.eb.lt{color:#C9A66B}

/* buttons */
.btn{display:inline-block;background:var(--sig);color:#fff;text-decoration:none;font:600 16px "Jost",sans-serif;padding:12px 22px;border-radius:3px;border:0;cursor:pointer}
nav .w,footer .w,.qt .w{max-width:1160px}
.btn{transition:background .15s ease,transform .15s ease}
.btn:hover{background:var(--sig-d)}
.btn.ghost{background:transparent;border:1px solid currentColor;color:inherit!important}
.btn.ghost:hover{background:rgba(255,255,255,.08)}

/* nav */
nav{position:sticky;top:0;z-index:20;background:rgba(28,31,34,.97);backdrop-filter:saturate(1.4) blur(8px);-webkit-backdrop-filter:saturate(1.4) blur(8px);color:#EDEAE4;border-bottom:1px solid var(--navy-line)}
nav .w{display:flex;align-items:center;justify-content:space-between;height:64px;gap:16px}
nav .lg{display:block;flex:0 0 auto}nav .lg img{height:36px;width:auto;display:block}
nav .nl{display:flex;align-items:center;gap:26px;font-size:15px}
nav .nl a{text-decoration:none;color:#B9B4AA;transition:color .15s}nav .nl a:hover,nav .nl a[aria-current]{color:#fff}
nav .nl a.btn{color:#fff;padding:9px 18px}
nav .car{font-size:11px;margin-left:2px}
.mb{display:none;background:none;border:1px solid var(--navy-line);border-radius:3px;width:42px;height:38px;padding:0;cursor:pointer;color:#fff;align-items:center;justify-content:center}
.mb span,.mb span:before,.mb span:after{display:block;width:18px;height:2px;background:currentColor;position:relative;transition:transform .2s,background .2s}
.mb span:before,.mb span:after{content:"";position:absolute;left:0}.mb span:before{top:-6px}.mb span:after{top:6px}
.mb[aria-expanded="true"] span{background:transparent}.mb[aria-expanded="true"] span:before{transform:translateY(6px) rotate(45deg)}.mb[aria-expanded="true"] span:after{transform:translateY(-6px) rotate(-45deg)}
.mm{display:none;background:var(--navy);border-top:1px solid var(--navy-line);padding:8px 22px 22px}
.mm.on{display:block}
.mm a{display:block;text-decoration:none;color:#EDEAE4;padding:13px 0;border-bottom:1px solid var(--navy-line);font-size:16px}
.mm .sz{display:grid;grid-template-columns:repeat(4,1fr);gap:8px;padding:14px 0;border-bottom:1px solid var(--navy-line)}
.mm .sz a{border:1px solid var(--navy-line);border-radius:3px;text-align:center;padding:10px 0;font-weight:600}
.mm .btn{margin-top:18px;text-align:center;border:0}

/* desktop size dropdown */
.sub-hdr{display:none;position:absolute;left:0;right:0;top:100%;margin:0;padding:26px 22px 30px;list-style:none;background:#fff;color:var(--ink);box-shadow:0 22px 32px rgba(28,31,34,.16);border-bottom:1px solid var(--line);justify-content:center;gap:clamp(20px,5vw,84px)}
.sub-hdr.on{display:flex}
nav .sub-hdr a{display:flex;flex-direction:column;align-items:center;text-decoration:none;color:var(--ink);width:150px;text-align:center;font-size:14px;line-height:1.35;border-radius:4px;padding:8px 0;transition:background .15s}
nav .sub-hdr a:hover{background:var(--pale)}
.sub-hdr img{height:118px;width:auto;object-fit:contain;margin-bottom:10px;filter:drop-shadow(0 8px 8px rgba(28,31,34,.2))}
.sub-hdr b{font-size:18px;font-weight:600}.sub-hdr span{color:var(--mute)}
nav .sub-hdr a:hover b{color:var(--sig)}

@media(max-width:860px){
 nav .nl a:not(.btn){display:none}
 nav .nl{gap:10px}nav .nl a.btn{padding:8px 14px;font-size:14.5px}
 .mb{display:inline-flex}
 .sub-hdr{display:none!important}
 nav .lg img{height:30px}
}

/* quote section */
.qt{background:var(--navy);color:#EDEAE4;padding:96px 0;border:0}
.qt .qg{display:grid;grid-template-columns:1.35fr .9fr;gap:56px;align-items:start}
.qt h2{font-size:clamp(30px,3.6vw,42px);max-width:18ch;color:#fff}
.qt .sub{color:#B9B4AA;margin:14px 0 30px;max-width:52ch}
.qf{display:grid;grid-template-columns:1fr 1fr;gap:16px 18px}
.qf .full{grid-column:1/-1}
.qf label{display:block;font-size:13.5px;font-weight:600;color:#D6D1C7;margin:0 0 6px;letter-spacing:.01em}
.qf label i{font-style:normal;font-weight:400;color:#8E897F}
.qf input,.qf select,.qf textarea{width:100%;font:400 16px "Jost",sans-serif;color:#fff;background:var(--navy-2);border:1px solid var(--navy-line);border-radius:3px;padding:12px 13px;transition:border-color .15s,background .15s}
.qf select{appearance:none;-webkit-appearance:none;background-image:linear-gradient(45deg,transparent 50%,#B9B4AA 50%),linear-gradient(135deg,#B9B4AA 50%,transparent 50%);background-position:calc(100% - 18px) 52%,calc(100% - 13px) 52%;background-size:5px 5px;background-repeat:no-repeat;padding-right:34px}
.qf select option{color:#1C1F22;background:#fff}
.qf textarea{min-height:120px;resize:vertical}
.qf input::placeholder,.qf textarea::placeholder{color:#8E897F}
.qf input:focus,.qf select:focus,.qf textarea:focus{outline:0;border-color:var(--sig);background:#25292D}
.qf .chk{display:flex;flex-wrap:wrap;gap:8px}
.qf .chk label{display:inline-flex;align-items:center;gap:8px;margin:0;font-weight:500;font-size:14px;color:#D6D1C7;border:1px solid var(--navy-line);border-radius:3px;padding:8px 12px;cursor:pointer;background:var(--navy-2);transition:border-color .15s}
.qf .chk input{width:auto;margin:0;accent-color:var(--sig)}
.qf .chk label:has(input:checked){border-color:var(--sig);color:#fff}
.qf .act{display:flex;align-items:center;gap:18px;flex-wrap:wrap;margin-top:6px}
.qf .act .btn{padding:14px 26px}
.qf .act small{color:#8E897F;font-size:13.5px;max-width:36ch}
.qc{background:var(--navy-2);border:1px solid var(--navy-line);border-radius:4px;padding:30px 28px}
.qc h3{font-size:18px;color:#fff;margin:0 0 4px}
.qc dl{margin:18px 0 0;display:block}
.qc dt{font-size:12.5px;letter-spacing:.12em;text-transform:uppercase;color:#8E897F;margin-top:18px}
.qc dd{margin:4px 0 0;font-size:16px;color:#EDEAE4}
.qc a{color:#fff;text-decoration-color:rgba(255,255,255,.35);text-underline-offset:3px}
.qc a:hover{text-decoration-color:var(--sig)}
.qc ol{margin:22px 0 0;padding:20px 0 0;border-top:1px solid var(--navy-line);list-style:none;counter-reset:s}
.qc li{counter-increment:s;position:relative;padding:0 0 14px 38px;font-size:15px;color:#D6D1C7}
.qc li:before{content:counter(s);position:absolute;left:0;top:-1px;width:26px;height:26px;border-radius:50%;border:1px solid var(--sig);color:#C9A66B;font-size:13px;font-weight:600;display:flex;align-items:center;justify-content:center}
.qc li b{display:block;color:#fff;font-weight:600}
@media(max-width:900px){.qt{padding:68px 0}.qt .qg{grid-template-columns:1fr;gap:40px}.qf{grid-template-columns:1fr}}

/* footer */
footer.ft{background:#151719;color:#B9B4AA;padding:64px 0 28px;font-size:14.5px;border:0}
.ft .fg{display:grid;grid-template-columns:1.4fr 1fr 1fr 1.2fr;gap:36px}
.ft img{height:40px;width:auto;margin:0 0 18px}
.ft p{margin:0;max-width:34ch;line-height:1.6}
.ft h4{font:600 12.5px "Jost",sans-serif;letter-spacing:.14em;text-transform:uppercase;color:#fff;margin:4px 0 14px}
.ft ul{list-style:none;margin:0;padding:0}.ft li{margin:0 0 9px}
.ft a{color:#D6D1C7;text-decoration:none}.ft a:hover{color:#fff;text-decoration:underline;text-underline-offset:3px}
.ft .bt{display:flex;justify-content:space-between;gap:16px;flex-wrap:wrap;margin-top:48px;padding-top:22px;border-top:1px solid #33363A;font-size:13.5px;color:#8E897F}
@media(max-width:860px){.ft .fg{grid-template-columns:1fr 1fr}.ft .fg>div:first-child{grid-column:1/-1}}

/* reveal on scroll (only when JS adds .js to <html>) */
.js .rv{opacity:0;transform:translateY(14px);transition:opacity .6s ease,transform .6s ease}
.js .rv.in{opacity:1;transform:none}
@media(prefers-reduced-motion:reduce){.js .rv{opacity:1;transform:none;transition:none}}

/* ===== Sound Pods look: graphite / stone / brass, Cormorant Garamond + Jost ===== */
:root{--ink:#1C1F22;--mute:#6B675F;--line:#DDD8CE;--pale:#F4F2EE;--stone:#EDEAE4;--sig:#9A7640;--sig-d:#7E5F31;--brass-lt:#C9A66B;--navy:#1C1F22;--navy-2:#25292D;--navy-line:#3A3E42;--serif:"Cormorant Garamond",Georgia,"Times New Roman",serif;--sans:"Jost",system-ui,sans-serif}
body{font-family:var(--sans);font-weight:400;font-size:16.5px;letter-spacing:.005em;color:var(--ink)}
h1,h2{font-family:var(--serif);font-weight:500;letter-spacing:-.005em;line-height:1.08}
h3{font-family:var(--sans);font-weight:500;letter-spacing:.01em}
b,strong{font-weight:500}
::selection{background:#E4D6BC}
a:focus-visible,button:focus-visible,select:focus-visible,input:focus-visible,textarea:focus-visible,[tabindex]:focus-visible{outline:2px solid var(--sig);outline-offset:3px}

/* eyebrows echo the wordmark tracking */
.eb{font:500 12px/1 var(--sans);letter-spacing:.28em;color:var(--sig)}
.eb.lt{color:var(--brass-lt)}

/* buttons: square, tracked caps */
.btn,nav .nl a.btn{font:500 13px/1 var(--sans)!important;letter-spacing:.18em;text-transform:uppercase;border-radius:0!important;padding:16px 28px;background:var(--ink);color:var(--stone)!important}
.btn:hover{background:var(--sig)}
nav .nl a.btn{padding:12px 18px!important;background:var(--brass-lt);color:var(--ink)!important}
nav .nl a.btn:hover{background:#D9BB85}
.hero .btn:not(.ghost),.qt .btn{background:var(--brass-lt);color:var(--ink)!important}
.hero .btn:not(.ghost):hover,.qt .btn:hover{background:#D9BB85}
.btn.ghost{background:transparent;border:1px solid rgba(237,234,228,.45);color:var(--stone)!important}
.btn.ghost:hover{background:rgba(237,234,228,.08);border-color:var(--stone)}

/* nav */
nav{background:rgba(28,31,34,.97);border-bottom:1px solid rgba(237,234,228,.1)}
nav .nl a{font-size:12.5px;letter-spacing:.16em;text-transform:uppercase;color:#B9B4AA}
nav .nl a:hover,nav .nl a[aria-current]{color:var(--stone)}
.sub-hdr{background:var(--stone);border-bottom:1px solid var(--line);box-shadow:0 22px 32px rgba(28,31,34,.14)}
nav .sub-hdr a{border-radius:0}nav .sub-hdr a:hover{background:#E4E0D8}
.sub-hdr b{font-family:var(--serif);font-size:24px;font-weight:500}
.sub-hdr span{font-size:12px;letter-spacing:.14em;text-transform:uppercase}
nav .sub-hdr a:hover b{color:var(--sig)}
.mm a{letter-spacing:.14em;text-transform:uppercase;font-size:13.5px}
.mm .sz a{font-family:var(--serif);font-size:20px;letter-spacing:0;text-transform:none;border-radius:0}

/* quote */
.qt h2{font-size:clamp(34px,4vw,50px);font-weight:500;color:var(--stone)}
.qt .sub{color:#B9B4AA}
.qf label{font-weight:500;letter-spacing:.06em;font-size:12.5px;text-transform:uppercase;color:#D6D1C7}
.qf label i{text-transform:none;letter-spacing:0}
.qf input,.qf select,.qf textarea{border-radius:0;font-family:var(--sans);background:#232629;border-color:#3A3E42}
.qf input:focus,.qf select:focus,.qf textarea:focus{border-color:var(--brass-lt);background:#272A2E}
.qf .chk label{border-radius:0;text-transform:none;letter-spacing:.01em;font-size:14px;background:#232629}
.qf .chk input{accent-color:var(--brass-lt)}
.qf .chk label:has(input:checked){border-color:var(--brass-lt)}
.qf legend{font-size:12.5px!important;letter-spacing:.06em;text-transform:uppercase;font-weight:500!important}
.qc{border-radius:0;background:#232629;border-color:#3A3E42}
.qc h3{font-family:var(--serif);font-size:24px;font-weight:500}
.qc dt{letter-spacing:.2em;font-size:11.5px}
.qc li:before{border-color:var(--brass-lt);color:var(--brass-lt);font-family:var(--serif);font-size:15px}

/* footer */
footer.ft{background:#151719}
.ft h4{letter-spacing:.24em;font-weight:500;font-size:11.5px;color:var(--brass-lt)}
.ft .bt{border-top-color:#2A2D30}

/* booth pages (product.css) */
.info h1{font-size:clamp(44px,5.4vw,66px);font-weight:500}
.info h1 small{font-family:var(--sans);font-size:13px;letter-spacing:.24em;text-transform:uppercase;color:var(--sig);margin-top:10px}
.crumb{font-size:12.5px;letter-spacing:.12em;text-transform:uppercase}
.sh{font-size:clamp(34px,3.8vw,46px)!important}
.sh:after{width:56px;height:1px;background:var(--sig)!important;margin-top:20px}
section.pale{background:var(--pale)}
.gal .main{background:radial-gradient(ellipse at 50% 45%,#fff 0%,var(--stone) 100%);border-radius:0}
.thumbs button,.fur .fi,.comp .ph,.mc,.oth a,.dim,#opt,.pill,.tabs button,.stage{border-radius:0!important}
.thumbs button[aria-pressed="true"]{border-color:var(--sig);box-shadow:0 0 0 1px var(--sig)}
.pt th{font-weight:500;background:var(--pale)}
.pt,.pt th,.pt td{border-color:var(--line)}
.comp h3,.fin h3{font-size:16px}
.sc{border-top:1px solid var(--sig);background:#fff;font-family:var(--serif);font-size:24px}
.sc b{font-weight:500}
.mc b{font-family:var(--serif);font-size:34px;font-weight:500}
.mc.cur{border:1px solid var(--sig);box-shadow:inset 0 0 0 1px var(--sig)}
.mc em{color:var(--sig);letter-spacing:.14em;text-transform:uppercase;font-size:12px;font-weight:500}
.pill{background:var(--stone)}
h1,h2,.big,.stats b,.mx b,.cap,.mc b,.sub-hdr b,.use li:before,.qc li:before{font-variant-numeric:lining-nums}
@media(max-width:860px){nav .nl a.btn{white-space:nowrap;letter-spacing:.12em;padding:11px 12px!important;font-size:11.5px!important}}
@media(max-width:600px){.hero h1{font-size:46px!important}.cta .btn{letter-spacing:.12em;padding:16px 10px;white-space:nowrap}.stats b{font-size:30px}}
@media(max-width:380px){nav .lg img{height:26px}}

/* booth page gallery: cut-out images, no frames */
.gal .main{background:none!important;border:0;height:clamp(360px,46vw,560px)}
.gal .main:after{content:"";position:absolute;left:18%;right:18%;bottom:2%;height:22px;border-radius:50%;background:radial-gradient(ellipse at center,rgba(28,31,34,.18),transparent 70%);z-index:-1}
.gal .main img{max-height:96%;filter:drop-shadow(0 18px 16px rgba(28,31,34,.18))}
.thumbs{gap:18px;margin-top:18px}
.thumbs button{width:64px;height:80px;padding:4px 0 8px;background:none!important;border:0!important;box-shadow:none!important;border-bottom:1px solid transparent!important;opacity:.55;transition:opacity .15s}
.thumbs button:hover{opacity:.85}
.thumbs button[aria-pressed="true"]{opacity:1;border-bottom:1px solid var(--sig)!important}
.cap{margin-top:14px}

/* quote page + CTA band */
.qpage{padding:80px 0 96px}
.hp{position:absolute!important;left:-9999px!important;width:1px;height:1px;opacity:0}
.qok{padding:20px 0}.qok:focus{outline:0}
.qok h2{font-size:clamp(32px,3.6vw,46px);color:#EDEAE4;margin-bottom:14px}
.qok p:not(.eb){color:#B9B4AA;max-width:48ch;margin:0 0 28px}
#qn a{color:#EDEAE4}
.qf button[disabled]{opacity:.6;cursor:wait}
.qcta{background:#26292C;color:#EDEAE4;padding:72px 0;border:0}
.qcta .w{display:flex;align-items:center;justify-content:space-between;gap:40px;flex-wrap:wrap}
.qcta h2{font-size:clamp(30px,3.4vw,44px);font-weight:400;color:#EDEAE4;max-width:22ch}
.qcta .btn{background:var(--brass-lt);color:var(--ink)!important}.qcta .btn:hover{background:#D9BB85}
.qf[hidden],.qok[hidden]{display:none!important}
