/* 904 Glass — shared silo stylesheet (matches flagship brand) */
:root{
  --ink:#0B1320; --ink-2:#0F1825; --ink-3:#16202E; --ink-4:#1E2A3B;
  --line:rgba(245,240,229,.10); --line-2:rgba(245,240,229,.18);
  --brass:#C9A35A; --brass-soft:#E0C58A; --brass-deep:#8C6F3A;
  --cyan:#6BC5D3; --bone:#F5F0E5; --bone-2:#EAE2D0; --bone-dim:rgba(245,240,229,.66);
  --rad:14px; --rad-lg:22px; --maxw:1180px; --shadow:0 24px 60px -24px rgba(0,0,0,.55);
}
*{box-sizing:border-box;margin:0;padding:0}
html{scroll-behavior:smooth;-webkit-text-size-adjust:100%}
body{font-family:"Inter",system-ui,sans-serif;color:var(--bone);background:var(--ink);line-height:1.62;font-size:17px;overflow-x:hidden;font-feature-settings:"ss01","cv11"}
img{max-width:100%;display:block}
a{color:inherit;text-decoration:none}
button{font:inherit;color:inherit;background:none;border:0;cursor:pointer}
.f-display{font-family:"Fraunces",Georgia,serif;font-weight:400;font-variation-settings:"opsz" 144,"SOFT" 30;letter-spacing:-.015em;line-height:1.04}
.wrap{max-width:var(--maxw);margin:0 auto;padding:0 24px}
.brass{color:var(--brass-soft)}
em,i{color:var(--brass-soft);font-style:italic}

/* ---------- NAV ---------- */
.nav{position:fixed;inset:0 0 auto 0;z-index:80;padding:14px 0;transition:.35s;border-bottom:1px solid transparent}
.nav.scrolled{background:rgba(11,19,32,.9);backdrop-filter:blur(18px);border-bottom-color:var(--line);padding:9px 0}
.nav-row{display:flex;align-items:center;gap:22px}
.brand-logo{height:60px;width:auto;transition:.3s}
.nav.scrolled .brand-logo{height:48px}
.nav-links{display:flex;align-items:center;gap:6px;margin-left:auto}
.nav-links>a,.nav-item>button{padding:9px 13px;font-size:14.5px;font-weight:500;color:var(--bone-dim);border-radius:9px;transition:.2s;display:inline-flex;align-items:center;gap:5px}
.nav-links>a:hover,.nav-item>button:hover{color:var(--bone);background:var(--ink-3)}
.nav-item{position:relative}
.nav-cta{background:linear-gradient(180deg,var(--brass-soft),var(--brass));color:var(--ink)!important;font-weight:700;padding:11px 20px!important;border-radius:11px;box-shadow:0 10px 28px -10px rgba(201,163,90,.6)}
.nav-cta:hover{filter:brightness(1.06)}
.nav-phone{color:var(--brass-soft)!important;font-weight:600}
/* mega menu */
.mega{position:absolute;top:calc(100% + 8px);left:50%;transform:translateX(-50%) translateY(8px);background:var(--ink-2);border:1px solid var(--line-2);border-radius:var(--rad-lg);padding:22px;width:min(680px,92vw);display:grid;grid-template-columns:repeat(3,1fr);gap:8px 26px;box-shadow:var(--shadow);opacity:0;visibility:hidden;transition:.22s;z-index:90}
.nav-item:hover .mega,.nav-item:focus-within .mega{opacity:1;visibility:visible;transform:translateX(-50%) translateY(0)}
.mega h5{font-size:11px;letter-spacing:.16em;text-transform:uppercase;color:var(--brass);margin:6px 0 8px;font-weight:700}
.mega a{display:block;padding:7px 9px;font-size:14px;color:var(--bone-dim);border-radius:8px;transition:.15s}
.mega a:hover{color:var(--bone);background:var(--ink-3)}
.mega .all{grid-column:1/-1;margin-top:6px;border-top:1px solid var(--line);padding-top:12px;color:var(--brass-soft);font-weight:600}
.nav-toggle{display:none;margin-left:auto;font-size:26px;color:var(--bone);padding:4px 10px}
.mobile-menu{display:none}

/* ---------- HERO / PAGE HEAD ---------- */
.phead{padding:140px 0 36px;position:relative;background:radial-gradient(120% 90% at 80% -10%,rgba(201,163,90,.10),transparent 55%)}
.crumbs{font-size:13px;color:var(--bone-dim);margin-bottom:18px;display:flex;flex-wrap:wrap;gap:6px;align-items:center}
.crumbs a:hover{color:var(--brass-soft)}
.crumbs span{opacity:.5}
.eyebrow{display:inline-block;font-size:12px;letter-spacing:.2em;text-transform:uppercase;color:var(--brass);font-weight:700;margin-bottom:14px}
.phead h1{font-size:clamp(30px,5vw,52px);margin-bottom:0}
.phead .lede{font-size:19px;color:var(--bone-dim);max-width:60ch;margin-top:18px}

/* TL;DR answer box (AIO) */
.tldr{background:linear-gradient(180deg,var(--ink-2),var(--ink-3));border:1px solid var(--line-2);border-left:3px solid var(--brass);border-radius:var(--rad);padding:18px 22px;margin:26px 0;font-size:17.5px;color:var(--bone);max-width:74ch}
.tldr b{color:var(--brass-soft)}

/* Key facts (extractable) */
.keyfacts{display:grid;grid-template-columns:repeat(2,1fr);gap:1px;background:var(--line);border:1px solid var(--line);border-radius:var(--rad);overflow:hidden;margin:26px 0}
.keyfacts div{background:var(--ink-2);padding:14px 18px}
.keyfacts dt{font-size:12px;letter-spacing:.08em;text-transform:uppercase;color:var(--brass);font-weight:700}
.keyfacts dd{font-size:16px;margin-top:3px;color:var(--bone)}
.keyfacts dd small{display:block;color:var(--bone-dim);font-size:13px;margin-top:2px;font-weight:400}

/* stat strip */
.stripstats{display:flex;flex-wrap:wrap;gap:10px;margin:22px 0}
.stripstats .s{background:var(--ink-3);border:1px solid var(--line);border-radius:999px;padding:7px 15px;font-size:13.5px;color:var(--bone-dim)}
.stripstats .s b{color:var(--brass-soft)}

/* ---------- SECTIONS / PROSE ---------- */
.sec{padding:30px 0}
.sec h2{font-size:clamp(23px,3.4vw,32px);margin:34px 0 14px}
.sec h3{font-size:20px;margin:24px 0 10px;color:var(--bone)}
.prose p{margin:0 0 16px;max-width:74ch;color:var(--bone-dim)}
.prose p strong,.prose li strong{color:var(--bone)}
.prose ul,.prose ol{margin:0 0 18px 22px;max-width:72ch}
.prose li{margin:7px 0;color:var(--bone-dim)}
.prose a{color:var(--brass-soft);text-decoration:underline;text-underline-offset:3px;text-decoration-color:rgba(201,163,90,.4)}
.prose a:hover{text-decoration-color:var(--brass-soft)}

/* tables (parseable) */
.tbl{width:100%;border-collapse:collapse;margin:18px 0;font-size:15px;border:1px solid var(--line);border-radius:var(--rad);overflow:hidden}
.tbl caption{text-align:left;color:var(--bone-dim);font-size:14px;margin-bottom:8px;caption-side:top}
.tbl th,.tbl td{padding:12px 15px;text-align:left;border-bottom:1px solid var(--line);vertical-align:top}
.tbl thead th{background:var(--ink-3);color:var(--brass-soft);font-size:12.5px;letter-spacing:.06em;text-transform:uppercase}
.tbl tbody tr:nth-child(even) td{background:rgba(255,255,255,.015)}
.tbl tbody tr:last-child td{border-bottom:0}

/* ---------- CARDS / GRIDS ---------- */
.grid{display:grid;gap:16px;margin:24px 0}
.g2{grid-template-columns:repeat(2,1fr)} .g3{grid-template-columns:repeat(3,1fr)} .g4{grid-template-columns:repeat(4,1fr)}
.card{background:var(--ink-2);border:1px solid var(--line);border-radius:var(--rad);padding:20px;transition:.2s;display:block}
.card:hover{border-color:var(--line-2);transform:translateY(-3px);box-shadow:var(--shadow)}
.card .k{font-size:11px;letter-spacing:.14em;text-transform:uppercase;color:var(--brass);font-weight:700}
.card h3{font-size:18px;margin:8px 0 6px}
.card p{font-size:14.5px;color:var(--bone-dim);margin:0}
.card .arrow{color:var(--brass-soft);font-weight:600;font-size:14px;margin-top:12px;display:inline-block}
.chips{display:flex;flex-wrap:wrap;gap:8px;margin:18px 0}
.chips a{background:var(--ink-3);border:1px solid var(--line);border-radius:999px;padding:8px 15px;font-size:14px;color:var(--bone-dim);transition:.15s}
.chips a:hover{border-color:var(--brass);color:var(--bone)}

/* ---------- FAQ ---------- */
.faq{margin:22px 0;max-width:80ch}
.faq details{border:1px solid var(--line);border-radius:var(--rad);margin-bottom:10px;background:var(--ink-2);overflow:hidden}
.faq summary{padding:16px 20px;font-weight:600;cursor:pointer;list-style:none;display:flex;justify-content:space-between;gap:14px;color:var(--bone)}
.faq summary::-webkit-details-marker{display:none}
.faq summary::after{content:"+";color:var(--brass);font-size:22px;line-height:1;transition:.2s}
.faq details[open] summary::after{transform:rotate(45deg)}
.faq .a{padding:0 20px 18px;color:var(--bone-dim);font-size:15.5px}

/* ---------- CTA BAND ---------- */
.ctaband{margin:48px 0 0;background:linear-gradient(135deg,var(--ink-2),var(--ink-3));border-top:1px solid var(--line);border-bottom:1px solid var(--line)}
.ctaband .wrap{padding:52px 24px;text-align:center}
.ctaband h2{font-size:clamp(24px,3.6vw,34px);margin-bottom:12px}
.ctaband p{color:var(--bone-dim);max-width:56ch;margin:0 auto 22px}
.btnrow{display:flex;gap:12px;justify-content:center;flex-wrap:wrap}
.btn{display:inline-flex;align-items:center;gap:8px;padding:14px 26px;border-radius:12px;font-weight:600;font-size:15.5px;transition:.2s}
.btn-primary{background:linear-gradient(180deg,var(--brass-soft),var(--brass));color:var(--ink);box-shadow:0 12px 30px -10px rgba(201,163,90,.55)}
.btn-primary:hover{filter:brightness(1.06);transform:translateY(-2px)}
.btn-ghost{border:1px solid var(--line-2);color:var(--bone)}
.btn-ghost:hover{border-color:var(--brass);background:var(--ink-3)}

/* updated stamp */
.updated{font-size:13px;color:var(--bone-dim);margin-top:30px;opacity:.8}

/* ---------- FOOTER ---------- */
.footer{background:var(--ink-2);border-top:1px solid var(--line);margin-top:60px;padding:54px 0 26px}
.foot-grid{display:grid;grid-template-columns:1.4fr 1fr 1fr 1fr;gap:30px}
.footer .brand-logo{height:74px;margin-bottom:14px}
.foot-blurb{font-size:14px;color:var(--bone-dim);max-width:34ch}
.footer h5{font-size:11px;letter-spacing:.16em;text-transform:uppercase;color:var(--brass);margin-bottom:14px;font-weight:700}
.footer ul{list-style:none}
.footer li{margin:9px 0}
.footer li a,.footer li{font-size:14px;color:var(--bone-dim)}
.footer li a:hover{color:var(--brass-soft)}
.foot-bottom{display:flex;flex-wrap:wrap;justify-content:space-between;gap:12px;border-top:1px solid var(--line);margin-top:40px;padding-top:22px;font-size:13px;color:var(--bone-dim)}
.foot-bottom a:hover{color:var(--brass-soft)}

/* mobile sticky call bar */
.mobilebar{display:none}

@media(max-width:900px){
  .foot-grid{grid-template-columns:1fr 1fr}
  .g3,.g4{grid-template-columns:repeat(2,1fr)}
}
@media(max-width:680px){
  body{font-size:16px}
  .nav-links{display:none}
  .nav-toggle{display:block}
  .mobile-menu{display:none;position:fixed;inset:64px 0 0;background:var(--ink);z-index:79;padding:20px 24px;overflow-y:auto}
  .mobile-menu.open{display:block}
  .mobile-menu a{display:block;padding:13px 4px;font-size:17px;border-bottom:1px solid var(--line);color:var(--bone)}
  .mobile-menu h5{color:var(--brass);font-size:12px;letter-spacing:.14em;text-transform:uppercase;margin:18px 0 4px}
  .keyfacts,.g2{grid-template-columns:1fr}
  .foot-grid{grid-template-columns:1fr}
  .phead{padding-top:120px}
  .mobilebar{display:flex;position:fixed;bottom:0;left:0;right:0;z-index:78;background:rgba(11,19,32,.95);backdrop-filter:blur(14px);border-top:1px solid var(--line-2)}
  .mobilebar a{flex:1;text-align:center;padding:14px;font-weight:700;font-size:15px}
  .mobilebar .call{color:var(--brass-soft)}
  .mobilebar .quote{background:var(--brass);color:var(--ink)}
  body{padding-bottom:54px}
  .tbl{font-size:14px} .tbl th,.tbl td{padding:10px}
}
