
:root{--paper:#221A13;--paper2:#2B2119;--ink:#F0E6D6;--deep:#181209;--mut:#B3A28C;--acc:#C06A3E;--acc-d:#A5552F;--gold:#D9B98C;--line:rgba(240,230,214,.14);--card:#2B2119;--ez:cubic-bezier(0.22,1,0.36,1)}
*{box-sizing:border-box;margin:0;padding:0}
html{scroll-behavior:smooth}
body{font-family:'Mulish',system-ui,sans-serif;background:var(--paper);color:var(--ink);line-height:1.7;font-size:17.5px}
h1,h2,h3{font-family:'Fraunces',serif;font-weight:500;line-height:1.08;letter-spacing:-.012em}
a{color:var(--gold)} img{max-width:100%;display:block}
.wrap{max-width:1220px;margin:0 auto;padding:0 26px}
.eyebrow{font-family:'IBM Plex Mono',monospace;font-size:11.5px;letter-spacing:.26em;text-transform:uppercase;color:var(--gold);display:block;margin-bottom:16px}
.btn{display:inline-block;font-family:'Mulish',sans-serif;font-weight:800;font-size:14.5px;letter-spacing:.09em;text-transform:uppercase;padding:17px 34px;background:var(--acc);color:#FFF7EC;text-decoration:none;transition:background .18s var(--ez)}
.btn:hover{background:var(--acc-d)}
.btn.ghost{background:transparent;color:var(--ink);border:1.5px solid rgba(240,230,214,.55)}
.btn.gold{background:var(--gold);color:#221A13}
header{position:sticky;top:0;background:rgba(24,18,9,.92);backdrop-filter:blur(10px);z-index:90;border-bottom:1px solid var(--line);overflow:visible}
.nav{display:flex;align-items:center;justify-content:space-between;padding:13px 0;gap:16px}
.brand{display:flex;align-items:center;gap:15px;text-decoration:none;position:relative;z-index:95}
.brand .bw{font-family:'Fraunces',serif;font-weight:500;font-size:23px;letter-spacing:.14em;color:var(--ink);line-height:1}
.brand .bw small{display:block;font-family:'IBM Plex Mono',monospace;font-size:10px;letter-spacing:.42em;color:var(--gold);margin-top:6px}
.brand img{width:112px;height:112px;object-fit:contain;margin:-8px 0 -52px;filter:drop-shadow(0 10px 24px rgba(0,0,0,.55));transition:transform .25s var(--ez)}
.brand:hover img{transform:scale(1.04)}
.nav-links{display:flex;gap:2px;align-items:center;font-weight:700;font-size:13px;white-space:nowrap}
.nav-links>a,.dd>button{text-decoration:none;padding:10px 9px;background:none;border:0;font:inherit;font-weight:700;cursor:pointer;color:var(--mut);letter-spacing:.02em}
.nav-links>a:hover,.dd>button:hover{color:var(--ink)}
.dd{position:relative}
.dd>button::after{content:" ▾";font-size:9px}
.dd-menu{position:absolute;top:100%;left:0;background:var(--card);border:1px solid var(--line);min-width:330px;display:none;z-index:95;box-shadow:0 30px 60px -30px rgba(0,0,0,.7)}
.dd.open .dd-menu{display:block}
.dd-menu a{display:block;padding:13px 20px;text-decoration:none;font-weight:700;border-bottom:1px solid var(--line);color:var(--ink)}
.dd-menu a:last-child{border-bottom:0}
.dd-menu a:hover{background:#332818}
.dd-menu a small{display:block;font-weight:400;color:var(--mut);font-size:13px;margin-top:2px}
.nav-phone{font-family:'Fraunces',serif;font-weight:500;font-size:16px;text-decoration:none;white-space:nowrap;color:var(--gold)}
.nav-cta{padding:12px 20px !important;font-size:12.5px !important}
.burger{display:none;background:none;border:1.5px solid var(--mut);color:var(--ink);font-size:19px;padding:5px 13px;cursor:pointer}
.hero{position:relative;color:#fff;overflow:hidden;border-bottom:1px solid var(--line)}
.hero .bg,.hero video{position:absolute;inset:0;object-fit:cover;width:100%;height:100%}
.hero .scrim{position:absolute;inset:0;background:linear-gradient(97deg,rgba(24,18,9,.92) 10%,rgba(24,18,9,.55) 52%,rgba(24,18,9,.22))}
.hero .inner{position:relative;padding:150px 0 130px}
.hero.short .inner{padding:100px 0 84px}
.hero h1{font-size:clamp(40px,5.8vw,86px);max-width:15ch;text-shadow:0 2px 30px rgba(0,0,0,.55)}
.hero h1 em{font-style:italic;color:var(--gold)}
.hero .lead{font-size:20px;max-width:58ch;margin:26px 0 38px;color:#EDE3D2;text-shadow:0 1px 14px rgba(0,0,0,.5)}
.hero .chips{display:flex;gap:10px;flex-wrap:wrap;margin-top:28px}
.hero .chips span{font-family:'IBM Plex Mono',monospace;font-size:11.5px;letter-spacing:.1em;border:1px solid rgba(217,185,140,.55);padding:8px 15px;color:#EDE3D2}
.sec{padding:100px 0}
.sec h2{font-size:clamp(29px,3.9vw,52px);max-width:26ch;margin-bottom:20px}
.grid{display:grid;gap:26px}
.g3{grid-template-columns:repeat(3,1fr)}
.card{background:var(--card);border:1px solid var(--line);overflow:hidden;display:flex;flex-direction:column;transition:transform .3s var(--ez)}
.card:hover{transform:translateY(-4px)}
.card img{height:230px;object-fit:cover;width:100%}
.card .pad{padding:28px;display:flex;flex-direction:column;gap:9px;flex:1}
.card h3{font-size:21px}
.card p{color:var(--mut);font-size:15.5px;flex:1}
.card .go{font-weight:800;color:var(--gold);text-decoration:none;font-size:14px;letter-spacing:.05em;text-transform:uppercase}
.band{background:var(--deep);color:#CFC2AE;padding:92px 0;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}
.band h2{color:var(--ink)}
.split{display:grid;grid-template-columns:1.05fr .95fr;gap:56px;align-items:center}
.split img{border:1px solid var(--line)}
.steps{counter-reset:s;border:1px solid var(--line);background:var(--card)}
.step{padding:30px 32px;border-bottom:1px solid var(--line);display:grid;grid-template-columns:70px 1fr;gap:20px;align-items:start}
.step:last-child{border-bottom:0}
.step::before{counter-increment:s;content:"0" counter(s);font-family:'Fraunces',serif;font-weight:500;font-size:36px;color:var(--acc)}
table.szs{width:100%;border-collapse:collapse;border:1px solid var(--line);background:var(--card);font-size:16px}
table.szs th{font-family:'IBM Plex Mono',monospace;font-size:11.5px;letter-spacing:.12em;text-transform:uppercase;text-align:left;background:var(--deep);color:var(--gold);padding:14px 16px}
table.szs td{padding:15px 16px;border-top:1px solid var(--line);vertical-align:top}
.faq details{border-bottom:1px solid var(--line);padding:8px 2px}
.faq summary{cursor:pointer;font-weight:800;padding:16px 4px;font-size:17.5px}
.faq .ans{padding:2px 4px 18px;color:var(--mut);max-width:80ch}
.areas{display:flex;flex-wrap:wrap;gap:11px}
.areas a{border:1px solid rgba(217,185,140,.5);padding:11px 20px;font-weight:800;font-size:14.5px;background:var(--card);text-decoration:none;color:var(--ink);letter-spacing:.03em}
.areas a:hover{background:var(--acc);border-color:var(--acc);color:#FFF7EC}
.prose p{margin:0 0 19px;max-width:74ch}
.prose h2{margin-top:52px}
.prose h3{font-size:23px;margin:34px 0 13px}
.prose ul{margin:0 0 19px 22px;max-width:72ch}
.prose li{margin-bottom:10px}
.figure{margin:38px 0}
.figure img{border:1px solid var(--line)}
.figure figcaption{font-family:'IBM Plex Mono',monospace;font-size:12px;color:var(--mut);margin-top:11px}
form.qf{display:grid;gap:17px;max-width:680px}
form.qf label{font-weight:800;font-size:14.5px;display:grid;gap:7px;letter-spacing:.02em}
form.qf input,form.qf select,form.qf textarea{font:inherit;padding:14px;border:1px solid rgba(240,230,214,.3);background:#2E241A;color:var(--ink)}
.note{font-family:'IBM Plex Mono',monospace;font-size:12px;color:var(--mut)}
footer{background:var(--deep);color:#9C8D77;padding:60px 0 44px;font-size:15px;border-top:1px solid var(--line)}
footer a{color:#D5C8B2;text-decoration:none}
footer a:hover{color:var(--ink)}
footer .cols{display:grid;grid-template-columns:1.5fr 1fr 1fr 1fr;gap:38px}
footer h4{color:var(--gold);font-family:'IBM Plex Mono',monospace;font-size:11.5px;letter-spacing:.22em;text-transform:uppercase;margin-bottom:14px}
.callbar{display:none;position:fixed;bottom:0;left:0;right:0;z-index:99;background:var(--acc);padding:13px 14px;text-align:center}
.callbar a{color:#FFF7EC;font-family:'Mulish',sans-serif;font-weight:800;font-size:15.5px;text-decoration:none;letter-spacing:.05em;text-transform:uppercase}
.rv{opacity:0;transform:translateY(24px);transition:opacity .8s var(--ez),transform .8s var(--ez)}
.rv.in{opacity:1;transform:none}
.statrow{display:grid;grid-template-columns:repeat(4,1fr);gap:26px;margin-top:34px}
.stat{border-left:2px solid var(--acc);padding-left:20px}
.stat b{font-family:'Fraunces',serif;font-weight:500;font-size:34px;color:var(--ink);display:block}
.stat span{color:var(--mut);font-size:14.5px}
@media(max-width:1360px){.nav-phone{display:none}}
@media(max-width:1120px){table.szs{display:block;overflow-x:auto}}
@media(max-width:1180px){.g3{grid-template-columns:repeat(2,1fr)}.split{grid-template-columns:1fr;gap:32px}.hero .inner{padding:100px 0 84px}.statrow{grid-template-columns:repeat(2,1fr)}}
@media(max-width:1120px){
.nav-links{display:none;position:absolute;top:100%;left:0;right:0;background:var(--deep);border-bottom:1px solid var(--line);flex-direction:column;align-items:stretch;padding:8px 18px 18px;gap:2px;max-height:80vh;overflow:auto}
.nav-links.open{display:flex}
.nav-links>a,.dd>button{padding:13px 8px;text-align:left;width:100%}
.dd-menu{position:static;margin:4px 0;min-width:0;box-shadow:none}
.burger{display:block}
}
@media(max-width:840px){
.g3{grid-template-columns:1fr}
.callbar{display:block}
body{padding-bottom:56px}
.sec{padding:62px 0}
.sec h2{font-size:clamp(25px,6.8vw,33px)}
.hero .inner{padding:74px 0 60px}
.hero.short .inner{padding:52px 0 46px}
.hero h1{font-size:clamp(31px,8.8vw,42px)}
.hero .lead{font-size:17px;margin:20px 0 28px}
table.szs{display:block;overflow-x:auto;white-space:nowrap}
.step{grid-template-columns:46px 1fr;padding:22px 18px;gap:13px}
.step::before{font-size:24px}
.btn{padding:15px 22px;font-size:13px}
.brand img{width:66px;height:66px;margin:-5px 0 -26px}
.brand .bw{font-size:16px;letter-spacing:.1em}
.brand .bw small{font-size:8.5px;letter-spacing:.3em;margin-top:4px}
.statrow{grid-template-columns:1fr 1fr;gap:18px}
.stat b{font-size:26px}
}
@media(max-width:560px){footer .cols{grid-template-columns:1fr}}
@media(prefers-reduced-motion:reduce){.rv{opacity:1;transform:none;transition:none}.hero video{display:none}}
