/* genCap — site styles
   One family (Hurme Geometric Sans 2), black / white / gray.
   Circles carry systems (globe, rings, shield). Rectangles carry documents. */

@font-face{font-family:"Hurme";src:url("../fonts/HurmeGeometricSans2-Thin.woff2") format("woff2");font-weight:200;font-style:normal;font-display:swap}
@font-face{font-family:"Hurme";src:url("../fonts/HurmeGeometricSans2-Light.woff2") format("woff2");font-weight:300;font-style:normal;font-display:swap}
@font-face{font-family:"Hurme";src:url("../fonts/HurmeGeometricSans2-Regular.woff2") format("woff2");font-weight:400;font-style:normal;font-display:swap}
@font-face{font-family:"Hurme";src:url("../fonts/HurmeGeometricSans2-SemiBold.woff2") format("woff2");font-weight:600;font-style:normal;font-display:swap}

:root{
  --ink:#000;
  --paper:#fff;
  --wash:#f3f3f3;
  --rule:#d9d9d9;
  --soft:#a3a3a3;
  --mute:#6b6b6b;
  --coal:#1f1f1f;
  --gut:clamp(20px,4.4vw,64px);
  --max:1360px;
  --hd:68px;
  --ease:cubic-bezier(.2,.7,.1,1);
}

*,*::before,*::after{box-sizing:border-box}
html{-webkit-text-size-adjust:100%;scroll-behavior:smooth}
body{margin:0;background:var(--paper);color:var(--ink);font-family:"Hurme","Century Gothic","Avenir Next",system-ui,sans-serif;font-weight:400;font-size:17px;line-height:1.56;-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility;overflow-x:hidden}
img,svg,canvas{display:block;max-width:100%}
a{color:inherit;text-decoration:none}
button,input,select,textarea{font:inherit;color:inherit}
button{background:none;border:0;padding:0;cursor:pointer}
h1,h2,h3,h4,p,ul,ol,figure,dl,dd{margin:0}
ul,ol{padding:0;list-style:none}
:focus-visible{outline:2px solid currentColor;outline-offset:3px}
::selection{background:#000;color:#fff}
.dark ::selection{background:#fff;color:#000}

.wrap{width:100%;max-width:var(--max);margin-inline:auto;padding-inline:var(--gut)}
.sr{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}

/* ---------- type ---------- */
.d1{font-weight:200;font-size:clamp(46px,8.2vw,128px);line-height:.98;letter-spacing:-.025em}
.d2{font-weight:300;font-size:clamp(36px,5.4vw,84px);line-height:1.04;letter-spacing:-.02em}
.h2{font-weight:300;font-size:clamp(30px,3.7vw,54px);line-height:1.1;letter-spacing:-.015em}
.h3{font-weight:400;font-size:clamp(21px,1.7vw,26px);line-height:1.25;letter-spacing:-.005em}
.lead{font-weight:300;font-size:clamp(20px,1.75vw,26px);line-height:1.42}
.note{font-size:14.5px;line-height:1.5;color:var(--mute)}
.dark .note{color:var(--soft)}
.mx{max-width:62ch}
.mx-s{max-width:46ch}
strong,b{font-weight:600}
.tn{font-feature-settings:"tnum" 1,"lnum" 1}

/* ---------- wordmark ---------- */
.lam{display:inline-block;width:.672em;height:.716em;fill:currentColor;vertical-align:baseline}
.mark{font-weight:300;letter-spacing:.01em;white-space:nowrap}

/* ---------- sections ---------- */
.sec{padding-block:clamp(76px,10.5vw,168px)}
.sec--tight{padding-block:clamp(56px,7vw,104px)}
.dark{background:var(--ink);color:var(--paper)}
.washed{background:var(--wash)}
.split{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));column-gap:clamp(16px,2.2vw,32px);row-gap:40px}
.c-5{grid-column-end:span 5}.c-6{grid-column-end:span 6}.c-7{grid-column-end:span 7}.c-4{grid-column-end:span 4}.c-8{grid-column-end:span 8}.c-3{grid-column-end:span 3}
.s-7{grid-column-start:7}.s-6{grid-column-start:6}.s-8{grid-column-start:8}
@media (max-width:900px){.split>*{grid-column:1/-1}}
.stack>*+*{margin-top:1.1em}
.stack-l>*+*{margin-top:1.8em}

/* ---------- header ---------- */
.hd{position:fixed;inset:0 0 auto 0;height:var(--hd);z-index:60;display:flex;align-items:center;gap:28px;padding-inline:var(--gut);background:var(--paper);color:var(--ink);border-bottom:1px solid var(--rule);transition:background-color .35s,color .35s,border-color .35s}
.hd.is-dark{background:var(--ink);color:var(--paper);border-bottom-color:#2a2a2a}
.hd.is-clear{background:transparent;border-bottom-color:transparent}
.hd__logo{font-size:25px;line-height:1;padding-block:8px}
.hd__nav{display:flex;gap:clamp(14px,1.7vw,28px);margin-left:auto;font-size:14.5px}
.hd__nav a{position:relative;padding-block:8px;white-space:nowrap}
.hd__nav a::after{content:"";position:absolute;left:0;right:0;bottom:2px;height:1px;background:currentColor;transform:scaleX(0);transform-origin:left;transition:transform .3s var(--ease)}
.hd__nav a:hover::after,.hd__nav a[aria-current="page"]::after{transform:scaleX(1)}
.hd__act{display:flex;align-items:center;gap:10px;font-size:14.5px}
.pill{display:inline-flex;align-items:center;justify-content:center;gap:.5em;height:36px;padding-inline:17px;border:1px solid currentColor;border-radius:999px;white-space:nowrap;transition:background-color .2s,color .2s}
.pill--fill{background:var(--ink);color:var(--paper);border-color:var(--ink)}
.pill--fill:hover{background:var(--paper);color:var(--ink)}
.dark .pill--fill,.hd.is-dark .pill--fill{background:var(--paper);color:var(--ink);border-color:var(--paper)}
.dark .pill--fill:hover,.hd.is-dark .pill--fill:hover{background:var(--ink);color:var(--paper)}
.pill--line:hover{background:var(--ink);color:var(--paper);border-color:var(--ink)}
.dark .pill--line:hover,.hd.is-dark .pill--line:hover{background:var(--paper);color:var(--ink);border-color:var(--paper)}
.pill--lg{height:50px;padding-inline:26px;font-size:16.5px}
.hd__menu{display:none}
@media (max-width:1180px){
  .hd__nav,.hd__brief{display:none}
  .hd__act{margin-left:auto}
  .hd__menu{display:inline-flex}
}

/* mobile menu */
.mnav{position:fixed;inset:0;z-index:55;background:var(--ink);color:var(--paper);padding:calc(var(--hd) + 28px) var(--gut) 40px;display:flex;flex-direction:column;visibility:hidden;opacity:0;transition:opacity .3s,visibility .3s;overflow:auto}
.mnav.is-open{visibility:visible;opacity:1}
.mnav a{display:block;font-weight:300;font-size:clamp(28px,7.4vw,40px);line-height:1.2;padding-block:9px;border-bottom:1px solid #2a2a2a}
.mnav .pill--fill{background:var(--paper);color:var(--ink);border-color:var(--paper)}
.mnav .pill{margin-top:28px;align-self:flex-start;font-size:16px;border-bottom:1px solid currentColor;display:inline-flex;padding-block:0}

/* ---------- login dialog ---------- */
.dlg{position:fixed;inset:0;z-index:80;display:grid;place-items:center;padding:20px;background:rgba(0,0,0,.72);visibility:hidden;opacity:0;transition:opacity .25s,visibility .25s}
.dlg.is-open{visibility:visible;opacity:1}
.dlg__box{width:min(440px,100%);background:var(--paper);color:var(--ink);padding:36px 34px 30px;transform:translateY(10px);transition:transform .3s var(--ease)}
.dlg.is-open .dlg__box{transform:none}
.dlg__top{display:flex;justify-content:space-between;align-items:baseline;margin-bottom:6px}
.dlg__x{font-size:14.5px;color:var(--mute)}
.dlg__x:hover{color:var(--ink)}
.fld{display:block;margin-top:20px}
.fld>span{display:block;font-size:14px;color:var(--mute);margin-bottom:6px}
.fld input,.fld select,.fld textarea{width:100%;border:0;border-bottom:1px solid var(--ink);background:transparent;padding:9px 0 10px;font-size:17px;border-radius:0;outline-offset:6px}
.fld input:focus-visible,.fld select:focus-visible{outline:none;box-shadow:0 1px 0 var(--ink)}
.fld textarea{min-height:92px;resize:vertical;border:1px solid var(--ink);padding:12px}
.fld input::placeholder,.fld textarea::placeholder{color:var(--soft)}
.dlg__msg{min-height:1.5em;margin-top:16px;font-size:14.5px}
.dlg__row{display:flex;justify-content:space-between;align-items:center;margin-top:18px;gap:16px}

/* ---------- footer ---------- */
.ft{background:var(--ink);color:var(--paper);padding-block:clamp(56px,7vw,96px) 34px}
.ft__top{display:grid;grid-template-columns:1.4fr 1fr 1fr 1fr;gap:36px 28px}
.ft__mark{font-size:clamp(40px,5.4vw,78px);line-height:1;font-weight:200}
.ft h4{font-weight:400;font-size:14.5px;color:var(--soft);margin-bottom:12px}
.ft li{margin-bottom:7px;font-size:15.5px}
.ft li a:hover{text-decoration:underline;text-underline-offset:4px}
.ft__legal{margin-top:clamp(48px,6vw,88px);padding-top:22px;border-top:1px solid #2a2a2a;display:flex;flex-wrap:wrap;gap:10px 40px;justify-content:space-between;font-size:13.5px;line-height:1.5;color:var(--soft)}
.ft__legal p{max-width:78ch}
@media (max-width:820px){.ft__top{grid-template-columns:1fr 1fr}.ft__top>:first-child{grid-column:1/-1}}

/* ---------- redaction reveal (the one scroll reveal) ---------- */
.rd{position:relative;display:inline;background-image:linear-gradient(currentColor,currentColor);background-repeat:no-repeat;background-size:100% 100%;background-position:100% 0;-webkit-box-decoration-break:clone;box-decoration-break:clone;transition:none}
.rd.is-in{background-size:0% 100%;transition:background-size 4.6s cubic-bezier(.45,0,.2,1) 1.2s}
.no-js .rd{background-size:0 100%}

/* ---------- page head (inner pages) ---------- */
.ph{padding-top:calc(var(--hd) + clamp(64px,9vw,150px));padding-bottom:clamp(56px,7vw,110px)}
.ph__kicker{font-size:15px;color:var(--mute);margin-bottom:26px}
.dark .ph__kicker{color:var(--soft)}
.ph .lead{margin-top:clamp(26px,3vw,44px)}

/* ---------- generic rows ---------- */
.rows{border-top:1px solid currentColor}
.rows>li,.rows>div{display:grid;grid-template-columns:minmax(0,5fr) minmax(0,7fr);gap:8px 32px;padding-block:22px;border-bottom:1px solid var(--rule)}
.dark .rows>li,.dark .rows>div{border-bottom-color:#2e2e2e}
.rows h3{font-weight:400;font-size:19px;line-height:1.3}
.rows p{color:var(--mute)}
.dark .rows p{color:var(--soft)}
@media (max-width:700px){.rows>li,.rows>div{grid-template-columns:1fr}}

.trio{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:clamp(28px,3.4vw,56px)}
.trio>*{border-top:1px solid currentColor;padding-top:20px}
.trio h3{margin-bottom:12px}
.trio p{color:var(--mute)}
.dark .trio p{color:var(--soft)}
@media (max-width:860px){.trio{grid-template-columns:1fr}}

.go{display:inline-flex;align-items:baseline;gap:.5em;border-bottom:1px solid currentColor;padding-bottom:3px;font-size:16.5px;transition:gap .25s var(--ease)}
.go:hover{gap:.9em}
.go i{font-style:normal;display:inline-block;width:.62em;height:.62em;border-top:1px solid currentColor;border-right:1px solid currentColor;transform:rotate(45deg) translateY(-1px)}

/* ---------- next-page band ---------- */
.nx{display:block;border-top:1px solid var(--rule);padding-block:clamp(44px,5vw,76px)}
.nx__in{display:flex;justify-content:space-between;align-items:flex-end;gap:24px}
.nx small{display:block;font-size:14.5px;color:var(--mute);margin-bottom:10px}
.nx__t{font-weight:300;font-size:clamp(30px,4.6vw,68px);line-height:1.05;letter-spacing:-.02em}
.nx__a{flex:none;width:clamp(44px,5vw,72px);height:clamp(44px,5vw,72px);border:1px solid currentColor;border-radius:50%;display:grid;place-items:center;transition:background-color .25s,color .25s}
.nx__a::before{content:"";width:28%;height:28%;border-top:1px solid currentColor;border-right:1px solid currentColor;transform:translateX(-18%) rotate(45deg)}
.nx:hover .nx__a{background:var(--ink);color:var(--paper)}

/* ================= HOME ================= */
.hero{position:relative;min-height:100svh;display:flex;align-items:flex-end;padding-top:calc(var(--hd) + 40px);padding-bottom:clamp(40px,6vw,84px);overflow:hidden}
.hero__globe{position:absolute;right:-16vw;top:50%;width:min(96vh,78vw);aspect-ratio:1;transform:translateY(-46%)}
.hero__globe canvas{width:100%;height:100%}
.hero__in{position:relative;width:100%}
.hero h1{max-width:7.6em}
.hero__sub{margin-top:clamp(24px,3vw,40px);max-width:36ch;color:#d6d6d6}
.hero__ai{display:inline-flex;align-items:center;gap:14px;margin-top:clamp(22px,2.6vw,34px);padding:13px 20px;border:1px solid #6b6b6b;border-radius:999px;font-size:15px;color:#cfcfcf;transition:border-color .2s,color .2s}
.hero__ai:hover{border-color:#fff;color:#fff}
.hero__ai .xtl{height:13px;color:#fff}
.hero__cue{margin-top:clamp(32px,4.4vw,64px);display:flex;align-items:center;gap:14px;font-size:14.5px;color:var(--soft)}
.hero__cue i{display:block;width:1px;height:44px;background:linear-gradient(#fff,#fff) no-repeat 0 0/100% 40%;background-color:#3a3a3a;animation:cue 2.4s var(--ease) infinite}
@keyframes cue{0%{background-position:0 -20px}100%{background-position:0 44px}}
@media (max-width:900px){.hero__globe{right:-42vw;top:30%;width:128vw;opacity:.7}}

/* vision → mandate */
.vz{position:relative;height:620vh;background:var(--wash)}
.vz__pin{position:sticky;top:0;height:100vh;height:100svh;padding-top:calc(var(--hd) + 14px);padding-bottom:18px;display:flex;flex-direction:column;overflow:hidden}
.vz__bar{display:flex;flex-wrap:wrap;align-items:center;gap:8px 18px;justify-content:space-between;padding-bottom:12px;border-bottom:1px solid var(--rule)}
.vz__regions{display:flex;flex-wrap:wrap;align-items:center;gap:6px}
.vz__regions>span{font-size:14px;color:var(--mute);margin-right:6px}
.chip{height:30px;padding-inline:13px;border:1px solid #bdbdbd;border-radius:999px;font-size:14px;transition:background-color .2s,color .2s,border-color .2s;white-space:nowrap}
.chip:hover{border-color:var(--ink)}
.chip[aria-pressed="true"]{background:var(--ink);color:var(--paper);border-color:var(--ink)}
.vz__steps{display:flex;gap:16px;font-size:14px;color:var(--soft)}
.vz__steps li{position:relative;padding-left:14px;transition:color .3s}
.vz__steps li::before{content:"";position:absolute;left:0;top:.52em;width:7px;height:7px;border-radius:50%;border:1px solid currentColor;transition:background-color .3s}
.vz__steps li.is-on{color:var(--ink)}
.vz__steps li.is-on::before{background:var(--ink)}
.vz__grid{position:relative;flex:1;min-height:0;display:grid;grid-template-columns:minmax(0,5fr) minmax(0,7fr);gap:clamp(24px,4vw,72px);padding-top:clamp(14px,2.4vh,30px)}
.lg{display:flex;flex-direction:column;min-height:0}
.lg__head{position:relative;min-height:clamp(150px,24vh,220px)}
.lg__pane{position:absolute;inset:auto 0 0 0;opacity:0;transform:translateY(8px);transition:opacity .4s,transform .5s var(--ease);pointer-events:none}
.lg__pane.is-on{opacity:1;transform:none;pointer-events:auto}
.lg__pane h2{font-weight:300;font-size:clamp(25px,2.7vw,40px);line-height:1.1;letter-spacing:-.015em}
.lg__pane p{margin-top:12px;color:var(--mute);max-width:40ch;font-size:16px}
.lg{justify-content:center;padding-bottom:clamp(40px,12vh,130px)}
.lg__head{margin-top:0}
.goals{margin-top:clamp(18px,3vh,34px);border-top:1px solid var(--ink)}
.goal{display:grid;grid-template-columns:30px minmax(0,1fr);align-items:start;padding-block:clamp(7px,1.25vh,13px);border-bottom:1px solid var(--rule);min-height:clamp(62px,10.2vh,88px)}
.goal__n{font-size:14px;color:var(--soft);padding-top:2px;transition:color .3s}
.goal.is-set .goal__n{color:var(--ink)}
.goal__src{display:block;font-size:14px;line-height:1.3;color:var(--mute);height:1.3em;white-space:nowrap}
.goal__src span{visibility:hidden}
.goal.is-landed .goal__src span{visibility:visible}
.goal__name{display:block;font-size:clamp(17px,1.45vw,21px);line-height:1.25;margin-top:2px;clip-path:inset(0 100% 0 0);transition:clip-path .6s var(--ease)}
.goal.is-set .goal__name{clip-path:inset(0 0 0 0)}
.goal__ms{display:flex;gap:6px;margin-top:7px;opacity:0;transition:opacity .4s}
.vz.s-ms .goal__ms{opacity:1}
.goal__ms i{position:relative;flex:1;max-width:120px;height:3px;background:#cfcfcf;font-style:normal}
.goal__ms i::after{content:"";position:absolute;inset:0;background:var(--ink);transform:scaleX(var(--f,0));transform-origin:left}
.ms__key{display:flex;gap:6px;margin:0 0 0 30px;padding-top:8px;font-size:13px;color:var(--mute);opacity:0;transition:opacity .4s}
.ms__key span{flex:1;max-width:120px}
.vz.s-ms .ms__key{opacity:1}

.sb{position:relative;min-height:0}
.sb>*{position:absolute;inset:0}
.doc{background:var(--paper);box-shadow:0 1px 0 #cfcfcf,0 30px 60px -30px rgba(0,0,0,.28);padding:clamp(22px,3vw,48px) clamp(22px,3.4vw,56px);overflow:hidden;transform-origin:50% 0;will-change:transform,opacity}
.doc__meta{display:flex;justify-content:space-between;font-size:12.5px;color:var(--mute);padding-bottom:12px;border-bottom:1px solid var(--ink)}
.doc__title{font-weight:200;font-size:clamp(40px,5.6vw,86px);line-height:1;letter-spacing:-.03em;margin-top:clamp(14px,2.4vh,30px)}
.doc__sub{margin-top:8px;font-size:15px;color:var(--mute)}
.doc__sub{white-space:nowrap}
.cty{color:var(--ink);font-weight:600;font-feature-settings:"tnum" 1}
.doc__body{margin-top:clamp(14px,2.6vh,30px);columns:2;column-gap:clamp(20px,2.6vw,40px);font-size:clamp(12.5px,1.02vw,14.5px);line-height:1.62;color:#3d3d3d}
.doc__body h4{font-weight:600;font-size:inherit;color:var(--ink);margin-bottom:3px;break-after:avoid}
.doc__body p{margin-bottom:1em;break-inside:avoid}
.ph-x{white-space:nowrap;border-radius:1px;padding:.08em .22em;margin:-.08em -.22em;transition:background-color .3s,color .3s}
.ph-x.is-hl{background:var(--ink);color:var(--paper)}
.ph-x.is-out{background:repeating-linear-gradient(135deg,#e2e2e2 0 3px,transparent 3px 6px);color:transparent}
.doc__fade{position:absolute;left:0;right:0;bottom:0;height:70px;background:linear-gradient(transparent,var(--paper));pointer-events:none}
.fly{position:absolute;left:0;top:0;z-index:5;white-space:nowrap;line-height:1.3;padding:.08em .22em;margin:-.08em -.22em;background:var(--ink);color:var(--paper);pointer-events:none;visibility:hidden;will-change:transform}

.st{opacity:0;pointer-events:none;display:flex;flex-direction:column;justify-content:flex-end}
.st__cap{font-size:14px;color:var(--mute);padding-bottom:10px;max-width:44ch}
.st__list{border-top:1px solid var(--ink)}
.st__list li{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:10px;padding-left:18px;align-items:baseline;padding-block:clamp(7px,1.25vh,13px);border-bottom:1px solid var(--rule);min-height:clamp(62px,10.2vh,88px);opacity:.28;transition:opacity .4s}
.st__list li.is-on{opacity:1}
.st__list b{font-weight:400;font-size:clamp(17px,1.45vw,21px);line-height:1.25;display:block}
.st__list span{display:block;font-size:14px;color:var(--mute);margin-top:3px}
.st__list em{font-style:normal;font-size:13px;color:var(--mute);white-space:nowrap}
.vz__wires{position:absolute;inset:0;width:100%;height:100%;pointer-events:none;overflow:visible}
.vz__wires path{fill:none;stroke:var(--ink);stroke-width:1;vector-effect:non-scaling-stroke}

.rt{opacity:0;pointer-events:none;display:flex;flex-direction:column;justify-content:flex-end;gap:clamp(12px,2.2vh,24px)}
.rt__chart{flex:1;min-height:120px;position:relative}
.rt__chart svg{position:absolute;inset:0;width:100%;height:100%;overflow:visible}
.rt__chart text{font-size:13px;fill:var(--mute)}
.rt__chart .lbl{fill:var(--ink);font-size:14px}
.rt__chart .lbl-w{fill:var(--paper);font-size:14px}
.rt__cols{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:clamp(14px,2vw,30px);border-top:1px solid var(--ink);padding-top:12px}
.rt__cols h3{font-weight:400;font-size:clamp(17px,1.45vw,21px);margin-bottom:5px}
.rt__cols p{font-size:14.5px;line-height:1.45;color:var(--mute)}

@media (max-width:900px){
  .vz{height:560vh}
  .vz__steps{display:none}
  .vz__regions>span{display:none}
  .chip{height:28px;padding-inline:10px;font-size:13px}
  .vz__grid{grid-template-columns:1fr;grid-template-rows:auto minmax(0,1fr);gap:10px;padding-top:10px}
  .lg__head{min-height:74px}
  .lg__pane h2{font-size:21px}
  .lg__pane p{display:none}
  .goals{margin-top:6px}
  .goal{min-height:50px;padding-block:5px;grid-template-columns:22px minmax(0,1fr)}
  .goal__src{font-size:12.5px}
  .goal__name{font-size:15.5px;margin-top:0}
  .goal__ms{margin-top:4px}
  .ms__key{margin-left:22px;font-size:12px;padding-top:4px}
  .doc{padding:16px 18px}
  .doc__title{font-size:38px;margin-top:10px}
  .doc__sub{font-size:13px}
  .doc__body{columns:1;font-size:12.5px;line-height:1.5;margin-top:10px}
  .vz__wires{display:none}
  .st__list li{min-height:0;padding-block:6px}
  .st__list b{font-size:15.5px}
  .st__list span{display:none}
  .st__cap{font-size:13px;padding-bottom:6px}
  .rt__cols{grid-template-columns:1fr;gap:6px;padding-top:8px}
  .rt__cols h3{font-size:15.5px;margin-bottom:0}
  .rt__cols p{font-size:13px}
  .rt__chart{min-height:90px}
  .rt__chart text{display:none}
}
@media (max-height:780px) and (min-width:901px){
  .lg{justify-content:flex-start;padding-bottom:0}
  .lg__head{min-height:clamp(96px,17vh,132px)}
  .lg__pane p{display:none}
}
@media (max-height:640px) and (min-width:901px){
  .lg__pane p{display:none}
  .lg__head{min-height:96px}
}

/* statement band */
.say{padding-block:clamp(96px,15vw,240px)}
.say p{font-weight:200;font-size:clamp(34px,6vw,96px);line-height:1.04;letter-spacing:-.025em;max-width:13em}
.say p+p{margin-top:.5em}
.say .go{margin-top:clamp(36px,4vw,60px)}

/* home: terminal teaser */
.tw{border:1px solid #3a3a3a;border-radius:10px;background:#0c0c0c;overflow:hidden;font-size:15px;line-height:1.6}
.tw__bar{display:flex;align-items:center;gap:7px;padding:11px 14px;border-bottom:1px solid #2a2a2a;color:var(--soft);font-size:13px}
.tw__bar i{width:9px;height:9px;border-radius:50%;border:1px solid #5a5a5a}
.tw__bar span{margin-left:auto}
.tw__body{padding:18px 18px 22px;min-height:292px;font-weight:300}
.tw__q{color:#fff}
.tw__q::before{content:"›";margin-right:.6em;color:var(--soft)}
.tw__caret{display:inline-block;width:.55em;height:1.05em;background:#fff;vertical-align:-.18em;margin-left:2px;animation:blink 1s steps(1) infinite}
@keyframes blink{50%{opacity:0}}
.tw__out{margin-top:12px;color:#cfcfcf}
.tw__out div{display:grid;grid-template-columns:minmax(0,1fr) 92px 56px;gap:10px;align-items:center;padding-block:5px;border-bottom:1px solid #222;opacity:0;transform:translateY(4px);transition:opacity .35s,transform .35s}
.tw__out div.is-in{opacity:1;transform:none}
.tw__out .bar{height:3px;background:#2e2e2e;position:relative}
.tw__out .bar::after{content:"";position:absolute;inset:0;background:#fff;transform-origin:left;transform:scaleX(var(--v,0));transition:transform .9s var(--ease) .1s}
.tw__out em{font-style:normal;color:var(--soft);text-align:right;font-size:13.5px}
.tw__out p{margin-top:12px;font-size:13.5px;color:var(--soft);opacity:0;transition:opacity .4s}
.tw__out p.is-in{opacity:1}

/* home: index of the house */
.idx{border-top:1px solid var(--ink)}
.idx a{display:grid;grid-template-columns:minmax(0,4fr) minmax(0,7fr) 40px;gap:10px 28px;align-items:baseline;padding-block:clamp(18px,2.2vw,30px);border-bottom:1px solid var(--rule);transition:padding-left .35s var(--ease)}
.idx a:hover{padding-left:14px}
.idx b{font-weight:300;font-size:clamp(24px,2.8vw,40px);line-height:1.1;letter-spacing:-.015em}
.idx span{color:var(--mute)}
.idx i{justify-self:end;width:11px;height:11px;border-top:1px solid currentColor;border-right:1px solid currentColor;transform:rotate(45deg)}
@media (max-width:760px){.idx a{grid-template-columns:1fr 24px}.idx span{grid-column:1;grid-row:2}}

/* ================= APPROACH ================= */
.sh{position:relative}
.sh__pin{min-height:92svh;padding-block:clamp(76px,10vw,150px);display:grid;grid-template-columns:minmax(0,5fr) minmax(0,7fr);align-items:center;gap:clamp(24px,4vw,72px)}
.sh__fig{position:relative;aspect-ratio:1;max-height:76vh;justify-self:center;width:100%;max-width:640px}
.sh__fig svg{width:100%;height:100%;overflow:visible}
.sh__fig circle{fill:none;stroke:#fff;stroke-width:1;vector-effect:non-scaling-stroke}
.sh__fig text{fill:#fff;font-size:15px;text-anchor:middle;paint-order:stroke;stroke:#000;stroke-width:7px;stroke-linejoin:round}
.sh__fig text.core{stroke:none}
.sh__fig .core{font-size:22px;font-weight:300;opacity:0}
.sh__fig .lens{fill:#fff;opacity:0}
@media (max-width:900px){.sh__fig text{font-size:23px}.sh__fig .core{font-size:30px}.sh__pin{grid-template-columns:1fr;align-content:center;gap:18px}.sh__fig{max-height:46vh;max-width:46vh}}

.forces{columns:2;column-gap:clamp(28px,4vw,72px)}
.forces li{break-inside:avoid;padding-block:14px;border-top:1px solid var(--rule)}
.forces b{display:block;font-weight:400}
.forces span{color:var(--mute);font-size:15.5px}
@media (max-width:700px){.forces{columns:1}}

/* configurator */
.cf{position:relative;display:grid;grid-template-columns:minmax(0,3fr) minmax(0,1.3fr) minmax(0,3.2fr) minmax(0,1.3fr) minmax(0,3fr);align-items:stretch}
.cf__col h3{font-size:14.5px;font-weight:400;color:var(--mute);padding-bottom:12px;border-bottom:1px solid var(--ink)}
.cf__col li{border-bottom:1px solid var(--rule)}
.cf__col button{display:flex;width:100%;text-align:left;align-items:center;gap:12px;min-height:56px;padding-block:8px;font-size:clamp(16px,1.3vw,19px);line-height:1.25;transition:padding-left .3s var(--ease)}
.cf__col button::before{content:"";flex:none;width:11px;height:11px;border-radius:50%;border:1px solid currentColor;transition:background-color .2s}
.cf__col button:hover{padding-left:6px}
.cf__col button[aria-pressed="true"]::before{background:var(--ink)}
.cf__item{display:flex;align-items:center;min-height:56px;padding-block:8px;font-size:clamp(16px,1.3vw,19px);line-height:1.25;color:#b5b5b5;transition:color .35s}
.cf__item.is-on{color:var(--ink)}
.cf__gap{position:relative}
.cf svg{position:absolute;inset:0;width:100%;height:100%;pointer-events:none;overflow:visible}
.cf path{fill:none;stroke:var(--ink);stroke-width:1;vector-effect:non-scaling-stroke}
.cf__say{margin-top:26px;min-height:3.2em;max-width:60ch;color:var(--mute)}
@media (max-width:900px){
  .cf{grid-template-columns:1fr;gap:26px}
  .cf__gap,.cf svg{display:none}
  .cf__col:first-child ul{display:flex;flex-wrap:wrap;gap:7px;padding-top:12px}
  .cf__col:first-child li{border:0}
  .cf__col:first-child button{min-height:36px;padding:0 13px;border:1px solid #bdbdbd;border-radius:999px;font-size:15px}
  .cf__col:first-child button::before{display:none}
  .cf__col:first-child button[aria-pressed="true"]{background:var(--ink);color:var(--paper);border-color:var(--ink)}
  .cf__item{min-height:42px}
  .cf__item:not(.is-on){display:none}
}

/* comparison */
.cmp{width:100%;border-collapse:collapse;font-size:16px}
.cmp th,.cmp td{padding:15px 10px;border-bottom:1px solid #2e2e2e;text-align:center;font-weight:400}
.cmp thead th{font-size:14px;color:var(--soft);vertical-align:bottom;border-bottom-color:#fff;line-height:1.25}
.cmp thead th:nth-child(2){color:#fff;font-size:19px;font-weight:300}
.cmp tbody th{text-align:left;padding-left:0;font-size:clamp(16px,1.35vw,19px)}
.cmp td:nth-child(2){background:#141414}
.mk{display:inline-block;width:13px;height:13px;border-radius:50%;border:1px solid #fff;vertical-align:-1px}
.mk--y{background:#fff}
.mk--h{background:linear-gradient(90deg,#fff 50%,transparent 50%)}
.mk--n{border-color:#555}
.cmp__key{display:flex;flex-wrap:wrap;gap:8px 26px;margin-top:20px;font-size:14px;color:var(--soft)}
.cmp__key .mk{margin-right:8px}
.cmp-wrap{position:relative;overflow-x:auto;-webkit-overflow-scrolling:touch}
@media (max-width:760px){.cmp{min-width:680px}}

/* ================= CRITICAL ASSETS ================= */
.rg{display:grid;grid-template-columns:minmax(0,6fr) minmax(0,6fr);gap:clamp(24px,4vw,72px);align-items:center}
.rg__fig{position:relative;max-width:620px;width:100%;justify-self:center}
.rg__fig svg{width:100%;height:auto;overflow:visible}
.rg__ring{fill:transparent;stroke:#fff;stroke-width:1;vector-effect:non-scaling-stroke;cursor:pointer;transition:fill .3s,stroke-width .3s}
.rg__ring:hover{fill:rgba(255,255,255,.07)}
.rg__ring.is-on{fill:rgba(255,255,255,.14);stroke-width:2}
.rg__lens{fill:transparent;cursor:pointer;transition:fill .3s}
.rg__lens:hover{fill:rgba(255,255,255,.2)}
.rg__lens.is-on{fill:#fff}
.rg__fig text{fill:#fff;font-size:15px;text-anchor:middle;pointer-events:none}
.rg__fig .dot{fill:#fff;pointer-events:none}
.rg__panel{min-height:430px}
.rg__panel h3{font-weight:300;font-size:clamp(28px,3vw,44px);line-height:1.08;letter-spacing:-.015em}
.rg__panel .eg{margin-top:16px;color:var(--soft)}
.rg__panel .why{margin-top:22px;padding-top:18px;border-top:1px solid #333}
.rg__panel .why b{display:block;font-weight:400;font-size:14.5px;color:var(--soft);margin-bottom:6px}
.rg__anim{margin-top:22px;height:110px;border:1px solid #2e2e2e}
.rg__anim svg{width:100%;height:100%}
.rg__anim *{vector-effect:non-scaling-stroke}
.rg__tabs{display:flex;flex-wrap:wrap;gap:7px;margin-bottom:26px}
.dark .chip{border-color:#4a4a4a}
.dark .chip:hover{border-color:#fff}
.dark .chip[aria-pressed="true"]{background:#fff;color:#000;border-color:#fff}
@media (max-width:900px){.rg__fig text{font-size:22px}.rg{grid-template-columns:1fr}.rg__fig{max-width:420px}.rg__panel{min-height:0}}

.tests{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));column-gap:clamp(28px,4vw,72px);border-top:1px solid var(--ink)}
.tests li{display:grid;grid-template-columns:minmax(0,4fr) minmax(0,7fr);gap:6px 20px;padding-block:17px;border-bottom:1px solid var(--rule)}
.tests b{font-weight:400}
.tests span{color:var(--mute);font-size:15.5px}
@media (max-width:860px){.tests{grid-template-columns:1fr}}
@media (max-width:520px){.tests li{grid-template-columns:1fr}}

.sect{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));border-top:1px solid var(--ink);border-left:1px solid var(--rule)}
.sect li{padding:22px 20px 30px;border-right:1px solid var(--rule);border-bottom:1px solid var(--rule)}
.sect b{display:block;font-weight:400;font-size:19px;line-height:1.25;margin-bottom:8px}
.sect span{color:var(--mute);font-size:15px;line-height:1.5;display:block}
@media (max-width:1000px){.sect{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media (max-width:520px){.sect{grid-template-columns:1fr}}

/* ================= TACTICS ================= */
.tl{border-top:1px solid #fff;padding-top:26px}
.tl__now{display:flex;align-items:baseline;justify-content:space-between;gap:20px;flex-wrap:wrap}
.tl__t{font-weight:200;font-size:clamp(44px,7vw,104px);line-height:1;letter-spacing:-.03em}
.tl__range{width:100%;margin:26px 0 8px;-webkit-appearance:none;appearance:none;background:transparent;height:34px;cursor:ew-resize}
.tl__range::-webkit-slider-runnable-track{height:1px;background:#fff}
.tl__range::-moz-range-track{height:1px;background:#fff}
.tl__range::-webkit-slider-thumb{-webkit-appearance:none;width:30px;height:30px;border-radius:50%;background:#fff;border:0;margin-top:-15px}
.tl__range::-moz-range-thumb{width:30px;height:30px;border-radius:50%;background:#fff;border:0}
.tl__scale{display:flex;justify-content:space-between;font-size:13.5px;color:var(--soft)}
.tl__two{display:grid;grid-template-columns:minmax(0,7fr) minmax(0,4fr);gap:clamp(24px,4vw,72px);margin-top:44px}
.tl__two h3{font-size:14.5px;font-weight:400;color:var(--soft);padding-bottom:12px;border-bottom:1px solid #444}
.tl__verdict{font-size:16.5px;line-height:1.4;margin-top:14px;min-height:2.8em}
.tl__two>div:last-child h3{border-bottom-color:#2e2e2e;color:#7d7d7d}
.tl__two>div:first-child h3{color:#fff;border-bottom-color:#fff}
.tl__list li{display:flex;gap:14px;align-items:baseline;font-weight:300;font-size:clamp(19px,1.9vw,27px);line-height:1.2;letter-spacing:-.01em;padding-block:15px;border-bottom:1px solid #2a2a2a;color:#5c5c5c;transition:color .3s}
.tl__list li::before{content:"";flex:none;width:11px;height:11px;border-radius:50%;border:1px solid currentColor;transform:translateY(1px);transition:background-color .3s}
.tl__list li.is-on{color:#fff}
.tl__list li.is-on::before{background:#fff}
.tl__list em{font-style:normal;margin-left:auto;font-size:13.5px;letter-spacing:0;white-space:nowrap}
@media (max-width:760px){.tl__two{grid-template-columns:1fr}}

.big3{counter-reset:none;border-top:1px solid var(--ink)}
.big3 li{display:grid;grid-template-columns:minmax(0,4fr) minmax(0,7fr);gap:8px 32px;padding-block:clamp(22px,2.6vw,38px);border-bottom:1px solid var(--rule);align-items:baseline}
.big3 b{font-weight:300;font-size:clamp(28px,3.4vw,50px);line-height:1.05;letter-spacing:-.02em}
.big3 span{color:var(--mute);max-width:52ch}
@media (max-width:700px){.big3 li{grid-template-columns:1fr}}

/* ================= TRANSPARENCY ================= */
.bd{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:clamp(14px,1.6vw,22px)}
.cd{position:relative;background:var(--paper);min-height:268px;padding:20px 20px 18px;display:flex;flex-direction:column;box-shadow:0 1px 0 #cfcfcf;transition:background-color .4s,color .4s}
.cd__kind{font-size:13.5px;color:var(--mute);display:flex;justify-content:space-between;gap:8px}
.cd__t{font-weight:300;font-size:clamp(20px,1.75vw,25px);line-height:1.2;letter-spacing:-.01em;margin-top:14px}
.cd__d{margin-top:10px;font-size:14.5px;line-height:1.5;color:var(--mute)}
.cd__sw{margin-top:auto;padding-top:16px;display:flex;gap:6px}
.cd__sw button{height:30px;padding-inline:12px;border:1px solid #bdbdbd;border-radius:999px;font-size:13.5px}
.cd__sw button[aria-pressed="true"]{background:var(--ink);color:var(--paper);border-color:var(--ink)}
.cd .bars{display:none;margin-top:14px}
.cd .bars i{display:block;height:13px;background:#fff;margin-bottom:8px;transform-origin:left;animation:bar 2.6s cubic-bezier(.45,0,.2,1) .5s both}
.cd .bars i:nth-child(2){width:86%;animation-delay:.85s}.cd .bars i:nth-child(3){width:64%;animation-delay:1.2s}.cd .bars i:nth-child(4){width:92%;animation-delay:1.55s}.cd .bars i:nth-child(5){width:40%;animation-delay:1.9s}
@keyframes bar{from{transform:scaleX(0)}}
.cd.is-sealed{background:var(--ink);color:var(--paper)}
.cd.is-sealed .cd__t,.cd.is-sealed .cd__d{display:none}
.cd.is-sealed .bars{display:block}
.cd.is-sealed .cd__kind{color:var(--soft)}
.cd.is-sealed .cd__sw button{border-color:#4a4a4a}
.cd.is-sealed .cd__sw button[aria-pressed="true"]{background:#fff;color:#000;border-color:#fff}
.cd.is-pub .cd__t{font-weight:400}
.cd.is-pub .cd__kind b{font-weight:400;color:var(--ink)}
.bd__sum{display:flex;flex-wrap:wrap;gap:8px 32px;justify-content:space-between;margin-top:22px;font-size:15px;color:var(--mute)}
@media (max-width:1000px){.bd{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media (max-width:620px){.bd{grid-template-columns:1fr}.cd{min-height:220px}}

/* ================= SOVEREIGN AI ================= */
.tm{border:1px solid #3a3a3a;border-radius:10px;background:#0c0c0c;overflow:hidden}
.tm__bar{display:flex;align-items:center;gap:7px;padding:12px 16px;border-bottom:1px solid #2a2a2a;font-size:13.5px;color:var(--soft)}
.tm__bar i{width:9px;height:9px;border-radius:50%;border:1px solid #5a5a5a}
.tm__bar b{font-weight:300;color:#fff;margin-left:10px;font-size:15px}
.tm__bar span{margin-left:auto}
.tm__main{display:grid;grid-template-columns:minmax(0,4fr) minmax(0,7fr);min-height:470px}
.tm__qs{border-right:1px solid #2a2a2a;padding:8px}
.tm__qs button{display:block;width:100%;text-align:left;padding:13px 14px;border-radius:6px;font-size:15.5px;line-height:1.35;color:var(--soft);transition:background-color .2s,color .2s}
.tm__qs button:hover{color:#fff}
.tm__qs button[aria-pressed="true"]{background:#1d1d1d;color:#fff}
.tm__qs small{display:block;font-size:12.5px;color:#777;margin-top:3px}
.tm__view{padding:20px 22px 24px;font-weight:300}
.tm__q{font-size:17px;color:#fff;min-height:1.6em}
.tm__q::before{content:"›";color:var(--soft);margin-right:.6em}
.tm__eng{font-size:13.5px;color:var(--soft);margin-top:6px}
.tm__res{margin-top:16px}
.tm__row{display:grid;grid-template-columns:minmax(0,1fr) minmax(60px,34%) 52px;gap:12px;align-items:center;padding-block:8px;border-bottom:1px solid #222;font-size:15px;color:#d4d4d4;opacity:0;transform:translateY(4px);transition:opacity .35s,transform .35s}
.tm__row.is-in{opacity:1;transform:none}
.tm__row .bar{height:3px;background:#2e2e2e;position:relative}
.tm__row .bar::after{content:"";position:absolute;inset:0;background:#fff;transform-origin:left;transform:scaleX(var(--v,0));transition:transform .9s var(--ease) .1s}
.tm__row em{font-style:normal;text-align:right;color:var(--soft);font-size:13.5px}
.tm__memo{margin-top:16px;font-size:15px;line-height:1.55;color:#d4d4d4;opacity:0;transition:opacity .5s}
.tm__memo.is-in{opacity:1}
.tm__foot{display:flex;flex-wrap:wrap;gap:6px 22px;padding:11px 16px;border-top:1px solid #2a2a2a;font-size:12.5px;color:#8a8a8a}
@media (max-width:820px){.tm__main{grid-template-columns:1fr}.tm__qs{border-right:0;border-bottom:1px solid #2a2a2a;display:flex;overflow-x:auto;gap:4px}.tm__qs button{flex:none;width:210px}.tm__view{min-height:420px}}

.ly{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:0;border:1px solid #333}
.ly>div{padding:24px 22px 28px;border-right:1px solid #333;position:relative}
.ly>div:last-child{border-right:0}
.ly h3{margin-bottom:12px}
.ly li{color:var(--soft);font-size:15.5px;padding-block:5px;border-top:1px solid #222}
.ly__base{grid-column:1/-1;border-top:1px solid #333;border-right:0!important;padding:13px 22px!important;font-size:14px;color:var(--soft)}
@media (max-width:760px){.ly{grid-template-columns:1fr}.ly>div{border-right:0;border-bottom:1px solid #333}}

/* ================= MANIFESTO ================= */
.mf{max-width:680px;margin-inline:auto}
.mf__ph{border:1px dashed #9a9a9a;padding:28px;color:var(--mute);font-size:15.5px}
.mf__lines i{display:block;height:11px;background:#e9e9e9;margin-bottom:15px}
.mf__lines i:nth-child(4n){width:72%;margin-bottom:34px}

/* ================= THE NUMBER (AI%Terminal, in this site's own terms) ================= */
.pn{border:1px solid #3a3a3a;border-radius:10px;background:#0c0c0c;padding:clamp(20px,2.6vw,36px)}
.pn__meta{display:flex;flex-wrap:wrap;gap:4px 22px;font-size:13.5px;color:var(--soft)}
.pn__q{font-weight:300;font-size:clamp(22px,2.3vw,32px);line-height:1.2;letter-spacing:-.01em;margin-top:14px;max-width:26em;min-height:2.4em}
.pn__row{display:flex;align-items:flex-end;gap:18px;flex-wrap:wrap;margin-top:clamp(14px,2vw,26px)}
.pn__n{font-weight:200;font-size:clamp(84px,12vw,176px);line-height:.86;letter-spacing:-.04em}
.pn__n small{font-size:.38em;letter-spacing:0;margin-left:.06em}
.pn__d{font-size:15px;color:var(--soft);padding-bottom:10px}
.pn__bar{position:relative;height:28px;margin-top:22px;border-bottom:1px solid #fff}
.pn__fill{position:absolute;left:0;bottom:0;height:9px;background:#fff;width:calc(var(--p,0)*1%)}
.pn__base{position:absolute;bottom:0;left:38%;height:22px;border-left:1px dashed #9a9a9a;padding-left:7px;font-size:12.5px;color:var(--soft);line-height:1;white-space:nowrap}
.pn__ends{display:flex;justify-content:space-between;font-size:12.5px;color:var(--soft);margin-top:6px}
.pn h3{font-weight:400;font-size:14.5px;color:var(--soft);margin:clamp(22px,2.6vw,34px) 0 4px}
.pn__mv button{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:16px;align-items:baseline;width:100%;text-align:left;padding:13px 0;border-bottom:1px solid #2a2a2a;font-size:clamp(15.5px,1.25vw,18px);line-height:1.3;color:#cfcfcf;transition:color .2s,padding-left .3s var(--ease)}
.pn__mv button:hover{color:#fff;padding-left:6px}
.pn__mv button[aria-pressed="true"]{color:#fff}
.pn__mv button[aria-pressed="true"] b{background:#fff;color:#000}
.pn__mv b{font-weight:400;padding:1px 9px;border:1px solid #6b6b6b;border-radius:999px;font-size:15px}
.pn__foot{margin-top:16px;font-size:13px;color:#8a8a8a}
.tw .pn{border:0;border-radius:0;padding:20px 18px 22px}
.tw .pn__n{font-size:clamp(72px,8vw,112px)}

.xtl{display:block;height:1em;width:auto}
.xtl path{fill:currentColor}
.xth{font-size:clamp(26px,3.2vw,44px);line-height:1}
.xtb{margin-top:14px;font-weight:300;font-size:clamp(17px,1.4vw,21px);color:#cfcfcf}
.tw__logo{font-size:11px}
.rp{margin-top:clamp(56px,7vw,110px);padding-top:clamp(28px,3.4vw,48px);border-top:1px solid #333}
.rp__top{margin-bottom:22px}
.rp__lead{color:var(--soft)}
.rp__ev{font-weight:300;font-size:clamp(19px,1.7vw,25px);line-height:1.3;margin-bottom:18px;max-width:34em}
.rp__scroll{overflow-x:auto;-webkit-overflow-scrolling:touch;padding-bottom:6px}
.rp svg{display:block;width:100%;min-width:900px;height:auto}
.rp text{fill:#fff;font-size:16px}
.rp .rp__h{fill:var(--soft);font-size:13.5px}
.rp__e{fill:none;stroke:#fff;stroke-width:1;opacity:0;transition:opacity .7s}
.rp__e.is-in{opacity:.75}
.rp__e--l{stroke-dasharray:4 5}
.rp__m{fill:#fff;stroke:#fff;stroke-width:1.4}
.rp__m--l{fill:#000}
.rp__hit{fill:transparent}
.rp__n{cursor:pointer;outline:none}
.rp__n[role="img"]{cursor:default}
.rp__n:hover .rp__hit,.rp__n:focus-visible .rp__hit{fill:#1d1d1d}
.rp__n.is-on .rp__hit{fill:#fff}
.rp__n.is-on text{fill:#000}
.rp__n.is-on .rp__m{fill:#000;stroke:#000}
.rp__n.is-on .rp__m--l{fill:#fff}
.rp__panel{margin-top:18px;padding:18px 20px;border:1px solid #3a3a3a;border-radius:10px;background:#0c0c0c;min-height:132px}
.rp__panel b{font-weight:400;font-size:19px;margin-right:14px}
.rp__panel span{font-size:13.5px;color:var(--soft)}
.rp__panel p{margin-top:8px;color:#cfcfcf;max-width:74ch}
.rp__panel .rp__co{color:var(--soft);font-size:14.5px}

/* ================= LEGAL ================= */
.legal{max-width:820px;margin-inline:auto}
.legal h1{margin-bottom:18px}
.legal h2{font-weight:400;font-size:22px;line-height:1.25;margin:44px 0 12px}
.legal p{margin-bottom:14px;max-width:70ch}
.legal a{text-decoration:underline;text-underline-offset:3px}
.gap{margin-top:36px}
.ul{text-decoration:underline;text-underline-offset:3px}
.mx-h{max-width:11em}
.ph--short{padding-bottom:clamp(36px,4vw,60px)}
.sec--form{padding-top:0;padding-bottom:clamp(76px,10vw,150px)}
.fs{border:0;padding:0;margin:0}
.fld--first{margin-top:0}
.ta-l{min-height:190px}
.ck{display:flex;gap:12px;align-items:flex-start;margin-top:16px;font-size:15.5px;line-height:1.45;cursor:pointer}
.ck input{flex:none;width:18px;height:18px;margin:2px 0 0;accent-color:#000}
.hp{position:absolute;left:-9999px;width:1px;height:1px;overflow:hidden}
.ft__legal a{text-decoration:underline;text-underline-offset:3px}

/* ================= PEOPLE ================= */
.pp{border-top:1px solid var(--ink)}
.pp>li{display:grid;grid-template-columns:minmax(0,4fr) minmax(0,7fr);gap:12px 32px;padding-block:clamp(28px,3.4vw,52px);border-bottom:1px solid var(--rule)}
.pp h2{font-weight:300;font-size:clamp(28px,3.2vw,46px);line-height:1.06;letter-spacing:-.02em}
.pp .role{margin-top:10px;color:var(--mute)}
@media (max-width:760px){.pp>li{grid-template-columns:1fr}}

/* ================= BRIEFING ================= */
.bf{display:grid;grid-template-columns:minmax(0,4fr) minmax(0,7fr);gap:clamp(28px,5vw,96px)}
.bf__steps li{display:flex;gap:14px;align-items:baseline;padding-block:12px;border-bottom:1px solid var(--rule);color:var(--soft);transition:color .3s}
.bf__steps li::before{content:"";flex:none;width:11px;height:11px;border-radius:50%;border:1px solid currentColor;transform:translateY(1px)}
.bf__steps li.is-on{color:var(--ink)}
.bf__steps li.is-done{color:var(--mute)}
.bf__steps li.is-on::before,.bf__steps li.is-done::before{background:currentColor}
.bf__pane{display:none}
.bf__pane.is-on{display:block;animation:pane .45s var(--ease)}
@keyframes pane{from{opacity:0;transform:translateY(10px)}}
.bf__pane h2{margin-bottom:22px}
.opts{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}
.opts label{position:relative;display:flex;align-items:center;gap:12px;min-height:58px;padding:10px 16px;border:1px solid #bdbdbd;cursor:pointer;transition:border-color .2s,background-color .2s,color .2s}
.opts label:hover{border-color:var(--ink)}
.opts input{position:absolute;opacity:0}
.opts label::before{content:"";flex:none;width:11px;height:11px;border-radius:50%;border:1px solid currentColor}
.opts label:has(input:checked){background:var(--ink);color:var(--paper);border-color:var(--ink)}
.opts label:has(input:checked)::before{background:var(--paper)}
.opts label:has(input:focus-visible){outline:2px solid var(--ink);outline-offset:3px}
.bf__nav{display:flex;gap:10px;align-items:center;margin-top:30px}
.bf__err{margin-top:14px;font-size:14.5px;min-height:1.5em}
.bf__sum{border-top:1px solid var(--ink);margin-top:8px}
.bf__sum div{display:grid;grid-template-columns:150px 1fr;gap:12px;padding-block:11px;border-bottom:1px solid var(--rule)}
.bf__sum dt{color:var(--mute)}
@media (max-width:860px){.bf{grid-template-columns:1fr}.bf__steps{display:flex;gap:16px;flex-wrap:wrap}.bf__steps li{border:0;padding-block:0;font-size:14px}}
@media (max-width:520px){.opts{grid-template-columns:1fr}.bf__sum div{grid-template-columns:1fr;gap:2px}}

/* ---------- motion preferences ---------- */
@media (prefers-reduced-motion:reduce){
  html{scroll-behavior:auto}
  *,*::before,*::after{animation-duration:.001ms!important;animation-iteration-count:1!important;transition-duration:.001ms!important}
  .rd{background-size:0 100%}
}
@media print{.hd,.mnav,.dlg{display:none}}
