/* HNW Solutions: homepage sections */

/* ===== Header ============================================================ */
.site-header{position:sticky;top:0;z-index:60;background:rgba(251,249,244,.92);backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);border-bottom:1px solid var(--border-hairline)}
.site-header-inner{--logo-h:58px;--logo-shift:14px;display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:32px;height:var(--header-h)}
.site-header-logo{display:flex;align-items:center;margin-left:calc(var(--logo-shift) * -1)}
.site-header-logo img{height:var(--logo-h);width:auto}
.site-header-logo .logo-dark{display:none}
.site-nav{display:flex;gap:36px;justify-content:center}
.site-nav a{font-family:var(--font-body);font-size:13px;font-weight:var(--w-medium);letter-spacing:.04em;color:var(--fg-1);padding:8px 0;position:relative;transition:color var(--dur-fast)}
.site-nav a::after{content:"";position:absolute;left:0;right:0;bottom:0;height:1px;background:var(--brass);transform:scaleX(0);transform-origin:left center;transition:transform var(--dur-base) var(--ease-standard)}
.site-nav a:hover{color:var(--brass)}
.site-nav a:hover::after,.site-nav a[aria-current="true"]::after{transform:scaleX(1)}
.site-header-cta{display:flex;justify-content:flex-end}
.nav-toggle{display:none;width:46px;height:46px;align-items:center;justify-content:center;background:0 0;border:1px solid var(--border-strong);border-radius:var(--r-1);margin-left:auto}
.nav-toggle span{display:block;width:18px;height:1px;background:var(--midnight);position:relative;transition:background var(--dur-fast)}
.nav-toggle span::before,.nav-toggle span::after{content:"";position:absolute;left:0;width:18px;height:1px;background:var(--midnight);transition:transform var(--dur-base) var(--ease-standard)}
.nav-toggle span::before{top:-6px}
.nav-toggle span::after{top:6px}
.nav-toggle[aria-expanded="true"] span{background:0 0}
.nav-toggle[aria-expanded="true"] span::before{transform:translateY(6px) rotate(45deg)}
.nav-toggle[aria-expanded="true"] span::after{transform:translateY(-6px) rotate(-45deg)}
.mobile-nav{display:none}

/* ===== Hero ============================================================== */
.hero{position:relative;padding:112px 0 88px;overflow:hidden}
.hero::before{content:"";position:absolute;inset:0;pointer-events:none;background:radial-gradient(1200px 600px at 80% 20%,rgba(176,141,87,.1),transparent 60%),radial-gradient(1000px 700px at 10% 90%,rgba(14,31,51,.06),transparent 60%),linear-gradient(180deg,var(--bone) 0,var(--parchment) 100%)}
.hero-inner{position:relative;max-width:980px}
.hero-title{font-family:var(--font-display);font-weight:var(--w-regular);font-size:calc(clamp(46px,8vw,112px) * var(--ds));line-height:1;letter-spacing:-.025em;color:var(--fg-1);margin:18px 0 0}
.hero-title em{font-style:italic;font-weight:var(--w-regular);color:var(--brass)}
.hero .rule-brass{margin:28px 0 24px}
.hero-lead{font-family:var(--font-body);font-size:clamp(17px,1.5vw,20px);line-height:1.55;color:var(--fg-2);max-width:620px;margin:0 0 36px;text-wrap:pretty}
.hero-cta{display:flex;align-items:center;gap:22px;flex-wrap:wrap}
.hero-trust{display:flex;align-items:center;gap:clamp(20px,4vw,36px);margin-top:80px;padding-top:28px;border-top:1px solid var(--border-hairline);max-width:720px}
.hero-trust-item{flex:1 1 0;min-width:0}
.hero-trust-num{font-family:var(--font-display);font-size:calc(40px * var(--ds));font-weight:var(--w-medium);color:var(--fg-1);letter-spacing:-.02em;line-height:1;white-space:nowrap}
.hero-trust-num.is-text{font-size:calc(30px * var(--ds));letter-spacing:.01em}
.hero-trust-lbl{font-family:var(--font-body);font-size:11px;letter-spacing:.12em;text-transform:uppercase;color:var(--fg-2);margin-top:10px;line-height:1.4}
.hero-trust-rule{width:1px;align-self:stretch;min-height:44px;background:var(--border-hairline);flex:none}

/* ===== Services ========================================================== */
.services-head{display:grid;grid-template-columns:1fr 1fr;gap:64px;align-items:end;margin-bottom:72px}
.services-title{font-family:var(--font-display);font-weight:var(--w-regular);font-size:calc(clamp(36px,4.5vw,64px) * var(--ds));line-height:1.05;letter-spacing:-.02em;margin:18px 0 0}
.services-sub{font-family:var(--font-body);font-size:16px;line-height:1.65;color:var(--fg-2);max-width:480px;margin:0 0 0 auto;text-wrap:pretty}
.services-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:32px}
.svc{background:var(--paper);border:1px solid var(--border-hairline);border-radius:var(--r-3);padding:36px 32px 32px;transition:box-shadow var(--dur-base) var(--ease-standard)}
.svc:hover{box-shadow:var(--shadow-2)}
.svc .rule-brass{margin:0 0 28px}
.svc-num{font-family:var(--font-display);font-size:calc(22px * var(--ds));font-weight:var(--w-medium);color:var(--brass);letter-spacing:.04em}
.svc-title{font-family:var(--font-display);font-size:calc(36px * var(--ds));font-weight:var(--w-medium);letter-spacing:-.02em;margin:4px 0 16px;color:var(--fg-1);line-height:1.1}
.svc-desc{font-family:var(--font-body);font-size:14px;line-height:1.65;color:var(--fg-2);margin:0 0 28px;text-wrap:pretty}
.svc-tags{list-style:none;display:flex;flex-direction:column;gap:10px;border-top:1px solid var(--border-hairline);padding-top:20px}
.svc-tags li{font-family:var(--font-body);font-size:12px;letter-spacing:.08em;text-transform:uppercase;color:var(--fg-1);font-weight:var(--w-medium)}

/* ===== Carriers ========================================================== */
.carriers{background:var(--bone);border-top:1px solid var(--border-hairline);border-bottom:1px solid var(--border-hairline)}
.carriers-inner{display:flex;flex-direction:column;gap:32px}
.carriers-head{display:flex;align-items:baseline;gap:32px;flex-wrap:wrap}
.carriers-h{font-family:var(--font-display);font-weight:var(--w-regular);font-size:calc(28px * var(--ds));line-height:1.25;letter-spacing:-.01em;color:var(--fg-1);max-width:620px}
.carriers-list{list-style:none;display:grid;grid-template-columns:repeat(7,1fr);border-top:1px solid var(--border-hairline);border-bottom:1px solid var(--border-hairline)}
.carrier{padding:26px 16px;display:flex;align-items:center;justify-content:center;min-height:92px;border-right:1px solid var(--border-hairline)}
.carrier:last-child{border-right:0}
.carrier img{max-height:34px;max-width:100%;width:auto;height:auto;object-fit:contain;opacity:.86;transition:opacity var(--dur-fast);filter:saturate(.95)}
.carrier:hover img{opacity:1}
.carriers-note{font-family:var(--font-body);font-size:12px;color:var(--fg-2);font-style:italic}

/* ===== Approach ========================================================== */
.approach-inner{display:grid;grid-template-columns:1fr 1fr;gap:clamp(48px,7vw,96px);align-items:start}
.approach-title{font-family:var(--font-display);font-weight:var(--w-regular);font-size:calc(clamp(36px,4.8vw,68px) * var(--ds));line-height:1;letter-spacing:-.02em;margin:18px 0 48px}
.approach-quote-wrap{border-left:1.5px solid var(--brass);padding:4px 0 4px 28px;max-width:460px;position:relative}
.approach-quote-mark{position:absolute;left:-6px;top:-26px;font-family:var(--font-display);font-size:calc(96px * var(--ds));color:var(--brass);line-height:1;opacity:.35;pointer-events:none}
.approach-quote{font-family:var(--font-display);font-style:italic;font-size:calc(24px * var(--ds));line-height:1.4;font-weight:var(--w-regular);color:var(--fg-1);margin:0 0 14px;text-wrap:pretty}
.approach-quote-attr{font-family:var(--font-body);font-size:11px;letter-spacing:.16em;text-transform:uppercase;color:var(--fg-2);font-weight:var(--w-medium)}
.approach-steps{list-style:none;display:flex;flex-direction:column}
.step{display:grid;grid-template-columns:56px 1fr;gap:24px;padding:26px 0;border-bottom:1px solid var(--border-hairline)}
.step:first-child{padding-top:6px}
.step:last-child{border-bottom:0}
.step-num{font-family:var(--font-display);font-style:italic;font-weight:var(--w-regular);font-size:calc(28px * var(--ds));color:var(--brass);line-height:1.2}
.step-title{font-family:var(--font-body);font-size:16px;font-weight:var(--w-semibold);letter-spacing:.02em;color:var(--fg-1);margin:4px 0 8px}
.step-desc{font-family:var(--font-body);font-size:14px;line-height:1.65;color:var(--fg-2);max-width:480px;text-wrap:pretty}

/* ===== Principal ========================================================= */
.team-inner{display:grid;grid-template-columns:1fr 1fr;gap:clamp(48px,6vw,80px);align-items:center}
.portrait-frame{position:relative;padding:18px;background:var(--paper);border:1px solid var(--border-hairline);border-radius:var(--r-2);box-shadow:var(--shadow-2);max-width:540px;margin:0 auto}
.portrait-frame::before{content:"";position:absolute;inset:6px;border:1px solid rgba(176,141,87,.32);pointer-events:none;border-radius:var(--r-1)}
.team-portrait{width:100%;aspect-ratio:4/5;object-fit:cover;object-position:center 18%;border-radius:var(--r-1);filter:saturate(.92) contrast(1.02)}
.portrait-label{position:absolute;left:50%;bottom:-20px;transform:translateX(-50%);background:var(--midnight);padding:11px 20px;display:flex;align-items:center;gap:14px;border-radius:var(--r-1);white-space:nowrap}
.portrait-label-mark{font-family:var(--font-display);font-size:calc(18px * var(--ds));font-weight:var(--w-medium);color:var(--on-dark)}
.portrait-label-rule{width:16px;height:1px;background:var(--brass);flex:none}
.portrait-label-cap{font-family:var(--font-body);font-size:10px;font-weight:var(--w-medium);letter-spacing:.18em;text-transform:uppercase;color:var(--brass-soft)}
.team-title{font-family:var(--font-display);font-weight:var(--w-regular);font-size:calc(clamp(38px,5.2vw,76px) * var(--ds));line-height:1;letter-spacing:-.02em;margin:18px 0 0;color:var(--fg-1)}
.team-title em{font-style:italic;font-weight:var(--w-regular);color:var(--brass);font-size:.6em;display:inline-block;letter-spacing:.02em;vertical-align:.18em}
.team .rule-brass{margin:26px 0 20px}
.team-role{font-family:var(--font-body);font-size:13px;font-weight:var(--w-semibold);letter-spacing:.14em;text-transform:uppercase;color:var(--fg-2);margin-bottom:26px}
.team-bio{font-family:var(--font-body);font-size:16px;line-height:1.7;color:var(--fg-1);max-width:520px;margin:0 0 18px;text-wrap:pretty}
.team-bio.muted{color:var(--fg-2)}
.team-creds{margin:34px 0 0;padding:26px 0 0;border-top:1px solid var(--border-hairline)}
.team-creds>div{display:grid;grid-template-columns:88px 1fr;gap:24px;padding:12px 0;border-bottom:1px solid var(--border-hairline)}
.team-creds>div:last-child{border-bottom:0}
.team-creds dt{font-family:var(--font-mono);font-size:12px;font-weight:var(--w-medium);color:var(--brass);letter-spacing:.08em}
.team-creds dd{font-family:var(--font-body);font-size:14px;color:var(--fg-1)}

/* ===== Contact =========================================================== */
.contact-inner{display:grid;grid-template-columns:1fr 1fr;gap:clamp(48px,7vw,96px);align-items:start}
.contact-title{font-family:var(--font-display);font-weight:var(--w-regular);font-size:calc(clamp(36px,4.8vw,68px) * var(--ds));line-height:1;letter-spacing:-.02em;color:var(--on-dark);margin:18px 0 26px}
.contact-lead{font-family:var(--font-body);font-size:17px;line-height:1.6;color:rgba(251,249,244,.78);margin:0 0 36px;max-width:480px;text-wrap:pretty}
.contact-dl{display:grid;grid-template-columns:1fr 1fr;gap:26px 32px;margin:0 0 36px;padding:26px 0;border-top:1px solid var(--border-on-dark);border-bottom:1px solid var(--border-on-dark)}
.contact-dl>div{display:flex;flex-direction:column;gap:6px;min-width:0}
.contact-dl dt{font-family:var(--font-body);font-size:10px;letter-spacing:.16em;text-transform:uppercase;color:var(--brass-soft);font-weight:var(--w-medium)}
.contact-dl dd{font-family:var(--font-body);font-size:15px;color:var(--on-dark);line-height:1.5}
.contact-mail{color:var(--on-dark);box-shadow:inset 0 -1px 0 rgba(176,141,87,.5);transition:color var(--dur-fast),box-shadow var(--dur-fast);word-break:break-word}
.contact-mail:hover{color:var(--brass);box-shadow:inset 0 -1px 0 var(--brass)}
.contact-disclosure{font-family:var(--font-body);font-size:12px;line-height:1.7;color:rgba(251,249,244,.55);max-width:440px}
.contact-form{display:flex;flex-direction:column;gap:20px}
.contact-form .field label{color:var(--brass-soft)}
.contact-form .field input,.contact-form .field select,.contact-form .field textarea{background:rgba(255,255,255,.04);border:1px solid rgba(255,255,255,.18);color:var(--on-dark)}
.contact-form .field select option{color:var(--graphite)}
.contact-form .field select:invalid{color:rgba(251,249,244,.4)}
.contact-form .field select:invalid option:not([value=""]){color:var(--graphite)}
.contact-form .field input::placeholder,.contact-form .field textarea::placeholder{color:rgba(251,249,244,.35)}
.contact-form .field input:focus,.contact-form .field select:focus,.contact-form .field textarea:focus{outline:2px solid var(--brass);border-color:var(--brass);background:rgba(255,255,255,.08)}
.grid-2{display:grid;grid-template-columns:1fr 1fr;gap:16px}
.contact-fine{font-family:var(--font-body);font-size:11px;letter-spacing:.06em;color:rgba(251,249,244,.5);margin-top:-4px}
.contact-confirm{background:rgba(255,255,255,.04);border:1px solid rgba(255,255,255,.18);border-radius:var(--r-3);padding:clamp(32px,5vw,56px) clamp(24px,4vw,48px)}
.contact-confirm[hidden]{display:none}
.contact-confirm-title{font-family:var(--font-display);font-size:calc(44px * var(--ds));font-weight:var(--w-regular);font-style:italic;color:var(--on-dark);margin:14px 0 16px;letter-spacing:-.015em;line-height:1.1}
.contact-confirm-body{font-family:var(--font-body);font-size:15px;line-height:1.65;color:rgba(251,249,244,.72);margin:0 0 26px;max-width:380px}
.btn-tertiary.on-dark{color:var(--on-dark);box-shadow:inset 0 -1px 0 var(--brass)}
.btn-tertiary.on-dark:hover{color:var(--brass-soft)}

/* ===== Footer ============================================================ */
.site-footer{background:var(--midnight);color:var(--on-dark);padding:80px 0 26px}
.site-footer-inner{display:grid;grid-template-columns:1.2fr 1.6fr;gap:clamp(48px,7vw,96px);padding-bottom:52px;border-bottom:1px solid var(--border-on-dark)}
.footer-seal{height:152px;width:auto;margin-bottom:22px}
.footer-tagline{font-family:var(--font-display);font-style:italic;font-size:calc(18px * var(--ds));line-height:1.5;color:rgba(251,249,244,.8);margin:0 0 26px;max-width:340px}
.footer-licensing{display:flex;gap:40px;flex-wrap:wrap;padding-top:18px;border-top:1px solid var(--border-on-dark)}
.footer-licensing>div{display:flex;flex-direction:column;gap:4px;min-width:0}
.footer-l-label{font-family:var(--font-body);font-size:10px;letter-spacing:.16em;text-transform:uppercase;color:var(--brass-soft)}
.footer-l-val{font-family:var(--font-mono);font-size:13px;color:var(--on-dark)}
.footer-l-link{font-family:var(--font-body);font-size:13px;color:var(--on-dark);box-shadow:inset 0 -1px 0 rgba(176,141,87,.5);transition:color var(--dur-fast),box-shadow var(--dur-fast);width:max-content;max-width:100%;word-break:break-word}
.footer-l-link:hover{color:var(--brass);box-shadow:inset 0 -1px 0 var(--brass)}
.site-footer-cols{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:32px}
.footer-col-h{font-family:var(--font-body);font-size:10px;letter-spacing:.18em;text-transform:uppercase;color:var(--brass-soft);font-weight:var(--w-medium);margin:8px 0 20px}
.footer-col ul{list-style:none;display:flex;flex-direction:column;gap:14px}
.footer-col a{font-family:var(--font-body);font-size:14px;color:var(--on-dark);transition:color var(--dur-fast)}
.footer-col a:hover{color:var(--brass)}
.site-footer-base{display:flex;justify-content:space-between;gap:36px;padding-top:26px;font-family:var(--font-body);font-size:11px;color:rgba(251,249,244,.48);line-height:1.6}
.footer-base-l{display:flex;gap:12px;flex-wrap:wrap}
.footer-base-r{max-width:520px;text-align:right}

/* ===== Reveal on scroll ================================================== */
.reveal{opacity:0;transform:translateY(14px);transition:opacity var(--dur-slow) var(--ease-emphasis),transform var(--dur-slow) var(--ease-emphasis)}
.reveal.is-in{opacity:1;transform:none}
@media (prefers-reduced-motion:reduce){.reveal{opacity:1;transform:none}}

/* ===== Font picker (only shown with ?fonts=1) ============================ */
.fontpicker{position:fixed;right:16px;bottom:16px;z-index:120;background:var(--paper);border:1px solid var(--border-strong);border-radius:var(--r-3);box-shadow:var(--shadow-3);padding:16px;width:250px;max-width:calc(100vw - 32px)}
.fontpicker h4{font-family:var(--font-body);font-size:10px;letter-spacing:.16em;text-transform:uppercase;color:var(--brass);font-weight:var(--w-semibold);margin-bottom:12px}
.fontpicker-opts{display:flex;flex-direction:column;gap:6px}
.fontpicker button{display:flex;flex-direction:column;gap:2px;text-align:left;background:0 0;border:1px solid var(--border-hairline);border-radius:var(--r-1);padding:9px 12px;min-height:44px;justify-content:center;transition:border-color var(--dur-fast),background var(--dur-fast)}
.fontpicker button:hover{border-color:var(--brass)}
.fontpicker button[aria-pressed="true"]{border-color:var(--midnight);background:var(--parchment)}
.fontpicker button b{font-size:13px;font-weight:var(--w-semibold);color:var(--fg-1)}
.fontpicker button i{font-size:10.5px;font-style:normal;letter-spacing:.04em;color:var(--fg-2)}
.fontpicker-note{font-size:10.5px;line-height:1.5;color:var(--fg-2);margin-top:12px;padding-top:10px;border-top:1px solid var(--border-hairline)}
.fontpicker-note code{font-family:var(--font-mono);font-size:10px;color:var(--brass)}

/* ===== Breakpoints ======================================================= */
@media (max-width:1100px){
  .carriers-list{grid-template-columns:repeat(4,1fr)}
  .carrier{border-bottom:1px solid var(--border-hairline)}
  .carrier:nth-child(4n){border-right:0}
  .carriers-list>.carrier:nth-last-child(-n+3){border-bottom:0}
  .services-grid{grid-template-columns:1fr;max-width:640px}
  .services-head{grid-template-columns:1fr;gap:24px;align-items:start;margin-bottom:48px}
  .services-sub{margin:0;max-width:620px}
}
@media (max-width:980px){
  :root{--header-h:72px}
  .site-header-inner{grid-template-columns:auto 1fr}
  .site-header-logo img{height:calc(var(--logo-h) * .78)}
  .site-nav,.site-header-cta{display:none}
  .nav-toggle{display:flex}
  .mobile-nav{display:block;overflow:hidden;max-height:0;transition:max-height var(--dur-base) var(--ease-standard);border-top:1px solid var(--border-hairline);background:var(--bone)}
  .mobile-nav.is-open{max-height:420px}
  .mobile-nav-list{list-style:none;display:flex;flex-direction:column;padding:8px 0 20px}
  .mobile-nav-list a{display:flex;align-items:center;min-height:52px;font-family:var(--font-body);font-size:15px;font-weight:var(--w-medium);letter-spacing:.02em;color:var(--fg-1);border-bottom:1px solid var(--border-hairline)}
  .mobile-nav-list li:last-child a{border-bottom:0}
  .mobile-nav .btn{width:100%;margin-top:16px}
  .hero{padding:72px 0 64px}
  .approach-inner,.team-inner,.contact-inner{grid-template-columns:1fr}
  .approach-title{margin-bottom:36px}
  .approach-quote-wrap{max-width:560px}
  .team-inner{gap:48px}
  .portrait-frame{max-width:420px;margin:0 0 22px}
  .team-bio,.step-desc,.contact-lead,.contact-disclosure{max-width:640px}
  .site-footer-inner{grid-template-columns:1fr;gap:44px;padding-bottom:40px}
  .footer-seal{height:120px}
  .site-footer-base{flex-direction:column;gap:16px}
  .footer-base-r{text-align:left;max-width:640px}
}
@media (max-width:640px){
  .carriers-list{grid-template-columns:repeat(2,1fr)}
  .carrier:nth-child(2n){border-right:0}
  .carriers-list>.carrier:nth-last-child(-n+1){border-bottom:0}
  .carrier{min-height:80px;padding:20px 14px}
  .hero-trust{flex-wrap:wrap;gap:0;margin-top:56px;row-gap:22px}
  .hero-trust-item{flex:1 1 100%;padding:14px 0;border-bottom:1px solid var(--border-hairline)}
  .hero-trust-item:last-child{border-bottom:0}
  .hero-trust-rule{display:none}
  .hero-trust-num{font-size:calc(34px * var(--ds))}
  .hero-trust-num.is-text{font-size:calc(26px * var(--ds))}
  .hero-cta{gap:14px}
  .hero-cta .btn{width:100%}
  .svc{padding:28px 24px}
  .step{grid-template-columns:40px 1fr;gap:16px}
  .contact-dl{grid-template-columns:1fr;gap:20px}
  .grid-2{grid-template-columns:1fr}
  .team-creds>div{grid-template-columns:1fr;gap:4px}
  .site-footer{padding:56px 0 24px}
  .site-footer-cols{grid-template-columns:1fr;gap:28px}
  .fontpicker{left:16px;right:16px;width:auto;bottom:12px}
}

/* ===== Dark theme overrides =============================================== *
 * The neutral ramp flips in base.css. These rules cover the places that use
 * brand navy or a hard-coded rgba directly. */
html[data-theme="dark"] .site-header{background:rgba(10,22,34,.9)}
html[data-theme="dark"] .site-header-logo .logo-light{display:none}
html[data-theme="dark"] .site-header-logo .logo-dark{display:block}
html[data-theme="dark"] .mobile-nav{background:var(--bone)}
html[data-theme="dark"] .nav-toggle{border-color:rgba(255,255,255,.24)}
html[data-theme="dark"] .nav-toggle span,html[data-theme="dark"] .nav-toggle span::before,html[data-theme="dark"] .nav-toggle span::after{background:var(--fg-1)}
html[data-theme="dark"] .nav-toggle[aria-expanded="true"] span{background:0 0}
html[data-theme="dark"] .btn-primary{background:var(--brass);border-color:var(--brass);color:#0A1622}
html[data-theme="dark"] .btn-primary:hover{background:var(--brass-soft);border-color:var(--brass-soft);color:#0A1622}
html[data-theme="dark"] .btn-secondary{color:var(--fg-1);border-color:rgba(255,255,255,.3)}
html[data-theme="dark"] .btn-secondary:hover{background:var(--brass);border-color:var(--brass);color:#0A1622}
html[data-theme="dark"] .btn-tertiary{color:var(--fg-1)}
html[data-theme="dark"] .btn-tertiary:hover{color:var(--brass-soft)}
html[data-theme="dark"] .hero::before{background:radial-gradient(1200px 600px at 80% 20%,rgba(176,141,87,.14),transparent 60%),radial-gradient(1000px 700px at 10% 90%,rgba(0,0,0,.4),transparent 60%),linear-gradient(180deg,#0A1622 0,#11283C 100%)}
html[data-theme="dark"] .section-dark,html[data-theme="dark"] .site-footer{background:#050F1A}
html[data-theme="dark"] .carriers{background:var(--bone)}
html[data-theme="dark"] .portrait-label{background:#050F1A}
html[data-theme="dark"] .team-portrait{filter:saturate(.9) contrast(1.02) brightness(.94)}
html[data-theme="dark"] a{color:var(--brass-soft)}
html[data-theme="dark"] a:hover{color:var(--brass)}
html[data-theme="dark"] .tweaks{background:var(--paper);border-color:rgba(255,255,255,.18)}

/* ===== Tweaks panel (only shown with ?tweaks=1) ========================== */
.tweaks{position:fixed;right:16px;bottom:16px;z-index:120;background:var(--paper);border:1px solid var(--border-strong);border-radius:var(--r-3);box-shadow:var(--shadow-3);padding:16px;width:262px;max-width:calc(100vw - 32px);max-height:calc(100vh - 32px);overflow:auto}
.tweaks h4{font-family:var(--font-body);font-size:10px;letter-spacing:.16em;text-transform:uppercase;color:var(--brass);font-weight:var(--w-semibold);margin:0 0 10px}
.tweaks h4+h4,.tweaks-group+.tweaks-group{margin-top:0}
.tweaks-group{padding-top:14px;margin-top:14px;border-top:1px solid var(--border-hairline)}
.tweaks-group:first-of-type{padding-top:0;margin-top:0;border-top:0}
.tweaks-opts{display:flex;flex-direction:column;gap:6px}
.tweaks-row{display:flex;gap:6px}
.tweaks-row button{flex:1}
.tweaks button{display:flex;flex-direction:column;gap:2px;text-align:left;background:0 0;border:1px solid var(--border-hairline);border-radius:var(--r-1);padding:9px 12px;min-height:44px;justify-content:center;transition:border-color var(--dur-fast),background var(--dur-fast);color:var(--fg-1)}
.tweaks button:hover{border-color:var(--brass)}
.tweaks button[aria-pressed="true"]{border-color:var(--brass);background:rgba(176,141,87,.12)}
.tweaks button b{font-size:13px;font-weight:var(--w-semibold)}
.tweaks button i{font-size:10.5px;font-style:normal;letter-spacing:.04em;color:var(--fg-2)}
.tweaks label{display:flex;justify-content:space-between;align-items:baseline;font-size:11px;letter-spacing:.06em;text-transform:uppercase;color:var(--fg-2);margin-bottom:6px}
.tweaks label span{font-family:var(--font-mono);font-size:11px;color:var(--brass);text-transform:none;letter-spacing:0}
.tweaks input[type=range]{width:100%;accent-color:var(--brass);min-height:32px}
.tweaks-note{font-size:10.5px;line-height:1.5;color:var(--fg-2);margin:14px 0 0;padding-top:10px;border-top:1px solid var(--border-hairline)}
.tweaks-note code{font-family:var(--font-mono);font-size:10px;color:var(--brass);word-break:break-all}
@media (max-width:640px){.tweaks{left:16px;right:16px;width:auto;bottom:12px}}
