

:root{
  --sage-200:#C5DBD0;--sage-300:#A6C8B6;--sage-400:#85B49B;--sage-700:#456D58;--sage-50:#F0F6F2;
  --teal-200:#ABC8C8;--teal-300:#7FABAA;--teal-400:#4F8B8A;--teal-500:#236E6D;--teal-600:#1D5C5C;--teal-700:#184B4A;--teal-800:#123939;
  --ink-0:#FFFFFF;--ink-50:#EEE9E2;--ink-100:#E1DCD6;--ink-200:#CFCCC7;--ink-300:#B0AEAB;
  --ink-400:#8A8B8A;--ink-500:#696C6C;--ink-600:#4E5355;--ink-700:#383E41;--ink-900:#10181E;
  --warn:#9A6414;--ease:cubic-bezier(.2,.6,.2,1);
}
*,*::before,*::after{box-sizing:border-box}
html,body{margin:0;overflow-x:hidden;max-width:100%}
html{font-family:"Heebo","Assistant",system-ui,-apple-system,Arial,sans-serif;-webkit-font-smoothing:antialiased;scroll-behavior:smooth}
body{background:var(--ink-0);color:var(--ink-900);font-weight:400;font-size:15px;line-height:1.7;text-align:right}
h1,h2,h3,h4{margin:0;letter-spacing:-.03em}
p{margin:0}
.grain::after{content:"";position:fixed;inset:0;pointer-events:none;z-index:100;opacity:.045;mix-blend-mode:multiply;
  background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='140' height='140'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.8' numOctaves='2'/%3E%3C/filter%3E%3Crect width='140' height='140' filter='url(%23n)'/%3E%3C/svg%3E")}
.wrap{width:100%;max-width:1320px;margin-inline:auto;padding-inline:clamp(20px,5vw,64px)}
.narrow{max-width:900px}
/* type system */
.label{display:inline-flex;align-items:center;gap:14px;font-size:12px;font-weight:600;letter-spacing:.2em;text-transform:uppercase}
.label .ln{height:1px;width:52px;background:currentColor;opacity:.5;flex:none}
.mega{font-weight:800;line-height:.86;letter-spacing:-.038em}
.mega .l1{display:block;font-size:clamp(60px,15vw,180px)}
.mega .l2{display:block;font-size:clamp(60px,15vw,180px);color:var(--teal-400)}
.mega .l2 .dot{color:var(--teal-500)}
.dxl{font-weight:800;font-size:clamp(46px,9vw,104px);line-height:.92;letter-spacing:-.035em}
.h1{font-weight:800;font-size:clamp(30px,4.6vw,56px);line-height:1.02;letter-spacing:-.032em}
.h2{font-weight:800;font-size:clamp(22px,2.6vw,32px);line-height:1.1;letter-spacing:-.025em}
.lead{font-size:clamp(16px,1.5vw,20px);line-height:1.65;color:var(--ink-600)}
.on-dark .lead,.hero .lead{color:var(--ink-200)}
.muted{color:var(--ink-600)}
.num{font-variant-numeric:tabular-nums}
::selection{background:var(--teal-200);color:var(--ink-900)}
:focus-visible{outline:none;box-shadow:0 0 0 3px color-mix(in oklch,var(--teal-500) 45%,transparent)}
/* header */
header{position:fixed;inset-block-start:0;inset-inline:0;z-index:60;transition:background-color .25s var(--ease),border-color .25s}
header::after{content:"";position:absolute;inset-block-end:0;inset-inline:0;height:1px;background:rgba(255,255,255,.08)}
header.light{background:rgba(238,233,226,.92);backdrop-filter:blur(12px)}
header.light::after{background:var(--ink-100)}
header.dark{background:rgba(16,24,30,.82);backdrop-filter:blur(12px)}
.nav{display:flex;align-items:center;gap:14px;min-height:64px}
.brand{display:flex;align-items:center;gap:12px;text-decoration:none;flex:none}
.brand svg{height:26px;width:auto;color:#fff;display:block;transition:color .25s}
header.light .brand svg{color:var(--ink-900)}
.brand .tg{font-size:11px;font-weight:600;letter-spacing:.14em;text-transform:uppercase;color:var(--ink-400);white-space:nowrap}
@media(max-width:960px){.brand .tg{display:none}
}
.links{display:flex;align-items:center;gap:2px;margin-inline-start:auto;overflow-x:auto;scrollbar-width:none}
.links::-webkit-scrollbar{display:none}
.links a{display:inline-flex;align-items:center;min-height:44px;padding:0 12px;text-decoration:none;font-weight:600;
  font-size:14px;color:var(--ink-300);white-space:nowrap;transition:color .16s}
header.light .links a{color:var(--ink-600)}
.links a:hover{color:#fff}
header.light .links a:hover{color:var(--teal-700)}
.links a[aria-current=page]{color:#fff}
header.light .links a[aria-current=page]{color:var(--teal-700)}
.links a[aria-current=page]::after{content:"";display:block}
.hcta{margin-inline-start:8px;flex:none}
@media(max-width:680px){.hcta{display:none}
}
/* buttons + links (flat, editorial) */
.btn{display:inline-flex;align-items:center;justify-content:center;gap:10px;font-family:inherit;font-weight:700;font-size:15px;
  border:0;border-radius:0;padding:15px 26px;cursor:pointer;text-decoration:none;transition:transform .18s var(--ease),background-color .18s,color .18s}
.btn-solid{background:var(--teal-500);color:#fff}
.btn-solid:hover{background:var(--teal-700);transform:translateY(-2px)}
.btn-light{background:#fff;color:var(--ink-900)}
.btn-light:hover{background:var(--sage-200);transform:translateY(-2px)}
.btn-line{background:transparent;color:#fff;box-shadow:inset 0 0 0 1px rgba(255,255,255,.3)}
.btn-line:hover{box-shadow:inset 0 0 0 1px var(--sage-300);color:var(--sage-200)}
.btn-lined{background:transparent;color:var(--ink-900);box-shadow:inset 0 0 0 1px var(--ink-200)}
.btn-lined:hover{box-shadow:inset 0 0 0 1px var(--teal-500);color:var(--teal-600)}
.hcta .btn{padding:11px 20px;font-size:14px}
.alink{display:inline-flex;align-items:center;gap:10px;text-decoration:none;font-weight:700;font-size:15px;color:inherit}
.alink .u{width:34px;height:1px;background:currentColor;transition:width .2s}
.alink:hover .u{width:54px;background:var(--teal-500)}
.hero .alink:hover .u,.on-dark .alink:hover .u{background:var(--teal-400)}
/* page shell */
.page{display:none}
.page.on{display:block;animation:pin .4s var(--ease)}
@keyframes pin{from{transform:translateY(8px)}
to{transform:none}
}
@media(prefers-reduced-motion:reduce){.page.on{animation:none}
}
section{padding-block:clamp(64px,11vh,128px)}
.dark{background:var(--ink-900);color:#fff}
.cream{background:var(--ink-50)}
.rv{opacity:0;transform:translateY(16px);transition:opacity .6s var(--ease),transform .6s var(--ease)}
.rv.in{opacity:1;transform:none}
@media(prefers-reduced-motion:reduce){.rv{opacity:1;transform:none;transition:none}
}
/* hero */
.hero{position:relative;min-height:100svh;display:flex;flex-direction:column;justify-content:center;background:var(--ink-900);
  color:#fff;overflow:hidden;padding:128px 0 0}
.hero .wrap{position:relative;z-index:5}
.hero .lead{max-width:560px;margin-block-start:clamp(24px,4vh,40px)}
.hero-ctas{display:flex;align-items:center;gap:28px;flex-wrap:wrap;margin-block-start:clamp(28px,4vh,44px)}
.expect{display:flex;align-items:center;gap:9px;margin-block-start:18px;font-size:12px;color:var(--ink-300);font-weight:600}
.expect .dot{width:6px;height:6px;border-radius:50%;background:var(--teal-400);flex:none}
/* sub-hero (interior pages) */
.subhero{position:relative;background:var(--ink-900);color:#fff;overflow:hidden;padding:150px 0 clamp(56px,9vh,96px)}
.subhero .wrap{position:relative;z-index:5}
.subhero .lead{max-width:640px;margin-block-start:20px;color:var(--ink-200)}
/* signal bars */
.signal{position:absolute;inset-block-end:0;inset-inline:0;z-index:2;height:min(40vh,360px);display:flex;align-items:flex-end;
  gap:clamp(3px,.5vw,7px);padding:0 clamp(20px,5vw,64px) clamp(24px,5vh,52px);
  -webkit-mask-image:linear-gradient(to top,#000 55%,transparent);mask-image:linear-gradient(to top,#000 55%,transparent)}
.signal b{flex:1 1 0;min-width:0;display:block;height:12%;background:var(--teal-800);border-radius:2px;opacity:.4;
  transition:height 1.1s var(--ease),background-color 1.1s,opacity 1.1s}
.readout{position:absolute;inset-block-end:clamp(20px,4vh,36px);inset-inline-start:clamp(20px,5vw,64px);z-index:6;display:flex;
  align-items:center;gap:11px;font-size:11px;letter-spacing:.12em;text-transform:uppercase;color:var(--ink-400);font-weight:600}
.readout .d{width:7px;height:7px;border-radius:50%;background:var(--teal-400);animation:pulse 2.4s infinite}
@keyframes pulse{0%{box-shadow:0 0 0 0 rgba(79,139,138,.5)}
70%{box-shadow:0 0 0 9px rgba(79,139,138,0)}
100%{box-shadow:0 0 0 0 rgba(79,139,138,0)}
}
.readout .s{color:var(--ink-700)}
/* thin static waveform divider */
.sigdiv{display:flex;align-items:flex-end;gap:4px;height:34px;opacity:.8}
.sigdiv b{width:3px;border-radius:2px;background:var(--teal-500)}
/* section head */
.shead{margin-block-end:clamp(28px,5vh,52px)}
.shead .label{color:var(--teal-600)}
.dark .shead .label,.on-dark .shead .label{color:var(--sage-300)}
.shead h2{margin-block-start:18px;max-width:820px}
.shead p{margin-block-start:16px;max-width:640px}
/* giant chapter index */
.chwrap{display:grid;gap:clamp(28px,5vw,72px);grid-template-columns:1fr}
@media(min-width:900px){.chwrap{grid-template-columns:auto 1fr;align-items:start}
}
.chidx{font-weight:800;font-size:clamp(72px,9vw,150px);line-height:.78;letter-spacing:-.04em;color:var(--ink-100)}
.dark .chidx{color:rgba(255,255,255,.09)}
/* editorial numbered rows (replaces icon cards) */
.rows{border-block-start:1px solid var(--ink-100)}
.dark .rows{border-block-start-color:rgba(255,255,255,.12)}
.erow{display:grid;gap:6px 22px;grid-template-columns:1fr;padding:26px 0;border-block-end:1px solid var(--ink-100);align-items:start}
.dark .erow{border-block-end-color:rgba(255,255,255,.12)}
@media(min-width:760px){.erow{grid-template-columns:56px 240px 1fr}
}
.erow .en{font-weight:800;font-size:15px;color:var(--teal-500);font-variant-numeric:tabular-nums}
.dark .erow .en{color:var(--teal-400)}
.erow h3{font-weight:800;font-size:clamp(19px,2vw,24px);letter-spacing:-.02em}
.erow p{color:var(--ink-600);font-size:15px;line-height:1.6}
.dark .erow p{color:var(--ink-300)}
.erow ul{margin:8px 0 0;padding-inline-start:18px;color:var(--ink-600)}
.erow li{margin-block-end:3px}
/* two-col */
.g2{display:grid;gap:clamp(28px,5vw,64px);grid-template-columns:1fr}
@media(min-width:900px){.g2{grid-template-columns:1.05fr .95fr;align-items:center}
}
.g2.top{align-items:start}
/* concept chain as signal sequence */
.chain{display:grid;gap:14px;grid-template-columns:1fr;margin-block-start:clamp(28px,5vh,48px);counter-reset:ch}
@media(min-width:760px){.chain{grid-template-columns:repeat(5,1fr);gap:0}
}
.cstep{position:relative;padding:22px 0 0}
@media(min-width:760px){.cstep{padding:34px 18px 0 0;border-block-start:2px solid var(--ink-100)}
  .cstep::before{content:"";position:absolute;inset-block-start:-6px;inset-inline-end:0;width:10px;height:10px;border-radius:50%;background:var(--teal-500)}
  .cstep:first-child::after{content:"";position:absolute;inset-block-start:-6px;inset-inline-end:0;width:100%;height:2px;background:linear-gradient(to left,var(--teal-500),var(--teal-200));z-index:-1}
}
.dark .cstep{border-block-start-color:rgba(255,255,255,.15)}
.cstep .cn{font-weight:800;font-size:13px;color:var(--teal-500);letter-spacing:.1em}
.dark .cstep .cn{color:var(--teal-400)}
.cstep h3{margin-block:8px 6px;font-size:20px;font-weight:800}
.cstep p{font-size:13px;line-height:1.55;color:var(--ink-600)}
.dark .cstep p{color:var(--ink-300)}
.chain-note{margin-block-start:clamp(24px,4vh,40px);font-size:14px;color:var(--ink-500);max-width:760px}
.dark .chain-note{color:var(--ink-300)}
/* tracks as chapters */
.tracks{display:grid;gap:1px;background:var(--ink-100);border:1px solid var(--ink-100);margin-block-start:clamp(24px,4vh,44px)}
@media(min-width:900px){.tracks{grid-template-columns:repeat(3,1fr)}
}
.trk{background:var(--ink-0);padding:32px;display:flex;flex-direction:column;transition:background-color .2s}
.trk:hover{background:var(--sage-50)}
.trk .tn{font-weight:800;font-size:40px;color:var(--ink-100);letter-spacing:-.04em;line-height:1}
.trk h3{margin-block:16px 12px;font-size:22px;font-weight:800;letter-spacing:-.02em}
.trk p{color:var(--ink-600);font-size:15px;line-height:1.6;flex:1}
.trk .fit{margin-block-start:18px;padding-block-start:14px;border-block-start:1px solid var(--ink-100);font-size:13px;color:var(--sage-700);font-weight:700}
/* kpis */
.kpis{display:grid;gap:1px;background:var(--ink-100);border:1px solid var(--ink-100);grid-template-columns:1fr}
@media(min-width:640px){.kpis{grid-template-columns:repeat(3,1fr)}
}
.dark .kpis{background:rgba(255,255,255,.12);border-color:rgba(255,255,255,.12)}
.kpi{background:var(--ink-0);padding:30px}
.dark .kpi{background:var(--ink-900)}
.kpi .v{font-weight:800;font-size:clamp(44px,5vw,64px);line-height:.9;letter-spacing:-.03em;color:var(--ink-900);font-variant-numeric:tabular-nums}
.dark .kpi .v{color:#fff}
.kpi .k{margin-block-start:12px;font-weight:800;font-size:16px}
.kpi .d{margin-block-start:4px;font-size:13px;color:var(--ink-500)}
.dark .kpi .d{color:var(--ink-400)}
/* photo */
.shot{position:relative;width:320px;max-width:100%;aspect-ratio:4/5;background-image:var(--shot);background-size:cover;
  background-position:top center;flex:none;filter:grayscale(.12) contrast(1.02)}
.shot .bd{position:absolute;inset-block-end:0;inset-inline:0;background:linear-gradient(to top,rgba(16,24,30,.85),transparent);
  padding:20px;color:#fff}
.shot .bd b{display:block;font-weight:800;font-size:20px}
.shot .bd span{font-size:12px;font-weight:600;color:var(--sage-300);letter-spacing:.04em}
/* values */
.vals{margin-block-start:clamp(24px,4vh,40px);border-block-start:1px solid var(--ink-100)}
.val{display:flex;gap:18px;align-items:baseline;padding:22px 0;border-block-end:1px solid var(--ink-100)}
.val .vn{font-weight:800;color:var(--teal-500);font-size:15px;flex:none;width:28px}
.val p{font-weight:700;font-size:clamp(17px,1.8vw,21px);color:var(--ink-900);letter-spacing:-.01em}
/* testimonial */
.testi{margin:0;position:relative;max-width:900px}
.testi blockquote{margin:0 0 20px;font-weight:800;font-size:clamp(24px,3.4vw,44px);line-height:1.15;letter-spacing:-.02em;color:var(--ink-900)}
.testi .qm{font-weight:800;font-size:64px;color:var(--sage-300);line-height:.6}
.testi figcaption b{font-weight:800;color:var(--ink-900)}
.testi figcaption span{display:block;font-size:13px;color:var(--sage-700);font-weight:600;margin-block-start:2px}
/* snapshot */
.snap{background:var(--ink-900);color:#fff;position:relative;overflow:hidden}
.snap .g2{align-items:center}
.snap .signalmini{display:flex;align-items:flex-end;gap:5px;height:40px;margin-block-start:22px}
.snap .signalmini b{width:4px;border-radius:2px;background:var(--teal-500)}
.snap-form{background:#fff;padding:28px;color:var(--ink-900)}
.snap-form .field{margin-block-end:14px}
.snap-form label{display:block;font-weight:800;font-size:12px;letter-spacing:.04em;margin-block-end:7px;color:var(--ink-700)}
.snap-form input,.snap-form select,.snap-form textarea{width:100%;font-family:inherit;font-size:15px;color:var(--ink-900);background:#fff;border:0;
  border-bottom:2px solid var(--ink-200);padding:11px 2px;transition:border-color .18s}
.snap-form input:focus,.snap-form select:focus,.snap-form textarea:focus{outline:none;border-bottom-color:var(--teal-500)}
.snap-form select,.form select{appearance:none;-webkit-appearance:none;border-radius:0;direction:rtl;text-align:right;cursor:pointer;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' viewBox='0 0 24 24' fill='none' stroke='%236E6C6C' stroke-width='2.5' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='m6 9 6 6 6-6'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:left 2px center;background-size:15px;padding-inline-start:22px}
.snap-form textarea,.form textarea{direction:rtl;text-align:right;resize:vertical;min-height:60px;line-height:1.5}
input,select,textarea,button,option,optgroup{font-family:inherit}
.snap-form .btn{width:100%;margin-block-start:6px}
.snap-expect{margin-block-start:14px;font-size:12px;line-height:1.55;color:var(--ink-500)}
.snap-ok{display:none;font-weight:700;line-height:1.5;color:var(--teal-700)}
.snap ul{list-style:none;margin:22px 0 0;padding:0;display:flex;flex-direction:column;gap:9px}
.snap ul li{display:flex;gap:11px;align-items:flex-start;font-size:14px;font-weight:600;color:#fff}
.snap ul li::before{content:"";flex:none;width:16px;height:16px;margin-block-start:3px;border-radius:50%;background:rgba(255,255,255,.16);
  background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' viewBox='0 0 24 24' fill='none' stroke='%23fff' stroke-width='3' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='m6 12 4 4 8-9'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:center;background-size:11px}
/* trust strip */
.tcats{display:flex;flex-wrap:wrap;align-items:center;gap:10px 16px;margin-block-end:28px;color:var(--ink-500)}
.tcats b{font-weight:800;font-size:clamp(16px,1.8vw,22px);color:var(--ink-900);letter-spacing:-.01em}
.tcats b::after{content:"·";color:var(--sage-400);margin-inline-start:16px}
.tcats b:last-child::after{content:""}
.tstats{display:grid;gap:1px;background:var(--ink-100);border:1px solid var(--ink-100);grid-template-columns:1fr}
@media(min-width:700px){.tstats{grid-template-columns:repeat(3,1fr)}
}
.tstat{background:var(--ink-0);padding:22px 26px}
.tstat b{font-weight:800;font-size:30px;color:var(--ink-900);letter-spacing:-.02em}
.tstat span{display:block;font-size:12px;color:var(--ink-500);margin-block-start:3px}
/* cycle */
.cyclewrap{display:grid;gap:56px;grid-template-columns:1fr;align-items:center;margin-block-start:clamp(24px,4vh,44px)}
@media(min-width:900px){.cyclewrap{grid-template-columns:1fr minmax(0,360px);gap:64px}
}
.cycle{position:relative;width:100%;max-width:360px;aspect-ratio:1;margin-inline:auto}
.cycle svg{width:100%;height:100%}
.cycle .ring{fill:none;stroke:rgba(255,255,255,.14);stroke-width:2}
.cycle .arc{fill:none;stroke:var(--teal-400);stroke-width:3;stroke-linecap:round;stroke-dasharray:70 1000;animation:spin 8s linear infinite}
@keyframes spin{to{stroke-dashoffset:-1000}
}
@media(prefers-reduced-motion:reduce){.cycle .arc{animation:none}
}
.cnode{position:absolute;transform:translate(-50%,-50%);width:120px;text-align:center;background:var(--ink-900);
  border:1px solid rgba(255,255,255,.16);padding:12px 10px;cursor:pointer;font-family:inherit;transition:border-color .18s,transform .18s}
.cnode:hover{border-color:var(--teal-400)}
.cnode[aria-current=true]{border-color:var(--teal-400);transform:translate(-50%,-50%) scale(1.05)}
.cnode .cn{display:inline-flex;align-items:center;justify-content:center;width:24px;height:24px;border-radius:50%;
  background:rgba(255,255,255,.1);color:var(--sage-300);font-weight:800;font-size:12px;margin-block-end:6px}
.cnode[aria-current=true] .cn{background:var(--teal-500);color:#fff}
.cnode b{display:block;font-size:13px;font-weight:800;color:#fff;line-height:1.3}
.chub{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);width:128px;height:128px;border-radius:50%;
  background:#fff;color:var(--ink-900);display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center}
.chub .num{font-weight:800;font-size:20px}
.chub small{font-size:11px;color:var(--teal-600);margin-block-start:2px}
.cyclepanel{align-self:center;min-height:150px}
.cyclepanel .label{color:var(--sage-300)}
.cyclepanel h3{margin-block:12px 8px;font-size:24px;font-weight:800}
.cyclepanel p{color:var(--ink-200);font-size:17px;line-height:1.6}
/* pattern cards */
.pgrid{display:grid;gap:1px;background:var(--ink-100);border:1px solid var(--ink-100);grid-template-columns:1fr;margin-block-start:clamp(24px,4vh,40px)}
@media(min-width:640px){.pgrid{grid-template-columns:1fr 1fr}
}
@media(min-width:1000px){.pgrid{grid-template-columns:repeat(3,1fr)}
}
.pcard{position:relative;background:var(--ink-0);padding:24px;text-align:start;font-family:inherit;cursor:pointer;width:100%;
  min-height:158px;display:flex;flex-direction:column;transition:background-color .18s}
.pcard:hover{background:var(--sage-50)}
.pcard-top{display:flex;align-items:center;justify-content:space-between;margin-block-end:16px}
.pcard-id{font-weight:800;font-size:12px;letter-spacing:.14em;text-transform:uppercase;color:var(--teal-600)}
.pcard-lock{font-size:11px;color:var(--ink-400);font-weight:600}
.redact{display:flex;flex-direction:column;gap:8px;flex:1}
.redact i{display:block;height:10px;background:linear-gradient(90deg,var(--ink-100),var(--ink-200),var(--ink-100));
  background-size:200% 100%;animation:shim 3.2s linear infinite}
@keyframes shim{0%{background-position:200% 0}
100%{background-position:-200% 0}
}
@media(prefers-reduced-motion:reduce){.redact i{animation:none}
}
.pcard.flip .redact{display:none}
.pdetail{display:none;flex:1}
.pcard.flip .pdetail{display:block}
.pdetail .dl{display:flex;justify-content:space-between;gap:8px;padding-block:6px;border-block-end:1px solid var(--ink-100);font-size:13px}
.pdetail .dl:last-child{border-block-end:0}
.pdetail .dl span{color:var(--ink-600)}
.pdetail .dl b{font-weight:800;font-variant-numeric:tabular-nums}
.phint{margin-block-start:14px;font-size:12px;font-weight:700;color:var(--teal-600)}
.gate{grid-column:1/-1;background:var(--ink-900);color:#fff;padding:32px;text-align:center;display:flex;flex-direction:column;align-items:center;gap:14px}
.gate h3{font-size:24px;font-weight:800}
.gate p{color:var(--ink-300);max-width:460px}
/* report cover */
.rcstack{position:relative;max-width:560px;margin-inline:auto}
.rcstack .sh{position:absolute;inset-inline:0;height:100%;background:var(--ink-0);border:1px solid var(--ink-100)}
.rcstack .s1{inset-block-start:20px;transform:scale(.93);opacity:.5}
.rcstack .s2{inset-block-start:10px;transform:scale(.965);opacity:.7}
.rcover{position:relative;z-index:3;background:var(--ink-900);color:#fff;padding:36px;cursor:pointer;text-align:start;width:100%;
  border:0;font-family:inherit;overflow:hidden;transition:transform .2s var(--ease)}
.rcover:hover{transform:translateY(-4px)}
.rcover .label{color:var(--sage-300)}
.rcover h2{margin-block:16px;max-width:440px}
.rcmeta{display:flex;gap:22px;margin-block-end:24px}
.rcmeta b{display:block;font-weight:800;font-size:30px;letter-spacing:-.02em}
.rcmeta span{font-size:11px;color:var(--sage-300);font-weight:600}
.rcopen{display:inline-flex;align-items:center;gap:9px;background:#fff;color:var(--ink-900);font-weight:800;font-size:14px;padding:12px 22px}
.rcpeek{display:block;margin-block-start:14px;font-size:12px;color:var(--ink-400)}
/* quotes */
.quotes{display:grid;gap:1px;background:var(--ink-100);border:1px solid var(--ink-100);grid-template-columns:1fr;margin-block-start:clamp(20px,3vh,32px)}
@media(min-width:640px){.quotes{grid-template-columns:1fr 1fr}
}
@media(min-width:1000px){.quotes{grid-template-columns:repeat(4,1fr)}
}
.qte{margin:0;background:var(--ink-0);padding:24px;display:flex;flex-direction:column;gap:12px;transition:background-color .18s}
.qte:hover{background:var(--sage-50)}
.qte .qm{font-weight:800;font-size:40px;color:var(--teal-300);line-height:.5}
.qte blockquote{margin:0;font-size:17px;line-height:1.4;font-weight:700;color:var(--ink-900);flex:1}
.qte figcaption{font-size:11px;font-weight:600;letter-spacing:.08em;text-transform:uppercase;color:var(--sage-700)}
/* method steps */
.msteps{margin-block-start:clamp(24px,4vh,44px);border-block-start:1px solid var(--ink-100)}
.mstep{display:grid;gap:6px 26px;grid-template-columns:1fr;padding:30px 0;border-block-end:1px solid var(--ink-100)}
@media(min-width:760px){.mstep{grid-template-columns:100px 1fr}
}
.mstep .mn{font-weight:800;font-size:clamp(40px,5vw,64px);color:var(--ink-100);line-height:.8;letter-spacing:-.04em}
.mstep h3{font-size:clamp(20px,2.2vw,26px);font-weight:800;margin-block-end:8px;letter-spacing:-.02em}
.mstep p{color:var(--ink-600);font-size:16px;line-height:1.65;max-width:620px}
.warnbox{margin-block-start:clamp(24px,4vh,40px);border-inline-start:3px solid var(--warn);background:#FBF8F4;padding:24px 28px}
.warnbox h3{color:var(--warn);font-size:20px;font-weight:800;margin-block-end:8px}
.warnbox p{color:var(--warn);line-height:1.65}
/* blog */
.posts{border-block-start:1px solid var(--ink-100);margin-block-start:clamp(24px,4vh,44px)}
.post{display:grid;gap:6px 26px;grid-template-columns:1fr;width:100%;text-align:start;font-family:inherit;cursor:pointer;
  background:transparent;border:0;border-block-end:1px solid var(--ink-100);padding:30px 0;align-items:baseline;transition:padding-inline-start .2s}
.post:hover{padding-inline-start:8px}
@media(min-width:760px){.post{grid-template-columns:80px 1fr auto}
}
.post .pn{font-weight:800;font-size:clamp(30px,4vw,50px);color:var(--ink-100);line-height:.8;letter-spacing:-.04em}
.post h3{font-size:clamp(20px,2.2vw,28px);font-weight:800;letter-spacing:-.02em}
.post p{color:var(--ink-600);font-size:14px;line-height:1.6;margin-block-start:8px;max-width:560px}
.post .pm{font-size:11px;font-weight:600;letter-spacing:.08em;text-transform:uppercase;color:var(--teal-600);white-space:nowrap}
.article h1{font-size:clamp(28px,4vw,48px);font-weight:800;line-height:1.05;letter-spacing:-.03em;max-width:760px}
.article .ameta{font-size:12px;letter-spacing:.1em;text-transform:uppercase;color:var(--ink-500);margin-block:16px 28px;font-weight:600}
.article h2{font-size:clamp(22px,2.6vw,30px);font-weight:800;margin-block:28px 10px;letter-spacing:-.02em}
.article p{color:var(--ink-700);font-size:17px;line-height:1.75;margin-block-end:14px;max-width:720px}
.article b{color:var(--ink-900)}
/* contact */
.form .field{margin-block-end:16px}
.form label{display:block;font-weight:800;font-size:12px;letter-spacing:.04em;margin-block-end:7px;color:var(--ink-700)}
.form .opt{color:var(--ink-400);font-weight:400}
.form input,.form select,.form textarea{width:100%;font-family:inherit;font-size:15px;color:var(--ink-900);background:transparent;border:0;
  border-bottom:2px solid var(--ink-200);padding:11px 2px;transition:border-color .18s}
.form input:focus,.form select:focus,.form textarea:focus{outline:none;border-bottom-color:var(--teal-500)}
.chips{display:flex;flex-wrap:wrap;gap:8px}
.chip-btn{appearance:none;font-family:inherit;font-size:13px;font-weight:600;cursor:pointer;background:transparent;color:var(--ink-700);
  border:1px solid var(--ink-200);padding:9px 16px;min-height:40px;transition:border-color .16s,background-color .16s,color .16s}
.chip-btn:hover{border-color:var(--teal-300)}
.chip-btn[aria-pressed=true]{background:var(--teal-500);color:#fff;border-color:var(--teal-500)}
.form-note{font-size:12px;color:var(--ink-500);margin-block-start:16px}
.form-ok{display:none;background:var(--sage-50);border-inline-start:3px solid var(--sage-400);padding:20px;color:var(--sage-700);font-weight:700}
.cside{display:flex;flex-direction:column}
.cline{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:20px 0;border-block-end:1px solid var(--ink-100);
  text-decoration:none;color:var(--ink-900);font-weight:700;transition:padding-inline-end .18s}
.cline:first-child{border-block-start:1px solid var(--ink-100)}
.cline:hover{padding-inline-end:6px}
.cline .k{font-size:11px;letter-spacing:.1em;text-transform:uppercase;color:var(--teal-600);font-weight:600}
.cbox{margin-block-start:28px;background:var(--sage-50);padding:24px;border-inline-start:3px solid var(--sage-400)}
.cbox h3{font-size:18px;font-weight:800;margin-block-end:8px}
.cbox p{color:var(--ink-600)}
/* cta band */
.ctaband{background:var(--ink-900);color:#fff}
.ctaband .lead{color:var(--teal-100,#D3E2E2);max-width:560px;margin-block:14px 28px}
/* sticky */
.stickybar{position:fixed;inset-block-end:0;inset-inline:0;z-index:70;display:none;align-items:center;gap:12px;padding:10px 16px;
  background:rgba(16,24,30,.96);backdrop-filter:blur(10px);border-block-start:1px solid rgba(255,255,255,.1)}
.stickybar span{color:#fff;font-weight:800;font-size:13px;flex:1;line-height:1.3}
.stickybar .btn{flex:none;padding:11px 18px;font-size:13px}
.stickybar.on{display:flex}
@media(min-width:768px){.stickybar.on{display:none}
}
body.hs{padding-block-end:62px}
@media(min-width:768px){body.hs{padding-block-end:0}
}
/* footer */
footer{background:var(--ink-900);color:var(--ink-400);padding-block:44px;border-block-start:1px solid rgba(255,255,255,.08)}
.foot{display:flex;flex-wrap:wrap;gap:20px;align-items:center;justify-content:space-between}
.foot svg{height:26px;color:#fff}
.foot a{color:var(--sage-300);text-decoration:none}
.foot a:hover{text-decoration:underline}
.foot .sm{font-size:12px}
.pnote{position:fixed;inset-block-end:12px;inset-inline-start:12px;z-index:120;background:var(--warn);color:#fff;font-size:11px;
  font-weight:700;padding:6px 12px;border-radius:999px;opacity:.9}
:root{--shot:url("/shot.jpg")}

/* compare (item 2) */
.cmp{display:grid;gap:1px;background:var(--ink-100);border:1px solid var(--ink-100);grid-template-columns:1fr;margin-block-start:clamp(24px,4vh,44px)}
@media(min-width:820px){.cmp{grid-template-columns:repeat(3,1fr)}
}
.cmpcol{background:var(--ink-0);padding:28px 26px;display:flex;flex-direction:column}
.cmpcol.me{background:var(--ink-900);color:#fff}
.cmpcol .ct{font-weight:800;font-size:19px;letter-spacing:-.01em}
.cmpcol.me .ct{color:#fff}
.cmpcol .cs{font-size:11px;font-weight:700;letter-spacing:.1em;text-transform:uppercase;color:var(--ink-400);margin-block:4px 16px}
.cmpcol.me .cs{color:var(--sage-300)}
.cmprow{padding:14px 0;border-block-start:1px solid var(--ink-100)}
.cmpcol.me .cmprow{border-block-start-color:rgba(255,255,255,.14)}
.cmprow .rk{display:block;font-size:11px;font-weight:700;letter-spacing:.06em;color:var(--ink-500);margin-block-end:5px}
.cmpcol.me .cmprow .rk{color:var(--sage-300)}
.cmprow .rv2{font-size:15px;line-height:1.5;color:var(--ink-700);font-weight:500}
.cmpcol.me .cmprow .rv2{color:#fff;font-weight:600}
/* impact flow (item 1) */
.flow{display:grid;gap:1px;background:var(--ink-100);border:1px solid var(--ink-100);grid-template-columns:1fr;margin-block-start:clamp(24px,4vh,44px)}
@media(min-width:900px){.flow{grid-template-columns:repeat(4,1fr)}
}
.fstep{background:var(--ink-900);padding:28px 24px;display:flex;flex-direction:column}
.fstep .fn{font-weight:800;font-size:12px;letter-spacing:.12em;text-transform:uppercase;color:var(--sage-300)}
.fstep h3{margin-block:14px 10px;font-size:19px;font-weight:800;color:#fff;letter-spacing:-.01em}
.fstep p{font-size:14px;line-height:1.6;color:var(--ink-200)}
.fstep.res{background:var(--teal-700)}
.fstep .pend{margin-block-start:14px;padding-block-start:12px;border-block-start:1px solid rgba(255,255,255,.18);font-size:11px;font-weight:700;color:var(--sage-300)}
.casetag{display:inline-flex;align-items:center;gap:8px;font-size:11px;font-weight:700;letter-spacing:.04em;margin-block-start:14px}
/* deliverable (item 4) */
.deliv{display:grid;gap:1px;background:var(--ink-100);border:1px solid var(--ink-100);grid-template-columns:1fr;margin-block-start:clamp(24px,4vh,44px)}
@media(min-width:820px){.deliv{grid-template-columns:repeat(3,1fr)}
}
.dcell{background:var(--ink-0);padding:28px 26px}
.dcell .dn{font-weight:800;font-size:12px;letter-spacing:.12em;text-transform:uppercase;color:var(--teal-600)}
.dcell h3{margin-block:12px 10px;font-size:20px;font-weight:800;letter-spacing:-.01em}
.dcell p{font-size:14px;line-height:1.6;color:var(--ink-600)}
.dcell ul{margin:10px 0 0;padding-inline-start:18px;color:var(--ink-600);font-size:14px}
.dcell li{margin-block-end:5px}
/* fear callout (item 5) */
.fear{margin-block-start:clamp(8px,2vh,20px);background:var(--ink-900);color:#fff;padding:clamp(28px,4vw,48px)}
.fear .fq{font-weight:800;font-size:clamp(21px,2.8vw,32px);line-height:1.24;letter-spacing:-.02em;max-width:840px}
.fear .fq b{color:var(--sage-300)}
.fear-chips{display:flex;flex-wrap:wrap;gap:10px;margin-block-start:24px}
.fear-chips span{font-size:12px;font-weight:700;color:#fff;border:1px solid rgba(255,255,255,.22);padding:9px 15px}
.fear-chips span b{color:var(--sage-300)}
/* faq (item 6) */
.faq{margin-block-start:clamp(24px,4vh,44px);border-block-start:1px solid var(--ink-100)}
.faq details{border-block-end:1px solid var(--ink-100)}
.faq summary{list-style:none;cursor:pointer;padding:22px 0;display:flex;align-items:center;gap:16px;font-weight:800;font-size:clamp(17px,1.9vw,21px);letter-spacing:-.01em;color:var(--ink-900)}
.faq summary::-webkit-details-marker{display:none}
.faq summary::before{content:"+";flex:none;width:26px;height:26px;display:grid;place-items:center;font-weight:700;font-size:20px;color:var(--teal-500);border:1px solid var(--ink-200);transition:transform .2s}
.faq details[open] summary::before{content:"\2212"}
.faq .fa{padding:0 42px 24px;color:var(--ink-600);font-size:15px;line-height:1.7;max-width:840px}

/* question explorer (select page) */
#qexplorer{margin-block-start:clamp(20px,3vh,32px)}
.qcats{display:flex;flex-wrap:wrap;gap:10px}
.qcat{appearance:none;font-family:inherit;font-size:15px;font-weight:700;cursor:pointer;background:transparent;color:var(--ink-700);
  border:1px solid var(--ink-200);border-radius:0;padding:12px 20px;min-height:46px;transition:border-color .16s,background-color .16s,color .16s}
.qcat:hover{border-color:var(--teal-300)}
.qcat[aria-selected=true]{background:var(--ink-900);color:#fff;border-color:var(--ink-900)}
.qcap{color:var(--ink-600);font-size:16px;margin-block:16px 0;max-width:660px}
.qlist{border-block-start:2px solid var(--ink-900);margin-block-start:22px}
.qitem{display:flex;gap:16px;align-items:flex-start;width:100%;text-align:start;font-family:inherit;background:transparent;border:0;
  border-block-end:1px solid var(--ink-100);padding:19px 0;cursor:pointer;transition:padding-inline-start .18s}
.qitem:hover{padding-inline-start:8px}
.qbox{flex:none;width:24px;height:24px;border:1.5px solid var(--ink-300);display:grid;place-items:center;margin-block-start:2px;
  transition:background-color .16s,border-color .16s}
.qitem[aria-pressed=true] .qbox{background:var(--teal-500);border-color:var(--teal-500)}
.qbox svg{width:14px;height:14px;color:#fff;opacity:0;transition:opacity .15s}
.qitem[aria-pressed=true] .qbox svg{opacity:1}
.qitem .qt{font-size:clamp(17px,1.9vw,20px);font-weight:700;color:var(--ink-900);line-height:1.4;letter-spacing:-.01em}
.qitem[aria-pressed=true] .qt{color:var(--teal-700)}
.qbar{position:sticky;inset-block-end:16px;margin-block-start:28px;background:var(--ink-900);color:#fff;display:flex;align-items:center;
  gap:16px;padding:16px 22px;flex-wrap:wrap;box-shadow:0 10px 30px rgba(16,24,30,.25)}
.qbar .qcount{font-weight:800;font-size:15px;flex:1;min-width:220px;line-height:1.4}
.qbar .qcount b{color:var(--sage-300)}
.qbar .btn{flex:none}
/* services teaser grid */
.qtease{display:grid;grid-template-columns:1fr 1fr;gap:1px;background:rgba(255,255,255,.12);border:1px solid rgba(255,255,255,.12)}
.qtease span{background:var(--ink-900);padding:22px 20px;font-weight:800;font-size:clamp(18px,2vw,24px);color:#fff;letter-spacing:-.02em}

/* comparison matrix */
.cmpx-scroll{overflow-x:auto;margin-block-start:clamp(20px,3vh,32px);border:1px solid var(--ink-100);-webkit-overflow-scrolling:touch}
.cmpx{display:grid;grid-template-columns:minmax(190px,1.6fr) repeat(var(--n),minmax(116px,1fr));min-width:660px}
.cmpx-h{padding:16px 14px;font-weight:800;font-size:13.5px;line-height:1.3;background:var(--ink-900);color:#fff;border-inline-start:1px solid rgba(255,255,255,.12)}
.cmpx-h.cmpx-lead{border-inline-start:0}
.cmpx-l{padding:15px 16px;font-size:14px;font-weight:600;color:var(--ink-700);border-block-start:1px solid var(--ink-100);background:var(--ink-0);display:flex;align-items:center}
.cmpx-c{display:flex;align-items:center;justify-content:center;text-align:center;border-block-start:1px solid var(--ink-100);border-inline-start:1px solid var(--ink-100);background:var(--ink-0);padding:8px}
.cmpx-c svg{width:20px;height:20px;color:var(--teal-500)}
.cmpx-c .dash{color:var(--ink-300);font-weight:700}
.cmpx-c.txt{font-size:12px;font-weight:800;color:var(--teal-700)}
/* mobile comparison cards (replace horizontal scroll under 820px) */
.mxc{display:none}
@media(max-width:819px){
  .cmpx-scroll{display:none}
  .mxc{display:block;margin-block-start:clamp(20px,3vh,32px)}
}
.mxc-card{border:1px solid var(--ink-100);margin-block-end:14px;background:var(--ink-0)}
.mxc-card:last-child{margin-block-end:0}
.mxc-h{background:var(--ink-900);color:#fff;font-weight:800;font-size:16px;padding:14px 16px}
.mxc-row{display:flex;justify-content:space-between;align-items:center;gap:16px;padding:12px 16px;border-block-start:1px solid var(--ink-100)}
.mxc-k{font-size:13.5px;font-weight:600;color:var(--ink-600);line-height:1.35;flex:1}
.mxc-yes{display:inline-flex;align-items:center;gap:6px;font-size:13px;font-weight:800;color:var(--teal-700);white-space:nowrap;flex:none}
.mxc-yes svg{width:16px;height:16px;color:var(--teal-500);flex:none}
.mxc-no{font-size:12.5px;font-weight:700;color:var(--ink-300);white-space:nowrap;flex:none}
.mxc-txt{font-size:12.5px;font-weight:800;color:var(--teal-700);text-align:end;flex:none;max-width:52%}
/* tier accordions */
.tacc{margin-block-start:22px;display:grid;gap:12px;grid-template-columns:1fr}
@media(min-width:820px){.tacc{grid-template-columns:repeat(3,1fr);align-items:start}
}
.tacc details{border:1px solid var(--ink-100);background:var(--ink-0)}
.tacc summary{cursor:pointer;list-style:none;padding:18px;font-weight:800;font-size:15px;color:var(--ink-900);display:flex;justify-content:space-between;gap:10px;align-items:center;letter-spacing:-.01em}
.tacc summary::-webkit-details-marker{display:none}
.tacc summary::after{content:"+";color:var(--teal-500);font-size:22px;font-weight:700;flex:none;line-height:1}
.tacc details[open] summary::after{content:"\2212"}
.tacc .tbody{padding:0 18px 20px}
.tacc .tk{font-size:11px;font-weight:800;letter-spacing:.08em;text-transform:uppercase;color:var(--teal-600);margin-block:12px 7px}
.tacc .tget{font-size:14px;color:var(--ink-700);line-height:1.65}
.tacc ul{margin:0;padding-inline-start:18px;color:var(--ink-600);font-size:13.5px;line-height:1.5}
.tacc li{margin-block-end:4px}
.tacc .full li{color:var(--ink-700)}
.famcap{max-width:720px}

footer .foot{display:flex;align-items:center;justify-content:space-between;gap:14px 36px;flex-wrap:wrap}
footer .foot .foot-brand{display:inline-flex;align-items:center}
footer .foot .foot-tag,footer .foot .foot-contact{font-size:12.5px;color:var(--ink-400);font-weight:500;line-height:1.4}
footer .foot .foot-contact a{color:inherit;text-decoration:none}
footer .foot .foot-social{display:inline-flex;align-items:center;gap:13px}
footer .foot .foot-social a{color:var(--ink-400);display:inline-flex;transition:color .18s}
footer .foot .foot-social a:hover{color:var(--sage-300)}
footer .foot .foot-social svg{width:18px;height:18px;display:block}
footer .foot .foot-omnis{display:inline-flex;align-items:center;gap:8px;font-size:12.5px;font-weight:600;color:var(--ink-400);text-decoration:none;white-space:nowrap;transition:opacity .18s}
footer .foot .foot-omnis:hover{opacity:.72}
footer .foot .foot-omnis .foot-omnis-mark{display:inline-flex;align-items:center}
footer .foot .foot-omnis{align-items:flex-end}
footer .foot .foot-omnis .foot-omnis-mark{align-items:flex-end}
footer .foot .foot-omnis svg{height:22px;width:auto;display:block;color:inherit}
@media(max-width:640px){footer .foot{justify-content:center;text-align:center;gap:12px}
}

/* ===== galaxy (Goldá cosmos) ===== */
.hero.galaxy{position:relative;overflow:hidden;background:#070C0C}
.hero.galaxy .cosmos{position:absolute;inset:0;z-index:0;overflow:hidden;pointer-events:none;background:
  radial-gradient(1200px 800px at 80% -5%, rgba(31,95,95,.34), transparent 60%),
  radial-gradient(1000px 700px at 10% 20%, rgba(74,153,152,.18), transparent 55%),
  radial-gradient(1400px 900px at 50% 120%, rgba(31,95,95,.30), transparent 60%),
  linear-gradient(180deg,#070C0C,#050A0A 40%,#0B1414)}
.hero.galaxy .wrap{position:relative;z-index:2}
.hero.galaxy .readout{z-index:2}
.hero.galaxy .neb{position:absolute;border-radius:50%;filter:blur(60px);opacity:.5;mix-blend-mode:screen;animation:gdrift 34s ease-in-out infinite}
.hero.galaxy .n1{width:520px;height:520px;background:radial-gradient(circle,rgba(74,153,152,.6),transparent 70%);top:-8%;right:-6%}
.hero.galaxy .n2{width:440px;height:440px;background:radial-gradient(circle,rgba(31,95,95,.7),transparent 70%);bottom:6%;left:-8%;animation-delay:-12s}
.hero.galaxy .n3{width:360px;height:360px;background:radial-gradient(circle,rgba(95,199,197,.35),transparent 70%);top:45%;right:38%;animation-delay:-22s}
@keyframes gdrift{0%,100%{transform:translate(0,0) scale(1)}
33%{transform:translate(40px,-30px) scale(1.08)}
66%{transform:translate(-30px,24px) scale(.95)}
}
.hero.galaxy .stars{position:absolute;top:0;left:0;width:1px;height:1px;border-radius:50%}
.hero.galaxy .sfar{box-shadow:20.37vw 53.59vh 0 rgba(207,233,232,0.45),53.64vw 59.05vh 0 rgba(207,233,232,0.29),32.48vw 14.35vh 0 rgba(207,233,232,0.34),37.51vw 73.61vh 0 rgba(207,233,232,0.44),75.7vw 60.04vh 0 rgba(207,233,232,0.29),1.59vw 72.03vh 0 rgba(207,233,232,0.23),58.37vw 33.25vh 0 rgba(207,233,232,0.29),84.38vw 28.57vh 0 rgba(207,233,232,0.22),64.01vw 60.27vh 0 rgba(207,233,232,0.31),63.22vw 45.18vh 0 rgba(207,233,232,0.48),49.89vw 49.78vh 0 rgba(207,233,232,0.44),35.84vw 3.6vh 0 rgba(207,233,232,0.41),7.67vw 39.4vh 0 rgba(207,233,232,0.4),64.48vw 6.37vh 0 rgba(207,233,232,0.28),65.89vw 54.5vh 0 rgba(207,233,232,0.49),22.91vw 67.57vh 0 rgba(207,233,232,0.33),5.68vw 35.39vh 0 rgba(207,233,232,0.3),21.49vw 28.83vh 0 rgba(207,233,232,0.2),24.32vw 67.73vh 0 rgba(207,233,232,0.47),38.31vw 77.4vh 0 rgba(207,233,232,0.21),88.58vw 50.12vh 0 rgba(207,233,232,0.33),10.37vw 38.54vh 0 rgba(207,233,232,0.36),93.68vw 57.05vh 0 rgba(207,233,232,0.31),43.68vw 99.96vh 0 rgba(207,233,232,0.38),99.16vw 42.52vh 0 rgba(207,233,232,0.3),29.04vw 9.84vh 0 rgba(207,233,232,0.48),60.62vw 43.72vh 0 rgba(207,233,232,0.47),55.94vw 27.39vh 0 rgba(207,233,232,0.41),36.47vw 84.17vh 0 rgba(207,233,232,0.22),57.22vw 77.71vh 0 rgba(207,233,232,0.31),70.18vw 70.49vh 0 rgba(207,233,232,0.41),36.95vw 22.84vh 0 rgba(207,233,232,0.33),79.8vw 65.01vh 0 rgba(207,233,232,0.35),13.9vw 36.46vh 0 rgba(207,233,232,0.27),19.99vw 65.72vh 0 rgba(207,233,232,0.42),15.95vw 45.93vh 0 rgba(207,233,232,0.47),22.16vw 61.49vh 0 rgba(207,233,232,0.34),14.0vw 17.87vh 0 rgba(207,233,232,0.29),7.45vw 2.97vh 0 rgba(207,233,232,0.23),43.65vw 71.61vh 0 rgba(207,233,232,0.38),59.18vw 78.8vh 0 rgba(207,233,232,0.4),51.95vw 92.81vh 0 rgba(207,233,232,0.38),55.63vw 84.72vh 0 rgba(207,233,232,0.31),85.34vw 67.8vh 0 rgba(207,233,232,0.25),60.43vw 42.94vh 0 rgba(207,233,232,0.39),58.38vw 72.62vh 0 rgba(207,233,232,0.25),29.49vw 82.01vh 0 rgba(207,233,232,0.35),12.16vw 27.56vh 0 rgba(207,233,232,0.25),37.49vw 3.4vh 0 rgba(207,233,232,0.49),88.96vw 16.06vh 0 rgba(207,233,232,0.24),17.49vw 90.14vh 0 rgba(207,233,232,0.36),60.8vw 77.77vh 0 rgba(207,233,232,0.37),98.23vw 59.85vh 0 rgba(207,233,232,0.35),82.15vw 51.57vh 0 rgba(207,233,232,0.46),65.4vw 9.43vh 0 rgba(207,233,232,0.3),52.29vw 96.8vh 0 rgba(207,233,232,0.37),93.88vw 47.79vh 0 rgba(207,233,232,0.45),94.63vw 8.7vh 0 rgba(207,233,232,0.24),28.53vw 96.01vh 0 rgba(207,233,232,0.19),5.03vw 47.81vh 0 rgba(207,233,232,0.33),98.69vw 33.8vh 0 rgba(207,233,232,0.47),91.46vw 53.96vh 0 rgba(207,233,232,0.2),1.65vw 74.36vh 0 rgba(207,233,232,0.47),97.86vw 90.77vh 0 rgba(207,233,232,0.33),37.31vw 22.31vh 0 rgba(207,233,232,0.25),31.12vw 77.4vh 0 rgba(207,233,232,0.25),62.49vw 14.77vh 0 rgba(207,233,232,0.5),40.91vw 78.99vh 0 rgba(207,233,232,0.34),90.31vw 56.93vh 0 rgba(207,233,232,0.36),8.47vw 54.86vh 0 rgba(207,233,232,0.2),62.86vw 21.96vh 0 rgba(207,233,232,0.35),52.57vw 26.25vh 0 rgba(207,233,232,0.32),58.85vw 0.35vh 0 rgba(207,233,232,0.43),21.91vw 31.83vh 0 rgba(207,233,232,0.28),46.72vw 10.68vh 0 rgba(207,233,232,0.3),43.52vw 37.67vh 0 rgba(207,233,232,0.39),54.24vw 5.43vh 0 rgba(207,233,232,0.49),88.54vw 47.59vh 0 rgba(207,233,232,0.23),99.74vw 61.89vh 0 rgba(207,233,232,0.23),11.78vw 43.03vh 0 rgba(207,233,232,0.45),23.97vw 74.6vh 0 rgba(207,233,232,0.2),56.68vw 11.49vh 0 rgba(207,233,232,0.46),83.05vw 61.37vh 0 rgba(207,233,232,0.25),71.42vw 87.86vh 0 rgba(207,233,232,0.31),98.33vw 49.6vh 0 rgba(207,233,232,0.48),21.64vw 13.77vh 0 rgba(207,233,232,0.46),34.98vw 42.78vh 0 rgba(207,233,232,0.48),95.02vw 54.32vh 0 rgba(207,233,232,0.4),54.14vw 38.69vh 0 rgba(207,233,232,0.48),88.51vw 69.85vh 0 rgba(207,233,232,0.32),6.05vw 80.54vh 0 rgba(207,233,232,0.49),70.37vw 84.47vh 0 rgba(207,233,232,0.23),87.59vw 16.82vh 0 rgba(207,233,232,0.41),33.85vw 44.8vh 0 rgba(207,233,232,0.25),75.03vw 52.94vh 0 rgba(207,233,232,0.26),86.17vw 34.78vh 0 rgba(207,233,232,0.19),81.18vw 25.0vh 0 rgba(207,233,232,0.27),24.67vw 17.48vh 0 rgba(207,233,232,0.19),94.35vw 71.79vh 0 rgba(207,233,232,0.45),27.13vw 87.11vh 0 rgba(207,233,232,0.2),42.08vw 20.07vh 0 rgba(207,233,232,0.37),97.69vw 16.92vh 0 rgba(207,233,232,0.2),0.97vw 80.13vh 0 rgba(207,233,232,0.38),83.37vw 55.74vh 0 rgba(207,233,232,0.48),56.39vw 13.62vh 0 rgba(207,233,232,0.2),83.27vw 86.85vh 0 rgba(207,233,232,0.37),58.26vw 52.93vh 0 rgba(207,233,232,0.28),54.08vw 3.39vh 0 rgba(207,233,232,0.36),97.04vw 47.13vh 0 rgba(207,233,232,0.5),5.62vw 16.51vh 0 rgba(207,233,232,0.24),76.74vw 54.56vh 0 rgba(207,233,232,0.37),78.21vw 68.88vh 0 rgba(207,233,232,0.44),41.25vw 13.26vh 0 rgba(207,233,232,0.41),20.92vw 63.7vh 0 rgba(207,233,232,0.2),87.89vw 1.17vh 0 rgba(207,233,232,0.43),22.28vw 19.05vh 0 rgba(207,233,232,0.45),36.9vw 77.35vh 0 rgba(207,233,232,0.29),84.52vw 99.79vh 0 rgba(207,233,232,0.44),94.74vw 12.78vh 0 rgba(207,233,232,0.42),5.6vw 83.68vh 0 rgba(207,233,232,0.39),93.4vw 47.76vh 0 rgba(207,233,232,0.47),68.31vw 42.68vh 0 rgba(207,233,232,0.42),65.15vw 27.93vh 0 rgba(207,233,232,0.32),81.44vw 86.79vh 0 rgba(207,233,232,0.39),82.49vw 77.29vh 0 rgba(207,233,232,0.32),77.86vw 72.12vh 0 rgba(207,233,232,0.31),44.83vw 23.46vh 0 rgba(207,233,232,0.4),7.67vw 89.71vh 0 rgba(207,233,232,0.25),81.0vw 71.65vh 0 rgba(207,233,232,0.25),69.31vw 79.09vh 0 rgba(207,233,232,0.2),94.34vw 60.55vh 0 rgba(207,233,232,0.29),37.84vw 82.8vh 0 rgba(207,233,232,0.39),19.54vw 42.97vh 0 rgba(207,233,232,0.49),91.28vw 96.06vh 0 rgba(207,233,232,0.41),60.37vw 36.7vh 0 rgba(207,233,232,0.21),88.96vw 96.78vh 0 rgba(207,233,232,0.36),31.52vw 83.35vh 0 rgba(207,233,232,0.48),48.72vw 18.74vh 0 rgba(207,233,232,0.23),42.61vw 96.43vh 0 rgba(207,233,232,0.26),90.38vw 59.96vh 0 rgba(207,233,232,0.25),64.13vw 65.33vh 0 rgba(207,233,232,0.2),25.67vw 87.66vh 0 rgba(207,233,232,0.39),78.53vw 7.53vh 0 rgba(207,233,232,0.45),86.08vw 31.44vh 0 rgba(207,233,232,0.43),92.37vw 68.54vh 0 rgba(207,233,232,0.31),16.26vw 13.25vh 0 rgba(207,233,232,0.33),26.5vw 14.13vh 0 rgba(207,233,232,0.4),51.72vw 23.79vh 0 rgba(207,233,232,0.47),87.55vw 66.63vh 0 rgba(207,233,232,0.28),8.13vw 92.57vh 0 rgba(207,233,232,0.45)}
.hero.galaxy .snear{width:2px;height:2px;box-shadow:60.55vw 47.5vh 0 rgba(207,233,232,0.66),72.76vw 86.54vh 0 rgba(207,233,232,0.79),75.17vw 45.31vh 0 rgba(207,233,232,0.74),51.38vw 34.68vh 0 rgba(207,233,232,0.91),94.94vw 39.63vh 0 rgba(207,233,232,0.86),79.5vw 13.4vh 0 rgba(207,233,232,0.95),94.03vw 47.72vh 0 rgba(207,233,232,0.67),47.41vw 4.89vh 0 rgba(207,233,232,0.75),2.18vw 46.81vh 0 rgba(207,233,232,0.86),52.74vw 58.57vh 0 rgba(207,233,232,0.76),30.11vw 39.24vh 0 rgba(207,233,232,0.66),61.42vw 8.15vh 0 rgba(207,233,232,0.93),18.44vw 52.18vh 0 rgba(207,233,232,0.69),59.74vw 34.0vh 0 rgba(207,233,232,0.8),69.88vw 24.09vh 0 rgba(207,233,232,0.75),43.6vw 76.02vh 0 rgba(207,233,232,0.75),10.73vw 92.05vh 0 rgba(207,233,232,0.68),48.65vw 2.89vh 0 rgba(207,233,232,0.93),1.71vw 53.36vh 0 rgba(207,233,232,0.93),30.99vw 78.42vh 0 rgba(207,233,232,0.63),95.27vw 88.24vh 0 rgba(207,233,232,0.78),57.27vw 2.53vh 0 rgba(207,233,232,0.87),72.23vw 14.44vh 0 rgba(207,233,232,0.69),90.34vw 63.46vh 0 rgba(207,233,232,0.77),80.53vw 24.21vh 0 rgba(207,233,232,0.83),15.72vw 8.99vh 0 rgba(207,233,232,0.63),91.31vw 48.33vh 0 rgba(207,233,232,0.64),78.84vw 12.92vh 0 rgba(207,233,232,0.67),14.03vw 93.24vh 0 rgba(207,233,232,0.94),17.83vw 47.94vh 0 rgba(207,233,232,0.68),72.85vw 78.41vh 0 rgba(207,233,232,0.76),82.62vw 54.64vh 0 rgba(207,233,232,0.79),54.98vw 13.97vh 0 rgba(207,233,232,0.86),43.09vw 65.23vh 0 rgba(207,233,232,0.75),81.91vw 43.41vh 0 rgba(207,233,232,0.9),55.34vw 49.29vh 0 rgba(207,233,232,0.79),67.44vw 18.47vh 0 rgba(207,233,232,0.85),48.79vw 98.59vh 0 rgba(207,233,232,0.75),23.67vw 51.69vh 0 rgba(207,233,232,0.8),20.12vw 68.81vh 0 rgba(207,233,232,0.93),39.15vw 70.49vh 0 rgba(207,233,232,0.69),25.6vw 16.94vh 0 rgba(207,233,232,0.66),72.69vw 3.18vh 0 rgba(207,233,232,0.88),85.14vw 40.58vh 0 rgba(207,233,232,0.63),20.21vw 62.92vh 0 rgba(207,233,232,0.92),22.19vw 0.6vh 0 rgba(207,233,232,0.93),7.42vw 43.23vh 0 rgba(207,233,232,0.6),69.53vw 30.44vh 0 rgba(207,233,232,0.62);animation:gtw 4s ease-in-out infinite alternate}
.hero.galaxy .sacc{width:2px;height:2px;box-shadow:48.72vw 91.04vh 0 rgba(95,199,197,0.72),44.89vw 54.82vh 0 rgba(95,199,197,0.56),75.46vw 88.03vh 0 rgba(95,199,197,0.63),59.46vw 88.36vh 0 rgba(95,199,197,0.62),33.23vw 7.6vh 0 rgba(95,199,197,0.58),11.47vw 6.26vh 0 rgba(95,199,197,0.88),49.4vw 69.02vh 0 rgba(95,199,197,0.57),18.78vw 49.04vh 0 rgba(95,199,197,0.79),9.57vw 7.5vh 0 rgba(95,199,197,0.89),36.66vw 36.62vh 0 rgba(95,199,197,0.82),47.04vw 28.02vh 0 rgba(95,199,197,0.65),98.99vw 72.95vh 0 rgba(95,199,197,0.7),25.58vw 31.71vh 0 rgba(95,199,197,0.61),78.18vw 21.85vh 0 rgba(95,199,197,0.5),48.6vw 22.96vh 0 rgba(95,199,197,0.88),88.88vw 80.39vh 0 rgba(95,199,197,0.88),79.3vw 90.8vh 0 rgba(95,199,197,0.52),87.15vw 70.77vh 0 rgba(95,199,197,0.84),69.14vw 38.72vh 0 rgba(95,199,197,0.51),45.02vw 53.74vh 0 rgba(95,199,197,0.62)}
@keyframes gtw{from{opacity:.5}
to{opacity:1}
}
.hero.galaxy .galaxy-ey{color:#5FC7C5!important;letter-spacing:.12em}
.hero.galaxy .galaxy-ey .ln{background:#5FC7C5}
.hero.galaxy .mega .l1{color:#EAF4F3}
.hero.galaxy .mega .g{background:linear-gradient(90deg,#fff,#5FC7C5);-webkit-background-clip:text;background-clip:text;color:transparent}
.hero.galaxy .mega .l1,.hero.galaxy .mega .l2{font-size:clamp(44px,8.5vw,98px)}
.hero.galaxy .lead{color:rgba(226,240,239,.82)}
@media(prefers-reduced-motion:reduce){.hero.galaxy .neb,.hero.galaxy .snear{animation:none}
}
/* dark sections -> subtle cosmos */
section.dark{position:relative;background:
  radial-gradient(900px 600px at 85% -10%, rgba(31,95,95,.30), transparent 60%),
  radial-gradient(800px 600px at 8% 110%, rgba(74,153,152,.16), transparent 60%),
  linear-gradient(180deg,#070C0C,#0B1414)}
section.dark::before{content:"";position:absolute;inset:0;pointer-events:none;opacity:.5;background-image:
  radial-gradient(1px 1px at 20% 30%, rgba(207,233,232,.5), transparent),
  radial-gradient(1px 1px at 70% 60%, rgba(207,233,232,.4), transparent),
  radial-gradient(1px 1px at 40% 80%, rgba(207,233,232,.35), transparent),
  radial-gradient(1px 1px at 90% 20%, rgba(95,199,197,.5), transparent),
  radial-gradient(1px 1px at 55% 45%, rgba(207,233,232,.3), transparent);
  background-size:260px 260px,320px 320px,280px 280px,300px 300px,240px 240px}
section.dark>.wrap{position:relative;z-index:1}

.tsum-h{font-weight:800}
/* smaller display headings (subhero H1s), balanced vs the hero */
.dxl{font-size:clamp(30px,5.4vw,58px)}
/* how-it-works flow diagram */
.flowsec .flowstage{position:relative;z-index:1;max-width:820px;margin:clamp(20px,4vh,40px) auto 0}
.flowsec .flowstage svg{display:block;width:100%;height:auto}
.flowsec .flowlegend{position:relative;z-index:1;display:grid;grid-template-columns:repeat(3,1fr);gap:24px;max-width:900px;margin:clamp(18px,3vh,30px) auto 0}
.flowsec .flowitem{text-align:center}
.flowsec .flowitem .fnum{display:inline-grid;place-items:center;width:30px;height:30px;border-radius:50%;background:var(--sage-300);color:var(--ink-900);font-weight:800;font-size:14px;margin-block-end:8px}
.flowsec .flowitem h4{font-size:15px;font-weight:800;margin-block-end:5px;color:#EAF4F3}
.flowsec .flowitem p{font-size:12.5px;line-height:1.5;color:rgba(226,240,239,.62)}
@media(max-width:640px){.flowsec .flowlegend{grid-template-columns:1fr;gap:16px}
}
/* header: phone icon + mobile hamburger menu */
.hphone{display:inline-flex;align-items:center;justify-content:center;width:40px;height:40px;color:#fff;flex:none;text-decoration:none;transition:color .2s}
header.light .hphone{color:var(--ink-700)}
.hphone svg{width:20px;height:20px}
.hphone:hover{color:var(--teal-400)}
.burger{display:none;flex-direction:column;justify-content:center;gap:5px;width:42px;height:42px;background:transparent;border:0;cursor:pointer;flex:none;padding:0}
.burger span{display:block;width:22px;height:2px;background:#fff;margin:0 auto;transition:transform .25s,opacity .2s}
header.light .burger span{background:var(--ink-900)}
.burger[aria-expanded=true] span:nth-child(1){transform:translateY(7px) rotate(45deg)}
.burger[aria-expanded=true] span:nth-child(2){opacity:0}
.burger[aria-expanded=true] span:nth-child(3){transform:translateY(-7px) rotate(-45deg)}
.mobmenu{display:none}
@media(max-width:860px){
  .nav .links,.nav .hcta{display:none}
  .nav .hphone{margin-inline-start:auto}
  .burger{display:flex}
  .mobmenu{display:flex;flex-direction:column;position:absolute;inset-inline:0;top:100%;background:rgba(16,24,30,.98);backdrop-filter:blur(12px);border-block-start:1px solid rgba(255,255,255,.08);max-height:0;overflow:hidden;transition:max-height .3s ease}
  header.light .mobmenu{background:rgba(238,233,226,.98);border-block-start-color:var(--ink-100)}
  .mobmenu.open{max-height:88vh;padding:6px 0 16px}
  .mobmenu a{padding:13px 26px;text-decoration:none;font-weight:700;font-size:16px;color:#fff}
  header.light .mobmenu a{color:var(--ink-800)}
  .mobmenu a[aria-current=page]{color:var(--teal-400)}
  .mobmenu .mobcta{margin:12px 26px 0;text-align:center;color:var(--ink-900) !important}
}
summary .tsum-d{display:block;font-weight:500;font-size:13px;line-height:1.5;color:var(--ink-500);margin-block-start:6px;max-width:64ch}
/* dashboard comparison: make the align column clearly "this is what we do" */
.cmp .cmpcol.me{position:relative;z-index:1;box-shadow:0 0 0 2px var(--teal-400),0 26px 60px rgba(35,110,109,.28)}
.cmp .cmpcol.me .cbadge{display:inline-block;align-self:flex-start;background:var(--sage-300);color:var(--ink-900);font-size:11px;font-weight:800;letter-spacing:.04em;padding:5px 12px;margin-block-end:14px}
@media(min-width:820px){.cmp .cmpcol.me{transform:scale(1.03)}
}

@media(max-width:819px){
  .cyclewrap{grid-template-columns:1fr !important;display:block !important}
  .cycle{position:static !important;display:flex !important;flex-direction:column;gap:10px;width:100% !important;max-width:none !important;height:auto !important;min-height:0 !important;aspect-ratio:auto !important;margin:14px 0 0 !important;padding:0 !important}
  .cycle>svg{display:none !important}
  .cycle .chub{position:static !important;inset:auto !important;transform:none !important;width:auto !important;height:auto !important;border-radius:14px;padding:16px;text-align:center;order:-1;margin:0 0 4px}
  .cycle .cnode{position:static !important;inset:auto !important;transform:none !important;width:100% !important;max-width:none !important;display:flex !important;align-items:center;gap:13px;justify-content:flex-start;text-align:start;padding:14px 16px}
  .cycle .cnode .cn,.cycle .cnode .cn.num{position:static !important;inset:auto !important;transform:none !important;margin:0 !important;flex:none}
  .cycle .cnode b{font-size:15px;line-height:1.35}
}


.rv{opacity:1!important;transform:none!important}

/* nav dropdown.
   .links is overflow-x:auto, which clips an absolutely-positioned submenu.
   The desktop nav only exists above 860px (below that .nav .links is
   display:none and the burger takes over), and at those widths there is room
   for every link, so scrolling is not needed there. */
@media(min-width:861px){ .links{overflow:visible}
 }
.links .dd{position:relative;display:inline-flex;align-items:center}
.links .dd>a{display:inline-flex;align-items:center;gap:6px}
.links .dd>a::after{content:"";width:6px;height:6px;border-inline-end:2px solid currentColor;border-block-end:2px solid currentColor;transform:rotate(45deg) translateY(-2px);opacity:.7}
.links .ddm{position:absolute;inset-block-start:100%;inset-inline-end:0;min-inline-size:250px;background:#fff;border:1px solid var(--ink-100);border-radius:10px;box-shadow:0 12px 32px rgba(12,6,50,.14);padding:6px;display:none;z-index:60}
.links .dd:hover .ddm,.links .dd:focus-within .ddm{display:block}
.links .ddm a{display:block;min-height:auto;padding:10px 12px;border-radius:7px;color:var(--ink-700);font-weight:600;white-space:nowrap}
.links .ddm a:hover,.links .ddm a:focus-visible{background:var(--sage-50);color:var(--teal-700)}
header.dark .links .ddm{background:#120a44;border-color:rgba(255,255,255,.14)}
header.dark .links .ddm a{color:var(--sage-100)}
header.dark .links .ddm a:hover,header.dark .links .ddm a:focus-visible{background:rgba(255,255,255,.08);color:#fff}
/* mobile menu group. .mgroup is a <span>; without an explicit block display
   its children lay out inline and spill across one line.
   The category head is a normal-weight nav item (same 16px as its siblings) so
   it reads as a peer, and the two reports sit indented beneath it. */
.mobmenu .mgroup{display:block}
.mobmenu .mgroup>a.mghead{display:block}
.mobmenu .mgroup .mgkids{display:block;padding-inline-start:26px;margin-block:2px 8px}
.mobmenu .mgroup .mgkids a{display:block;padding:11px 18px;font-size:15px;font-weight:600;opacity:.86;border-inline-start:2px solid rgba(127,127,127,.3)}
.mobmenu .mgroup .mgkids a:hover,.mobmenu .mgroup .mgkids a:focus-visible{opacity:1;border-inline-start-color:var(--teal-500)}
/* QA fixes on the report shell.
   1. The active rail label is set for light sections; on a dark section it
      renders teal-on-near-black at 2.34:1. Invert it there.
   2. The last section could never satisfy the rail's IntersectionObserver
      because the page runs out of scroll, so its rail dot was dead.
   3. The platform bars collapse to 0-1px inside a 14px track at 320px. */
#rail button .lbl{background:var(--ink-900);color:#fff;padding:3px 8px;border-radius:6px}
#rail button:focus-visible .lbl{opacity:1}
#rail .dot{box-shadow:0 0 0 1px rgba(0,0,0,.28)}
section[data-nav]:last-of-type{padding-block-end:clamp(120px,32vh,320px)}
@media(max-width:360px){
  #bars .bar-row{display:grid;grid-template-columns:1fr;gap:2px}
  #bars .bar-track{min-inline-size:100%}
}
/* .dark-sec in the report shell only restyles .eyebrow; the dark background
   itself comes from id rules (#why, #cta). A new section marked .dark-sec got
   light text on a white background - invisible. Make the class do what its
   name says. No-op for #why/#cta, which set the same background by id. */
.dark-sec{background:var(--ink-900);color:#fff}
.dark-sec p,.dark-sec li{color:var(--sage-100)}
.dark-sec h2,.dark-sec h3{color:#fff}
/* report: pattern chain + ask list */
.chain-list{list-style:none;margin:0;padding:0;display:grid;gap:10px;max-inline-size:820px}
.chain-list li{display:grid;gap:4px;padding:14px 18px;background:rgba(255,255,255,.06);border-inline-start:3px solid var(--teal-400);border-radius:0 8px 8px 0}
.chain-list .cl-k{font-size:12px;font-weight:800;letter-spacing:.1em;color:var(--teal-300);text-transform:uppercase}
.chain-list .cl-v{color:#fff;font-weight:600;line-height:1.55}
ul.ask{list-style:none;margin:0;padding:0;display:grid;gap:14px;max-inline-size:760px}
ul.ask li{color:var(--sage-100);line-height:1.7;padding-inline-start:20px;position:relative}
ul.ask li::before{content:"";position:absolute;inset-inline-start:0;inset-block-start:11px;width:7px;height:7px;border-radius:50%;background:var(--teal-400)}
/* demo hub cards */
.demo-cards{display:grid;gap:16px;grid-template-columns:1fr;margin-block-start:26px}
@media(min-width:760px){.demo-cards{grid-template-columns:1fr 1fr}
}
.demo-card{display:block;text-decoration:none;padding:24px;border:1px solid var(--ink-100);border-radius:14px;background:#fff;transition:border-color .2s,transform .2s}
.demo-card:hover{border-color:var(--teal-400);transform:translateY(-2px)}
.demo-card .dc-k{font-size:12px;font-weight:800;letter-spacing:.1em;color:var(--teal-600);text-transform:uppercase}
.demo-card h3{margin:10px 0 8px;font-size:22px;font-weight:800;color:var(--ink-900);letter-spacing:-.02em;line-height:1.2}
.demo-card p{color:var(--ink-600);line-height:1.6;margin:0;font-size:15px}


.crumbs{display:flex;flex-wrap:wrap;gap:8px;font-size:12px;font-weight:600;letter-spacing:.04em;color:var(--ink-300);margin-block-end:22px}
.crumbs a{color:var(--sage-300);text-decoration:none}
.crumbs a:hover{color:#fff}
.subhero .ameta{font-size:12px;letter-spacing:.1em;text-transform:uppercase;color:var(--ink-300);margin-block-start:18px;font-weight:600}
.subhero h1.atitle{font-weight:800;font-size:clamp(30px,4.6vw,56px);line-height:1.05;letter-spacing:-.03em;max-width:820px;margin-block-start:20px}
.article .lede{font-size:clamp(18px,1.7vw,22px);line-height:1.6;color:var(--ink-900);font-weight:600;max-width:720px;margin-block-end:24px}
.article blockquote.q{font-size:18px;font-weight:600;line-height:1.5;color:var(--teal-700);border-inline-start:3px solid var(--teal-400);padding-inline-start:16px;margin:0 0 14px;max-width:640px;letter-spacing:0}
.article h2{color:var(--ink-900)}
.article h2 .ek{display:block;font-size:12px;font-weight:800;letter-spacing:.12em;text-transform:uppercase;color:var(--teal-600);margin-block-end:8px;line-height:1.3}
.article .step{display:flex;align-items:baseline;gap:14px;margin-block:34px 10px}
.article .step .sn{font-weight:800;font-size:13px;letter-spacing:.14em;color:var(--teal-600);flex:none}
.article .step h2{margin:0}
.article .trace{font-weight:800;color:var(--ink-900);font-size:18px;line-height:1.6;background:var(--sage-50);padding:16px 20px;border-inline-start:3px solid var(--teal-500);max-width:720px}
.article .trace{direction:rtl}
.posts a.post{text-decoration:none;color:inherit;display:grid}
.post .pn::before{content:attr(data-n)}
.post h2{font-size:clamp(20px,2.2vw,28px);font-weight:800;letter-spacing:-.02em;line-height:1.15}
.author{display:grid;gap:8px;max-width:720px}
.author .an{font-weight:800;font-size:20px;color:var(--ink-900)}
.author p{color:var(--ink-600);line-height:1.7;margin:0}
.author a{color:var(--teal-700);font-weight:700;text-decoration:none}
.author a:hover{text-decoration:underline}
.faq{margin-block-start:clamp(20px,3vh,32px);border-block-start:1px solid var(--ink-100)}
.faq .qa{padding:22px 0;border-block-end:1px solid var(--ink-100)}
.faq h3{font-size:18px;font-weight:800;letter-spacing:-.01em;color:var(--ink-900)}
.faq p{color:var(--ink-600);line-height:1.7;margin-block-start:8px;max-width:720px}
@media(min-width:760px){.article .step{margin-block:40px 12px}
}

/* a11y polish */
.cmp .cs{color:var(--ink-500)}
.mxc-no{color:var(--ink-500)}
.chidx::before{content:attr(data-n)}
.erow h2{font-weight:800;font-size:clamp(19px,2vw,24px);letter-spacing:-.02em}
