@import url('https://fonts.googleapis.com/css2?family=Newsreader:opsz,wght@6..72,400;6..72,500;6..72,600&family=Archivo:wght@400;500;600;700&family=JetBrains+Mono:wght@400;500;600&display=swap');

:root{
  color-scheme:light;
  --paper:#F7F7F4; --sheet:#FFFFFF; --sheet2:#EFEFEA; --rule:#DCDCD4; --rule2:#E9E9E2;
  --ink:#101319; --ink2:#3A404B; --ink3:#6B717C;
  --nib:#1F3556; --nib2:#2F4C78; --nibwash:#E7ECF4;
  --red:#9E3226; --redwash:#F6E9E6;
  --seal:#8A7448; --btn-fg:#FFFFFF;
}

*{box-sizing:border-box}
html{scroll-behavior:smooth}
@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{animation:none!important;transition:none!important}}
body{margin:0;background:var(--paper);color:var(--ink);
  font-family:"Archivo","Segoe UI",system-ui,sans-serif;font-size:16px;line-height:1.65;
  -webkit-font-smoothing:antialiased;font-synthesis-weight:none}

h1,h2,h3,h4{font-family:"Newsreader",Georgia,serif;font-weight:500;line-height:1.1;
  letter-spacing:-.014em;text-wrap:balance;margin:0}
.mono{font-family:"JetBrains Mono",ui-monospace,monospace}
a{color:var(--nib)}

.shell{max-width:1080px;margin:0 auto;padding-left:24px;padding-right:24px}
.narrow{max-width:760px}

/* ---------- nav ---------- */
.nav{border-bottom:1px solid var(--rule);background:var(--paper);position:sticky;top:0;z-index:20}
.nav .shell{display:flex;align-items:center;gap:26px;padding-block:15px;flex-wrap:wrap}
.brand{font-family:"Newsreader",serif;font-size:21px;font-weight:600;letter-spacing:-.02em;
  color:var(--ink);text-decoration:none;margin-right:auto;display:flex;align-items:baseline;gap:8px}
.brand .dot{width:6px;height:6px;background:var(--nib);border-radius:50%;display:inline-block}
.nav a.l{font-size:14px;color:var(--ink2);text-decoration:none;font-weight:500}
.nav a.l:hover{color:var(--nib)}
.nav a.btn{font-size:13.5px}
a:focus-visible,button:focus-visible{outline:2px solid var(--nib);outline-offset:3px;border-radius:3px}

/* ---------- buttons ---------- */
.btn{display:inline-block;background:var(--nib);color:var(--btn-fg);text-decoration:none;font-weight:600;
  font-size:15px;padding:12px 22px;border-radius:3px;border:1px solid var(--nib);line-height:1.3}
.btn:hover{background:var(--nib2);border-color:var(--nib2)}
.btn.ghost{background:transparent;color:var(--nib);border:1px solid var(--rule)}
.btn.ghost:hover{background:var(--nibwash);border-color:var(--nib)}

/* ---------- eyebrow / labels ---------- */
.eyebrow{font-family:"JetBrains Mono",monospace;font-size:11px;letter-spacing:.16em;
  text-transform:uppercase;color:var(--nib);font-weight:600}
.eyebrow.q{color:var(--ink3)}

/* ---------- hero ---------- */
.hero{padding-block:72px 56px;border-bottom:1px solid var(--rule)}
.hero h1{font-size:clamp(38px,6.2vw,62px);margin:16px 0 22px;max-width:17ch}
.hero .sub{font-size:20px;color:var(--ink2);max-width:56ch;margin:0 0 30px}
.hero .sub b{color:var(--ink);font-weight:600}
.actions{display:flex;gap:12px;flex-wrap:wrap;align-items:center}
.actions .fine{font-size:13.5px;color:var(--ink3);margin-left:4px}

/* signature rule motif */
.sigrule{margin-top:40px;display:flex;align-items:flex-end;gap:14px;max-width:420px}
.sigrule .line{flex:1;height:1px;background:var(--ink3)}
.sigrule .cap{font-family:"JetBrains Mono",monospace;font-size:10.5px;letter-spacing:.14em;
  text-transform:uppercase;color:var(--ink3);padding-bottom:5px;white-space:nowrap}

/* ---------- sections ---------- */
section{padding-block:60px;border-bottom:1px solid var(--rule)}
section.plain{border-bottom:none}
section h2{font-size:clamp(27px,3.6vw,36px);margin:12px 0 16px;max-width:22ch}
section .intro{font-size:17.5px;color:var(--ink2);max-width:60ch;margin:0 0 8px}
p{margin:0 0 15px;max-width:66ch;color:var(--ink2)}
p b,li b{color:var(--ink);font-weight:600}
h3{font-size:19px;margin:30px 0 10px;color:var(--ink)}

/* ---------- grids ---------- */
.g3{display:grid;grid-template-columns:repeat(3,1fr);gap:1px;
  background:var(--rule);border:1px solid var(--rule);margin-top:30px}
.g3 > div{background:var(--paper);padding:26px 24px}
.g3 h3{margin:0 0 8px;font-family:"Archivo",sans-serif;font-size:16.5px;font-weight:600;letter-spacing:0}
.g3 p{margin:0;font-size:14.8px;max-width:none}
.g3 .num{font-family:"JetBrains Mono",monospace;font-size:11px;letter-spacing:.14em;
  color:var(--nib);font-weight:600;display:block;margin-bottom:12px}

.g2{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:34px;margin-top:30px}

/* ---------- scope list ---------- */
.scope{display:grid;grid-template-columns:repeat(4,1fr);gap:1px;
  background:var(--rule);border:1px solid var(--rule);margin-top:26px}
.scope div{background:var(--sheet);padding:16px 18px}
.scope .t{font-size:15.2px;font-weight:600;color:var(--ink);display:block}
.scope .d{font-size:13.4px;color:var(--ink3);display:block;margin-top:2px;line-height:1.45}

/* ---------- steps ---------- */
ol.steps{list-style:none;counter-reset:st;margin:30px 0 0;padding:0}
ol.steps li{counter-increment:st;display:grid;grid-template-columns:auto minmax(0,1fr);gap:20px;align-items:start;
  padding:20px 0;border-bottom:1px solid var(--rule2)}
ol.steps li:first-child{border-top:1px solid var(--rule2)}
ol.steps li::before{content:counter(st,decimal-leading-zero);font-family:"JetBrains Mono",monospace;
  font-size:12px;font-weight:600;color:var(--nib);padding-top:5px}
ol.steps .t{font-size:17.5px;font-weight:600;color:var(--ink);display:block;margin-bottom:4px;
  font-family:"Archivo",sans-serif}
ol.steps .d{font-size:15px;color:var(--ink2);display:block;max-width:60ch}
ol.steps li.you{background:var(--nibwash);margin-inline:-18px;padding-inline:18px}

/* ---------- tables ---------- */
.tscroll{overflow-x:auto;margin-top:26px;border:1px solid var(--rule)}
table{border-collapse:collapse;width:100%;font-size:15px;min-width:520px;background:var(--sheet)}
th{font-family:"JetBrains Mono",monospace;font-size:10.5px;letter-spacing:.13em;text-transform:uppercase;
  color:var(--ink3);font-weight:600;text-align:left;padding:13px 18px;border-bottom:1px solid var(--rule);
  background:var(--sheet2);white-space:nowrap}
td{padding:14px 18px;border-bottom:1px solid var(--rule2);color:var(--ink2);vertical-align:top}
tr:last-child td{border-bottom:none}
td.k{color:var(--ink);font-weight:600}
td.n{font-family:"JetBrains Mono",monospace;font-variant-numeric:tabular-nums;
  white-space:nowrap;color:var(--ink);font-weight:500;text-align:right}
th.r{text-align:right}

/* ---------- price panels ---------- */
.prices{display:grid;grid-template-columns:repeat(auto-fit,minmax(310px,1fr));gap:24px;margin-top:32px}
.pan{border:1px solid var(--rule);background:var(--sheet);display:flex;flex-direction:column}
.pan.desk{border-color:var(--nib);box-shadow:0 0 0 1px var(--nib)}
.pan .ph{padding:20px 24px;border-bottom:1px solid var(--rule)}
.pan.desk .ph{background:var(--nibwash)}
.pan .tag{font-family:"JetBrains Mono",monospace;font-size:10.5px;letter-spacing:.14em;
  text-transform:uppercase;color:var(--ink3);font-weight:600}
.pan.desk .tag{color:var(--nib)}
.pan h3{font-family:"Newsreader",serif;font-size:25px;font-weight:500;margin:7px 0 4px;letter-spacing:-.01em}
.pan .pd{font-size:14.2px;color:var(--ink3);margin:0}
.pan .rows{padding:6px 24px 22px}
.pan .row{display:flex;justify-content:space-between;gap:16px;align-items:baseline;
  padding:13px 0;border-bottom:1px solid var(--rule2)}
.pan .row:last-child{border-bottom:none}
.pan .row .n{font-size:15.2px;color:var(--ink);font-weight:500}
.pan .row .s{font-size:13.2px;color:var(--ink3);display:block;font-weight:400;margin-top:1px}
.pan .row .v{font-family:"JetBrains Mono",monospace;font-size:14.5px;color:var(--ink);
  white-space:nowrap;font-variant-numeric:tabular-nums}

/* ---------- callout ---------- */
.call{margin-top:30px;border-left:2px solid var(--nib);padding:4px 0 4px 22px}
.call .k{font-family:"JetBrains Mono",monospace;font-size:10.5px;letter-spacing:.14em;
  text-transform:uppercase;color:var(--nib);font-weight:600;margin-bottom:7px}
.call p{margin:0;font-size:15.2px}
.call.red{border-left-color:var(--red)}
.call.red .k{color:var(--red)}

/* ---------- stats ---------- */
.stats{display:grid;grid-template-columns:repeat(4,1fr);gap:1px;
  background:var(--rule);border:1px solid var(--rule);margin-top:30px}
.stats div{background:var(--paper);padding:22px 20px}
.stats .v{font-family:"Newsreader",serif;font-size:33px;font-weight:500;color:var(--ink);
  display:block;line-height:1;letter-spacing:-.02em}
.stats .l{font-size:13.4px;color:var(--ink3);display:block;margin-top:8px;line-height:1.4}

/* ---------- who / links ---------- */
.who{display:grid;grid-template-columns:repeat(3,1fr);gap:1px;
  background:var(--rule);border:1px solid var(--rule);margin-top:30px}
.who a{background:var(--paper);padding:26px 24px;text-decoration:none;display:block}
.who a:hover{background:var(--sheet2)}
.who .q{font-family:"Newsreader",serif;font-size:20px;color:var(--ink);display:block;
  line-height:1.25;margin-bottom:9px;font-weight:500}
.who .d{font-size:14.4px;color:var(--ink2);display:block;line-height:1.5}
.who .go{font-family:"JetBrains Mono",monospace;font-size:11.5px;color:var(--nib);
  display:block;margin-top:14px;font-weight:600}

/* ---------- placeholder token ---------- */
.tok{background:var(--redwash);color:var(--red);border-bottom:1px dashed var(--red);
  font-family:"JetBrains Mono",monospace;font-size:.87em;padding:1px 5px;font-weight:500}

/* ---------- final cta ---------- */
.final{background:var(--ink);color:var(--paper);border-bottom:none}
.final h2{color:var(--paper);margin-bottom:14px}
.final p{color:#B9BDC6;max-width:56ch}
.final .btn{background:var(--paper);border-color:var(--paper);color:var(--ink)}
.final .btn:hover{background:#fff;border-color:#fff;color:var(--ink)}

/* ---------- footer ---------- */
footer{background:var(--sheet2);border-top:1px solid var(--rule);padding-block:44px 40px}
.fgrid{display:grid;grid-template-columns:repeat(auto-fit,minmax(170px,1fr));gap:28px;margin-bottom:32px}
footer h4{font-family:"JetBrains Mono",monospace;font-size:10.5px;letter-spacing:.14em;
  text-transform:uppercase;color:var(--ink3);font-weight:600;margin-bottom:11px}
footer ul{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:7px}
footer li a{font-size:14.2px;color:var(--ink2);text-decoration:none}
footer li a:hover{color:var(--nib)}
.disc{border-top:1px solid var(--rule);padding-top:22px;font-size:12.6px;color:var(--ink3);
  max-width:82ch;line-height:1.6}
.disc p{font-size:12.6px;color:var(--ink3);max-width:none;margin:0 0 9px}
.disc p:last-child{margin:0}
.adv{font-family:"JetBrains Mono",monospace;font-size:10.5px;letter-spacing:.14em;
  text-transform:uppercase;color:var(--ink3);font-weight:600;margin-bottom:12px}

@media(max-width:980px){
  .g3,.who{grid-template-columns:repeat(2,1fr)}
  .scope,.stats{grid-template-columns:repeat(2,1fr)}
}
@media(max-width:640px){
  .g3,.who,.scope,.stats{grid-template-columns:1fr}
  .hero{padding-block:48px 40px}
  section{padding-block:44px}
  .nav .shell{gap:16px;padding-block:12px}
  .nav a.l{font-size:13.4px}
  ol.steps li{grid-template-columns:1fr;gap:6px}
  ol.steps li::before{padding-top:0}
}

/* ---------- a11y skip link ---------- */
.skip{position:absolute;left:-9999px;top:8px;background:var(--ink);color:var(--paper);padding:8px 14px;z-index:50;border-radius:3px;font-weight:600}
.skip:focus{left:12px}

/* ---------- article ---------- */
.art .hero h1{max-width:22ch;font-size:clamp(32px,4.8vw,50px)}
.art .hero .sub{font-size:19px}
.byline{display:flex;gap:18px;flex-wrap:wrap;font-family:"JetBrains Mono",monospace;font-size:11.5px;
  color:var(--ink3);margin-top:26px;letter-spacing:.03em}
.byline b{color:var(--ink2);font-weight:500}
.inshort{border:1px solid var(--rule);background:var(--sheet);padding:22px 26px;margin:0 0 40px}
.inshort .k{font-family:"JetBrains Mono",monospace;font-size:10.5px;letter-spacing:.14em;text-transform:uppercase;color:var(--nib);font-weight:600;margin-bottom:10px}
.inshort ul{margin:0;padding-left:18px;display:flex;flex-direction:column;gap:7px}
.inshort li{font-size:15.2px;color:var(--ink2)}
.prose h2{font-size:26px;margin:44px 0 14px;max-width:none}
.prose h2:first-child{margin-top:0}
.prose h3{font-size:18.5px;margin:28px 0 8px}
.prose p{font-size:16.5px;line-height:1.7}
.prose ul,.prose ol{padding-left:22px;margin:0 0 16px;max-width:64ch;color:var(--ink2);font-size:16px;line-height:1.65}
.prose li{margin-bottom:7px}
.prose li b{color:var(--ink)}
.prose .tscroll{margin:22px 0 26px}
.prose table{font-size:14.6px}
.prose .call{margin:28px 0}
.related{margin-top:56px;padding-top:26px;border-top:1px solid var(--rule)}
.related .k{font-family:"JetBrains Mono",monospace;font-size:10.5px;letter-spacing:.14em;text-transform:uppercase;color:var(--ink3);font-weight:600;margin-bottom:14px}
.related ul{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:9px}
.related li a{font-family:"Newsreader",serif;font-size:19px;color:var(--ink);text-decoration:none}
.related li a:hover{color:var(--nib)}

/* ---------- guides index ---------- */
.gl{display:grid;grid-template-columns:repeat(2,1fr);gap:1px;background:var(--rule);border:1px solid var(--rule);margin-top:34px}
.gl a{background:var(--paper);padding:28px 26px;text-decoration:none;display:block}
.gl a:hover{background:var(--sheet2)}
.gl .cat{font-family:"JetBrains Mono",monospace;font-size:10.5px;letter-spacing:.14em;text-transform:uppercase;color:var(--nib);font-weight:600;display:block;margin-bottom:10px}
.gl .t{font-family:"Newsreader",serif;font-size:23px;color:var(--ink);display:block;line-height:1.2;margin-bottom:10px;font-weight:500;letter-spacing:-.01em}
.gl .d{font-size:14.6px;color:var(--ink2);display:block;line-height:1.55}
.gl .m{font-family:"JetBrains Mono",monospace;font-size:11px;color:var(--ink3);display:block;margin-top:14px}
@media(max-width:760px){.gl{grid-template-columns:1fr}}

/* ---------- contact ---------- */
.cgrid{display:grid;grid-template-columns:repeat(2,1fr);gap:1px;background:var(--rule);border:1px solid var(--rule);margin-top:34px}
.cgrid div{background:var(--sheet);padding:28px 26px}
.cgrid .k{font-family:"JetBrains Mono",monospace;font-size:10.5px;letter-spacing:.14em;text-transform:uppercase;color:var(--nib);font-weight:600;margin-bottom:10px}
.cgrid h3{margin:0 0 8px;font-family:"Newsreader",serif;font-size:23px;font-weight:500}
.cgrid p{font-size:15px;margin:0 0 14px;max-width:none}
.cgrid .big{font-family:"JetBrains Mono",monospace;font-size:15.5px;color:var(--ink);word-break:break-all}
@media(max-width:760px){.cgrid{grid-template-columns:1fr}}

/* ---------- 404 ---------- */
.nf{padding-block:110px 90px;text-align:left}
.nf .code{font-family:"JetBrains Mono",monospace;font-size:12px;letter-spacing:.16em;color:var(--ink3);font-weight:600}
.nf h1{font-size:clamp(34px,5vw,52px);margin:14px 0 18px}

/* ---------- mobile nav ---------- */
.menu{display:none;background:none;border:1px solid var(--rule);color:var(--ink);font:600 13.5px "Archivo",sans-serif;padding:8px 14px;border-radius:3px;cursor:pointer;margin-left:auto}
.nav .links{display:contents}
@media(max-width:820px){
  .nav .shell{flex-wrap:nowrap;gap:12px}
  .menu{display:inline-block}
  .nav .links{display:none;flex-basis:100%;flex-direction:column;gap:0;padding-top:6px}
  .nav.open .shell{flex-wrap:wrap}
  .nav.open .links{display:flex}
  .nav .links a.l{display:block;padding:13px 0;border-top:1px solid var(--rule2);font-size:16px}
  .nav .links a.btn{margin-top:12px;margin-bottom:6px;text-align:center}
}

/* ---------- contact form ---------- */
.cf{background:var(--sheet);border:1px solid var(--rule);padding:26px 26px 22px;display:flex;flex-direction:column;gap:16px}
.cf .f{display:flex;flex-direction:column;gap:6px}
.cf label{font-size:13.5px;font-weight:600;color:var(--ink)}
.cf label .opt{font-weight:400;color:var(--ink3);margin-left:6px}
.cf input,.cf select,.cf textarea{font:15px "Archivo",sans-serif;color:var(--ink);background:var(--paper);border:1px solid var(--rule);border-radius:3px;padding:10px 12px;width:100%}
.cf textarea{resize:vertical;min-height:110px;line-height:1.5}
.cf input:focus,.cf select:focus,.cf textarea:focus{outline:2px solid var(--nib);outline-offset:1px;border-color:var(--nib)}
.cf .hp{position:absolute;left:-9999px;width:1px;height:1px;overflow:hidden}
.cf .ck{display:grid;grid-template-columns:auto 1fr;gap:10px;align-items:start;font-size:13.8px;color:var(--ink2);font-weight:400;line-height:1.5}
.cf .ck input{width:16px;height:16px;margin-top:3px}
.factions{display:flex;align-items:center;gap:16px;flex-wrap:wrap;margin-top:4px}
.cf .btn{border:none;cursor:pointer;font:600 15px "Archivo",sans-serif}
.cf .btn[disabled]{opacity:.6;cursor:default}
.fs{font-size:14px;color:var(--ink3)}
.fs.ok{color:var(--go, #2C6249)}
.fs.err{color:var(--red)}

/* =========================================================
   REDLINE SYSTEM — the product, shown
   ========================================================= */
.doc{--dpad:26px;background:var(--sheet);border:1px solid var(--rule);margin:0;position:relative;
  box-shadow:0 1px 0 var(--rule),0 18px 40px -24px rgba(16,19,25,.35);font-family:"Newsreader",Georgia,serif;
  color:var(--ink);max-width:100%}
.doc-h{display:flex;justify-content:space-between;gap:12px;padding:12px var(--dpad);border-bottom:1px solid var(--rule2);
  font-family:"JetBrains Mono",monospace;font-size:10.5px;letter-spacing:.12em;text-transform:uppercase;color:var(--ink3)}
.doc-h span:last-child{color:var(--ink2);text-align:right}
.doc-p{padding:22px var(--dpad) 6px;margin:0;font-size:17.5px;line-height:1.75;max-width:none;color:var(--ink)}
.doc-p .n{font-family:"JetBrains Mono",monospace;font-size:12px;color:var(--ink3);margin-right:8px;letter-spacing:.04em}
.doc del{color:var(--red);text-decoration:line-through;text-decoration-thickness:1.5px;background:var(--redwash);padding:0 2px;border-radius:2px}
.doc ins{text-decoration:none;color:var(--nib);background:var(--nibwash);padding:0 2px;border-radius:2px;
  box-shadow:inset 0 -1.5px 0 var(--nib)}
.doc-c{margin:14px var(--dpad) 0;padding:11px 14px;border-left:2px solid var(--nib);background:var(--paper);
  font-family:"Archivo",sans-serif;font-size:13.6px;line-height:1.5;color:var(--ink2)}
.doc-c b{display:block;font-family:"JetBrains Mono",monospace;font-size:10.5px;letter-spacing:.12em;text-transform:uppercase;color:var(--nib);margin-bottom:3px;font-weight:600}
.doc-f{display:flex;justify-content:space-between;gap:12px;padding:14px var(--dpad) 16px;margin-top:10px;
  font-family:"JetBrains Mono",monospace;font-size:10.5px;letter-spacing:.1em;text-transform:uppercase;color:var(--ink3)}
.doc.sm{font-size:14px}
.doc.sm .doc-p{font-size:14.5px;line-height:1.6;padding:16px 18px 4px}
.doc.sm .doc-h,.doc.sm .doc-f{padding-left:18px;padding-right:18px}
.doc.sm .doc-c{margin:10px 18px 0;font-size:12.6px}

/* stamp + signature */
.stamp{position:absolute;right:18px;bottom:44px;font-family:"JetBrains Mono",monospace;font-size:11px;letter-spacing:.2em;
  text-transform:uppercase;color:var(--nib);border:1.5px solid var(--nib);padding:6px 10px;border-radius:3px;
  transform:rotate(-7deg);opacity:.85;background:var(--sheet)}
.initials{position:absolute;right:20px;bottom:46px;font-family:"Newsreader",serif;font-style:italic;font-size:22px;color:var(--nib);opacity:.9}
.sigline{margin:18px var(--dpad) 0;height:1px;background:var(--ink3);position:relative;max-width:220px}
.sigline::after{content:"Authorized signatory";position:absolute;top:5px;left:0;font-family:"JetBrains Mono",monospace;font-size:9.5px;letter-spacing:.12em;text-transform:uppercase;color:var(--ink3)}

/* hero two-col */
.hero.split .shell{display:grid;grid-template-columns:minmax(0,1.05fr) minmax(0,.95fr);gap:56px;align-items:center}
.hero.split .sigrule{display:none}
@media(max-width:900px){.hero.split .shell{grid-template-columns:1fr;gap:40px}}

/* animation: staged reveal of the markup */
@media (prefers-reduced-motion:no-preference){
  .doc.live del,.doc.live ins,.doc.live .doc-c,.doc.live .stamp{opacity:0;animation:rl-in .5s ease forwards}
  .doc.live del{animation-delay:.5s}
  .doc.live ins{animation-delay:1.1s}
  .doc.live .doc-c{animation-delay:1.7s;transform:translateY(6px)}
  .doc.live .stamp{animation-delay:2.2s;transform:rotate(-7deg) scale(1.15)}
  @keyframes rl-in{to{opacity:1;transform:none}}
  .doc.live .stamp{animation-name:rl-stamp}
  @keyframes rl-stamp{to{opacity:.85;transform:rotate(-7deg) scale(1)}}
}

/* four states row */
.states{display:grid;grid-template-columns:repeat(4,1fr);gap:16px;margin-top:34px}
.states .doc{position:relative}
.states .lbl{font-family:"JetBrains Mono",monospace;font-size:10.5px;letter-spacing:.14em;text-transform:uppercase;color:var(--nib);font-weight:600;display:block;margin-bottom:10px}
@media(max-width:980px){.states{grid-template-columns:repeat(2,1fr)}}
@media(max-width:560px){.states{grid-template-columns:1fr}}

/* queue stack */
.stack{position:relative;padding-top:22px;padding-left:22px}
.stack .doc{position:relative;z-index:3}
.stack::before,.stack::after{content:"";position:absolute;inset:0;background:var(--sheet);border:1px solid var(--rule);z-index:1}
.stack::before{transform:translate(-11px,-11px);z-index:2}
.stack::after{transform:translate(-22px,-22px)}

/* dark band */
section.dark{background:var(--ink);color:var(--paper);border-bottom:none}
section.dark h2,section.dark h3{color:var(--paper)}
section.dark p,section.dark .intro{color:#B9BDC6}
section.dark p b{color:var(--paper)}
section.dark .eyebrow.q{color:#8FA9CE}
section.dark .stats{background:#2A313C;border-color:#2A313C}
section.dark .stats div{background:var(--ink)}
section.dark .stats .v{color:var(--paper)}
section.dark .stats .l{color:#8A919C}
section.dark .call{border-left-color:#8FA9CE}
section.dark .call .k{color:#8FA9CE}
section.dark .call p{color:#B9BDC6}
section.dark .btn.ghost{color:var(--paper);border-color:#3A424E}
section.dark .btn.ghost:hover{background:#1C222B;border-color:#8FA9CE}
section.dark .g2 h3{color:var(--paper)}

/* portrait placeholder (About) */
.portrait{aspect-ratio:4/5;max-width:100%;background:var(--sheet2);border:1px solid var(--rule);display:flex;align-items:flex-end;padding:18px;
  font-family:"JetBrains Mono",monospace;font-size:10.5px;letter-spacing:.12em;text-transform:uppercase;color:var(--ink3);position:relative}
.portrait::before{content:"";position:absolute;inset:14px;border:1px dashed var(--rule)}

/* side-by-side with a doc */
.withdoc{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:48px;align-items:center;margin-top:30px}
@media(max-width:900px){.withdoc{grid-template-columns:1fr;gap:28px}}

/* fixes */
.stack::before{inset:11px 11px 11px 11px;transform:none}
.stack::after{inset:0 22px 22px 0;transform:none}
.doc.sm .stamp{position:static;display:inline-block;margin:16px 18px 0;transform:rotate(-4deg);font-size:10px}
.doc.sm .initials{bottom:52px}
.states .doc-f span:first-child{max-width:60%}
.brand .mark{color:var(--nib);flex:none;transform:translateY(2px)}
.art .hero.split .doc{font-size:14px}
.art .hero.split .shell{align-items:start}
.art .hero.split .byline{margin-top:22px}

/* =========================================================
   V2 — bold ink identity
   ========================================================= */
:root{--ink-deep:#0C1626;--ink-mid:#132238;--paper-warm:#F4F2EC}
.grain{position:relative;isolation:isolate}
.grain::after{content:"";position:absolute;inset:0;pointer-events:none;opacity:.07;mix-blend-mode:multiply;z-index:0;
  background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='160' height='160'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.9' numOctaves='3' stitchTiles='stitch'/%3E%3CfeColorMatrix values='0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 .6 0'/%3E%3C/filter%3E%3Crect width='160' height='160' filter='url(%23n)'/%3E%3C/svg%3E")}
.grain > *{position:relative;z-index:1}

/* big ink hero */
.hero.ink{background:radial-gradient(1200px 600px at 85% 10%,#22406A 0%,var(--ink-mid) 45%,var(--ink-deep) 100%);
  color:var(--paper);border-bottom:none;padding-block:96px 120px;overflow:hidden}
.hero.ink .shell{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(0,.9fr);gap:64px;align-items:center}
.hero.ink .eyebrow{color:#9FB8DC}
.hero.ink h1{font-size:clamp(46px,7.4vw,92px);line-height:.98;letter-spacing:-.025em;color:var(--paper);margin:22px 0 28px;max-width:14ch;font-weight:500}
.hero.ink h1 em{font-style:italic;color:#C9D8EE}
.hero.ink .sub{color:#C3CCDA;font-size:20px;max-width:46ch}
.hero.ink .sub b{color:var(--paper)}
.hero.ink .btn{background:var(--paper);color:var(--ink-deep);border-color:var(--paper);padding:15px 26px;font-size:16px}
.hero.ink .btn:hover{background:#fff}
.hero.ink .btn.ghost{background:transparent;color:var(--paper);border-color:#3D5578}
.hero.ink .btn.ghost:hover{background:#1C2E4A;border-color:#9FB8DC}
.hero.ink .fine{color:#8FA3C2}
/* layered document composition */
.comp{position:relative;min-height:420px}
.comp .doc{position:relative;z-index:3;box-shadow:0 40px 80px -30px rgba(0,0,0,.7),0 0 0 1px rgba(255,255,255,.06);transform:rotate(-1.2deg)}
.comp .ghost{position:absolute;inset:0;background:#FBFAF7;border-radius:2px;opacity:.9}
.comp .ghost.a{transform:translate(28px,-26px) rotate(2.4deg);z-index:2;opacity:.55}
.comp .ghost.b{transform:translate(56px,-52px) rotate(5deg);z-index:1;opacity:.28}
.hero.ink .doc{color:var(--ink);background:#FBFAF7}
.hero.ink .doc .doc-h,.hero.ink .doc .doc-f{color:#6B717C}
.hero.ink .doc .doc-c{background:#F1F0EA;color:#3A404B}
.hero.ink .doc .doc-c b{color:#1F3556}
.hero.ink .doc del{color:#9E3226;background:#F6E9E6}
.hero.ink .doc ins{color:#1F3556;background:#E7ECF4;box-shadow:inset 0 -1.5px 0 #1F3556}
@media(max-width:900px){.hero.ink{padding-block:64px 80px}.hero.ink .shell{grid-template-columns:1fr;gap:48px}.comp{min-height:0}.comp .doc{transform:none}.comp .ghost{display:none}}

/* marquee of document types */
.tape{background:var(--ink-deep);border-top:1px solid #1E2C42;border-bottom:1px solid #1E2C42;overflow:hidden;padding:14px 0}
.tape .row{display:flex;gap:0;white-space:nowrap;width:max-content;animation:tape 60s linear infinite}
.tape span{font-family:"JetBrains Mono",monospace;font-size:12px;letter-spacing:.18em;text-transform:uppercase;color:#8FA3C2;padding:0 28px;border-right:1px solid #22314A}
@keyframes tape{to{transform:translateX(-50%)}}
@media (prefers-reduced-motion:reduce){.tape .row{animation:none;width:auto;flex-wrap:wrap}}

/* statement sections */
section.state{padding-block:110px;border-bottom:none;background:var(--paper)}
section.state h2{font-size:clamp(34px,4.6vw,56px);max-width:20ch;line-height:1.04;letter-spacing:-.02em;margin:16px 0 26px}
section.state .intro{font-size:20px;max-width:52ch}
.big3{display:grid;grid-template-columns:repeat(3,1fr);gap:40px;margin-top:64px}
.big3 .n{font-family:"Newsreader",serif;font-size:72px;line-height:1;color:var(--nib);letter-spacing:-.03em;font-weight:500;display:block;margin-bottom:18px}
.big3 h3{margin:0 0 10px;font-size:20px;font-family:"Newsreader",serif;font-weight:500;letter-spacing:-.01em}
.big3 p{font-size:15.5px;margin:0;max-width:none}
@media(max-width:900px){.big3{grid-template-columns:1fr;gap:34px}.big3 .n{font-size:56px}}

/* wash panel */
section.wash{background:var(--nibwash);border-bottom:none;padding-block:96px}
section.wash .scope div{background:var(--paper)}

/* pricing v2 */
.prices.v2 .pan{border:none;background:var(--sheet);box-shadow:0 1px 0 var(--rule),0 24px 60px -36px rgba(16,19,25,.35)}
.prices.v2 .pan.desk{background:var(--ink-deep);color:var(--paper);box-shadow:0 30px 70px -30px rgba(12,22,38,.7)}
.prices.v2 .pan.desk .ph{background:transparent;border-bottom-color:#22314A}
.prices.v2 .pan.desk .tag{color:#9FB8DC}
.prices.v2 .pan.desk h3,.prices.v2 .pan.desk .row .n,.prices.v2 .pan.desk .row .v{color:var(--paper)}
.prices.v2 .pan.desk .pd,.prices.v2 .pan.desk .row .s{color:#8FA3C2}
.prices.v2 .pan.desk .row{border-bottom-color:#22314A}
.prices.v2 .pan h3{font-size:30px}
.prices.v2 .pan .row .v{font-size:16px}

/* proof v2 */
section.proof{background:var(--ink-deep);color:var(--paper);padding-block:110px;border-bottom:none}
section.proof h2{color:var(--paper);font-size:clamp(34px,4.6vw,56px);max-width:18ch;line-height:1.04;letter-spacing:-.02em}
section.proof p{color:#B4BFD1}
section.proof p b{color:var(--paper)}
section.proof .eyebrow{color:#9FB8DC}
.proofgrid{display:grid;grid-template-columns:1.1fr .9fr;gap:64px;align-items:end;margin-top:20px}
.bignum{display:grid;grid-template-columns:1fr 1fr;gap:40px 32px}
.bignum .v{font-family:"Newsreader",serif;font-size:clamp(56px,6vw,84px);line-height:.95;letter-spacing:-.03em;color:var(--paper);display:block}
.bignum .l{font-family:"JetBrains Mono",monospace;font-size:11px;letter-spacing:.14em;text-transform:uppercase;color:#8FA3C2;display:block;margin-top:12px}
section.proof .call{border-left-color:#3D5578;margin-top:40px}
section.proof .call .k{color:#9FB8DC}
section.proof .call p{color:#B4BFD1}
@media(max-width:900px){.proofgrid{grid-template-columns:1fr;gap:44px}}

/* who v2 */
.who.v2{background:transparent;border:none;gap:24px;margin-top:56px}
.who.v2 a{background:var(--sheet);border:none;padding:36px 32px;box-shadow:0 1px 0 var(--rule),0 24px 60px -40px rgba(16,19,25,.4);transition:transform .25s ease,box-shadow .25s ease}
.who.v2 a:hover{transform:translateY(-4px);box-shadow:0 1px 0 var(--rule),0 30px 60px -34px rgba(16,19,25,.5)}
.who.v2 .q{font-size:26px;line-height:1.15;margin-bottom:14px}
.who.v2 .d{font-size:15.5px}

/* final v2 */
section.final.v2{background:var(--paper);color:var(--ink);padding-block:120px;text-align:left}
section.final.v2 h2{color:var(--ink);font-size:clamp(40px,6vw,76px);line-height:.98;letter-spacing:-.025em;max-width:14ch}
section.final.v2 p{color:var(--ink2);font-size:19px}
section.final.v2 .btn{background:var(--ink-deep);color:var(--paper);border-color:var(--ink-deep);padding:16px 28px;font-size:16px}
section.final.v2 .eyebrow{color:var(--nib)}

/* softer placeholder */
.tok{background:transparent;color:var(--ink3);border-bottom:1px dotted var(--ink3);font-family:inherit;font-size:inherit;font-style:italic;padding:0}
.comp{display:grid;min-height:0}
.comp > *{grid-area:1/1}
.comp .ghost{position:static;inset:auto;background:#E4E1D8;opacity:1;box-shadow:0 20px 50px -30px rgba(0,0,0,.6)}
.comp .ghost.a{transform:translate(22px,-20px) rotate(2deg);background:#ECEAE3}
.comp .ghost.b{transform:translate(44px,-40px) rotate(4.6deg);background:#D8D5CC}
.comp .ghost.a,.comp .ghost.b{opacity:1}

/* ===== V2 rollout to subpages ===== */
.hero.ink.sub{padding-block:76px 84px}
.hero.ink.sub h1{font-size:clamp(38px,5.6vw,66px);max-width:18ch}
.hero.ink .byline{color:#8FA3C2}.hero.ink .byline b{color:#C3CCDA}
.hero.ink .tok{color:#9FB8DC;border-color:#9FB8DC}
.hero.ink .eyebrow.q{color:#9FB8DC}
.hero.ink .actions .fine{color:#8FA3C2}
section{padding-block:84px}
section h2{font-size:clamp(30px,4vw,44px);letter-spacing:-.018em}
.big3 .num{font-family:"Newsreader",serif;font-size:64px;line-height:1;color:var(--nib);letter-spacing:-.03em;font-weight:500;display:block;margin-bottom:16px}
.big3 > div h3{font-family:"Newsreader",serif;font-size:20px;font-weight:500;letter-spacing:-.01em;margin:0 0 10px}
.bignum .v{color:var(--ink)}.bignum .l{color:var(--ink3)}
section.proof .bignum .v{color:var(--paper)}section.proof .bignum .l{color:#8FA3C2}
section.proof .g2 h3{color:var(--paper)}
section.proof .withdoc .doc{color:var(--ink)}
.final h2{font-size:clamp(36px,5vw,64px);letter-spacing:-.022em;line-height:1}
.final{padding-block:110px;background:var(--ink-deep)}
.final p{font-size:18px}
.final .btn{padding:16px 28px;font-size:16px}
.who.v2 .q{font-size:24px}
/* abstract visual slot (replaces photo until real photography exists) */
.visual{position:relative;aspect-ratio:4/5;max-width:100%;overflow:hidden;background:
  radial-gradient(420px 300px at 20% 15%,#2B4A78 0%,transparent 60%),
  radial-gradient(360px 420px at 85% 90%,#0C1626 0%,transparent 65%),
  linear-gradient(160deg,#1A2E4C 0%,#0F1C30 100%)}
.visual::before{content:"";position:absolute;inset:0;opacity:.12;mix-blend-mode:screen;
  background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='160' height='160'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.9' numOctaves='3' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='160' height='160' filter='url(%23n)'/%3E%3C/svg%3E")}
.visual .lines{position:absolute;left:12%;right:12%;top:18%;display:flex;flex-direction:column;gap:14px}
.visual .lines i{display:block;height:1.5px;background:#C9D8EE;opacity:.35}
.visual .lines i:nth-child(2){width:78%}.visual .lines i:nth-child(3){width:90%}.visual .lines i:nth-child(4){width:62%;background:#DE8779;opacity:.7}.visual .lines i:nth-child(5){width:84%}.visual .lines i:nth-child(6){width:40%}
.visual .sig{position:absolute;left:12%;right:30%;bottom:16%;height:1.5px;background:#F4F2EC;opacity:.85}
.visual .sig::after{content:"";position:absolute;right:-8px;top:-3px;width:7px;height:7px;border-radius:50%;background:#F4F2EC}
.visual .cap{position:absolute;left:12%;bottom:8%;font-family:"JetBrains Mono",monospace;font-size:10.5px;letter-spacing:.14em;text-transform:uppercase;color:#8FA3C2}
.visual.wide{aspect-ratio:16/10}
/* logo lockup */
.brand .mark{width:24px;height:24px}
.hero.ink.sub:not(.split) .shell{display:block}
.hero.ink.sub:not(.split) .sub{max-width:56ch}

/* =========================================================
   V3 — people silhouettes, interactive redline, CTA system
   ========================================================= */

/* --- silhouette (faceless outline; deliberate placeholder for real photography) --- */
.person{position:relative;overflow:hidden;background:linear-gradient(160deg,#1A2E4C 0%,#0F1C30 100%);aspect-ratio:4/5;max-width:100%}
.person::before{content:"";position:absolute;inset:0;opacity:.1;mix-blend-mode:screen;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='160' height='160'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.9' numOctaves='3' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='160' height='160' filter='url(%23n)'/%3E%3C/svg%3E")}
.person svg{position:absolute;left:0;right:0;bottom:0;width:100%;height:auto;display:block}
.person .cap{position:absolute;left:14px;right:14px;bottom:12px;font-family:"JetBrains Mono",monospace;font-size:10.5px;letter-spacing:.12em;text-transform:uppercase;color:#C3CCDA;line-height:1.5}
.person .cap i{display:block;font-style:normal;color:#8FA3C2;font-size:9.5px}
.person.sm{aspect-ratio:1/1}
.team{display:grid;grid-template-columns:repeat(4,1fr);gap:18px;margin-top:30px}
.team figure{margin:0}
.team figcaption{margin-top:12px;font-size:14px;color:var(--ink2);line-height:1.5}
.team figcaption b{display:block;color:var(--ink);font-family:"Newsreader",serif;font-size:18px;font-weight:500}
@media(max-width:900px){.team{grid-template-columns:repeat(2,1fr)}}
@media(max-width:480px){.team{grid-template-columns:1fr 1fr;gap:12px}.team figcaption{font-size:12.5px}}

/* --- credential badges strip --- */
.creds{background:var(--paper);border-bottom:1px solid var(--rule)}
.creds .shell{display:grid;grid-template-columns:repeat(3,1fr);gap:0}
.creds .c{display:flex;gap:14px;align-items:flex-start;padding:26px 24px 26px 0;border-right:1px solid var(--rule)}
.creds .c:last-child{border-right:none;padding-right:0}
.creds .c + .c{padding-left:24px}
.creds .ic{flex:none;width:34px;height:34px;border-radius:50%;background:var(--nibwash);display:grid;place-items:center;color:var(--nib)}
.creds .ic svg{width:16px;height:16px}
.creds .t{display:block;font-weight:600;color:var(--ink);font-size:15.5px;line-height:1.3}
.creds .d{display:block;font-size:13.4px;color:var(--ink3);margin-top:3px;line-height:1.45}
@media(max-width:820px){.creds .shell{grid-template-columns:1fr}.creds .c{border-right:none;border-bottom:1px solid var(--rule2);padding:18px 0}.creds .c + .c{padding-left:0}.creds .c:last-child{border-bottom:none}}

/* --- interactive redline --- */
.rl-ctrl{display:flex;gap:0;margin-top:16px;border:1px solid rgba(255,255,255,.14);border-radius:4px;overflow:hidden;width:max-content;max-width:100%;background:rgba(255,255,255,.04)}
.rl-ctrl button{appearance:none;background:transparent;border:none;color:#B4BFD1;font:600 12px "JetBrains Mono",monospace;letter-spacing:.1em;text-transform:uppercase;padding:10px 16px;cursor:pointer;border-right:1px solid rgba(255,255,255,.12);transition:background .18s,color .18s}
.rl-ctrl button:last-child{border-right:none}
.rl-ctrl button[aria-pressed="true"]{background:var(--paper);color:var(--ink-deep)}
.rl-ctrl button:hover:not([aria-pressed="true"]){color:var(--paper);background:rgba(255,255,255,.08)}
.doc.st-theirs del{color:inherit;text-decoration:none;background:transparent}
.doc.st-theirs ins,.doc.st-theirs .doc-c{display:none}
.doc.st-signed del{display:none}
.doc.st-signed ins{color:inherit;background:transparent;box-shadow:none}
.doc.st-signed .doc-c{display:none}
.doc.st-signed .sigline{display:block}
.doc .sigline.hidden-until-signed{display:none}
.doc.st-theirs .stamp,.doc.st-redline .stamp{display:none}
.doc del,.doc ins{cursor:help;transition:background .18s}
.doc del:hover,.doc ins:hover{filter:brightness(.92)}
.doc.live.st-theirs del,.doc.live.st-signed ins{animation:none;opacity:1}
.hero .rl-hint{font-family:"JetBrains Mono",monospace;font-size:10.5px;letter-spacing:.12em;text-transform:uppercase;color:#8FA3C2;margin-top:10px}

/* --- comparison table --- */
.cmp{margin-top:34px;border:1px solid var(--rule);background:var(--sheet);overflow-x:auto}
.cmp table{min-width:720px}
.cmp th{background:var(--sheet2)}
.cmp th.us,.cmp td.us{background:var(--nibwash);color:var(--ink)}
.cmp th.us{color:var(--nib)}
.cmp td.us{font-weight:600}
.cmp td{font-size:14.2px}
.cmp td.k{width:22%}
.cmp .no{color:var(--red)}
.cmp .part{color:var(--seal)}
@media(max-width:760px){
  .cmp{overflow:visible;border:none;background:transparent}
  .cmp table,.cmp thead,.cmp tbody,.cmp tr,.cmp td,.cmp th{display:block;min-width:0}
  .cmp thead{display:none}
  .cmp tr{border:1px solid var(--rule);background:var(--sheet);margin-bottom:12px}
  .cmp td{border-bottom:1px solid var(--rule2);padding:10px 14px}
  .cmp td.k{background:var(--sheet2);font-family:"JetBrains Mono",monospace;font-size:10.5px;letter-spacing:.12em;text-transform:uppercase;color:var(--ink3);width:auto}
  .cmp td::before{content:attr(data-l);display:block;font-family:"JetBrains Mono",monospace;font-size:10px;letter-spacing:.12em;text-transform:uppercase;color:var(--ink3);margin-bottom:2px}
  .cmp td.k::before{content:none}
}

/* --- CTA system --- */
.btn{position:relative;display:inline-flex;align-items:center;gap:10px;transition:transform .18s ease,background .18s,border-color .18s,box-shadow .18s;will-change:transform}
.btn .ar{display:inline-block;width:14px;height:14px;transition:transform .2s ease}
.btn:hover{transform:translateY(-1px);box-shadow:0 10px 24px -14px rgba(16,19,25,.55)}
.btn:hover .ar{transform:translateX(4px)}
.btn:active{transform:translateY(0);box-shadow:none}
.btn.ghost:hover{box-shadow:none}
.nav .btn{padding:10px 16px;font-size:13.5px}
.nav .btn:hover{transform:none;box-shadow:none}
.hero.ink .btn{box-shadow:0 14px 30px -16px rgba(0,0,0,.6)}
.hero.ink .btn:hover{box-shadow:0 18px 34px -16px rgba(0,0,0,.7)}
/* sticky mobile CTA */
.stick{position:fixed;left:0;right:0;bottom:0;z-index:30;display:none;padding:10px 16px calc(10px + env(safe-area-inset-bottom));background:color-mix(in srgb,var(--paper) 92%,transparent);backdrop-filter:blur(10px);border-top:1px solid var(--rule);transform:translateY(100%);transition:transform .25s ease}
.stick.on{transform:none}
.stick .btn{width:100%;justify-content:center;padding:14px 20px;font-size:15.5px}
@media(max-width:700px){.stick{display:block}body{padding-bottom:0}}
.hero.ink .doc.st-signed ins{color:inherit;background:transparent;box-shadow:none}
.hero.ink .doc.st-theirs del{color:inherit;text-decoration:none;background:transparent}
.hero .doc .stamp{bottom:70px;right:22px}
.hero .doc .sigline{margin-top:22px}

/* ===== lifecycle (one contract, four states, as interface) ===== */
.life{display:grid;grid-template-columns:repeat(4,1fr);gap:18px;margin-top:40px;align-items:start}
.life .st{position:relative}
.life .lbl{display:flex;align-items:baseline;gap:10px;margin-bottom:12px;font-family:"JetBrains Mono",monospace;font-size:10.5px;letter-spacing:.14em;text-transform:uppercase;color:var(--nib);font-weight:600}
.life .lbl i{font-style:normal;color:var(--ink3);font-weight:500;letter-spacing:.08em}
.life .st + .st::before{content:"";position:absolute;left:-18px;top:34px;width:18px;height:1px;background:var(--rule)}
.msg{background:var(--sheet);border:1px solid var(--rule);box-shadow:0 1px 0 var(--rule),0 18px 40px -28px rgba(16,19,25,.35);font-family:"Archivo",sans-serif;font-size:13.4px;color:var(--ink2)}
.msg .mh{display:flex;justify-content:space-between;gap:10px;padding:10px 14px;border-bottom:1px solid var(--rule2);font-family:"JetBrains Mono",monospace;font-size:10.5px;letter-spacing:.1em;text-transform:uppercase;color:var(--ink3)}
.msg .mb{padding:12px 14px}
.msg .from{font-weight:600;color:var(--ink);display:block;margin-bottom:3px;font-size:13.6px}
.msg .att{display:inline-flex;align-items:center;gap:8px;margin-top:10px;padding:7px 10px;border:1px solid var(--rule);background:var(--paper);font-family:"JetBrains Mono",monospace;font-size:11.5px;color:var(--ink)}
.msg .att b{width:8px;height:10px;border:1.5px solid var(--nib);border-radius:1px;display:inline-block}
.msg .tag{display:inline-block;margin-top:10px;font-family:"JetBrains Mono",monospace;font-size:10px;letter-spacing:.12em;text-transform:uppercase;color:var(--go);background:var(--gowash);padding:3px 8px;border-radius:3px}
.thr .m{padding:11px 14px;border-bottom:1px solid var(--rule2)}
.thr .m:last-child{border-bottom:none}
.thr .m .who{font-family:"JetBrains Mono",monospace;font-size:10px;letter-spacing:.12em;text-transform:uppercase;color:var(--ink3);display:flex;justify-content:space-between;gap:10px;margin-bottom:4px}
.thr .m.us{background:var(--nibwash)}
.thr .m.us .who{color:var(--nib)}
.thr .m p{margin:0;font-size:13.2px;line-height:1.5;max-width:none}
.life .metric{margin-top:12px;display:flex;justify-content:space-between;font-family:"JetBrains Mono",monospace;font-size:11px;letter-spacing:.08em;color:var(--ink3);text-transform:uppercase}
.life .metric b{color:var(--ink)}
@media(max-width:980px){.life{grid-template-columns:repeat(2,1fr)}.life .st + .st::before{display:none}}
@media(max-width:560px){.life{grid-template-columns:1fr}}
.creds .op{grid-column:1/-1;border-top:1px solid var(--rule2);padding:12px 0 2px;font-family:"JetBrains Mono",monospace;font-size:11px;letter-spacing:.1em;text-transform:uppercase;color:var(--ink3)}
.creds .op b{color:var(--ink2);font-weight:600}

/* ===== client logo wall (Icon Partners' clients, attributed) ===== */
.wall{display:grid;grid-template-columns:repeat(7,1fr);gap:10px;margin-top:28px}
.wall img{width:100%;height:auto;display:block;border:1px solid var(--rule);border-radius:6px;filter:grayscale(1);opacity:.78;transition:filter .25s,opacity .25s}
.wall img:hover{filter:none;opacity:1}
.wallnote{margin-top:16px;font-size:13.4px;color:var(--ink3);max-width:70ch;line-height:1.55}
.wallnote b{color:var(--ink2)}
@media(max-width:980px){.wall{grid-template-columns:repeat(4,1fr)}}
@media(max-width:560px){.wall{grid-template-columns:repeat(3,1fr);gap:8px}}
/* quiet footnote captions (disclosures adjacent to the claim, not shouted) */
.fn{font-family:"JetBrains Mono",monospace;font-size:10.5px;letter-spacing:.06em;color:var(--ink3);line-height:1.55;max-width:none;margin:14px 0 0}
section.proof .fn{color:#6F7C92}
.creds .op{font-size:10.5px;letter-spacing:.08em;color:var(--ink3);padding-top:10px}
.creds .op b{font-weight:500;color:var(--ink2)}
.wallnote{font-family:"JetBrains Mono",monospace;font-size:10.5px;letter-spacing:.06em;color:var(--ink3);margin-top:14px}
.wallnote b{font-weight:500;color:var(--ink2)}
.call.quiet{border-left-color:var(--rule);padding-left:18px}
.call.quiet .k{color:var(--ink3)}
.call.quiet p{font-size:13.6px;color:var(--ink3)}
/* article disclaimer + notes */
.artdisc{margin-top:40px;padding:16px 20px;border:1px solid var(--rule);background:var(--sheet2);font-size:13.4px;color:var(--ink3);line-height:1.55}
.artdisc b{color:var(--ink2);font-weight:600}
.nl{display:grid;grid-template-columns:repeat(3,1fr);gap:1px;background:var(--rule);border:1px solid var(--rule);margin-top:30px}
.nl a{background:var(--paper);padding:24px 22px;text-decoration:none;display:block}
.nl a:hover{background:var(--sheet2)}
.nl .k{font-family:"JetBrains Mono",monospace;font-size:10.5px;letter-spacing:.14em;text-transform:uppercase;color:var(--nib);font-weight:600;display:block;margin-bottom:10px}
.nl .t{font-family:"Newsreader",serif;font-size:21px;color:var(--ink);display:block;line-height:1.2;margin-bottom:8px;font-weight:500;letter-spacing:-.01em}
.nl .d{font-size:14px;color:var(--ink2);display:block;line-height:1.5}
.nl .m{font-family:"JetBrains Mono",monospace;font-size:10.5px;color:var(--ink3);display:block;margin-top:12px;letter-spacing:.06em}
@media(max-width:900px){.nl{grid-template-columns:1fr}}

/* v9 — moritz audit: blurred sticky nav, count-up, security cards, FAQ */
.nav{background:color-mix(in srgb,var(--paper) 86%,transparent);backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px)}
.sec4{display:grid;grid-template-columns:repeat(4,1fr);gap:1px;background:var(--rule);border:1px solid var(--rule);margin-top:34px}
.sec4>div{background:var(--sheet);padding:26px 22px}
.sec4 .ic{display:inline-flex;width:38px;height:38px;border:1px solid var(--rule);border-radius:8px;align-items:center;justify-content:center;color:var(--ink);background:var(--paper)}
.sec4 .ic svg{width:20px;height:20px}
.sec4 h3{font-family:"Newsreader",serif;font-size:21px;font-weight:500;letter-spacing:-.01em;margin:16px 0 8px}
.sec4 p{font-size:14.5px;line-height:1.55;color:var(--ink2);margin:0}
.faqgrid{display:grid;grid-template-columns:.9fr 1.1fr;gap:56px;align-items:start}
.faq{border-top:1px solid var(--rule)}
.faq details{border-bottom:1px solid var(--rule)}
.faq summary{list-style:none;cursor:pointer;font-family:"Newsreader",serif;font-size:21px;font-weight:500;letter-spacing:-.01em;padding:18px 34px 18px 0;position:relative;color:var(--ink)}
.faq summary::-webkit-details-marker{display:none}
.faq summary::after{content:"";position:absolute;right:4px;top:50%;width:10px;height:10px;border-right:1.6px solid var(--ink3);border-bottom:1.6px solid var(--ink3);transform:translateY(-70%) rotate(45deg);transition:transform .2s}
.faq details[open] summary::after{transform:translateY(-30%) rotate(-135deg)}
.faq details p{margin:0 0 20px;font-size:15.5px;line-height:1.6;color:var(--ink2);max-width:60ch}
.faq details p a{color:var(--ink)}
@media (max-width:960px){.sec4{grid-template-columns:repeat(2,1fr)}.faqgrid{grid-template-columns:1fr;gap:28px}}
@media (max-width:560px){.sec4{grid-template-columns:1fr}}

/* v10 — hero video */
.hero.hasvid{position:relative;overflow:hidden}
.hero.hasvid .vid{position:absolute;inset:0;z-index:0;pointer-events:none}
.hero.hasvid .vid video{width:100%;height:100%;object-fit:cover;opacity:.85;filter:saturate(.92)}
.hero.hasvid .vid::after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(12,22,38,.86) 0%,rgba(12,22,38,.62) 40%,rgba(12,22,38,.18) 100%),linear-gradient(180deg,rgba(12,22,38,.3) 0%,rgba(12,22,38,0) 35%,rgba(12,22,38,.5) 100%)}
.hero.hasvid .shell{position:relative;z-index:1}
.hero.hasvid .doc{box-shadow:0 30px 80px rgba(0,0,0,.45)}
@media (max-width:760px){.hero.hasvid .vid video{opacity:.7}.hero.hasvid .vid::after{background:linear-gradient(180deg,rgba(12,22,38,.8) 0%,rgba(12,22,38,.55) 60%,rgba(12,22,38,.75) 100%)}}
@media (prefers-reduced-motion:reduce){.hero.hasvid .vid video{display:none}.hero.hasvid .vid{background:url(media/hero.jpg) center/cover}}

/* v10.4 — comparison table as a sheet card */
.cmp{margin-top:38px;background:var(--sheet);border:none;border-radius:8px;overflow:hidden;box-shadow:0 1px 0 var(--rule),0 24px 60px -36px rgba(16,19,25,.35)}
.cmp table{width:100%;border-collapse:collapse;min-width:0}
.cmp th{background:var(--sheet2);font-family:"JetBrains Mono",monospace;font-size:10.5px;letter-spacing:.14em;text-transform:uppercase;color:var(--ink3);font-weight:500;padding:16px 22px;text-align:left;vertical-align:middle;border-bottom:1px solid var(--rule)}
.cmp th:first-child{padding-left:26px}
.cmp th.us{background:var(--ink-deep);color:var(--paper);border-bottom-color:var(--ink-deep)}
.cmp td{padding:18px 22px;border-bottom:1px solid var(--rule2);font-size:15px;line-height:1.5;color:var(--ink2);vertical-align:top;background:transparent}
.cmp td.k{font-family:"Newsreader",serif;font-size:19px;font-weight:500;letter-spacing:-.01em;line-height:1.25;color:var(--ink);width:24%;padding-left:26px}
.cmp td.us{background:var(--nibwash);color:var(--ink);font-weight:600}
.cmp tbody tr:last-child td{border-bottom:none}
@media (max-width:760px){
  .cmp{background:transparent;box-shadow:none;border-radius:0;overflow:visible}
  .cmp tr{display:grid;grid-template-columns:1fr 1fr;gap:0;border:1px solid var(--rule);background:var(--sheet);margin-bottom:12px;border-radius:8px;overflow:hidden;box-shadow:0 1px 0 var(--rule)}
  .cmp td{border-bottom:1px solid var(--rule2);border-right:1px solid var(--rule2);padding:10px 12px;font-size:13.5px}
  .cmp td:nth-child(odd){border-right:none}
  .cmp td.k{grid-column:1/-1;width:auto;background:var(--sheet2);font-size:17px;text-transform:none;letter-spacing:-.01em;color:var(--ink);padding:10px 12px;border-right:none}
  .cmp td.us{grid-column:1/-1;border:none;background:var(--nibwash);font-size:14px}
  .cmp td::before{color:var(--ink3)}
  .cmp tbody tr:last-child td{border-bottom:1px solid var(--rule2)}
}

.nl a.cta{background:var(--ink-deep);color:var(--paper)}
.nl a.cta .k{color:#9FB8DC}.nl a.cta .t{color:var(--paper)}.nl a.cta .d{color:#B9BDC6}.nl a.cta .m{color:var(--paper);font-weight:600}
.nl a.cta:hover{background:var(--ink)}

/* v11.1 — mobile pass */
@media (max-width:760px){
  .tscroll>table{min-width:0;font-size:13.5px}
  .tscroll>table th,.tscroll>table td{padding:10px 10px}
  .prose .tscroll>table{min-width:520px}
  .prose .tscroll{position:relative;background:linear-gradient(90deg,transparent 85%,rgba(16,19,25,.08));}
  .wall img:nth-child(n+13){display:none}
  .cmp tr:nth-child(4),.cmp tr:nth-child(6){display:none}
}

/* v11.2 — horizontal swipe on phones: lifecycle + note feed + who-for */
@media(max-width:760px){
  .life{display:flex;grid-template-columns:none;gap:14px;overflow-x:auto;scroll-snap-type:x mandatory;-webkit-overflow-scrolling:touch;padding:4px 0 14px;margin-inline:-16px;padding-inline:16px;scrollbar-width:none}
  .life::-webkit-scrollbar{display:none}
  .life .st{flex:0 0 84%;scroll-snap-align:start}
  .life .st + .st::before{display:none}
  .swipehint{display:block;font-family:"JetBrains Mono",monospace;font-size:10.5px;letter-spacing:.12em;text-transform:uppercase;color:var(--ink3);margin-top:6px}
  .nl.feed{display:flex;overflow-x:auto;scroll-snap-type:x mandatory;gap:10px;border:none;background:transparent;margin-inline:-16px;padding-inline:16px;padding-bottom:10px;scrollbar-width:none}
  .nl.feed::-webkit-scrollbar{display:none}
  .nl.feed a{flex:0 0 80%;scroll-snap-align:start;border:1px solid var(--rule)}
  .who.v2{display:flex;overflow-x:auto;scroll-snap-type:x mandatory;gap:10px;border:none;background:transparent;margin-inline:-16px;padding-inline:16px;padding-bottom:10px;scrollbar-width:none}
  .who.v2::-webkit-scrollbar{display:none}
  .who.v2 a{flex:0 0 80%;scroll-snap-align:start;border:1px solid var(--rule)}
}
@media(min-width:761px){.swipehint{display:none}}

/* v14 — advisors, consent banner, footer link-button */
.advgrid{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:22px;margin-top:28px}
.advc{display:flex;gap:16px;align-items:flex-start;padding:22px;border:1px solid var(--line,#E3DED3);border-radius:14px;background:var(--paper,#F7F7F4)}
.advc .avatar{flex:none;width:64px;height:64px;border-radius:50%;background:#1F3556;color:#F7F7F4;display:flex;align-items:center;justify-content:center;overflow:hidden}
.advc .avatar img{width:100%;height:100%;object-fit:cover;filter:grayscale(1)}
.advc .avatar .ini{font-family:'Newsreader',serif;font-size:22px;letter-spacing:.02em}
.advc b{display:block;font-size:17px;font-family:"Archivo",sans-serif;letter-spacing:0;text-transform:none}
.advc .r,.advc p{font-family:"Archivo",sans-serif;text-transform:none;letter-spacing:0}
.advc .r{display:block;font-size:13.5px;color:var(--ink3,#6C7480);margin:2px 0 8px}
.advc p{margin:0;font-size:14.5px;line-height:1.5}
.advc p a{white-space:nowrap}
.linkbtn{background:none;border:0;padding:0;color:inherit;font:inherit;text-decoration:underline;cursor:pointer}
.consent{position:fixed;left:16px;right:16px;bottom:16px;z-index:60;display:flex;justify-content:center}
.consent[hidden]{display:none}
.cbox{max-width:680px;width:100%;background:#0C1626;color:#F7F7F4;border:1px solid #3D5578;border-radius:14px;padding:18px 20px;box-shadow:0 18px 50px rgba(0,0,0,.35)}
.cbox b{font-family:'Newsreader',serif;font-size:19px;display:block;margin-bottom:6px}
.cbox p{margin:0 0 14px;font-size:14px;line-height:1.55;color:#C9D1DC}
.cbox p a{color:#F7F7F4}
.cbtns{display:flex;gap:10px;flex-wrap:wrap}
.cbtns .btn.ghost{color:#F7F7F4;border-color:#3D5578}
@media (max-width:760px){.consent{left:10px;right:10px;bottom:70px}}
