/* Lex Aura inner pages. Built by build_pages.py: do not edit by hand. */
:root{
  --paper:#F6F6F3;
  --paper-2:#ECEBE6;
  --ink:#0E1626;
  --ink-2:#3F4757;
  --ink-3:#6A7180;
  --line:#DCDAD3;
  --navy:#08132A;
  --navy-2:#0E1D3D;
  --navy-3:#14284F;
  --on-navy:#F2F1EC;
  --on-navy-2:#B4BCCC;
  --line-navy:rgba(255,255,255,.14);
  --gold:#C9A266;
  --gold-2:#DDBF86;
  --gold-ink:#8A6414;
  --gold-tint:#EADFC3;
  --serif:"Newsreader",Georgia,"Times New Roman",serif;
  --sans:"Libre Franklin",system-ui,-apple-system,"Segoe UI",sans-serif;
  --r:4px;
  --wrap:1320px;
  --gutter:clamp(16px,4vw,48px);
  --ease:cubic-bezier(.16,1,.3,1);
}
*{box-sizing:border-box}
html{-webkit-text-size-adjust:100%}
body{margin:0;background:var(--paper);color:var(--ink);font:400 17px/1.65 var(--sans);overflow-x:clip;-webkit-font-smoothing:antialiased}
img{max-width:100%;display:block}
a{color:inherit;text-decoration:none}
button{font:inherit;color:inherit;cursor:pointer}
:focus-visible{outline:2px solid var(--gold);outline-offset:3px}
.wrap{max-width:var(--wrap);margin:0 auto;padding:0 var(--gutter)}
.sr{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}
.ph{line-height:1}

h1,h2,h3,h4{font-family:var(--serif);font-weight:400;letter-spacing:-.02em;margin:0;line-height:1.05}
h2{font-size:clamp(40px,5.2vw,76px)}
p{margin:0}
.sec{padding:clamp(96px,12vw,170px) 0;position:relative}
.lede{font-size:clamp(17px,1.3vw,20px);color:var(--ink-2);max-width:58ch;margin-top:24px}

/* buttons */
.btn{display:inline-flex;align-items:center;gap:12px;padding:17px 26px;border-radius:var(--r);font:500 15.5px/1 var(--sans);white-space:nowrap;border:1px solid transparent;transition:background .3s var(--ease),color .3s,border-color .3s,transform .2s}
.btn .ph{font-size:18px;transition:transform .3s var(--ease)}
.btn:hover .ph{transform:translateX(4px)}
.btn:active{transform:translateY(1px)}
.btn-gold{background:var(--gold);color:var(--navy)}
.btn-gold:hover{background:var(--gold-2)}
.btn-navy{background:var(--navy);color:#fff}
.btn-navy:hover{background:var(--navy-3)}
.btn-ghost{border-color:rgba(255,255,255,.4);color:#fff}
.btn-ghost:hover{background:rgba(255,255,255,.1);border-color:#fff}
.tlink{display:inline-flex;align-items:center;gap:10px;font-weight:500;color:var(--ink);padding-bottom:4px;background:linear-gradient(currentColor,currentColor) 0 100%/100% 1px no-repeat;transition:background-size .4s var(--ease)}
.tlink:hover{background-size:0 1px;background-position:100% 100%}
.tlink .ph{transition:transform .3s var(--ease)}
.tlink:hover .ph{transform:translateX(4px)}

/* ---------- header ---------- */
.hdr{position:fixed;inset:0 0 auto;z-index:50;color:var(--ink);transition:background .35s,color .35s,box-shadow .35s}
.hdr .wrap{display:grid;grid-template-columns:1fr auto 1fr;align-items:center;gap:32px;height:84px}
.hdr.scrolled{background:rgba(246,246,243,.9);backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px);box-shadow:0 1px 0 var(--line)}
.hdr.on-dark{color:#fff}
.hdr.on-dark.scrolled{background:rgba(8,19,42,.82);box-shadow:0 1px 0 var(--line-navy)}
.logo{display:block;width:156px;position:relative;flex:none}
.logo img{width:100%;height:auto;transition:opacity .35s}
.logo .w{position:absolute;inset:0;opacity:0}
.hdr.on-dark .logo .n{opacity:0}
.hdr.on-dark .logo .w{opacity:1}
.nav{display:flex;gap:6px;margin-left:-12px}
.nav a{white-space:nowrap;padding:10px 12px;font-size:15px;font-weight:500;opacity:.75;transition:opacity .2s}
.nav a:hover{opacity:1}
/* Services dropdown: opens on hover and on keyboard focus. The padding-top keeps the hover alive across the gap. */
.nav{align-items:center}
.nav-dd{position:relative}
.nav-dd>a{display:flex;align-items:center}
.nav-dd>a .ph{font-size:12px;margin-left:6px;transition:transform .3s var(--ease)}
.nav-dd:hover>a .ph,.nav-dd:focus-within>a .ph{transform:rotate(180deg)}
.nav a[aria-current]{opacity:1}
.dd{position:absolute;top:100%;left:0;width:600px;padding-top:10px;opacity:0;visibility:hidden;transform:translateY(-6px);transition:opacity .25s var(--ease),transform .25s var(--ease),visibility .25s}
.nav-dd:hover .dd,.nav-dd:focus-within .dd{opacity:1;visibility:visible;transform:none}
.dd-in{display:grid;grid-template-columns:1fr 1fr;gap:2px;padding:8px;background:var(--paper);color:var(--ink);border:1px solid var(--line);border-radius:var(--r);box-shadow:0 22px 44px -18px rgba(8,19,42,.4)}
.nav .dd a{display:grid;grid-template-columns:auto 1fr;gap:3px 14px;align-items:start;padding:12px;border-radius:2px;opacity:1;white-space:normal}
.nav .dd a:hover,.nav .dd a[aria-current]{background:var(--paper-2)}
.dd .ph-i{grid-row:span 2;font-size:22px;color:var(--gold-ink)}
.dd b{font-weight:500;font-size:15px;line-height:1.3}
.dd small{font-size:13px;line-height:1.35;color:var(--ink-3)}
.nav .dd .dd-all{grid-column:1/-1;display:flex;justify-content:space-between;align-items:center;margin-top:4px;border-top:1px solid var(--line);border-radius:0;padding:14px 12px 10px;font-size:14px}
.tools{display:flex;align-items:center;justify-content:flex-end;gap:8px}
.lang{display:flex;gap:2px;font:500 12.5px/1 var(--sans);letter-spacing:.08em}
.lang a{padding:8px 6px;opacity:.55;transition:opacity .2s}
.lang a:hover,.lang a[aria-current]{opacity:1}
.lang a[aria-current]{text-decoration:underline;text-underline-offset:5px;text-decoration-color:var(--gold)}
.lang-dd{position:relative}
.lang-btn{display:flex;align-items:center;gap:7px;height:44px;padding:0 10px;background:none;border:0;border-radius:var(--r);font:500 13px/1 var(--sans);letter-spacing:.08em;opacity:.85;transition:opacity .2s,background .2s}
.lang-btn:hover,.lang-dd.open .lang-btn{opacity:1;background:color-mix(in srgb,currentColor 8%,transparent)}
.lang-btn .ph-caret-down{font-size:12px;transition:transform .3s var(--ease)}
.lang-dd.open .ph-caret-down{transform:rotate(180deg)}
.lang-menu{position:absolute;top:calc(100% + 10px);right:0;min-width:196px;margin:0;padding:6px;list-style:none;background:var(--paper);color:var(--ink);border:1px solid var(--line);border-radius:var(--r);box-shadow:0 22px 44px -18px rgba(8,19,42,.4);opacity:0;visibility:hidden;transform:translateY(-6px);transition:opacity .25s var(--ease),transform .25s var(--ease),visibility .25s}
.lang-dd.open .lang-menu{opacity:1;visibility:visible;transform:none}
.lang-menu a{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:11px 12px;border-radius:2px;font-size:15px}
.lang-menu a:hover{background:var(--paper-2)}
.lang-menu small{font-size:11.5px;letter-spacing:.1em;color:var(--ink-3)}
.lang-menu a[aria-current] small{color:var(--gold-ink)}
/* CTA: navy bar with a gold arrow square. Gold bar on dark backgrounds. */
.cta{display:inline-flex;align-items:center;gap:14px;height:48px;padding:0 5px 0 20px;border-radius:var(--r);background:var(--navy);color:#fff;font:500 15px/1 var(--sans);white-space:nowrap;border:0;transition:background .3s var(--ease)}
.cta span{width:38px;height:38px;border-radius:2px;display:grid;place-items:center;background:var(--gold);color:var(--navy);font-size:18px;transition:transform .35s var(--ease)}
.cta:hover{background:var(--navy-3)}
.cta:hover span{transform:rotate(45deg)}
.hdr.on-dark .cta{background:var(--gold);color:var(--navy)}
.hdr.on-dark .cta span{background:var(--navy);color:var(--gold-2)}
.arb .cta,.contact-sec .cta{background:var(--gold);color:var(--navy)}
.arb .cta span,.contact-sec .cta span{background:var(--navy);color:var(--gold-2)}
.arb .cta:hover,.contact-sec .cta:hover{background:var(--gold-2)}
/* CTA row at the end of a section */
.sec-cta{display:flex;justify-content:space-between;align-items:center;gap:24px;margin-top:clamp(40px,5vw,64px);padding-top:28px;border-top:1px solid var(--line)}
.sec-cta p{font-size:17px;color:var(--ink-2);max-width:52ch}
.arb .sec-cta{border-color:var(--line-navy)}
.arb .sec-cta p{color:var(--on-navy-2)}
.pz-head-r{display:flex;flex-direction:column;align-items:flex-start;gap:20px}
.how-side .cta{margin-top:32px}
/* email popup (and the same email box in the contact section) */
.lead{width:min(520px,calc(100vw - 32px));margin:auto;padding:clamp(28px,4vw,44px);border:0;border-radius:var(--r);background:var(--paper);color:var(--ink);box-shadow:0 40px 80px -30px rgba(8,19,42,.5)}
.lead::backdrop{background:rgba(8,19,42,.55);-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px)}
.lead[open]{animation:leadIn .45s var(--ease)}
@keyframes leadIn{from{opacity:0;transform:translateY(18px) scale(.98)}}
.lead-x{position:absolute;top:14px;right:14px;width:40px;height:40px;display:grid;place-items:center;background:none;border:0;border-radius:var(--r);color:var(--ink-3);font-size:20px}
.lead-x:hover{color:var(--ink);background:var(--paper-2)}
.lead-k{display:flex;align-items:center;gap:8px;font-size:13.5px;color:var(--gold-ink)}
.lead h3{font-size:clamp(32px,3vw,42px);color:var(--navy);margin:18px 0 12px}
.lead-t{color:var(--ink-2);max-width:38ch}
.lead-form{margin-top:28px}
.lead-row{display:flex;gap:8px}
.lead-row input{flex:1;min-width:0;height:48px;padding:0 16px;font:inherit;font-size:16px;color:#fff;background:rgba(255,255,255,.06);border:1px solid rgba(255,255,255,.28);border-radius:var(--r)}
.lead-row input::placeholder{color:#8E99AE}
.lead-row input:focus{outline:0;border-color:var(--gold-2)}
.lead-row input[aria-invalid=true]{border-color:#F2B8A0}
.lead-msg{min-height:1.5em;margin-top:12px;font-size:14.5px;color:#F2B8A0}
.lead-msg.ok{color:var(--gold-2)}
.lead .lead-row input{color:var(--ink);background:#fff;border-color:var(--line)}
.lead .lead-row input::placeholder{color:var(--ink-3)}
.lead .lead-row input:focus{border-color:var(--navy)}
.lead .lead-row input[aria-invalid=true],.lead .lead-msg{border-color:#B4412A;color:#B4412A}
.lead .lead-msg.ok{color:var(--gold-ink)}
.contact-r{display:flex;flex-direction:column;gap:clamp(40px,4vw,56px);padding-top:12px}
.contact-r .reach{margin-top:0;padding-top:clamp(32px,3vw,44px);border-top:1px solid var(--line-navy)}
.lead-box{padding:clamp(28px,3vw,44px);border:1px solid var(--line-navy);border-radius:var(--r);background:rgba(255,255,255,.03)}
.lead-box h3{font-size:clamp(28px,2.4vw,36px)}
.lead-box>p{color:var(--on-navy-2);margin-top:10px}
.icon-btn{width:44px;height:44px;border-radius:var(--r);display:grid;place-items:center;font-size:21px;border:1px solid color-mix(in srgb,currentColor 25%,transparent);background:none;transition:background .2s}
.icon-btn:hover{background:color-mix(in srgb,currentColor 10%,transparent)}
.menu-btn{display:none}
.drawer{position:fixed;inset:0;z-index:60;background:var(--navy);color:#fff;padding:0 var(--gutter) 28px;display:flex;flex-direction:column;opacity:0;visibility:hidden;transition:opacity .4s var(--ease),visibility .4s}
.drawer.open{opacity:1;visibility:visible}
.drawer-top{display:flex;justify-content:space-between;align-items:center;height:76px}
.drawer nav{display:flex;flex-direction:column;margin-top:16px;flex:1 1 auto;min-height:0;overflow-y:auto}
.drawer .dr-k{font:500 12px/1 var(--sans);letter-spacing:.14em;text-transform:uppercase;color:var(--gold);margin:8px 0 4px}
.drawer nav a.dr-s{font:400 19px/1.2 var(--sans);padding:12px 0}
.drawer nav a.dr-s .ph{font-size:16px}
.drawer nav a{font:400 34px/1.15 var(--serif);padding:14px 0;border-bottom:1px solid var(--line-navy);display:flex;justify-content:space-between;align-items:center;transform:translateY(16px);opacity:0;transition:transform .6s var(--ease),opacity .6s}
.drawer.open nav a{transform:none;opacity:1}
.drawer nav a:nth-child(2){transition-delay:.04s}.drawer nav a:nth-child(3){transition-delay:.08s}.drawer nav a:nth-child(4){transition-delay:.12s}.drawer nav a:nth-child(5){transition-delay:.16s}.drawer nav a:nth-child(6){transition-delay:.2s}.drawer nav a:nth-child(7){transition-delay:.24s}
.drawer nav .ph{font-size:20px;color:var(--gold)}
.drawer .lang{margin-top:auto;font-size:14px}

.stats{margin-top:clamp(64px,8vw,112px)}
.stats-lead{font-size:14px;font-weight:500;letter-spacing:.02em;color:var(--ink-3);padding-bottom:18px;border-bottom:1px solid var(--line)}
.stats dl{display:grid;grid-template-columns:repeat(4,1fr);margin:0}
.stats dl>div{padding:clamp(28px,3vw,44px) clamp(16px,2.4vw,36px) 0;border-left:1px solid var(--line)}
.stats dl>div:first-child{padding-left:0;border-left:0}
.stats dt{font:400 clamp(64px,7.4vw,112px)/.9 var(--serif);letter-spacing:-.045em;color:var(--navy);font-variant-numeric:lining-nums tabular-nums;white-space:nowrap}
.stats dt sup{font-size:.5em;vertical-align:.8em;margin-left:.04em;color:var(--gold-ink);letter-spacing:0}
.stats dd{margin:18px 0 0;font-size:15.5px;line-height:1.45;color:var(--ink-2);max-width:20ch}
.icc{display:flex;align-items:center;gap:14px;margin-top:28px;font-size:15.5px;color:var(--ink-2)}
.icc .ph{font-size:26px;color:var(--gold-ink);flex:none}

/* ---------- faq ---------- */
.faq{display:grid;grid-template-columns:5fr 7fr;gap:clamp(40px,6vw,104px)}
.faq-side{position:sticky;top:120px;align-self:start}
.faq-side p{margin-top:24px;color:var(--ink-2);max-width:36ch}
.faq-side .btn{margin-top:30px}
.acc-item{border-bottom:1px solid var(--line)}
.acc-item:first-child{border-top:1px solid var(--line)}
.acc-q{width:100%;background:none;border:0;text-align:left;display:flex;justify-content:space-between;align-items:center;gap:24px;padding:30px 0;font:400 clamp(22px,2vw,28px)/1.25 var(--serif);color:var(--ink);letter-spacing:-.01em}
.acc-q .ph{flex:none;font-size:22px;color:var(--gold-ink);transition:transform .45s var(--ease)}
.acc-q[aria-expanded=true] .ph{transform:rotate(45deg)}
.acc-a{display:grid;grid-template-rows:0fr;transition:grid-template-rows .5s var(--ease)}
.acc-a>div{overflow:hidden}
.acc-a p{padding:0 56px 32px 0;color:var(--ink-2);font-size:17.5px;max-width:62ch}
.acc-item.open .acc-a{grid-template-rows:1fr}

/* ---------- contact ---------- */
.contact-sec{background:var(--navy);color:var(--on-navy)}
.contact{display:grid;grid-template-columns:6fr 6fr;gap:clamp(48px,7vw,120px)}
.contact h2{margin-top:28px}
.contact .lede{color:var(--on-navy-2)}
.desks{margin-top:48px}
.desks h3{font:500 14px/1 var(--sans);letter-spacing:.02em;color:var(--on-navy-2);margin-bottom:6px}
.desk{display:grid;grid-template-columns:44px 1fr;gap:16px;align-items:baseline;padding:16px 0;border-bottom:1px solid var(--line-navy)}
.desk .k{font:400 30px/1 var(--serif);color:var(--gold-2)}
.desk b{font-weight:500;font-size:16px}
.reach{display:grid;grid-template-columns:1fr 1fr;gap:28px 32px;margin-top:44px}
.reach a,.reach div{display:flex;gap:14px;align-items:flex-start;font-size:15.5px}
.reach .ph{font-size:22px;color:var(--gold);margin-top:2px}
.reach small{display:block;color:var(--on-navy-2);font-size:13.5px;margin-top:2px}
.reach a:hover span{text-decoration:underline;text-underline-offset:4px}
.form-note{display:flex;gap:10px;align-items:center;font-size:14px;color:var(--on-navy-2);margin-top:20px}
.form-note .ph{color:var(--gold)}

/* ---------- footer ---------- */
.ftr{background:#050C1C;color:var(--on-navy-2);padding:88px 0 36px;font-size:15px}
.ftr-top{display:grid;grid-template-columns:5fr 2fr 2fr 3fr;gap:40px;padding-bottom:64px}
.ftr .logo{width:200px}
.ftr-top>div>p{margin-top:22px;max-width:36ch}
.ftr h4{font:500 14px/1 var(--sans);color:#fff;margin-bottom:20px}
.ftr ul{list-style:none;margin:0;padding:0;display:grid;gap:12px}
.ftr ul a:hover{color:#fff}
.ftr-bot{display:flex;justify-content:space-between;flex-wrap:wrap;gap:16px;padding-top:28px;border-top:1px solid var(--line-navy);font-size:14px}
.ftr-bot nav{display:flex;gap:24px;flex-wrap:wrap}
.ftr-bot a:hover{color:#fff}

.split .w{display:inline-block;overflow:hidden;vertical-align:top;padding-bottom:.12em;margin-bottom:-.12em}
.split .w>span{display:inline-block;transform:translateY(110%);transition:transform 1.1s var(--ease);transition-delay:calc(var(--i) * 60ms + var(--base,0ms))}
.split.in .w>span{transform:none}
.hero .split{--base:250ms}


/* ==========================================================================
   Inner pages. Everything below is shared by the service, about, contact,
   practice, FAQ and legal pages. Each page mixes different modules so no two
   pages read the same.
   ========================================================================== */
.k{font:500 13px/1 var(--sans);letter-spacing:.14em;text-transform:uppercase;color:var(--gold-ink)}
[data-dark] .k,.on-navy .k{color:var(--gold-2)}
.sec-sm{padding:clamp(72px,8vw,120px) 0;position:relative}
.h3l{font-size:clamp(30px,3vw,44px);line-height:1.1}
.muted{color:var(--ink-3)}
.navy{background:var(--navy);color:var(--on-navy)}
.navy .lede{color:var(--on-navy-2)}
.tint{background:var(--paper-2)}
.head-row{display:flex;justify-content:space-between;align-items:flex-end;gap:32px;margin-bottom:clamp(40px,5vw,72px)}
.head-row p{max-width:46ch;color:var(--ink-2)}
.navy .head-row p{color:var(--on-navy-2)}
.navy .cta,.cta-band .cta,.pg-hero--dark .cta{background:var(--gold);color:var(--navy)}
.navy .cta span,.cta-band .cta span,.pg-hero--dark .cta span{background:var(--navy);color:var(--gold-2)}
.navy .cta:hover,.cta-band .cta:hover,.pg-hero--dark .cta:hover{background:var(--gold-2)}
.navy .sec-cta{border-color:var(--line-navy)}
.navy .sec-cta p{color:var(--on-navy-2)}
.navy .tlink{color:#fff}

/* ---------- page hero ---------- */
.pg-hero{position:relative;padding:clamp(140px,16vh,190px) 0 clamp(56px,7vw,96px)}
.crumb{display:flex;gap:10px;align-items:center;font-size:14px;color:var(--ink-3);margin-bottom:clamp(28px,4vw,48px)}
.crumb a:hover{color:var(--ink)}
.crumb .ph{font-size:12px}
.pg-h1{font:600 clamp(44px,6.4vw,104px)/.98 var(--sans);letter-spacing:-.045em;color:var(--navy);max-width:13ch;padding-bottom:.06em}
.pg-h1 .accent{color:var(--gold-ink)}
.pg-sub{font-size:clamp(17px,1.35vw,20px);color:var(--ink-2);line-height:1.55;max-width:50ch;margin-top:clamp(24px,3vw,36px)}
.pg-ctas{display:flex;flex-wrap:wrap;align-items:center;gap:28px;margin-top:32px}
.pg-hero--split .wrap{display:grid;grid-template-columns:7fr 5fr;gap:clamp(40px,6vw,96px);align-items:end}
.pg-hero--split .pg-img{aspect-ratio:4/5;border-radius:var(--r);overflow:hidden;position:relative}
.pg-hero--split .pg-img img{width:100%;height:100%;object-fit:cover}
.pg-img figcaption{position:absolute;left:16px;right:16px;bottom:16px;padding:14px 16px;background:rgba(246,246,243,.94);border-radius:var(--r);font-size:14.5px;color:var(--ink-2);display:flex;gap:12px;align-items:center}
.pg-img figcaption .ph{font-size:22px;color:var(--gold-ink);flex:none}
.pg-hero--dark{background:var(--navy);color:var(--on-navy);overflow:hidden}
.pg-hero--dark .crumb{color:var(--on-navy-2)}
.pg-hero--dark .crumb a:hover{color:#fff}
.pg-hero--dark .pg-h1{color:#fff}
.pg-hero--dark .pg-h1 .accent{color:var(--gold-2)}
.pg-hero--dark .pg-sub{color:var(--on-navy-2)}
.pg-hero--dark .tlink{color:#fff}
.pg-hero--dark .bg{position:absolute;inset:0;opacity:.32}
.pg-hero--dark .bg img{width:100%;height:100%;object-fit:cover}
.pg-hero--dark .bg::after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,var(--navy) 20%,rgba(8,19,42,.4))}
.pg-hero--dark .wrap{position:relative}
.pg-hero--center{text-align:center}
.pg-hero--center .crumb{justify-content:center}
.pg-hero--center .pg-h1,.pg-hero--center .pg-sub{margin-left:auto;margin-right:auto}
.pg-hero--center .pg-ctas{justify-content:center}
/* big counter next to the title */
.pg-hero--count .wrap{display:grid;grid-template-columns:1fr auto;gap:clamp(32px,6vw,96px);align-items:end}
.big-count{font:400 clamp(140px,19vw,300px)/.78 var(--serif);letter-spacing:-.06em;color:var(--navy);text-align:right;font-variant-numeric:lining-nums}
.big-count small{display:block;font:500 15px/1.4 var(--sans);letter-spacing:0;color:var(--ink-3);margin-top:22px;max-width:22ch;margin-left:auto}
.big-count sup{font-size:.32em;vertical-align:1.6em;color:var(--gold-ink);letter-spacing:0}

/* fact strip under a hero */
.facts{display:grid;grid-template-columns:repeat(4,1fr);margin:clamp(56px,7vw,96px) 0 0;border-top:1px solid var(--line)}
.facts>div{padding:28px clamp(16px,2vw,32px) 0;border-left:1px solid var(--line)}
.facts>div:first-child{padding-left:0;border-left:0}
.facts dt{font:400 clamp(40px,4.2vw,64px)/1 var(--serif);letter-spacing:-.035em;color:var(--navy);white-space:nowrap}
.facts dd{margin:12px 0 0;font-size:15px;line-height:1.45;color:var(--ink-2);max-width:24ch}
.pg-hero--dark .facts{border-color:var(--line-navy)}
.pg-hero--dark .facts>div{border-color:var(--line-navy)}
.pg-hero--dark .facts dt{color:var(--gold-2)}
.pg-hero--dark .facts dd{color:var(--on-navy-2)}

/* statement paragraph */
.statement{font:400 clamp(28px,3.2vw,46px)/1.25 var(--serif);letter-spacing:-.015em;max-width:1000px}
.statement b{font-weight:400;color:var(--gold-ink)}
.navy .statement b{color:var(--gold-2)}

/* ---------- notice (a dated change in the law) ---------- */
.notice{display:grid;grid-template-columns:auto 1fr;gap:clamp(24px,4vw,56px);padding:clamp(28px,3.4vw,48px);border-radius:var(--r);background:var(--gold-tint);color:#2E2510}
.notice-date{width:132px;height:132px;border-radius:50%;border:1px solid rgba(138,100,20,.45);display:grid;place-items:center;text-align:center;font-family:var(--serif)}
.notice-date b{display:block;font-size:52px;line-height:.9;font-weight:400;color:var(--navy)}
.notice-date span{display:block;font:500 12.5px/1.2 var(--sans);letter-spacing:.12em;text-transform:uppercase;color:var(--gold-ink);margin-top:6px}
.notice h2{font-size:clamp(30px,3vw,44px);line-height:1.1;color:var(--navy)}
.notice>div>p{margin-top:14px;max-width:62ch;color:#4A3C1C}
.notice-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;margin-top:28px}
.notice-grid div{background:rgba(255,255,255,.55);border-radius:var(--r);padding:18px}
.notice-grid b{display:block;font:400 21px/1.2 var(--serif);color:var(--navy);margin-bottom:6px}
.notice-grid p{font-size:14.5px;line-height:1.5;color:#4A3C1C}
.notice .cta{margin-top:28px}

/* ---------- tabs (vertical list on desktop, chips on phone) ---------- */
.tabs{display:grid;grid-template-columns:4fr 8fr;gap:clamp(32px,5vw,80px);align-items:start}
.tab-list{display:flex;flex-direction:column;border-top:1px solid var(--line);position:sticky;top:110px}
.tab-list button{display:grid;grid-template-columns:1fr auto;gap:4px 16px;align-items:center;text-align:left;background:none;border:0;border-bottom:1px solid var(--line);padding:22px 0;color:var(--ink-3);transition:color .3s}
.tab-list button b{font:400 clamp(22px,2vw,28px)/1.15 var(--serif);letter-spacing:-.01em}
.tab-list button small{grid-column:1;font-size:14px}
.tab-list button .ph{grid-row:1/3;grid-column:2;font-size:20px;opacity:0;transform:translateX(-8px);transition:opacity .3s,transform .4s var(--ease);color:var(--gold-ink)}
.tab-list button:hover{color:var(--ink)}
.tab-list button[aria-selected=true]{color:var(--navy)}
.tab-list button[aria-selected=true] .ph{opacity:1;transform:none}
.tab-panel{animation:panelIn .6s var(--ease)}
.tab-panel[hidden]{display:none}
@keyframes panelIn{from{opacity:0;transform:translateY(14px)}}
.tab-panel h3{font-size:clamp(34px,3.6vw,54px);line-height:1.05;max-width:18ch}
.tab-panel>p{margin-top:18px;color:var(--ink-2);max-width:60ch;font-size:18px}
.spec{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;margin-top:36px}
.spec>div{padding:22px;border-radius:var(--r);background:#fff;border:1px solid var(--line)}
.spec dt{font:500 12.5px/1 var(--sans);letter-spacing:.12em;text-transform:uppercase;color:var(--gold-ink);margin-bottom:12px}
.spec dd{margin:0;font-size:15.5px;line-height:1.5;color:var(--ink-2)}
.spec dd b{display:block;font:400 28px/1.1 var(--serif);color:var(--navy);margin-bottom:6px}
.tab-note{display:flex;gap:12px;margin-top:22px;padding:16px 18px;border-left:2px solid var(--gold);background:#fff;font-size:15px;color:var(--ink-2)}
.tab-note .ph{color:var(--gold-ink);font-size:20px;flex:none;margin-top:1px}

/* ---------- stepper (horizontal, click a step) ---------- */
.stepper{position:relative}
.st-rail{display:grid;grid-template-columns:repeat(var(--n),1fr);position:relative;list-style:none;margin:0;padding:0}
.st-rail::before{content:"";position:absolute;left:0;right:0;top:27px;height:1px;background:var(--line)}
.st-rail .bar{position:absolute;left:0;top:26.5px;height:2px;background:var(--gold);width:var(--p,0%);transition:width .6s var(--ease)}
.st-rail button{position:relative;background:none;border:0;padding:0 12px 0 0;text-align:left;color:var(--ink-3)}
.st-rail button i{display:grid;place-items:center;width:54px;height:54px;border-radius:50%;background:var(--paper);border:1px solid var(--line);font:500 15px/1 var(--sans);font-style:normal;color:var(--ink-3);transition:background .4s,border-color .4s,color .4s}
.st-rail button span{display:block;margin-top:16px;font:400 20px/1.2 var(--serif);transition:color .3s}
.st-rail button.done i{border-color:var(--gold);color:var(--gold-ink)}
.st-rail button[aria-selected=true] i{background:var(--navy);border-color:var(--navy);color:var(--gold-2)}
.st-rail button[aria-selected=true] span{color:var(--navy)}
.st-body{margin-top:40px;display:grid;grid-template-columns:auto 1fr auto;gap:clamp(24px,4vw,64px);align-items:start;padding:clamp(28px,3.4vw,48px);background:#fff;border:1px solid var(--line);border-radius:var(--r);min-height:220px}
.st-body .num{font:400 clamp(72px,8vw,120px)/.8 var(--serif);color:var(--gold);letter-spacing:-.05em}
.st-body h3{font-size:clamp(28px,2.6vw,38px);line-height:1.12}
.st-body p{margin-top:14px;color:var(--ink-2);max-width:56ch}
.st-body .who{font-size:14.5px;color:var(--ink-3);margin-top:18px;display:flex;gap:8px;align-items:center}
.st-body .who .ph{color:var(--gold-ink)}
.st-nav{display:flex;gap:8px}
.st-nav button{width:48px;height:48px;border-radius:var(--r);border:1px solid var(--line);background:none;font-size:20px;display:grid;place-items:center}
.st-nav button:hover:not(:disabled){background:var(--paper-2)}
.st-nav button:disabled{opacity:.35;cursor:default}
.navy .st-rail::before{background:var(--line-navy)}
.navy .st-rail button i{background:var(--navy);border-color:var(--line-navy)}
.navy .st-rail button[aria-selected=true] i{background:var(--gold);border-color:var(--gold);color:var(--navy)}
.navy .st-rail button[aria-selected=true] span{color:#fff}
.navy .st-body{background:rgba(255,255,255,.04);border-color:var(--line-navy)}
.navy .st-body p{color:var(--on-navy-2)}
.navy .st-nav button{border-color:var(--line-navy)}

/* ---------- document checklist with a progress meter ---------- */
.chk{display:grid;grid-template-columns:5fr 7fr;gap:clamp(40px,6vw,104px);align-items:start}
.chk-side{position:sticky;top:120px}
.meter{margin-top:36px;padding:28px;border-radius:var(--r);background:var(--navy);color:#fff}
.meter b{font:400 64px/1 var(--serif);letter-spacing:-.04em;color:var(--gold-2)}
.meter b small{font-size:22px;color:var(--on-navy-2);letter-spacing:0;margin-left:6px}
.meter p{font-size:15px;color:var(--on-navy-2);margin-top:8px}
.meter .track-bar{height:6px;border-radius:3px;background:rgba(255,255,255,.14);margin-top:20px;overflow:hidden}
.meter .track-bar i{display:block;height:100%;width:0;background:var(--gold);transition:width .5s var(--ease)}
.chk-list{display:grid;gap:8px}
.chk-item{display:grid;grid-template-columns:auto 1fr;gap:18px;padding:20px 22px;border-radius:var(--r);background:#fff;border:1px solid var(--line);cursor:pointer;transition:border-color .3s,background .3s}
.chk-item:hover{border-color:var(--gold)}
.chk-item input{position:absolute;opacity:0;pointer-events:none}
.chk-item .box{width:28px;height:28px;border-radius:var(--r);border:1px solid var(--line);display:grid;place-items:center;color:transparent;font-size:16px;transition:background .3s,border-color .3s,color .3s}
.chk-item input:checked+.box{background:var(--navy);border-color:var(--navy);color:var(--gold-2)}
.chk-item input:focus-visible+.box{outline:2px solid var(--gold);outline-offset:3px}
.chk-item b{display:block;font:400 22px/1.2 var(--serif)}
.chk-item small{display:block;margin-top:4px;font-size:14.5px;color:var(--ink-3);line-height:1.5}
.chk-item:has(input:checked){background:var(--paper)}
.chk-item:has(input:checked) b{color:var(--ink-3);text-decoration:line-through;text-decoration-color:var(--gold)}

/* ---------- comparison table ---------- */
.cmp-wrap{overflow-x:auto;border:1px solid var(--line);border-radius:var(--r);background:#fff}
.cmp{width:100%;border-collapse:collapse;min-width:820px}
.cmp th,.cmp td{padding:20px 22px;text-align:left;vertical-align:top;border-bottom:1px solid var(--line);font-size:15px;line-height:1.5}
.cmp thead th{font:400 24px/1.15 var(--serif);color:var(--navy);background:var(--paper);border-bottom:1px solid var(--line)}
.cmp thead th small{display:block;font:500 12px/1.2 var(--sans);letter-spacing:.1em;text-transform:uppercase;color:var(--gold-ink);margin-top:8px}
.cmp tbody th{font:500 14px/1.3 var(--sans);color:var(--ink-3);width:18%;position:sticky;left:0;background:#fff}
.cmp tr:last-child>*{border-bottom:0}
.cmp td{color:var(--ink-2)}
.cmp .ph-check{color:var(--gold-ink);font-size:18px}
.cmp .ph-minus{color:var(--ink-3)}
.cmp .pick{background:#FBF8F0}
.cmp thead .pick{background:var(--gold-tint)}

/* ---------- segmented switch (two views) ---------- */
.seg{display:inline-flex;padding:4px;border-radius:calc(var(--r) + 4px);background:var(--paper-2);gap:4px}
.seg button{border:0;background:none;padding:12px 20px;border-radius:var(--r);font:500 15px/1 var(--sans);color:var(--ink-3);transition:background .3s,color .3s}
.seg button[aria-pressed=true]{background:var(--navy);color:#fff}
.navy .seg{background:rgba(255,255,255,.08)}
.navy .seg button{color:var(--on-navy-2)}
.navy .seg button[aria-pressed=true]{background:var(--gold);color:var(--navy)}
.seg-view[hidden]{display:none}
.seg-view{animation:panelIn .5s var(--ease)}
.where{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;margin-top:36px}
.where article{padding:28px;border-radius:var(--r);border:1px solid var(--line-navy);background:rgba(255,255,255,.03);min-height:220px;display:flex;flex-direction:column}
.where .ph{font-size:30px;color:var(--gold-2)}
.where h3{font-size:26px;line-height:1.15;margin:auto 0 10px;padding-top:40px}
.where p{font-size:15.5px;color:var(--on-navy-2)}

/* ---------- flip cards (two sides of one question) ---------- */
.flips{display:grid;grid-template-columns:repeat(5,1fr);gap:12px}
.flip{perspective:1200px;height:340px;background:none;border:0;padding:0;text-align:left;color:inherit}
.flip-in{position:relative;width:100%;height:100%;transition:transform .8s var(--ease);transform-style:preserve-3d}
.flip.on .flip-in{transform:rotateY(180deg)}
.flip-f,.flip-b{position:absolute;inset:0;backface-visibility:hidden;-webkit-backface-visibility:hidden;border-radius:var(--r);padding:24px;display:flex;flex-direction:column}
.flip-f{background:rgba(255,255,255,.05);border:1px solid var(--line-navy)}
.flip-b{background:var(--gold);color:var(--navy);transform:rotateY(180deg)}
.flip .lbl{font:500 12px/1 var(--sans);letter-spacing:.14em;text-transform:uppercase;color:var(--on-navy-2)}
.flip-b .lbl{color:rgba(8,19,42,.65)}
.flip h3{font-size:30px;line-height:1.08;margin-top:18px;color:#fff}
.flip-b h3{color:var(--navy)}
.flip p{margin-top:auto;font-size:15px;line-height:1.5;color:var(--on-navy-2)}
.flip-b p{color:#2A2312}
.flip .turn{display:flex;align-items:center;gap:8px;margin-top:18px;font-size:13.5px;color:var(--gold-2)}
.flip-b .turn{color:var(--navy)}

/* ---------- clause builder ---------- */
.builder{display:grid;grid-template-columns:5fr 7fr;gap:clamp(32px,5vw,80px);align-items:start}
.opts{display:grid;gap:26px}
.opt legend,.opt>span{display:block;font:500 13px/1 var(--sans);letter-spacing:.12em;text-transform:uppercase;color:var(--ink-3);margin-bottom:12px;padding:0}
.opt{border:0;margin:0;padding:0}
.chips{display:flex;flex-wrap:wrap;gap:8px}
.chips label{position:relative}
.chips input{position:absolute;opacity:0}
.chips span{display:inline-flex;align-items:center;height:44px;padding:0 18px;border-radius:var(--r);border:1px solid var(--line);background:#fff;font-size:15px;cursor:pointer;transition:background .25s,border-color .25s,color .25s}
.chips span:hover{border-color:var(--navy)}
.chips input:checked+span{background:var(--navy);border-color:var(--navy);color:#fff}
.chips input:focus-visible+span{outline:2px solid var(--gold);outline-offset:2px}
.paper{position:relative;padding:clamp(32px,4vw,56px);background:#fff;border:1px solid var(--line);border-radius:var(--r);box-shadow:0 30px 60px -40px rgba(8,19,42,.35)}
.paper::before{content:"";position:absolute;left:0;top:0;bottom:0;width:4px;background:var(--gold);border-radius:var(--r) 0 0 var(--r)}
.paper .k{margin-bottom:22px;display:block}
.paper blockquote{margin:0;font:400 clamp(21px,1.9vw,26px)/1.5 var(--serif);color:var(--ink)}
.paper blockquote mark{background:var(--gold-tint);color:inherit;padding:0 .15em;border-radius:2px;transition:background .4s}
.paper .row{display:flex;flex-wrap:wrap;gap:10px;margin-top:30px}
.paper .copy{color:var(--ink);border-color:var(--line);margin-top:0}
.paper .copy:hover{background:var(--paper-2)}
.paper small{display:block;margin-top:20px;font-size:13.5px;color:var(--ink-3)}

/* ---------- fork diagram (mediation first) ---------- */
.fork{display:grid;grid-template-columns:1fr 1.2fr 1fr;gap:0;align-items:center}
.fork-node{padding:26px;border-radius:var(--r);border:1px solid var(--line);background:#fff}
.fork-node .k{display:block;margin-bottom:14px}
.fork-node h3{font-size:28px;line-height:1.1}
.fork-node p{margin-top:10px;font-size:15px;color:var(--ink-2)}
.fork-node.gold{background:var(--gold-tint);border-color:transparent}
.fork-node.dark{background:var(--navy);color:#fff;border-color:transparent}
.fork-node.dark p{color:var(--on-navy-2)}
.fork svg{width:100%;height:auto;display:block;color:var(--gold)}
.fork-ends{display:grid;gap:12px}

/* ---------- range estimator ---------- */
.est{display:grid;grid-template-columns:5fr 7fr;gap:clamp(32px,5vw,80px);align-items:start}
.est-panel{padding:clamp(28px,3.4vw,48px);border-radius:var(--r);background:#fff;border:1px solid var(--line)}
.est-val{font:400 clamp(48px,5vw,76px)/1 var(--serif);letter-spacing:-.035em;color:var(--navy)}
.est-val small{font:500 16px/1 var(--sans);letter-spacing:0;color:var(--ink-3);margin-left:8px}
.est-usd{font-size:14.5px;color:var(--ink-3);margin-top:8px}
.est input[type=range]{width:100%;margin:28px 0 8px;accent-color:var(--navy);height:28px}
.bands{display:grid;grid-template-columns:24fr 91fr 85fr;gap:4px;margin-top:6px}
.bands span{height:8px;border-radius:2px;background:var(--paper-2);transition:background .4s}
.bands span.on{background:var(--gold)}
.band-lbl{display:grid;grid-template-columns:24fr 91fr 85fr;gap:4px;font-size:12px;color:var(--ink-3);margin-top:8px}
.regime{margin-top:32px;padding-top:28px;border-top:1px solid var(--line)}
.regime h3{font-size:clamp(28px,2.6vw,38px);line-height:1.1}
.regime p{margin-top:12px;color:var(--ink-2)}
.regime dl{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;margin:24px 0 0}
.regime dl>div{padding:16px;border-radius:var(--r);background:var(--paper)}
.regime dt{font:400 30px/1 var(--serif);color:var(--navy)}
.regime dd{margin:8px 0 0;font-size:13.5px;line-height:1.4;color:var(--ink-3)}
.fine{font-size:13.5px;color:var(--ink-3);margin-top:20px;display:flex;gap:8px}
.fine .ph{color:var(--gold-ink);flex:none;margin-top:3px}

/* ---------- expanding panels (hover on desktop, tap on phone) ---------- */
.panels{display:flex;gap:10px;height:520px}
.panel{position:relative;flex:1;min-width:0;border-radius:var(--r);overflow:hidden;background:var(--navy-2);color:#fff;transition:flex .8s var(--ease);cursor:pointer;border:0;padding:0;text-align:left}
.panel.on{flex:3.4}
.panel img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;opacity:.4;transition:opacity .8s,transform 1.4s var(--ease)}
.panel.on img{opacity:.55;transform:scale(1.04)}
.panel::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(8,19,42,.1),rgba(8,19,42,.92))}
.panel-in{position:absolute;inset:auto 0 0 0;z-index:1;padding:26px}
.panel .n{font:500 13px/1 var(--sans);letter-spacing:.14em;color:var(--gold-2)}
.panel h3{font-size:clamp(24px,2.2vw,32px);line-height:1.1;margin-top:12px;color:#fff;white-space:nowrap}
.panel.on h3{white-space:normal}
.panel p{max-width:48ch;font-size:15.5px;color:#D3D9E4;margin-top:12px;display:none}
.panel.on p{display:block;animation:panelIn .7s var(--ease)}
.panel .tlink{margin-top:18px;color:#fff;display:none}
.panel.on .tlink{display:inline-flex}

/* ---------- market map (EAEU) ---------- */
.market{display:grid;grid-template-columns:5fr 7fr;gap:clamp(40px,6vw,104px);align-items:center}
.orbit{position:relative;aspect-ratio:1;max-width:520px;width:100%;margin-left:auto}
.orbit svg{position:absolute;inset:0;width:100%;height:100%;color:var(--gold-2)}
.orbit .c{position:absolute;transform:translate(-50%,-50%);display:grid;place-items:center;text-align:center;border-radius:50%;background:rgba(255,255,255,.06);border:1px solid var(--line-navy);width:23%;aspect-ratio:1;font-size:14px;color:var(--on-navy-2);line-height:1.25;padding:6px}
.orbit .c b{display:block;font:400 clamp(16px,1.5vw,20px)/1.1 var(--serif);color:#fff}
.orbit .c.am{width:34%;background:var(--gold);border-color:var(--gold);color:var(--navy)}
.orbit .c.am b{color:var(--navy);font-size:clamp(22px,2vw,30px)}

/* ---------- quiz ---------- */
.quiz{display:grid;grid-template-columns:7fr 5fr;gap:12px}
.q-box{padding:clamp(28px,3.4vw,48px);border-radius:var(--r);background:#fff;border:1px solid var(--line)}
.q{padding:22px 0;border-bottom:1px solid var(--line)}
.q:first-of-type{padding-top:0}
.q:last-child{border-bottom:0;padding-bottom:0}
.q>p{font:400 23px/1.25 var(--serif);margin-bottom:16px}
.q>p span{font:500 13px/1 var(--sans);color:var(--gold-ink);letter-spacing:.12em;margin-right:12px;vertical-align:.2em}
.q-out{padding:clamp(28px,3.4vw,44px);border-radius:var(--r);background:var(--navy);color:var(--on-navy);position:sticky;top:110px;align-self:start}
.q-out h3{font-size:clamp(26px,2.4vw,34px);line-height:1.12;color:#fff}
.q-out ul{list-style:none;margin:22px 0 0;padding:0;display:grid;gap:2px}
.q-out li{display:flex;gap:12px;padding:12px 0;border-bottom:1px solid var(--line-navy);font-size:15.5px;animation:panelIn .5s var(--ease) both}
.q-out li .ph{color:var(--gold-2);font-size:18px;flex:none;margin-top:3px}
.q-out .cta{margin-top:26px}

/* ---------- chat (the bank interview) ---------- */
.chat{display:grid;gap:14px;max-width:880px;margin:0 auto}
.bub{max-width:min(78%,560px);padding:18px 22px;border-radius:14px;font-size:16.5px;line-height:1.55;opacity:0;transform:translateY(16px);transition:opacity .7s var(--ease),transform .7s var(--ease)}
.bub.in{opacity:1;transform:none}
.bub small{display:block;font:500 12px/1 var(--sans);letter-spacing:.12em;text-transform:uppercase;margin-bottom:10px}
.bub.bank{background:#fff;border:1px solid var(--line);border-bottom-left-radius:2px}
.bub.bank small{color:var(--ink-3)}
.bub.you{justify-self:end;background:var(--navy);color:#fff;border-bottom-right-radius:2px}
.bub.you small{color:var(--gold-2)}
.bub.tip{justify-self:center;max-width:640px;background:var(--gold-tint);color:#3A2F14;border-radius:var(--r);text-align:center;font-size:15px}
.bub.tip small{color:var(--gold-ink)}

/* ---------- fanned document stack ---------- */
.stack{position:relative;height:460px;display:flex;justify-content:center;align-items:flex-end}
.doc{position:absolute;bottom:0;width:min(300px,62vw);height:380px;padding:28px 26px;border-radius:var(--r);background:#fff;border:1px solid var(--line);box-shadow:0 24px 50px -30px rgba(8,19,42,.45);transform-origin:50% 120%;transition:transform .7s var(--ease),box-shadow .4s;display:flex;flex-direction:column;cursor:pointer;text-align:left;font:inherit;color:inherit}
.doc:nth-child(1){transform:rotate(-16deg) translateX(-150px)}
.doc:nth-child(2){transform:rotate(-6deg) translateX(-52px)}
.doc:nth-child(3){transform:rotate(5deg) translateX(52px)}
.doc:nth-child(4){transform:rotate(15deg) translateX(150px)}
.doc.top{z-index:5;transform:translateY(-40px) rotate(0)!important;box-shadow:0 40px 70px -30px rgba(8,19,42,.55)}
.doc .ph{font-size:30px;color:var(--gold-ink)}
.doc h3{font-size:26px;line-height:1.12;margin-top:22px}
.doc p{font-size:14.5px;line-height:1.5;color:var(--ink-2);margin-top:12px}
.doc .lines{margin-top:auto;display:grid;gap:7px}
.doc .lines i{height:5px;border-radius:3px;background:var(--paper-2)}
.doc .lines i:nth-child(2){width:80%}.doc .lines i:nth-child(3){width:60%}
.stack-hint{text-align:center;margin-top:26px;font-size:14px;color:var(--ink-3)}

/* ---------- path switch (apostille or consular) ---------- */
.path{display:flex;align-items:stretch;gap:0;margin-top:40px;overflow-x:auto;scrollbar-width:none}
.path::-webkit-scrollbar{display:none}
.station{flex:1;min-width:190px;position:relative;padding:62px 22px 0 0}
.station::before{content:"";position:absolute;left:0;right:0;top:21px;height:1px;background:var(--line)}
.station:last-child::before{right:auto;width:0}
.station i{position:absolute;left:0;top:0;width:44px;height:44px;border-radius:50%;display:grid;place-items:center;background:var(--navy);color:var(--gold-2);font-size:20px;font-style:normal}
.station.skip i{background:var(--paper-2);color:var(--ink-3)}
.station.skip h3,.station.skip p{opacity:.45;text-decoration:line-through;text-decoration-color:var(--gold)}
.station h3{font-size:23px;line-height:1.15}
.station p{font-size:14.5px;color:var(--ink-2);margin-top:8px;max-width:28ch}

/* ---------- year timeline (about) ---------- */
.years{display:grid;grid-template-columns:4fr 8fr;gap:clamp(40px,6vw,104px)}
.year-big{position:sticky;top:120px;align-self:start;font:400 clamp(110px,14vw,220px)/.8 var(--serif);letter-spacing:-.06em;color:var(--gold-2);font-variant-numeric:tabular-nums}
.year-big small{display:block;font:500 13px/1 var(--sans);letter-spacing:.14em;text-transform:uppercase;color:var(--on-navy-2);margin-top:24px}
.yr{padding:40px 0 72px;border-top:1px solid var(--line-navy);opacity:.4;transition:opacity .6s}
.yr.on{opacity:1}
.yr .k{display:block;margin-bottom:16px}
.yr h3{font-size:clamp(30px,3vw,44px);line-height:1.1;color:#fff}
.yr p{margin-top:14px;color:var(--on-navy-2);max-width:56ch}

/* ---------- principles (statement + reveal) ---------- */
.pr{border-top:1px solid var(--ink)}
.pr-row{display:grid;grid-template-columns:80px 1fr 1fr;gap:24px;align-items:center;padding:30px 0;border-bottom:1px solid var(--line);cursor:default}
.pr-row>span{font:500 13px/1 var(--sans);letter-spacing:.12em;color:var(--gold-ink)}
.pr-row h3{font-size:clamp(28px,3.4vw,52px);line-height:1.05;transition:color .4s,transform .6s var(--ease)}
.pr-row p{color:var(--ink-3);font-size:16px;opacity:.0;transform:translateX(-12px);transition:opacity .5s,transform .6s var(--ease)}
.pr-row:hover h3,.pr-row:focus-within h3{color:var(--navy);transform:translateX(8px)}
.pr-row:hover p,.pr-row:focus-within p{opacity:1;transform:none;color:var(--ink-2)}

/* ---------- people (roles; no names until the firm sends them) ---------- */
.people{display:grid;grid-template-columns:repeat(4,1fr);gap:12px}
.person{border-radius:var(--r);overflow:hidden;background:#fff;border:1px solid var(--line)}
.person .pic{aspect-ratio:4/5;background:linear-gradient(160deg,var(--paper-2),#DAD7CE);display:grid;place-items:center;color:var(--ink-3);font-size:52px}
.person div:last-child{padding:20px}
.person h3{font-size:24px}
.person p{font-size:14.5px;color:var(--ink-3);margin-top:6px}
.person .langs{display:flex;gap:6px;margin-top:14px}
.person .langs span{font:500 11.5px/1 var(--sans);letter-spacing:.1em;padding:6px 8px;border-radius:2px;background:var(--paper-2);color:var(--ink-2)}

/* ---------- language marquee ---------- */
.marq{overflow:hidden;border-block:1px solid var(--line);padding:26px 0;white-space:nowrap}
.marq-in{display:inline-flex;gap:56px;animation:marq 38s linear infinite;font:400 clamp(40px,5vw,72px)/1 var(--serif);letter-spacing:-.02em;color:var(--navy)}
.marq-in span{display:inline-flex;align-items:center;gap:56px}
.marq-in span::after{content:"";width:12px;height:12px;border-radius:50%;background:var(--gold)}
@keyframes marq{to{transform:translateX(-50%)}}

/* ---------- finder (practice overview) ---------- */
.finder{display:flex;flex-wrap:wrap;gap:8px;margin-top:32px}
.finder button{height:46px;padding:0 18px;border-radius:999px;border:1px solid var(--line);background:#fff;font-size:15px;color:var(--ink-2);transition:all .25s}
.finder button:hover{border-color:var(--navy);color:var(--ink)}
.finder button[aria-pressed=true]{background:var(--navy);border-color:var(--navy);color:#fff}
.grid-s{display:grid;grid-template-columns:repeat(6,1fr);gap:12px;margin-top:clamp(40px,5vw,64px)}
.svc{position:relative;grid-column:span 2;min-height:300px;padding:28px;border-radius:var(--r);background:#fff;border:1px solid var(--line);display:flex;flex-direction:column;transition:opacity .4s,border-color .4s,transform .5s var(--ease),box-shadow .4s}
.svc:nth-child(1),.svc:nth-child(2){grid-column:span 3;min-height:360px}
.svc .ph-i{width:56px;height:56px;border-radius:var(--r);display:grid;place-items:center;background:var(--gold-tint);color:var(--gold-ink);font-size:28px}
.svc h3{font-size:clamp(28px,2.4vw,36px);line-height:1.08;margin-top:auto;padding-top:40px}
.svc p{margin-top:10px;color:var(--ink-2);font-size:15.5px;max-width:42ch}
.svc .go{position:absolute;top:28px;right:28px;font-size:22px;color:var(--gold-ink);transition:transform .35s var(--ease)}
.svc:hover{border-color:var(--gold)}
.svc:hover .go{transform:translate(3px,-3px)}
.svc.dim{opacity:.32}
.svc.hit{border-color:var(--navy);box-shadow:0 30px 60px -40px rgba(8,19,42,.5);transform:translateY(-4px)}
.svc.dark{background:var(--navy);color:#fff;border-color:var(--navy)}
.svc.dark p{color:var(--on-navy-2)}
.svc.dark .ph-i{background:rgba(255,255,255,.08);color:var(--gold-2)}
.svc.dark .go{color:var(--gold-2)}

/* ---------- engagement cards (numbered, horizontal) ---------- */
.eng{display:grid;grid-template-columns:repeat(4,1fr);counter-reset:e}
.eng>div{counter-increment:e;padding:0 28px 0 0;position:relative}
.eng>div::before{content:counter(e,decimal-leading-zero);display:block;font:400 64px/1 var(--serif);color:var(--gold);letter-spacing:-.04em}
.eng h3{font-size:24px;line-height:1.15;margin-top:20px}
.eng p{font-size:15px;color:var(--ink-2);margin-top:10px}

/* ---------- FAQ page filter ---------- */
.fq-tools{display:flex;flex-wrap:wrap;gap:16px;justify-content:space-between;align-items:center;margin-bottom:40px}
.fq-search{position:relative;flex:1;max-width:420px;min-width:240px}
.fq-search input{width:100%;height:50px;padding:0 16px 0 46px;font:inherit;font-size:16px;border:1px solid var(--line);border-radius:var(--r);background:#fff;color:var(--ink)}
.fq-search input:focus{outline:0;border-color:var(--navy)}
.fq-search .ph{position:absolute;left:16px;top:50%;transform:translateY(-50%);font-size:19px;color:var(--ink-3)}
.fq-group{margin-top:56px}
.fq-group:first-of-type{margin-top:0}
.fq-group>.k{display:flex;justify-content:space-between;margin-bottom:8px}
.fq-group>.k a{text-transform:none;letter-spacing:0;font-size:14px}
.fq-empty{display:none;padding:40px 0;color:var(--ink-3)}

/* ---------- contact page ---------- */
.desk-pick{display:grid;grid-template-columns:repeat(4,1fr);gap:10px}
.desk-pick button{text-align:left;padding:24px;border-radius:var(--r);border:1px solid var(--line);background:#fff;min-height:200px;display:flex;flex-direction:column;transition:border-color .3s,background .3s,color .3s}
.desk-pick button .key{font:400 54px/1 var(--serif);color:var(--gold);letter-spacing:-.04em}
.desk-pick button b{margin-top:auto;font:400 22px/1.2 var(--serif);padding-top:24px}
.desk-pick button small{font-size:14px;color:var(--ink-3);margin-top:6px}
.desk-pick button:hover{border-color:var(--gold)}
.desk-pick button[aria-pressed=true]{background:var(--navy);border-color:var(--navy);color:#fff}
.desk-pick button[aria-pressed=true] small{color:var(--on-navy-2)}
.desk-pick button[aria-pressed=true] .key{color:var(--gold-2)}
.desk-out{display:grid;grid-template-columns:1fr 1fr;gap:clamp(24px,4vw,64px);margin-top:12px;padding:clamp(28px,3.4vw,44px);border-radius:var(--r);background:var(--gold-tint);color:#3A2F14}
.desk-out h3{font-size:clamp(26px,2.4vw,34px);line-height:1.12;color:var(--navy)}
.desk-out p{margin-top:10px;font-size:15.5px}
.desk-out .bring{display:flex;flex-wrap:wrap;gap:8px;align-content:flex-start}
.desk-out .bring span{display:inline-flex;gap:8px;align-items:center;padding:10px 14px;border-radius:var(--r);background:rgba(255,255,255,.6);font-size:14.5px}
.desk-out .bring .ph{color:var(--gold-ink)}
.form{display:grid;grid-template-columns:1fr 1fr;gap:16px}
.form .full{grid-column:1/-1}
.form label{display:block;font-size:14px;font-weight:500;color:var(--on-navy-2);margin-bottom:8px}
.form input,.form select,.form textarea{width:100%;font:inherit;font-size:16px;color:#fff;background:rgba(255,255,255,.06);border:1px solid rgba(255,255,255,.28);border-radius:var(--r);padding:13px 16px}
.form select option{color:var(--ink)}
.form textarea{min-height:150px;resize:vertical}
.form input:focus,.form select:focus,.form textarea:focus{outline:0;border-color:var(--gold-2)}
.form input[aria-invalid=true],.form textarea[aria-invalid=true]{border-color:#F2B8A0}
.form .cta{justify-self:start}
.form-msg{min-height:1.5em;font-size:14.5px;color:#F2B8A0}
.form-msg.ok{color:var(--gold-2)}
.after{display:grid;grid-template-columns:repeat(3,1fr);gap:0;border-top:1px solid var(--line)}
.after>div{padding:28px 28px 0 0}
.after>div+div{padding-left:28px;border-left:1px solid var(--line)}
.after b{font:400 46px/1 var(--serif);color:var(--navy);letter-spacing:-.03em}
.after h3{font-size:22px;margin-top:16px}
.after p{font-size:15px;color:var(--ink-2);margin-top:8px}
.office{display:grid;grid-template-columns:7fr 5fr;gap:12px}
.office .map{position:relative;min-height:420px;border-radius:var(--r);overflow:hidden;background:var(--paper-2)}
.office .map iframe{position:absolute;inset:0;width:100%;height:100%;border:0;filter:grayscale(.85) contrast(.95)}
.office .card{padding:clamp(28px,3vw,40px);border-radius:var(--r);background:var(--navy);color:var(--on-navy);display:flex;flex-direction:column}
.office .card h3{font-size:clamp(28px,2.6vw,38px);color:#fff;line-height:1.1}
.office .card p{color:var(--on-navy-2);margin-top:10px}
.office .card .reach{grid-template-columns:1fr;gap:18px;margin-top:auto;padding-top:32px}

/* ---------- related services strip ---------- */
.rel{display:grid;grid-template-columns:repeat(3,1fr);gap:12px}
.rel a{display:grid;grid-template-columns:52px 1fr auto;gap:4px 18px;align-items:center;padding:22px;border-radius:var(--r);background:#fff;border:1px solid var(--line);transition:border-color .3s}
.rel a:hover{border-color:var(--gold)}
.rel .ph-i{grid-row:span 2;width:52px;height:52px;display:grid;place-items:center;border-radius:var(--r);background:var(--gold-tint);font-size:26px;color:var(--gold-ink)}
.rel b{font:400 24px/1.15 var(--serif)}
.rel small{grid-column:2;font-size:14px;color:var(--ink-3)}
.rel .go{grid-column:3;grid-row:1/3;font-size:20px;color:var(--gold-ink);transition:transform .35s var(--ease)}
.rel a:hover .go{transform:translate(3px,-3px)}

/* ---------- closing band ---------- */
.cta-band{background:var(--navy);color:var(--on-navy);padding:clamp(80px,9vw,128px) 0;position:relative;overflow:hidden}
.cta-band .wrap{display:grid;grid-template-columns:7fr 5fr;gap:clamp(32px,5vw,80px);align-items:end;position:relative}
.cta-band h2{color:#fff;max-width:15ch}
.cta-band p{color:var(--on-navy-2);max-width:44ch}
.cta-band .acts{display:flex;flex-wrap:wrap;gap:24px;align-items:center;margin-top:28px}
.cta-band .acts a.tlink{color:#fff}
.cta-band::before{content:"";position:absolute;right:-12vw;top:-30%;width:58vw;aspect-ratio:1;border-radius:50%;border:1px dashed rgba(201,162,102,.25)}

/* ---------- legal pages ---------- */
.legal{display:grid;grid-template-columns:3fr 9fr;gap:clamp(40px,6vw,104px)}
.toc{position:sticky;top:120px;align-self:start;display:grid;gap:2px;border-left:1px solid var(--line)}
.toc a{padding:8px 0 8px 18px;font-size:14.5px;color:var(--ink-3);margin-left:-1px;border-left:2px solid transparent}
.toc a:hover,.toc a.on{color:var(--ink);border-color:var(--gold)}
.prose{max-width:70ch}
.prose h2{font-size:clamp(28px,2.6vw,36px);margin:56px 0 16px;scroll-margin-top:110px}
.prose h2:first-child{margin-top:0}
.prose p,.prose li{color:var(--ink-2);font-size:17px}
.prose p+p{margin-top:14px}
.prose ul{padding-left:20px;margin:14px 0}
.prose li+li{margin-top:8px}
.draft{display:flex;gap:12px;align-items:center;padding:14px 18px;margin-bottom:40px;border-radius:var(--r);background:var(--gold-tint);font-size:15px;color:#3A2F14}
.draft .ph{font-size:20px;color:var(--gold-ink)}

/* ---------- 404 ---------- */
.nf{min-height:80vh;display:grid;place-items:center;text-align:center;padding:160px 0 80px}
.nf b{display:block;font:400 clamp(140px,22vw,300px)/.8 var(--serif);letter-spacing:-.06em;color:var(--gold)}

/* soft reveal on inner pages */
.up{opacity:0;transform:translateY(28px);transition:opacity .9s var(--ease),transform .9s var(--ease)}
.up.in{opacity:1;transform:none}

/* ---------- responsive (inner pages) ---------- */
@media (max-width:1240px){
  .nav{display:none}
  .hdr .wrap{display:flex;justify-content:space-between}
  .menu-btn{display:grid}
  .flips{grid-template-columns:repeat(3,1fr)}
  .desk-pick{grid-template-columns:1fr 1fr}
  .people{grid-template-columns:repeat(2,1fr)}
}
@media (max-width:900px){
  body{font-size:16px}
  .faq,.contact{grid-template-columns:1fr}
  .faq-side{position:static}
  .pg-hero--split .wrap,.pg-hero--count .wrap,.tabs,.chk,.builder,.est,.market,.years,.legal,.quiz,.office,.cta-band .wrap,.desk-out{grid-template-columns:1fr}
  .big-count{text-align:left}
  .big-count small{margin-left:0}
  .pg-hero--split .pg-img{aspect-ratio:16/11}
  .tab-list,.chk-side,.year-big,.toc,.q-out{position:static}
  .tab-list{flex-direction:row;overflow-x:auto;scrollbar-width:none;border-top:0;gap:8px;margin:0 calc(var(--gutter) * -1);padding:0 var(--gutter)}
  .tab-list::-webkit-scrollbar{display:none}
  .tab-list button{flex:none;display:block;padding:12px 16px;border:1px solid var(--line);border-radius:999px;background:#fff}
  .tab-list button b{font:500 15px/1 var(--sans);letter-spacing:0}
  .tab-list button small,.tab-list button .ph{display:none}
  .tab-list button[aria-selected=true]{background:var(--navy);border-color:var(--navy);color:#fff}
  .facts{grid-template-columns:1fr 1fr}
  .facts>div:nth-child(3){padding-left:0;border-left:0}
  .facts>div:nth-child(n+3){margin-top:28px}
  .notice{grid-template-columns:1fr}
  .notice-grid{grid-template-columns:1fr}
  .st-rail{grid-template-columns:repeat(var(--n),minmax(110px,1fr));overflow-x:auto;scrollbar-width:none;padding-bottom:6px}
  .st-rail::-webkit-scrollbar{display:none}
  .st-body{grid-template-columns:1fr}
  .st-body .num{font-size:64px}
  .flips{grid-template-columns:1fr 1fr}
  .flip{height:300px}
  .fork{grid-template-columns:1fr;gap:12px}
  .fork svg{display:none}
  .panels{flex-direction:column;height:auto}
  .panel{min-height:96px;flex:none}
  .panel.on{min-height:340px}
  .panel h3{white-space:normal}
  .orbit{margin:0 auto}
  .where{grid-template-columns:1fr}
  .grid-s{grid-template-columns:1fr 1fr}
  .svc,.svc:nth-child(1),.svc:nth-child(2){grid-column:span 1;min-height:280px}
  .eng{grid-template-columns:1fr 1fr;gap:40px 0}
  .after{grid-template-columns:1fr}
  .after>div+div{padding-left:0;border-left:0;border-top:1px solid var(--line);margin-top:28px}
  .rel{grid-template-columns:1fr}
  .yr{opacity:1}
  .year-big{font-size:96px}
  .head-row{flex-direction:column;align-items:flex-start}
  .pr-row{grid-template-columns:48px 1fr}
  .pr-row p{grid-column:2;opacity:1;transform:none}
  .spec{grid-template-columns:1fr}
  .regime dl{grid-template-columns:1fr 1fr 1fr}
}
@media (max-width:640px){
  .logo{width:128px}
  .hdr .cta{display:none}
  .tools .lang-dd{display:none}
  .sec-cta{flex-direction:column;align-items:flex-start}
  .lead-row{flex-direction:column}
  .lead-row input{flex:none}
  .lead-row .cta{justify-content:space-between}
  .reach{grid-template-columns:1fr;gap:24px}
  .acc{display:grid;gap:8px}
  .acc-item,.acc-item:first-child{padding:0 18px;border:1px solid var(--line);border-radius:var(--r);background:#fff}
  .acc-q{padding:20px 0;font-size:19px;gap:16px}
  .acc-a p{padding:0 0 20px;font-size:15.5px}
  .ftr-top{grid-template-columns:1fr 1fr}
  .ftr-top>div:first-child,.ftr-top>div:last-child{grid-column:1/-1}
  .pg-hero{padding-top:118px}
  .notice-date{width:104px;height:104px}
  .notice-date b{font-size:40px}
  .flips{grid-template-columns:1fr}
  .flip{height:250px}
  .grid-s{grid-template-columns:1fr}
  .eng{grid-template-columns:1fr}
  .people{grid-template-columns:1fr 1fr}
  .desk-pick{grid-template-columns:1fr 1fr}
  .desk-pick button{min-height:150px;padding:18px}
  .desk-pick button .key{font-size:40px}
  .desk-pick button b{font-size:18px}
  .form{grid-template-columns:1fr}
  .regime dl{grid-template-columns:1fr}
  .stack{height:420px}
  .doc{width:240px;height:330px;padding:22px}
  .doc:nth-child(1){transform:rotate(-12deg) translateX(-60px)}
  .doc:nth-child(2){transform:rotate(-4deg) translateX(-20px)}
  .doc:nth-child(3){transform:rotate(4deg) translateX(20px)}
  .doc:nth-child(4){transform:rotate(12deg) translateX(60px)}
  .bub{max-width:88%}
  .cmp tbody th{position:static}
  .pr-row h3{font-size:26px}
  .marq-in{font-size:36px;gap:32px}
  .marq-in span{gap:32px}
}
@media (prefers-reduced-motion:reduce){
  *,*::before,*::after{animation:none!important;transition:none!important}
  .up,.bub{opacity:1;transform:none}
  .split .w>span{transform:none}
}

/* ---------- day timeline (residency) ---------- */
.days{position:relative;display:grid;gap:0;margin-top:8px}
.day{display:grid;grid-template-columns:200px 1fr 1.1fr;gap:clamp(20px,4vw,64px);padding:34px 0;border-top:1px solid var(--line-navy);align-items:baseline}
.day:last-child{border-bottom:1px solid var(--line-navy)}
.day .when{font:400 clamp(34px,3.4vw,52px)/1 var(--serif);color:var(--gold-2);letter-spacing:-.03em;white-space:nowrap}
.day .when small{display:block;font:500 12.5px/1 var(--sans);letter-spacing:.12em;text-transform:uppercase;color:var(--on-navy-2);margin-top:10px}
.day h3{font-size:clamp(24px,2.2vw,32px);line-height:1.15;color:#fff}
.day p{color:var(--on-navy-2);font-size:16px}
.day p b{display:block;font-weight:500;color:#fff;font-size:13px;letter-spacing:.1em;text-transform:uppercase;margin-bottom:6px}

/* ---------- card rail (sideways scroll) ---------- */
.rail{display:flex;gap:12px;overflow-x:auto;scroll-snap-type:x mandatory;scrollbar-width:none;padding:0 var(--gutter) 6px;margin:0 calc(var(--gutter) * -1);scroll-padding-inline:var(--gutter);cursor:grab}
.rail::-webkit-scrollbar{display:none}
.rail.drag{cursor:grabbing;scroll-snap-type:none}
.rail>article{flex:none;width:min(360px,80vw);min-height:300px;scroll-snap-align:start;padding:28px;border-radius:var(--r);background:#fff;border:1px solid var(--line);display:flex;flex-direction:column;user-select:none}
.rail .n{font:400 88px/.8 var(--serif);color:var(--gold);letter-spacing:-.05em}
.rail h3{font-size:26px;line-height:1.15;margin-top:auto;padding-top:36px}
.rail p{font-size:15px;color:var(--ink-2);margin-top:10px}
.rail-ctl{display:flex;gap:8px}
.rail-ctl button{width:48px;height:48px;border-radius:var(--r);border:1px solid var(--line);background:none;font-size:20px;display:grid;place-items:center}
.rail-ctl button:hover{background:var(--paper-2)}
@media (max-width:900px){
  .day{grid-template-columns:1fr;gap:10px}
}
.sr:focus{position:fixed;left:16px;top:16px;z-index:100;width:auto;height:auto;clip:auto;padding:12px 16px;background:var(--navy);color:#fff;border-radius:var(--r)}
.nav a[aria-current=page]{opacity:1;text-decoration:underline;text-decoration-color:var(--gold);text-underline-offset:6px}
.nav .dd a[aria-current=page]{text-decoration:none}
@media (max-width:640px){
  .stats dl{grid-template-columns:1fr 1fr}
  .stats dl>div:nth-child(3){padding-left:0;border-left:0}
  .stats dl>div:nth-child(n+3){margin-top:28px;border-top:1px solid var(--line)}
}

/* ---------- contract scanner ---------- */
.scan{display:grid;grid-template-columns:7fr 5fr;gap:12px;align-items:start}
.sheet{padding:clamp(28px,4vw,56px);background:#fff;border:1px solid var(--line);border-radius:var(--r);box-shadow:0 30px 60px -40px rgba(8,19,42,.35);font:400 18px/1.7 var(--serif);color:var(--ink-2)}
.sheet p{margin:0 0 10px}
.sheet-t{font:500 13px/1 var(--sans)!important;letter-spacing:.14em;text-transform:uppercase;color:var(--ink-3);margin-bottom:22px!important}
.hot{display:block;width:100%;text-align:left;background:none;border:0;padding:4px 8px;margin:0 -8px 10px;font:inherit;color:inherit;border-radius:2px;background:linear-gradient(transparent 62%,var(--gold-tint) 62%);transition:background .3s;position:relative}
.hot::after{content:"!";position:absolute;right:-30px;top:50%;transform:translateY(-50%);width:20px;height:20px;border-radius:50%;background:var(--gold);color:var(--navy);font:600 12px/20px var(--sans);text-align:center}
.hot:hover{background:var(--gold-tint)}
.hot[aria-pressed=true]{background:var(--navy);color:#fff}
.scan-out{position:sticky;top:110px;padding:clamp(28px,3.4vw,44px);border-radius:var(--r);background:var(--navy);color:var(--on-navy);min-height:320px}
.scan-out h3{font-size:clamp(28px,2.6vw,38px);line-height:1.1;color:#fff;margin-top:16px}
.scan-out p{margin-top:14px;color:var(--on-navy-2)}
.scan-out .fix{display:flex;gap:12px;padding-top:18px;margin-top:22px;border-top:1px solid var(--line-navy);color:#fff}
.scan-out .fix .ph{color:var(--gold-2);font-size:22px;flex:none}
.scan-out .tlink{color:#fff}
.scan-body{animation:panelIn .5s var(--ease)}

/* ---------- details list (contract types) ---------- */
.types{display:grid;grid-template-columns:1fr 1fr;gap:10px}
.types details{border-radius:var(--r);border:1px solid var(--line);background:#fff;padding:0 26px;transition:background .3s}
.types details[open]{background:var(--navy);border-color:var(--navy);color:#fff}
.types summary{list-style:none;cursor:pointer;display:flex;justify-content:space-between;align-items:center;gap:20px;padding:24px 0;font:400 clamp(22px,2vw,28px)/1.2 var(--serif)}
.types summary::-webkit-details-marker{display:none}
.types summary .ph{font-size:20px;color:var(--gold-ink);transition:transform .4s var(--ease)}
.types details[open] summary .ph{transform:rotate(45deg);color:var(--gold-2)}
.types details p{padding-bottom:26px;color:var(--on-navy-2);max-width:52ch}
.types details:first-child{grid-row:span 2}
@media (max-width:900px){
  .scan{grid-template-columns:1fr}
  .scan-out{position:static}
  .types{grid-template-columns:1fr}
  .types details:first-child{grid-row:auto}
  .hot::after{right:-6px}
}
@media (min-width:901px){.svc[data-w="3"]{grid-column:span 3}}
@media (max-width:640px){.facts dt{white-space:normal;font-size:36px}}
@media (min-width:901px){.fork{align-items:stretch}.fork>.fork-node{align-self:center}.fork svg{height:100%}.fork-ends{grid-template-rows:1fr 1fr}}
@media (min-width:901px){
  .panel:not(.on) h3{writing-mode:vertical-rl;transform:rotate(180deg);white-space:nowrap;margin-top:16px}
}
