/* Self-hosted fonts (SIL Open Font License, see assets/fonts/OFL-*.txt). No third-party requests. */
@font-face{font-family:"Figtree";font-style:normal;font-display:swap;font-weight:300 900;src:url(fonts/figtree-latin-wght-normal.woff2) format("woff2-variations");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}
@font-face{font-family:"Figtree";font-style:normal;font-display:swap;font-weight:300 900;src:url(fonts/figtree-latin-ext-wght-normal.woff2) format("woff2-variations");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}
@font-face{font-family:"Figtree";font-style:italic;font-display:swap;font-weight:300 900;src:url(fonts/figtree-latin-wght-italic.woff2) format("woff2-variations");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}
@font-face{font-family:"JetBrains Mono";font-style:normal;font-display:swap;font-weight:100 800;src:url(fonts/jetbrains-mono-latin-wght-normal.woff2) format("woff2-variations");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}
@charset "UTF-8";

/* Single deliberate light theme with deep-blue bands; colours painted explicitly. */
:root{
  color-scheme:light;
  --paper:#FFFFFF; --sunk:#F3F6FB; --ink:#131C2B; --muted:#5A6576; --line:#DFE4EC;
  --blue:#1E3A66; --blue-d:#0B1F3A; --blue-soft:#E9EEF5; --navy:#0B1F3A; --navy2:#163257;
  --gold:#C6A24D; --gold-soft:#F6EFDD; --ok:#1C8657; --ok-soft:#E1F4EA; --warn:#B7791F; --warn-soft:#FDF1DC; --red:#C23A3A; --red-soft:#FBE7E7;
  --shadow:0 1px 2px rgba(11,31,58,.05),0 12px 32px rgba(11,31,58,.09);
  --body:"Figtree",ui-sans-serif,system-ui,-apple-system,"Segoe UI",sans-serif;
  --mono:"JetBrains Mono",ui-monospace,SFMono-Regular,Menlo,monospace;
}
*{box-sizing:border-box}
html,body{overflow-x:clip}
html{scroll-padding-top:80px}
body{background:var(--paper);color:var(--ink);font-family:var(--body);font-size:16px;line-height:1.55;padding-inline:20px}
.wrap{max-width:1200px;margin-inline:auto}
.bleed{margin-inline:calc(50% - 50vw);padding-inline:max(20px,calc(50vw - 600px))}
h1,h2,h3,h4{margin:0;line-height:1.1;text-wrap:balance;overflow-wrap:anywhere}
h1{font-size:clamp(2.4rem,5vw,4rem);font-weight:300;letter-spacing:-.03em}
h1 b{font-weight:700;color:var(--gold)}
h2{font-size:clamp(1.8rem,3.4vw,2.6rem);font-weight:400;letter-spacing:-.02em}
h3{font-size:1.15rem;font-weight:600}
p{margin:0}
a{color:inherit}
button,input,select{font:inherit;color:inherit}
:focus-visible{outline:3px solid var(--gold);outline-offset:2px;border-radius:6px}
.eyebrow{font-size:.78rem;letter-spacing:.14em;text-transform:uppercase;color:var(--blue);font-weight:700}
.lede{color:var(--muted);font-size:1.1rem;max-width:62ch}
.btn{display:inline-flex;align-items:center;justify-content:center;gap:.5em;border:0;border-radius:999px;padding:.8em 1.35em;font-weight:600;cursor:pointer;text-decoration:none;transition:background .15s,transform .15s,box-shadow .15s;white-space:nowrap}
.btn-blue{background:var(--blue);color:#fff}.btn-blue:hover{background:var(--blue-d)}
.btn-gold{background:var(--gold);color:#1A1200}.btn-gold:hover{background:#D4B465}
.btn-ghost{background:transparent;box-shadow:inset 0 0 0 1.5px var(--line);color:var(--ink)}.btn-ghost:hover{box-shadow:inset 0 0 0 1.5px var(--ink)}
.btn-ghost-w{background:transparent;color:#fff;box-shadow:inset 0 0 0 1.5px rgba(255,255,255,.55)}.btn-ghost-w:hover{box-shadow:inset 0 0 0 1.5px #fff}
.link{color:var(--blue);font-weight:600;text-decoration:none}.link:hover{text-decoration:underline}
.sample{font-family:var(--mono);font-size:.62rem;letter-spacing:.08em;text-transform:uppercase;color:var(--muted);border:1px dashed var(--line);border-radius:4px;padding:1px 6px;white-space:nowrap}
.soon{font-size:.66rem;font-weight:700;letter-spacing:.06em;text-transform:uppercase;background:var(--gold-soft);color:#7A5C1C;border-radius:999px;padding:2px 7px;margin-left:6px;vertical-align:1px}
section{padding-block:clamp(64px,8vw,104px)}
.head{display:grid;gap:14px;max-width:780px;margin-bottom:40px}
.head.center{margin-inline:auto;text-align:center;justify-items:center}

/* ---------- announcement + nav ---------- */
.announce{background:var(--navy);color:#E3E7EE;font-size:.88rem;text-align:center;padding-block:9px}
.announce a{color:var(--gold);font-weight:600;text-decoration:none;margin-left:6px}
.nav{position:sticky;top:env(safe-area-inset-top,0px);z-index:50;background:rgba(255,255,255,.96);backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);border-bottom:1px solid var(--line)}
.nav .row{max-width:1200px;margin-inline:auto;display:flex;align-items:center;gap:8px;height:68px}
.logo{font-weight:800;font-size:1.45rem;letter-spacing:-.02em;text-decoration:none;color:var(--ink);margin-right:18px}
.logo span{color:var(--gold)}
.menu{display:flex;align-items:center;gap:2px;list-style:none;margin:0;padding:0;height:100%}
.menu>li{position:static;height:100%;display:flex;align-items:center}
.menu>li>button,.menu>li>a{background:none;border:0;padding:8px 12px;border-radius:8px;font-weight:500;font-size:.95rem;cursor:pointer;text-decoration:none;color:var(--ink);display:flex;align-items:center;gap:6px}
.menu>li>button::after{content:"";width:7px;height:7px;border-right:1.5px solid currentColor;border-bottom:1.5px solid currentColor;transform:rotate(45deg) translateY(-2px);opacity:.6;transition:transform .2s}
.menu>li>button[aria-expanded=true]::after{transform:rotate(225deg) translateY(-2px)}
.menu>li>button:hover,.menu>li>a:hover,.menu>li>button[aria-expanded=true]{background:var(--sunk)}
.nav-cta{margin-left:auto;display:flex;align-items:center;gap:10px}
.nav-cta .login{text-decoration:none;font-weight:500;padding:8px 10px}
.burger{display:none;margin-left:auto;background:none;border:1px solid var(--line);border-radius:10px;width:42px;height:40px;cursor:pointer}
.burger i,.burger i::before,.burger i::after{display:block;width:18px;height:2px;background:var(--ink);margin:auto;position:relative;content:""}
.burger i::before{position:absolute;top:-6px}.burger i::after{position:absolute;top:6px}
.panel{position:absolute;left:0;right:0;top:68px;background:#fff;border-bottom:1px solid var(--line);box-shadow:0 24px 48px rgba(11,31,58,.12);padding:28px max(20px,calc(50vw - 600px)) 32px}
.panel[hidden]{display:none}
.pgrid{max-width:1200px;margin-inline:auto;display:grid;gap:28px}
.pcol h4{font-size:.74rem;letter-spacing:.14em;text-transform:uppercase;color:var(--muted);font-weight:700;margin-bottom:10px}
.pcol ul{list-style:none;margin:0;padding:0;display:grid;gap:2px}
.pcol a{display:block;padding:9px 10px;border-radius:10px;text-decoration:none}
.pcol a:hover{background:var(--sunk)}
.pcol a b{display:block;font-weight:600;font-size:.95rem}
.pcol a small{display:block;color:var(--muted);font-size:.84rem;line-height:1.35;margin-top:2px}
.pcol.chips ul{grid-template-columns:1fr 1fr;gap:4px}
.pcol.chips a{padding:7px 10px;font-size:.92rem;font-weight:500}
.feature{background:linear-gradient(160deg,var(--navy),var(--navy2));color:#fff;border-radius:16px;padding:22px;display:grid;gap:10px;align-content:start}
.feature .eyebrow{color:var(--gold)}
.feature p{color:#C8D0DC;font-size:.92rem}
.feature a{justify-self:start}
@media (max-width:1040px){
  .menu,.nav-cta{display:none}
  .burger{display:block}
  .nav.open .menu{display:flex;flex-direction:column;align-items:stretch;position:absolute;top:68px;left:0;right:0;height:auto;max-height:calc(100vh - 68px);overflow:auto;background:#fff;border-bottom:1px solid var(--line);padding:10px 20px 20px;box-shadow:0 24px 48px rgba(11,31,58,.12)}
  .nav.open .menu>li{height:auto;display:block}
  .nav.open .menu>li>button,.nav.open .menu>li>a{width:100%;justify-content:space-between;padding:14px 8px;font-size:1.05rem;border-bottom:1px solid var(--line);border-radius:0}
  .panel{position:static;box-shadow:none;border:0;padding:8px 0 16px}
  .pgrid{grid-template-columns:1fr!important;gap:16px}
  .feature{display:none}
}
.menu>li.mobile-cta{display:none;gap:10px;padding-top:16px;height:auto}
@media (max-width:1040px){.nav.open .menu>li.mobile-cta{display:flex}}
.mobile-cta .btn{flex:1}

/* ---------- hero ---------- */
.hero{background:radial-gradient(80% 110% at 90% 0%,rgba(52,82,128,.55),transparent 60%),linear-gradient(165deg,var(--navy) 0%,var(--navy2) 70%,#122A4A 100%);color:#fff;position:relative;overflow:hidden;isolation:isolate}
.hero canvas{position:absolute;inset:0;width:100%;height:100%;z-index:-1;pointer-events:none}
.hero .in{display:grid;grid-template-columns:1.05fr .95fr;gap:48px;align-items:center;padding-block:72px 88px}
.hero .eyebrow{color:var(--gold)}
.hero .lede{color:rgba(255,255,255,.82);margin-top:20px}
.hero-cta{display:flex;gap:12px;flex-wrap:wrap;margin-top:28px}
.ticks{display:flex;flex-wrap:wrap;gap:8px 20px;margin-top:26px;font-size:.92rem;color:rgba(255,255,255,.8)}
.ticks span::before{content:"\2713 ";color:var(--gold);font-weight:800;margin-right:7px}
.app{background:#fff;color:var(--ink);border-radius:16px;box-shadow:0 30px 70px rgba(0,0,0,.35);overflow:hidden}
.app-top{display:flex;align-items:center;gap:8px;padding:10px 14px;border-bottom:1px solid var(--line);background:var(--sunk)}
.app-top i{width:10px;height:10px;border-radius:50%;background:#D3DAE5}
.app-top span{margin-left:8px;font-size:.8rem;color:var(--muted);font-family:var(--mono)}
.app-body{display:grid;grid-template-columns:150px 1fr;min-height:330px}
.app-side{background:#FAFBFD;border-right:1px solid var(--line);padding:12px 8px;display:grid;gap:2px;align-content:start;font-size:.82rem}
.app-side div{padding:7px 10px;border-radius:8px;color:var(--muted)}
.app-side .on{background:var(--blue-soft);color:var(--blue);font-weight:600}
.app-main{padding:16px;display:grid;gap:12px;align-content:start}
.kpis{display:grid;grid-template-columns:repeat(3,1fr);gap:10px}
.kpi{border:1px solid var(--line);border-radius:10px;padding:10px}
.kpi small{display:block;color:var(--muted);font-size:.72rem}
.kpi b{font-size:1.35rem;font-variant-numeric:tabular-nums}
.bars{display:grid;gap:8px}
.bar{display:grid;grid-template-columns:86px 1fr 38px;gap:8px;align-items:center;font-size:.8rem}
.bar .t{height:8px;border-radius:99px;background:var(--sunk);overflow:hidden}
.bar .t i{display:block;height:100%;background:var(--blue);border-radius:99px}
.bar b{text-align:right;font-variant-numeric:tabular-nums}
.todo{display:grid;gap:6px}
.todo div{display:flex;justify-content:space-between;gap:10px;align-items:center;font-size:.8rem;padding:8px 10px;border-radius:8px;background:var(--sunk)}
.pill{font-size:.68rem;font-weight:700;padding:3px 8px;border-radius:999px;white-space:nowrap}
.p-ok{background:var(--ok-soft);color:var(--ok)}.p-warn{background:var(--warn-soft);color:var(--warn)}.p-blue{background:var(--blue-soft);color:var(--blue)}.p-red{background:var(--red-soft);color:var(--red)}
@media (max-width:960px){.hero .in{grid-template-columns:1fr}.app-body{grid-template-columns:1fr}.app-side{display:none}}

/* ---------- deadline strip ---------- */
.strip{background:var(--sunk);border-bottom:1px solid var(--line)}
.strip .in{display:grid;grid-template-columns:auto 1fr;gap:28px;align-items:center;padding-block:22px}
.count{display:flex;align-items:baseline;gap:10px}
.count b{font-size:2.4rem;font-weight:800;color:var(--blue);font-variant-numeric:tabular-nums;letter-spacing:-.02em}
.count span{font-size:.92rem;color:var(--muted);max-width:18ch;line-height:1.3}
.strip ul{list-style:none;margin:0;padding:0;display:flex;flex-wrap:wrap;gap:10px 26px;font-weight:600;font-size:.95rem}
.strip li::before{content:"";display:inline-block;width:8px;height:8px;border-radius:50%;background:var(--gold);margin-right:9px;vertical-align:1px}
@media (max-width:760px){.strip .in{grid-template-columns:1fr;gap:14px}}

/* ---------- stages ---------- */
.stages{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}
.stage{border:1px solid var(--line);border-radius:18px;padding:28px;display:grid;gap:12px;align-content:start;background:#fff;transition:box-shadow .2s,transform .2s}
.stage:hover{box-shadow:var(--shadow);transform:translateY(-2px)}
.stage .n{font-size:.78rem;font-weight:700;letter-spacing:.12em;text-transform:uppercase;color:var(--gold)}
.stage p{color:var(--muted)}
.stage ul{margin:0;padding-left:18px;color:var(--muted);font-size:.93rem;display:grid;gap:4px}
@media (max-width:900px){.stages{grid-template-columns:1fr}}

/* ---------- product tour ---------- */
.tour{background:var(--sunk)}
.tabs{display:flex;flex-wrap:wrap;gap:6px;justify-content:center;margin-bottom:26px}
.tabs button{border:1px solid var(--line);background:#fff;border-radius:999px;padding:.6em 1.1em;font-weight:600;cursor:pointer;color:var(--muted)}
.tabs button[aria-selected=true]{background:var(--blue);border-color:var(--blue);color:#fff}
.tpanel{display:grid;grid-template-columns:.9fr 1.1fr;gap:40px;align-items:center;background:#fff;border:1px solid var(--line);border-radius:22px;padding:clamp(22px,4vw,44px);box-shadow:var(--shadow)}
.tpanel[hidden]{display:none}
.tpanel .copy{display:grid;gap:14px;align-content:start}
.tpanel .copy p{color:var(--muted)}
.tpanel .copy ul{margin:0;padding:0;list-style:none;display:grid;gap:8px}
.tpanel .copy li::before{content:"\2713 ";color:var(--ok);font-weight:800;margin-right:8px}
.mock{border:1px solid var(--line);border-radius:14px;overflow:hidden;background:#fff}
.mock .mh{display:flex;justify-content:space-between;align-items:center;gap:10px;padding:12px 14px;border-bottom:1px solid var(--line);background:#FAFBFD;font-weight:600;font-size:.9rem}
.mt{width:100%;border-collapse:collapse;font-size:.84rem}
.mt th,.mt td{text-align:left;padding:10px 14px;border-bottom:1px solid var(--line)}
.mt th{font-size:.72rem;letter-spacing:.06em;text-transform:uppercase;color:var(--muted);font-weight:600}
.mt tr:last-child td{border-bottom:0}
.mtwrap{overflow-x:auto}
.draft{padding:14px;display:grid;gap:10px;font-size:.88rem}
.draft .q{font-weight:600}
.draft .a{background:var(--sunk);border-radius:10px;padding:12px}
.cites{display:flex;flex-wrap:wrap;gap:6px}
.cites span{font-family:var(--mono);font-size:.7rem;padding:3px 7px;border-radius:6px;background:var(--blue-soft);color:var(--blue)}
@media (max-width:900px){.tpanel{grid-template-columns:1fr}}

/* ---------- checker ---------- */
.tool{display:grid;grid-template-columns:.9fr 1.1fr;border:1px solid var(--line);border-radius:22px;overflow:hidden;box-shadow:var(--shadow)}
.tool-in{padding:28px;display:grid;gap:18px;align-content:start;border-right:1px solid var(--line)}
.tool-out{padding:28px;background:var(--sunk);display:grid;gap:10px;align-content:start}
@media (max-width:900px){.tool{grid-template-columns:1fr}.tool-in{border-right:0;border-bottom:1px solid var(--line)}}
fieldset{border:0;padding:0;margin:0}
legend{font-weight:600;margin-bottom:10px}
.chips{display:flex;flex-wrap:wrap;gap:8px}
.chip{position:relative}
.chip input{position:absolute;opacity:0;inset:0;margin:0;cursor:pointer}
.chip span{display:inline-block;padding:.5em .95em;border-radius:999px;box-shadow:inset 0 0 0 1.5px var(--line);font-size:.92rem;cursor:pointer}
.chip input:checked+span{background:var(--blue);color:#fff;box-shadow:none}
.chip input:focus-visible+span{outline:3px solid var(--gold);outline-offset:2px}
.yn{display:flex;justify-content:space-between;gap:12px;align-items:center;padding:10px 0;border-top:1px solid var(--line);font-size:.95rem}
.sw{position:relative;width:46px;height:26px;flex:none}
.sw input{position:absolute;inset:0;opacity:0;margin:0;cursor:pointer;z-index:1}
.sw i{position:absolute;inset:0;border-radius:99px;background:#CBD3DF;transition:.2s}
.sw i::after{content:"";position:absolute;top:3px;left:3px;width:20px;height:20px;border-radius:50%;background:#fff;transition:.2s;box-shadow:0 1px 3px rgba(0,0,0,.2)}
.sw input:checked+i{background:var(--blue)}.sw input:checked+i::after{transform:translateX(20px)}
.sw input:focus-visible+i{outline:3px solid var(--gold);outline-offset:2px}
.rule{background:#fff;border:1px solid var(--line);border-radius:12px;padding:12px 14px;display:grid;grid-template-columns:auto 1fr;gap:3px 12px}
.rule .lv{grid-row:span 2;font-size:.66rem;font-weight:700;letter-spacing:.06em;text-transform:uppercase;padding:4px 7px;border-radius:5px;align-self:start;margin-top:2px}
.lv.must{background:var(--red-soft);color:var(--red)}.lv.likely{background:var(--gold-soft);color:#7A5C1C}.lv.check{background:var(--blue-soft);color:var(--blue)}
.rule b{font-size:.96rem}.rule p{font-size:.86rem;color:var(--muted)}

/* ---------- how it works ---------- */
.flow{display:grid;grid-template-columns:repeat(4,1fr);gap:0;counter-reset:s}
.fstep{padding:26px 24px;border-top:3px solid var(--line);display:grid;gap:10px;align-content:start;position:relative}
.fstep.you{border-top-color:var(--gold)}
.fstep:not(.you){border-top-color:var(--blue)}
.fstep .who{font-size:.72rem;font-weight:700;letter-spacing:.12em;text-transform:uppercase;color:var(--blue)}
.fstep.you .who{color:#7A5C1C}
.fstep p{color:var(--muted);font-size:.95rem}
@media (max-width:900px){.flow{grid-template-columns:1fr 1fr}}
@media (max-width:540px){.flow{grid-template-columns:1fr}}

/* ---------- frameworks ---------- */
.fwgrid{display:grid;grid-template-columns:repeat(5,1fr);gap:16px}
.fwc{border:1px solid var(--line);border-radius:16px;padding:20px;display:grid;gap:12px;align-content:start}
.fwc.in{border-color:var(--gold);background:linear-gradient(180deg,var(--gold-soft),#fff 55%)}
.fwc h3{font-size:1rem}
.fwc ul{list-style:none;margin:0;padding:0;display:grid;gap:7px;font-size:.92rem}
.fwc li small{color:var(--muted)}
@media (max-width:1000px){.fwgrid{grid-template-columns:1fr 1fr}}
@media (max-width:520px){.fwgrid{grid-template-columns:1fr}}

/* ---------- integrations ---------- */
.intg{display:grid;grid-template-columns:.8fr 1.2fr;gap:40px;align-items:center}
.logos{display:grid;grid-template-columns:repeat(4,1fr);gap:10px}
.lg{border:1px solid var(--line);border-radius:12px;padding:14px 10px;text-align:center;font-weight:600;font-size:.9rem;background:#fff}
.lg small{display:block;font-weight:500;color:var(--muted);font-size:.72rem;margin-top:2px}
.lg.req{border-style:dashed;color:var(--blue)}
@media (max-width:900px){.intg{grid-template-columns:1fr}.logos{grid-template-columns:repeat(3,1fr)}}
@media (max-width:480px){.logos{grid-template-columns:1fr 1fr}}

/* ---------- comparison ---------- */
.cmpwrap{overflow-x:auto;border:1px solid var(--line);border-radius:18px}
.cmp{width:100%;border-collapse:collapse;min-width:640px}
.cmp th,.cmp td{padding:15px 18px;text-align:left;border-bottom:1px solid var(--line);vertical-align:top}
.cmp thead th{background:var(--sunk);font-size:.82rem;letter-spacing:.06em;text-transform:uppercase;color:var(--muted)}
.cmp thead th:last-child{background:var(--navy);color:#fff}
.cmp td:first-child{font-weight:600;width:24%}
.cmp td:nth-child(2){color:var(--muted)}
.cmp td:last-child{background:#FAF8F2;font-weight:500}
.cmp td:last-child::before{content:"\2713  ";color:var(--ok);font-weight:800}
.cmp tr:last-child td{border-bottom:0}

/* ---------- founding + pricing ---------- */
.found{background:radial-gradient(80% 120% at 90% 0%,rgba(52,82,128,.6),transparent 60%),linear-gradient(160deg,var(--navy),var(--navy2));color:#fff;border-radius:24px;padding:clamp(28px,5vw,56px);display:grid;grid-template-columns:1.1fr .9fr;gap:40px}
.found .eyebrow{color:var(--gold)}
.found p{color:rgba(255,255,255,.8)}
.found ul{list-style:none;margin:0;padding:0;display:grid;gap:12px}
.found li{display:grid;grid-template-columns:24px 1fr;gap:8px}
.found li::before{content:"\2713 ";color:var(--gold);font-weight:800;font-size:1.15rem;line-height:1.3}
.seats{display:flex;flex-wrap:wrap;gap:8px;margin-top:20px}
.seats i{width:30px;height:30px;border-radius:8px;border:2px dashed rgba(198,162,77,.85)}
@media (max-width:860px){.found{grid-template-columns:1fr}}
.prices{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}
.price{border:1px solid var(--line);border-radius:18px;padding:26px;display:grid;gap:10px;align-content:start;background:#fff;position:relative}
.price.pop{border:2px solid var(--blue);box-shadow:var(--shadow)}
.price .flag{position:absolute;top:-12px;left:22px;background:var(--gold);color:#1A1200;font-size:.72rem;font-weight:700;padding:3px 10px;border-radius:999px}
.price .amt{font-size:1.7rem;font-weight:800;letter-spacing:-.01em;font-variant-numeric:tabular-nums}
.price .per{font-size:.84rem;color:var(--muted)}
.price p.for{color:var(--muted);font-size:.93rem}
.price ul{margin:0;padding-left:18px;display:grid;gap:5px;color:var(--muted);font-size:.93rem}
.cur{display:inline-flex;border:1px solid var(--line);border-radius:999px;padding:4px;gap:4px;margin-bottom:22px}
.cur button{border:0;background:none;border-radius:999px;padding:.45em 1em;font-weight:600;cursor:pointer;color:var(--muted)}
.cur button[aria-pressed=true]{background:var(--blue);color:#fff}
.pnote{margin-top:14px;font-size:.84rem;color:var(--muted)}
@media (max-width:900px){.prices{grid-template-columns:1fr}}

/* ---------- resources ---------- */
.res{display:grid;grid-template-columns:repeat(4,1fr);gap:16px}
.rc{border:1px solid var(--line);border-radius:16px;padding:22px;display:grid;gap:10px;align-content:start;text-decoration:none;background:#fff;transition:box-shadow .2s}
.rc:hover{box-shadow:var(--shadow)}
.rc .k{font-size:.72rem;font-weight:700;letter-spacing:.12em;text-transform:uppercase;color:var(--blue)}
.rc p{color:var(--muted);font-size:.92rem}
@media (max-width:1000px){.res{grid-template-columns:1fr 1fr}}
@media (max-width:520px){.res{grid-template-columns:1fr}}

/* ---------- final cta ---------- */
.final{background:linear-gradient(165deg,var(--navy),var(--navy2));color:#fff}
.final .in{display:grid;grid-template-columns:1.1fr .9fr;gap:48px;align-items:center}
.final .lede{color:rgba(255,255,255,.8)}
.news{background:rgba(255,255,255,.08);border:1px solid rgba(255,255,255,.18);border-radius:18px;padding:24px;display:grid;gap:12px}
.news label{font-size:.9rem;color:#C8D0DC}
.news .row{display:flex;gap:8px;flex-wrap:wrap}
.news input{flex:1;min-width:0;padding:.75em 1em;border-radius:999px;border:0;background:#fff;color:var(--ink)}
.done{font-size:.9rem;color:#BFF0D5}
@media (max-width:900px){.final .in{grid-template-columns:1fr}}

/* ---------- footer ---------- */
footer{background:#081628;color:#AEB9CC}
footer .top{display:grid;grid-template-columns:1.3fr repeat(5,1fr);gap:28px;padding-block:56px 36px}
footer h4{color:#fff;font-size:.84rem;letter-spacing:.08em;text-transform:uppercase;margin-bottom:12px}
footer ul{list-style:none;margin:0;padding:0;display:grid;gap:8px;font-size:.92rem}
footer a{text-decoration:none}footer a:hover{color:#fff}
footer .brand p{margin-top:12px;font-size:.92rem;max-width:30ch}
footer .bottom{border-top:1px solid rgba(255,255,255,.1);padding-block:20px 32px;display:flex;justify-content:space-between;gap:16px;flex-wrap:wrap;font-size:.84rem}
@media (max-width:1000px){footer .top{grid-template-columns:1fr 1fr 1fr}}
@media (max-width:560px){footer .top{grid-template-columns:1fr 1fr}}
@media (prefers-reduced-motion:reduce){*,*::before,*::after{animation:none!important;transition:none!important}}

/* ================= multi-page additions ================= */
.phero{background:radial-gradient(80% 120% at 90% 0%,rgba(52,82,128,.5),transparent 60%),linear-gradient(165deg,var(--navy),var(--navy2));color:#fff;padding-block:64px 72px}
.phero .eyebrow{color:var(--gold)}
.phero h1{font-size:clamp(2.1rem,4.4vw,3.4rem);margin-top:12px;max-width:22ch}
.phero .lede{color:rgba(255,255,255,.82);margin-top:18px}
.crumb{font-size:.86rem;color:#B3BCCB;margin-bottom:14px}
.crumb a{color:#E3E7EE;text-decoration:none}.crumb a:hover{text-decoration:underline}
.cards{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}
.cards.two{grid-template-columns:repeat(2,1fr)}
.cards.four{grid-template-columns:repeat(4,1fr)}
.card{border:1px solid var(--line);border-radius:16px;padding:24px;display:grid;gap:10px;align-content:start;background:#fff;text-decoration:none;transition:box-shadow .2s,transform .2s}
a.card:hover{box-shadow:var(--shadow);transform:translateY(-2px)}
.card .k{font-size:.72rem;font-weight:700;letter-spacing:.12em;text-transform:uppercase;color:var(--blue)}
.card p{color:var(--muted);font-size:.94rem}
.card .go{color:var(--blue);font-weight:600;font-size:.92rem}
.card ul{margin:0;padding-left:18px;color:var(--muted);font-size:.93rem;display:grid;gap:4px}
@media (max-width:960px){.cards,.cards.four{grid-template-columns:1fr 1fr}}
@media (max-width:560px){.cards,.cards.two,.cards.four{grid-template-columns:1fr}}
.split{display:grid;grid-template-columns:1fr 1fr;gap:44px;align-items:start}
@media (max-width:900px){.split{grid-template-columns:1fr}}
.checks{list-style:none;margin:0;padding:0;display:grid;gap:10px}
.checks li{display:grid;grid-template-columns:22px 1fr;gap:8px}
.checks li::before{content:"\2713 ";color:var(--ok);font-weight:800}
.facts{display:grid;grid-template-columns:repeat(3,1fr);border:1px solid var(--line);border-radius:16px;overflow:hidden}
.facts div{padding:18px 20px;border-left:1px solid var(--line)}
.facts div:first-child{border-left:0}
.facts b{display:block;font-size:1.3rem}
.facts span{font-size:.88rem;color:var(--muted)}
@media (max-width:700px){.facts{grid-template-columns:1fr}.facts div{border-left:0;border-top:1px solid var(--line)}.facts div:first-child{border-top:0}}
.note{font-size:.86rem;color:var(--muted)}
.callout{border:1px solid var(--line);border-left:4px solid var(--gold);border-radius:12px;padding:16px 18px;background:var(--gold-soft);font-size:.94rem}
.sidebar{position:sticky;top:90px;display:grid;gap:14px}
.box{border:1px solid var(--line);border-radius:16px;padding:22px;display:grid;gap:10px;background:#fff}
.band{background:var(--sunk)}
.timeline{list-style:none;margin:0;padding:0;border-left:2px solid var(--line);display:grid;gap:22px}
.timeline li{position:relative;padding-left:24px}
.timeline li::before{content:"";position:absolute;left:-7px;top:6px;width:12px;height:12px;border-radius:50%;background:var(--blue);box-shadow:0 0 0 4px #fff}
.timeline li.soon::before{background:var(--gold)}
.timeline li.past::before{background:#9AA6B8}
.timeline time{font-size:.8rem;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:var(--blue)}
.timeline li.soon time{color:#7A5C1C}
.timeline h3{margin:4px 0 6px}
.timeline p{color:var(--muted);font-size:.95rem;max-width:70ch}
.tag{display:inline-block;font-size:.7rem;font-weight:700;padding:2px 8px;border-radius:999px;background:var(--blue-soft);color:var(--blue);margin-right:6px}
/* quiz */
.quiz{display:grid;gap:12px}
.qrow{border:1px solid var(--line);border-radius:14px;padding:16px 18px;display:grid;gap:10px;background:#fff}
.qrow .qt{font-weight:600}
.qrow .qa{font-size:.72rem;font-weight:700;letter-spacing:.1em;text-transform:uppercase;color:var(--muted)}
.opts{display:flex;flex-wrap:wrap;gap:8px}
.opt{position:relative}
.opt input{position:absolute;opacity:0;inset:0;margin:0;cursor:pointer}
.opt span{display:inline-block;padding:.45em 1em;border-radius:999px;box-shadow:inset 0 0 0 1.5px var(--line);font-size:.9rem;cursor:pointer}
.opt input:checked+span{background:var(--blue);color:#fff;box-shadow:none}
.opt input:focus-visible+span{outline:3px solid var(--gold);outline-offset:2px}
.score{display:grid;gap:14px}
.gauge{font-size:3.4rem;font-weight:800;color:var(--blue);line-height:1;font-variant-numeric:tabular-nums}
.gauge small{font-size:.35em;color:var(--muted);font-weight:600}
.meter{height:12px;border-radius:99px;background:var(--line);overflow:hidden}
.meter i{display:block;height:100%;background:linear-gradient(90deg,var(--red),var(--gold),var(--ok));transition:width .4s}
.gaps{list-style:none;margin:0;padding:0;display:grid;gap:8px}
.gaps li{background:#fff;border:1px solid var(--line);border-radius:10px;padding:10px 12px;font-size:.92rem}
.gaps li b{display:block}
.form{display:grid;gap:12px}
.form label{display:grid;gap:6px;font-size:.9rem;font-weight:500}
.form input,.form select,.form textarea{padding:.7em .9em;border-radius:10px;border:1px solid var(--line);background:#fff;font:inherit}
.form .two{display:grid;grid-template-columns:1fr 1fr;gap:12px}
@media (max-width:520px){.form .two{grid-template-columns:1fr}}
.ok-msg{background:var(--ok-soft);color:var(--ok);border-radius:10px;padding:12px 14px;font-size:.92rem}
.num{display:grid;gap:6px}
.num label{display:flex;justify-content:space-between;font-weight:500;font-size:.94rem}
.num output{font-family:var(--mono);color:var(--blue);font-weight:600}
.num input[type=range]{width:100%;accent-color:var(--blue)}
.bigstat{font-size:2.6rem;font-weight:800;color:var(--blue);font-variant-numeric:tabular-nums;line-height:1}
.cta-band{background:linear-gradient(165deg,var(--navy),var(--navy2));color:#fff;border-radius:22px;padding:clamp(28px,5vw,48px);display:flex;justify-content:space-between;align-items:center;gap:24px;flex-wrap:wrap}
.cta-band p{color:rgba(255,255,255,.8);margin-top:8px}

/* ================= mega menus v2: floating cards, rails, icon tiles ================= */
.mpanel{position:absolute;left:0;right:0;top:64px;padding:8px max(20px,calc(50vw - 610px)) 0;z-index:60}
.mpanel[hidden]{display:none}
.mcard{max-width:1220px;margin-inline:auto;background:#fff;border:1px solid var(--line);border-radius:22px;box-shadow:0 28px 70px rgba(11,31,58,.18),0 2px 6px rgba(11,31,58,.06);display:grid;grid-template-columns:240px minmax(0,1fr) 300px;overflow:hidden;animation:mIn .16s ease-out}
.mcard.mcols{grid-template-columns:repeat(3,minmax(0,1fr)) 300px;padding:26px 0 26px 26px;gap:8px}
.mcard.mcols:not(:has(.mfeat)){grid-template-columns:repeat(2,minmax(0,1fr));padding-right:26px;max-width:720px}
@keyframes mIn{from{opacity:0;transform:translateY(-6px)}to{opacity:1;transform:none}}
.rail{background:#F4F6FA;padding:18px 12px;display:grid;gap:4px;align-content:start;border-right:1px solid var(--line)}
.rt{display:flex;align-items:center;gap:8px;width:100%;text-align:left;border:0;background:transparent;border-radius:12px;padding:12px 14px;font-weight:600;font-size:.95rem;color:var(--ink);cursor:pointer}
.rt svg{width:16px;height:16px;margin-left:auto;opacity:.45}
.rt .rc{font-size:.72rem;font-weight:700;color:var(--muted);background:#fff;border:1px solid var(--line);border-radius:999px;padding:1px 7px}
.rt:hover{background:#fff}
.rt[aria-current=true]{background:var(--navy);color:#fff}
.rt[aria-current=true] svg{opacity:1}
.rt[aria-current=true] .rc{background:rgba(255,255,255,.15);border-color:transparent;color:#fff}
.panes{padding:24px 26px}
.pane[data-off]{display:none}
.ph{font-size:.72rem;letter-spacing:.14em;text-transform:uppercase;color:var(--muted);font-weight:700;margin:0 0 12px 10px}
.mgrid{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:1fr 1fr;gap:4px 8px}
.mlist{list-style:none;margin:0;padding:0;display:grid;gap:2px}
.mi{display:grid;grid-template-columns:44px 1fr;gap:12px;align-items:center;padding:10px;border-radius:14px;text-decoration:none;color:var(--ink);transition:background .12s}
.mi:hover{background:#F4F6FA}
.mi:hover .ti{background:var(--blue);color:#fff}
.mi b{display:block;font-weight:600;font-size:.95rem;line-height:1.25;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.mi small{display:block;color:var(--muted);font-size:.82rem;line-height:1.3;margin-top:2px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.ti{width:44px;height:44px;border-radius:12px;background:var(--blue-soft);color:var(--blue);display:grid;place-items:center;transition:background .12s,color .12s}
.ti svg{width:22px;height:22px}
.ti-code{font-family:var(--mono);font-size:.66rem;font-weight:700;letter-spacing:-.02em;text-align:center;line-height:1}
.mfeat{background:radial-gradient(90% 90% at 100% 0%,rgba(198,162,77,.18),transparent 55%),linear-gradient(160deg,#F1F3F7,#F8FAFD);border-left:1px solid var(--line);padding:24px;display:grid;gap:12px;align-content:start}
.mcard.mcols .mfeat{margin:-26px 0 -26px 18px}
.mfeat .eyebrow{color:var(--blue)}
.mfeat h3{font-size:1.1rem;line-height:1.3}
.mfeat p{color:var(--muted);font-size:.9rem}
.mfeat-links{display:grid;gap:10px;justify-items:start;margin-top:4px}
.mlink{color:var(--blue);font-weight:600;text-decoration:none;font-size:.92rem}
.mlink:hover{text-decoration:underline}
.hexart{width:100%;height:auto;max-height:170px}
.mcount{display:flex;align-items:baseline;gap:10px}
.mcount b{font-size:2.4rem;font-weight:800;color:var(--blue);font-variant-numeric:tabular-nums}
.mcount span{font-size:.86rem;color:var(--muted);line-height:1.3}
@media (max-width:1200px){.mcard{grid-template-columns:220px minmax(0,1fr)}.mcard .mfeat{display:none}.mcard.mcols{grid-template-columns:repeat(3,minmax(0,1fr));padding-right:26px}}
.rt{white-space:nowrap}
@media (max-width:1040px){
 .mpanel{position:static;padding:0 0 12px}
 .mcard,.mcard.mcols,.mcard.mcols:not(:has(.mfeat)){display:block;border:0;box-shadow:none;border-radius:0;padding:0;animation:none;max-width:none}
 .rail{display:none}
 .panes{padding:0}
 .pane[data-off]{display:block}
 .pane,.mcol{padding:8px 0}
 .mgrid{grid-template-columns:1fr}
 .mi{grid-template-columns:38px 1fr;padding:8px 4px}
 .ti{width:38px;height:38px;border-radius:10px}
}
@media (prefers-reduced-motion:reduce){.mcard{animation:none}}
.mcard{grid-template-columns:264px minmax(0,1fr) 300px}
.rail{min-width:0}.rt{min-width:0;font-size:.93rem}
.mcard.mcols{grid-template-columns:repeat(3,minmax(0,1fr)) 280px}
.mcols .mi small{white-space:normal;overflow:visible}
@media (max-width:1200px){.mcard{grid-template-columns:240px minmax(0,1fr)}.mcard.mcols{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media (max-width:1040px){.mcard,.mcard.mcols{display:block}}

/* ================= v3: InspireGRC-original menus ================= */
.mcard.loopcard,.mcard.drivecard,.mcard.stackcard{display:block;padding:26px 28px}
.eyebrow{font-size:.72rem;letter-spacing:.14em;text-transform:uppercase;font-weight:700;color:var(--blue)}
/* Platform: the loop */
.loophead{display:flex;align-items:flex-end;justify-content:space-between;gap:20px;margin-bottom:22px}
.loophead h3{font-size:1.25rem;margin-top:4px;line-height:1.3}
.loophead h3 em{font-style:normal;color:#7A5C1C;background:var(--gold-soft);border-radius:6px;padding:0 6px}
.loop{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:.8fr 1fr 1fr 1fr;gap:18px;position:relative}
.loop::before{content:"";position:absolute;left:17px;right:17px;top:17px;height:2px;background:repeating-linear-gradient(90deg,var(--blue) 0 8px,transparent 8px 14px);opacity:.45}
.st{position:relative;min-width:0}
.node{position:relative;z-index:1;display:grid;place-items:center;width:36px;height:36px;border-radius:50%;background:#fff;border:2px solid var(--blue);color:var(--blue);font-weight:800;font-size:.95rem;margin-bottom:12px;box-shadow:0 0 0 5px #fff}
.st h4{font-size:1rem;margin:0}
.sn{font-size:.82rem;color:var(--muted);margin:2px 0 10px;line-height:1.35}
.st.gate{background:linear-gradient(180deg,var(--gold-soft),rgba(255,243,214,.25));border:1px solid rgba(198,162,77,.35);border-radius:16px;padding:0 12px 10px;margin-top:-10px;padding-top:10px}
.st.gate .node{background:var(--gold);border-color:var(--gold);color:#1A1200;box-shadow:0 0 0 5px var(--gold-soft)}
.st.gate .sn{color:#5F4714;font-weight:600}
.ll{display:grid;grid-template-columns:22px minmax(0,1fr);gap:10px;align-items:start;padding:8px;margin:0 -8px;border-radius:10px;text-decoration:none;color:var(--ink)}
.ll:hover{background:var(--sunk)}.st.gate .ll:hover{background:rgba(255,255,255,.7)}
.ll b{display:block;font-size:.92rem;font-weight:600;line-height:1.25}
.ll small{display:block;font-size:.8rem;color:var(--muted);line-height:1.3;margin-top:1px}
.lic{width:20px;height:20px;color:var(--blue);margin-top:1px}
.ll:hover b{color:var(--blue)}
.conn{display:flex;flex-wrap:wrap;gap:6px}
.conn span,.conn a{font-size:.78rem;font-weight:600;border:1px solid var(--line);border-radius:8px;padding:5px 9px;background:#fff;color:var(--ink);text-decoration:none}
.conn a{color:var(--blue);border-style:dashed}
.loopback{display:flex;align-items:center;gap:8px;margin-top:18px;padding-top:14px;border-top:1px dashed var(--line);font-size:.85rem;color:var(--muted)}
.loopback svg{width:16px;height:16px;color:var(--blue)}
/* Solutions: what's driving you */
.drivehead{margin-bottom:18px}.drivehead h3{font-size:1.3rem;margin:4px 0 2px}.drivehead p{color:var(--muted);font-size:.92rem;margin:0}
.trigs{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}
.trig{--c:var(--blue);display:grid;gap:8px;align-content:start;padding:16px 16px 14px 18px;border:1px solid var(--line);border-left:4px solid var(--c);border-radius:14px;text-decoration:none;color:var(--ink);background:#fff;transition:transform .12s,box-shadow .12s}
.trig:hover{transform:translateY(-2px);box-shadow:0 10px 24px rgba(11,31,58,.10)}
.ttag{justify-self:start;font-size:.68rem;font-weight:800;letter-spacing:.1em;text-transform:uppercase;color:var(--c)}
.trig q{quotes:"\201C" "\201D";font-size:1rem;font-weight:600;line-height:1.35}
.tans{font-size:.84rem;color:var(--muted);line-height:1.35}
.tans i{font-style:normal;color:var(--c);font-weight:700;transition:margin .12s}
.trig:hover .tans i{margin-left:4px}
.tans b{color:var(--ink);font-variant-numeric:tabular-nums}
.t-deadline{--c:#B7791F}.t-reg{--c:var(--navy2)}.t-incident{--c:var(--red)}.t-grow{--c:var(--ok)}.t-ask{--c:#6B4FBB}
.browse{display:flex;flex-wrap:wrap;align-items:center;gap:6px 14px;margin-top:18px;padding-top:14px;border-top:1px dashed var(--line);font-size:.86rem}
.browse span{color:var(--muted)}
.browse a{color:var(--ink);font-weight:600;text-decoration:none;border-bottom:1px solid transparent}
.browse a:hover{color:var(--blue);border-color:currentColor}
/* Frameworks: build your stack */
.mcard.stackcard{display:grid;grid-template-columns:340px minmax(0,1fr);gap:28px}
.stk-q h3{font-size:1.25rem;margin:4px 0 4px}
.stk-hint{font-size:.88rem;color:var(--muted);margin:0 0 12px}
.qchips{display:flex;flex-wrap:wrap;gap:6px}
.qc{font:inherit;font-size:.82rem;font-weight:600;border:1px solid var(--line);background:#fff;color:var(--ink);border-radius:999px;padding:6px 11px;cursor:pointer;transition:all .12s}
.qc:hover{border-color:var(--blue);color:var(--blue)}
.qc[aria-pressed=true]{background:var(--navy);border-color:var(--navy);color:#fff}
.qc[aria-pressed=true]::before{content:"\2713  ";color:var(--gold)}
.stk-out{margin:14px 0 12px;font-size:.88rem;color:var(--muted);line-height:1.4;min-height:3.8em}
.stk-out b{font-size:1.6rem;color:var(--blue);font-weight:800;margin-right:4px;vertical-align:-3px}
.stk-cta{display:flex;align-items:center;gap:16px;flex-wrap:wrap}
.stk-note{font-size:.74rem;color:var(--muted);margin:10px 0 0}
.stk-grid{background:var(--sunk);border-radius:18px;padding:18px 20px;display:grid;grid-template-columns:1fr 1fr;gap:6px 22px;align-content:start}
.sg .ph{margin:4px 0 8px}
.fts{display:grid;grid-template-columns:repeat(auto-fill,minmax(112px,1fr));gap:8px}
.ft{display:grid;gap:2px;padding:10px 10px 9px;border-radius:12px;background:#fff;border:1px solid var(--line);text-decoration:none;color:var(--ink);transition:all .18s}
.ft .fc{font-family:var(--mono);font-size:.7rem;font-weight:700;color:var(--blue)}
.ft .fn{font-size:.84rem;font-weight:600;line-height:1.2}
.ft:hover{border-color:var(--blue)}
.ft.base{border-color:rgba(198,162,77,.55);background:var(--gold-soft)}.ft.base .fc{color:#7A5C1C}
.filtering .ft:not(.on):not(.base){opacity:.38}
.ft.on{background:var(--navy);border-color:var(--navy);color:#fff;transform:translateY(-2px);box-shadow:0 8px 18px rgba(11,31,58,.18)}.ft.on .fc{color:var(--gold)}
.stk-legend{grid-column:1/-1;display:flex;align-items:center;gap:6px 8px;flex-wrap:wrap;font-size:.76rem;color:var(--muted);margin-top:8px}
.stk-legend .lg{width:12px;height:12px;padding:0;border-radius:4px;display:inline-block;margin-left:8px}.stk-legend .lg:first-child{margin-left:0}
.stk-legend .lg.base{background:var(--gold-soft);border:1px solid var(--gold)}.stk-legend .lg.on{background:var(--navy)}
@media (max-width:1200px){.loop{grid-template-columns:repeat(2,minmax(0,1fr))}.loop::before{display:none}.mcard.stackcard{grid-template-columns:300px minmax(0,1fr)}.stk-grid{grid-template-columns:1fr}}
@media (max-width:1040px){
 .mcard.loopcard,.mcard.drivecard,.mcard.stackcard{display:block;padding:4px 0 12px}
 .loophead{display:block;margin-bottom:12px}.loophead .mlink{display:inline-block;margin-top:6px}
 .loop{grid-template-columns:1fr;gap:14px}.st.gate{margin-top:0}
 .trigs{grid-template-columns:1fr}
 .stk-grid{margin-top:16px;padding:14px}
}
@media (prefers-reduced-motion:reduce){.trig,.ft{transition:none}}
.mcard.stackcard{grid-template-columns:420px minmax(0,1fr);align-items:start}
.qc{font-size:.8rem;padding:5px 10px}
.stk-out{min-height:0}
.stk-grid{grid-template-columns:1fr;gap:4px}
.sg{display:grid;grid-template-columns:130px minmax(0,1fr);align-items:center;gap:12px;padding:6px 0;border-bottom:1px dashed var(--line)}
.sg:last-of-type{border-bottom:0}
.sg .ph{margin:0}
.fts{grid-template-columns:repeat(5,minmax(0,1fr))}
@media (max-width:1200px){.mcard.stackcard{grid-template-columns:340px minmax(0,1fr)}.sg{grid-template-columns:1fr}.fts{grid-template-columns:repeat(auto-fill,minmax(100px,1fr))}}
@media (max-width:1040px){.sg{grid-template-columns:1fr}.fts{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media (min-width:1041px) and (max-width:1200px){.loop{grid-template-columns:.8fr 1fr 1fr 1fr;gap:14px}.loop::before{display:block}.mcard.loopcard{padding:22px}}

/* ================= Frameworks page v2 ================= */
.sec-head{margin-bottom:28px}.sec-head h2{font-size:clamp(1.7rem,3vw,2.4rem);margin-top:8px;max-width:26ch;line-height:1.15}
.lede-d{color:var(--muted);font-size:1.02rem;max-width:66ch;margin-top:10px}
.fwhero{padding-block:56px 72px}
.fwh-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,520px);gap:48px;align-items:center}
.fwhero h1{max-width:14ch}.fwhero h1 b{display:block}
.xw{background:#fff;color:var(--ink);border-radius:22px;padding:18px;box-shadow:0 30px 80px rgba(0,0,0,.35)}
.xw-tabs{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:14px}
.xt{font:inherit;font-size:.8rem;font-weight:600;border:1px solid var(--line);background:#fff;border-radius:999px;padding:6px 12px;cursor:pointer;color:var(--ink)}
.xt[aria-pressed=true]{background:var(--navy);border-color:var(--navy);color:#fff}
.xw-ev{display:flex;gap:12px;align-items:flex-start;background:var(--gold-soft);border:1px solid rgba(198,162,77,.45);border-radius:14px;padding:12px 14px}
.xw-dot{flex:none;width:12px;height:12px;border-radius:50%;background:var(--gold);margin-top:5px;box-shadow:0 0 0 5px rgba(198,162,77,.2);animation:pulse 2s infinite}
@keyframes pulse{50%{box-shadow:0 0 0 9px rgba(198,162,77,0)}}
.xw-ev small{display:block;font-size:.7rem;letter-spacing:.1em;text-transform:uppercase;font-weight:700;color:#7A5C1C}
.xw-ev b{display:block;font-size:1.02rem}
.xw-ev em{display:block;font-style:normal;font-size:.8rem;color:#5F4714}
.xw-rows{list-style:none;margin:10px 0 0;padding:0 0 0 18px;position:relative;display:grid;gap:6px}
.xw-rows::before{content:"";position:absolute;left:5px;top:-10px;bottom:18px;width:2px;background:linear-gradient(var(--gold),var(--blue-soft))}
.xw-rows li{position:relative;display:grid;grid-template-columns:118px 64px minmax(0,1fr) 20px;align-items:center;gap:8px;padding:8px 10px;border:1px solid var(--line);border-radius:10px;font-size:.84rem;animation:rowIn .35s both}
.xw-rows li::before{content:"";position:absolute;left:-13px;top:50%;width:12px;height:2px;background:var(--blue-soft)}
@keyframes rowIn{from{opacity:0;transform:translateX(-8px)}to{opacity:1;transform:none}}
.xf{font-weight:700;font-size:.8rem}
.xw-rows code{font-family:var(--mono);font-size:.76rem;font-weight:600;color:var(--blue);background:var(--blue-soft);border-radius:6px;padding:2px 6px;justify-self:start}
.xd{color:var(--muted);line-height:1.3}
.xok{color:var(--ok);font-weight:800;text-align:right}
.xw-foot{margin:12px 0 2px;font-size:.84rem;color:var(--muted)}.xw-foot span{font-weight:800;color:var(--blue)}
.fwstats{display:grid;grid-template-columns:repeat(4,1fr);gap:1px;background:var(--line);border:1px solid var(--line);border-radius:18px;overflow:hidden;margin-top:-36px;position:relative;z-index:2;box-shadow:0 18px 40px rgba(11,31,58,.08)}
.fwstats div{background:#fff;padding:22px 24px;display:grid;gap:4px}
.fwstats b{font-size:2rem;font-weight:800;color:var(--navy);font-variant-numeric:tabular-nums;line-height:1}
.fwstats span{font-size:.86rem;color:var(--muted)}
.fwbar{display:flex;justify-content:space-between;align-items:center;gap:16px;flex-wrap:wrap;margin-bottom:20px}
.fwtabs{display:flex;gap:6px;flex-wrap:wrap}
.fwt{font:inherit;font-size:.9rem;font-weight:600;border:1px solid var(--line);background:#fff;border-radius:999px;padding:8px 16px;cursor:pointer;color:var(--ink)}
.fwt:hover{border-color:var(--blue);color:var(--blue)}
.fwt[aria-pressed=true]{background:var(--navy);border-color:var(--navy);color:#fff}
.fwsearch{display:flex;align-items:center;gap:8px;border:1px solid var(--line);border-radius:999px;padding:8px 14px;min-width:260px;background:#fff}
.fwsearch svg{width:16px;height:16px;color:var(--muted)}
.fwsearch input{border:0;outline:0;font:inherit;font-size:.92rem;width:100%;background:transparent}
.fwsearch:focus-within{border-color:var(--blue);box-shadow:0 0 0 3px var(--blue-soft)}
.fwlib{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}
.fwc{--c:var(--blue);display:grid;grid-template-rows:auto auto auto 1fr auto;gap:8px;border:1px solid var(--line);border-top:3px solid var(--c);border-radius:16px;padding:20px;background:#fff;text-decoration:none;color:var(--ink);transition:transform .15s,box-shadow .15s}
.fwc:hover{transform:translateY(-3px);box-shadow:0 16px 36px rgba(11,31,58,.10)}
.g-india{--c:var(--gold)}.g-privacy{--c:#6B4FBB}.g-payments{--c:var(--ok)}.g-ai{--c:#C2410C}
.fwc-top{display:flex;justify-content:space-between;align-items:center}
.fwcode{font-family:var(--mono);font-size:.74rem;font-weight:700;color:var(--c);background:color-mix(in srgb,var(--c) 12%,#fff);border-radius:8px;padding:4px 8px}
.g-india .fwcode{color:#7A5C1C}
.fwgrp{font-size:.7rem;letter-spacing:.12em;text-transform:uppercase;font-weight:700;color:var(--muted)}
.fwc h3{font-size:1.12rem;line-height:1.25}
.fwiss{font-size:.84rem;color:var(--muted);margin:-4px 0 0}
.fwc dl{margin:4px 0 0;display:grid;gap:3px;font-size:.88rem}
.fwc dt{font-size:.7rem;letter-spacing:.1em;text-transform:uppercase;font-weight:700;color:var(--muted);margin-top:6px}
.fwc dd{margin:0;line-height:1.45}
.fwc-foot{display:flex;justify-content:space-between;align-items:center;gap:8px;border-top:1px dashed var(--line);padding-top:12px;margin-top:6px}
.fwcount{font-size:.8rem;font-weight:700;color:var(--navy);background:var(--sunk);border-radius:999px;padding:4px 10px}
.fwcount.soft{font-weight:600;color:var(--muted)}
.fwc .go{color:var(--blue);font-weight:600;font-size:.88rem;white-space:nowrap}
.fwempty{padding:24px;text-align:center;color:var(--muted)}
#library .note{margin-top:20px}
/* price comparison */
.ptable{border:1px solid var(--line);border-radius:18px;overflow:hidden;background:#fff}
.phead,.prow{display:grid;grid-template-columns:190px 250px minmax(0,1fr) 210px;gap:20px;align-items:center;padding:16px 22px}
.phead{background:var(--sunk);font-size:.72rem;letter-spacing:.1em;text-transform:uppercase;font-weight:700;color:var(--muted);padding-block:12px}
.prow{border-top:1px solid var(--line)}
.prow.us{background:linear-gradient(90deg,var(--gold-soft),#fff 70%)}
.pname b{display:block;font-size:1.02rem}.pname small,.pfig small{display:block;font-size:.8rem;color:var(--muted);line-height:1.35}
.pfig b{display:block;font-variant-numeric:tabular-nums}
.pfig .pinr{color:var(--ink);font-weight:600;margin-top:2px}
.pax{position:relative;height:1em}
.pax span{position:absolute;transform:translateX(-50%);font-size:.68rem;letter-spacing:0}
.pax span:first-child{transform:none}.pax span:last-child{transform:translateX(-100%)}
.ptrack{position:relative;height:14px;border-radius:999px;background:repeating-linear-gradient(90deg,var(--sunk) 0 calc(14.285% - 1px),var(--line) calc(14.285% - 1px) 14.285%)}
.prange{position:absolute;top:0;bottom:0;border-radius:999px;background:linear-gradient(90deg,#A3B2C9,var(--blue))}
.prange.us{background:linear-gradient(90deg,#D9BD78,var(--gold))}
.prange.open{-webkit-mask:linear-gradient(90deg,#000 75%,transparent);mask:linear-gradient(90deg,#000 75%,transparent)}
.pmed{position:absolute;top:-4px;bottom:-4px;width:3px;border-radius:2px;background:var(--navy);transform:translateX(-50%)}
.psrc{font-size:.82rem;line-height:1.35}.psrc a{color:var(--blue)}
.pinc{display:block;margin-top:4px;font-weight:700;color:#7A5C1C;font-size:.78rem}
.plegend{display:flex;flex-wrap:wrap;gap:8px 20px;margin:14px 2px 10px;font-size:.82rem;color:var(--muted)}
.plegend i{display:inline-block;width:18px;height:8px;border-radius:4px;margin-right:6px;vertical-align:1px}
.lg-us{background:var(--gold)}.lg-r{background:var(--blue)}.lg-m{width:3px!important;height:14px!important;background:var(--navy);vertical-align:-3px!important}.lg-o{background:linear-gradient(90deg,var(--blue),transparent)}
/* faq */
.faqs{display:grid;gap:10px;max-width:860px}
.faq{border:1px solid var(--line);border-radius:14px;background:#fff;padding:0 20px}
.faq summary{cursor:pointer;font-weight:600;padding:18px 0;list-style:none;display:flex;justify-content:space-between;gap:16px}
.faq summary::-webkit-details-marker{display:none}
.faq summary::after{content:"+";font-size:1.3rem;line-height:1;color:var(--blue)}
.faq[open] summary::after{content:"\2013 "}
.faq p{color:var(--muted);padding:0 0 18px;margin:0;max-width:72ch}
@media (max-width:1100px){.fwh-grid{grid-template-columns:1fr}.xw{max-width:620px}.fwlib{grid-template-columns:repeat(2,minmax(0,1fr))}
 .phead{display:none}.prow{grid-template-columns:1fr 1fr;gap:10px 20px}.pbar{grid-column:1/-1}.psrc{grid-column:1/-1}}
@media (max-width:720px){.fwstats{grid-template-columns:1fr 1fr}.fwlib{grid-template-columns:1fr}.fwsearch{min-width:0;width:100%}
 .xw-rows li{grid-template-columns:minmax(0,1fr) auto;row-gap:2px}.xw-rows .xd{grid-column:1/-1}.xok{display:none}
 .prow{grid-template-columns:1fr}.fwstats b{font-size:1.6rem}}
@media (prefers-reduced-motion:reduce){.xw-rows li,.xw-dot{animation:none}}

/* ================= comparison pages ================= */
.vtw{overflow-x:auto;border:1px solid var(--line);border-radius:18px;background:#fff;-webkit-overflow-scrolling:touch}
.vt{width:100%;border-collapse:collapse;min-width:760px;font-size:.92rem}
.vt th,.vt td{padding:16px 18px;text-align:left;vertical-align:top;border-top:1px solid var(--line);line-height:1.45}
.vt thead th{border-top:0;background:var(--sunk);font-size:1rem}
.vt tbody th{font-weight:600;color:var(--muted);font-size:.86rem;width:170px}
.vt .us{background:var(--gold-soft)}
.vt thead th.us{background:var(--navy);color:#fff}
.vt thead th.us::after{content:" \2605 ";color:var(--gold)}
.vt .y{color:var(--ok);font-weight:700}.vt .n{color:var(--red);font-weight:700}
.srcl{display:block;font-size:.76rem;color:var(--blue);margin-top:4px}
.vsplit{display:grid;grid-template-columns:1fr 1fr;gap:16px}
.vbox{border:1px solid var(--line);border-radius:18px;padding:24px;background:#fff}
.vbox.diff{background:linear-gradient(160deg,var(--gold-soft),#fff 70%);border-color:rgba(198,162,77,.45)}
.vbox ul{margin:12px 0 0;padding-left:20px;display:grid;gap:8px;line-height:1.45}
.vbox.strong .eyebrow{color:var(--muted)}
.vfit{margin-top:16px;padding:18px 22px;border-radius:14px;background:var(--navy);color:#fff;line-height:1.5}.vfit b{color:var(--gold)}
@media (max-width:720px){.vsplit{grid-template-columns:1fr}.vt{min-width:620px}}
.vtw:not(.wide) .vt{min-width:0}
.vtw.wide{position:relative}
@media (max-width:900px){.vtw.wide::before{content:"Swipe to see all platforms \2192 ";display:block;position:sticky;left:0;padding:8px 14px;font-size:.78rem;font-weight:600;color:var(--blue);background:var(--blue-soft)}}
@media (max-width:560px){.vtw:not(.wide) .vt th,.vtw:not(.wide) .vt td{padding:12px 10px;font-size:.86rem}.vtw:not(.wide) .vt tbody th{width:96px}}
.stackcard.homestack{display:grid;grid-template-columns:400px minmax(0,1fr);gap:28px;align-items:start;border:1px solid var(--line);border-radius:22px;padding:26px;background:#fff;box-shadow:0 18px 40px rgba(11,31,58,.06)}
.homestack .qc{font-size:.86rem;padding:7px 13px}
@media (max-width:1040px){.stackcard.homestack{grid-template-columns:1fr;padding:18px}}
@media (max-width:720px){.homestack .sg{grid-template-columns:1fr}.homestack .fts{grid-template-columns:repeat(2,minmax(0,1fr))}}

/* ================= checker v2: sector groups + before/after ================= */
.chipgrp{display:grid;grid-template-columns:86px minmax(0,1fr);gap:10px;align-items:start;margin-top:10px}
.chipgrp .cg{font-size:.7rem;letter-spacing:.12em;text-transform:uppercase;font-weight:700;color:var(--muted);padding-top:.7em}
.chipgrp .chip span{font-size:.86rem;padding:.45em .85em}
.ba{margin-top:28px;border:1px solid var(--line);border-radius:22px;padding:26px;background:#fff;box-shadow:0 18px 40px rgba(11,31,58,.06)}
.ba-head{display:flex;justify-content:space-between;align-items:flex-end;gap:16px;flex-wrap:wrap;margin-bottom:18px}
.ba-head h3{font-size:1.35rem;margin-top:6px}.ba-head h3 span{color:var(--blue)}
.ba-seg{display:inline-flex;background:var(--sunk);border-radius:999px;padding:4px}
.ba-seg button{font:inherit;font-size:.84rem;font-weight:600;border:0;background:transparent;border-radius:999px;padding:7px 14px;cursor:pointer;color:var(--muted)}
.ba-seg button[aria-pressed=true]{background:#fff;color:var(--ink);box-shadow:0 2px 6px rgba(11,31,58,.1)}
.ba-cols,.ba-row{display:grid;grid-template-columns:190px minmax(0,1fr) minmax(0,1fr);gap:12px}
.ba-cols{font-size:.72rem;letter-spacing:.12em;text-transform:uppercase;font-weight:700;padding:0 0 8px}
.ba-cols .bb{color:var(--red)}.ba-cols .aa{color:var(--ok)}
.ba-rows{display:grid;gap:10px}
.ba-row{align-items:stretch;animation:rowIn .35s both}
.ba-s{font-weight:700;padding:14px 0;line-height:1.3}
.ba-b,.ba-a{border-radius:14px;padding:14px 16px;font-size:.92rem;line-height:1.5}
.ba-b{background:var(--red-soft);color:#6B2323;position:relative}
.ba-a{background:var(--ok-soft);color:#0F4D31;border:1px solid rgba(28,134,87,.25)}
.ba-l{display:none;font-size:.68rem;letter-spacing:.12em;text-transform:uppercase;font-weight:800;margin-bottom:4px}
.ba-b .ba-l{color:var(--red)}.ba-a .ba-l{color:var(--ok)}
.ba[data-view=before] .ba-a,.ba[data-view=after] .ba-b{display:none}
.ba[data-view=before] .ba-row,.ba[data-view=after] .ba-row,.ba[data-view=before] .ba-cols,.ba[data-view=after] .ba-cols{grid-template-columns:190px minmax(0,1fr)}
.ba[data-view=before] .ba-cols .aa,.ba[data-view=after] .ba-cols .bb{display:none}
.ba .note{margin-top:14px}
@media (max-width:760px){
 .ba{padding:18px}.ba-cols{display:none}
 .ba-row,.ba[data-view] .ba-row{grid-template-columns:1fr;gap:6px;padding-bottom:10px;border-bottom:1px dashed var(--line)}
 .ba-s{padding:6px 0 0}.ba-l{display:block}
 .chipgrp{grid-template-columns:1fr;gap:4px}.chipgrp .cg{padding-top:0}
}
@media (prefers-reduced-motion:reduce){.ba-row{animation:none}}
.chipgrp{grid-template-columns:104px minmax(0,1fr)}@media (max-width:760px){.chipgrp{grid-template-columns:1fr}}
.fwstats-note{font-size:.86rem;color:var(--muted);margin:12px 4px 0;max-width:80ch}

/* ================= platform: outcome-led ================= */
.ojump{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:1px;background:var(--line);border:1px solid var(--line);border-radius:18px;overflow:hidden;margin-top:-36px;position:relative;z-index:2;box-shadow:0 18px 40px rgba(11,31,58,.08)}
.ojump a{background:#fff;padding:16px 18px;text-decoration:none;color:var(--ink);font-size:.88rem;line-height:1.35;display:grid;gap:4px;transition:background .15s}
.ojump a:hover{background:var(--gold-soft)}
.ojump b{font-size:.68rem;letter-spacing:.12em;text-transform:uppercase;color:var(--blue)}
.ocs{display:grid;gap:28px}
.oc{display:grid;grid-template-columns:minmax(0,1.05fr) minmax(0,.95fr);gap:40px;align-items:center;border:1px solid var(--line);border-radius:26px;padding:36px;background:#fff;scroll-margin-top:90px}
.oc.flip .oc-text{order:2}.oc.flip .oc-mock{order:1}
.oc-k{font-size:.72rem;letter-spacing:.14em;text-transform:uppercase;font-weight:800;color:#7A5C1C;background:var(--gold-soft);border-radius:999px;padding:4px 10px}
.oc h3{font-size:clamp(1.4rem,2.4vw,1.9rem);line-height:1.2;margin:14px 0 6px}
.oc-who{color:var(--muted);font-size:.92rem;margin:0}
.oc-moment{margin:18px 0;padding:14px 18px;border-left:3px solid var(--gold);background:var(--sunk);border-radius:0 12px 12px 0;font-size:1.02rem;font-style:italic;color:var(--ink)}
.oc-ba{display:grid;grid-template-columns:1fr 1fr;gap:10px}
.oc-b,.oc-a{border-radius:14px;padding:12px 14px;font-size:.9rem;line-height:1.5}
.oc-b{background:var(--red-soft);color:#6B2323}.oc-a{background:var(--ok-soft);color:#0F4D31;border:1px solid rgba(28,134,87,.25)}
.oc-b span,.oc-a span{display:block;font-size:.66rem;letter-spacing:.12em;text-transform:uppercase;font-weight:800;margin-bottom:4px}
.oc-b span{color:var(--red)}.oc-a span{color:var(--ok)}
.oc-caps{display:flex;flex-wrap:wrap;align-items:center;gap:6px;margin-top:16px;font-size:.84rem}
.oc-caps span{color:var(--muted);margin-right:4px}
.oc-caps a{border:1px solid var(--line);border-radius:999px;padding:5px 11px;text-decoration:none;color:var(--blue);font-weight:600}
.oc-caps a:hover{border-color:var(--blue);background:var(--blue-soft)}
.oc-mock{background:radial-gradient(120% 120% at 100% 0%,rgba(52,82,128,.55),transparent 60%),linear-gradient(160deg,var(--navy),var(--navy2));border-radius:20px;padding:34px;display:grid;place-items:center;min-height:320px}
.mock{width:100%;max-width:380px;background:#fff;border-radius:16px;padding:18px;box-shadow:0 24px 50px rgba(0,0,0,.35);display:grid;gap:12px;font-size:.88rem}
.mk-h{display:flex;justify-content:space-between;align-items:center;gap:10px}.mk-h b{font-size:.95rem}
.mk-bar{height:8px;background:var(--sunk);border-radius:999px;overflow:hidden}.mk-bar i{display:block;height:100%;background:linear-gradient(90deg,var(--blue),#3D5F92);border-radius:999px}
.mk-sub{margin:0;color:var(--muted)}.mk-sub b{color:var(--ink)}
.mk-list{list-style:none;margin:0;padding:0;display:grid;gap:6px}
.mk-list li{display:grid;grid-template-columns:18px 1fr;gap:8px;align-items:start;padding:8px 10px;border:1px solid var(--line);border-radius:10px;font-weight:600;line-height:1.3}
.mk-list li::before{content:"";width:14px;height:14px;border-radius:50%;margin-top:1px}
.mk-list li.ok::before{background:var(--ok);box-shadow:inset 0 0 0 3px var(--ok-soft)}
.mk-list li.wait::before{background:var(--gold);box-shadow:inset 0 0 0 3px var(--gold-soft)}
.mk-list li.new::before{background:var(--blue);box-shadow:inset 0 0 0 3px var(--blue-soft)}
.mk-list small{display:block;grid-column:2;font-weight:400;color:var(--muted);font-size:.78rem}
.mk-btn{justify-self:start;background:var(--gold);color:#1A1200;font-weight:700;border-radius:999px;padding:8px 16px;font-size:.84rem}
.mk-rows{display:grid;gap:10px}
.mk-rows div{display:grid;grid-template-columns:78px 1fr 40px;gap:10px;align-items:center}
.mk-rows i{height:8px;background:var(--sunk);border-radius:999px;overflow:hidden}.mk-rows em{display:block;height:100%;background:var(--blue);border-radius:999px}
.mk-rows b{text-align:right;font-variant-numeric:tabular-nums}
.mk-clock{display:flex;align-items:baseline;gap:10px;background:var(--navy);color:#fff;border-radius:12px;padding:12px 16px}
.mk-clock b{font-family:var(--mono);font-size:1.8rem;color:var(--gold)}.mk-clock span{color:#B3BCCB;font-size:.84rem}
.mk-steps{margin:0;padding:0;list-style:none;display:grid;gap:6px;counter-reset:s}
.mk-steps li{position:relative;padding:6px 10px 6px 34px;border-radius:8px;font-weight:600}
.mk-steps li::before{counter-increment:s;content:counter(s);position:absolute;left:6px;top:50%;transform:translateY(-50%);width:20px;height:20px;border-radius:50%;display:grid;place-items:center;font-size:.72rem;font-weight:800}
.mk-steps li.ok::before{content:"\2713 ";background:var(--ok);color:#fff}
.mk-steps li.now{background:var(--gold-soft)}.mk-steps li.now::before{background:var(--gold);color:#1A1200;animation:pulse 2s infinite}
.mk-count{display:flex;align-items:center;gap:12px;background:var(--sunk);border-radius:12px;padding:10px 14px}
.mk-count b{font-size:2rem;font-weight:800;color:var(--blue);font-variant-numeric:tabular-nums}.mk-count span{color:var(--muted);font-size:.84rem;line-height:1.3}
.capgrid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}
.capcol{display:grid;gap:8px;align-content:start}.capcol h3{font-size:1.05rem;margin-bottom:4px}
.capi{display:grid;gap:2px;padding:14px 16px;border:1px solid var(--line);border-radius:14px;text-decoration:none;color:var(--ink);background:#fff;transition:border-color .15s,transform .15s}
.capi:hover{border-color:var(--blue);transform:translateX(3px)}
.capi b{font-size:.98rem}.capi span{font-size:.86rem;color:var(--muted)}
@media (max-width:1040px){.ojump{grid-template-columns:1fr 1fr}.oc,.oc.flip{grid-template-columns:1fr;padding:24px;gap:24px}.oc.flip .oc-text{order:1}.oc.flip .oc-mock{order:2}}
@media (max-width:720px){.ojump{grid-template-columns:1fr;margin-top:-24px}.oc-ba{grid-template-columns:1fr}.oc-mock{padding:18px;min-height:0}.capgrid{grid-template-columns:1fr}}
.err-msg{color:var(--red);font-size:.9rem}.ok-msg{color:var(--ok);font-weight:600}
/* image logo */
.logo.logo-img{display:inline-flex;align-items:center;line-height:0;margin-right:18px}
.logo.logo-img img{height:34px;width:auto;display:block}
footer .logo.logo-img img{height:32px}
@media (max-width:440px){.logo.logo-img img{height:28px}}
.nav .logo.logo-img img{height:38px}@media (max-width:440px){.nav .logo.logo-img img{height:30px}}
.err-msg.note-msg{color:var(--blue);background:var(--blue-soft);border-radius:10px;padding:10px 12px}
.nav .logo.logo-img img{height:44px}footer .logo.logo-img img{height:38px}@media (max-width:440px){.nav .logo.logo-img img{height:36px}}

/* ================= brand colours (from the InspireGRC logo) ================= */
:root{--brand-navy:#0B1F3A;--brand-gold:#C6A24D;--brand-gold-d:#8A6A22}
.eyebrow,.ph,.oc-k,.sec-head .eyebrow{color:var(--brand-gold-d)}
.phero .eyebrow,.hero .eyebrow,.found .eyebrow,.feature .eyebrow,.final .eyebrow,.oc-mock .eyebrow{color:var(--brand-gold)}
.btn-blue{background:var(--brand-navy);color:#fff}
.btn-blue:hover{background:#163257;box-shadow:inset 0 -2px 0 var(--brand-gold)}
.link,.mlink,.go,.card .go,.fwc .go{color:var(--brand-navy)}
.link:hover,.mlink:hover{color:var(--brand-gold-d)}
.oc-k{background:#F6EFDD}
.stage .n{color:var(--brand-gold-d)}

/* ================= before / after drag slider ================= */
.bas{position:relative;--pos:50%;padding-top:34px;user-select:none;-webkit-user-select:none;touch-action:pan-y}
.bas-tags{position:absolute;top:0;left:0;right:0;display:flex;justify-content:space-between;pointer-events:none}
.bas-tags span{font-size:.68rem;font-weight:800;letter-spacing:.12em;text-transform:uppercase;padding:5px 10px;border-radius:999px;transition:opacity .2s}
.bt-b{background:var(--red-soft);color:var(--red)}.bt-a{background:var(--ok-soft);color:var(--ok)}
.bas-rows{display:grid;gap:12px}
.bas-s{font-weight:700;font-size:.92rem;margin:0 0 6px;color:var(--ink)}
.bas-cell{display:grid;border-radius:14px;overflow:hidden}
.bas-b,.bas-a{grid-area:1/1;margin:0;padding:14px 18px;font-size:.93rem;line-height:1.5}
.bas-b{background:var(--red-soft);color:#6B2323}
.bas-a{background:var(--ok-soft);color:#0F4D31;clip-path:inset(0 0 0 var(--pos));transition:clip-path .05s linear}
.bas-line{position:absolute;top:30px;bottom:0;left:var(--pos);width:3px;margin-left:-1.5px;background:var(--brand-navy,#0B1F3A);pointer-events:none;border-radius:2px}
.bas-knob{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);width:38px;height:38px;border-radius:50%;background:var(--brand-navy,#0B1F3A);color:#fff;display:grid;place-items:center;font-size:1.1rem;box-shadow:0 0 0 4px #fff,0 6px 16px rgba(11,31,58,.35)}
.bas-in{position:absolute;inset:30px 0 0 0;width:100%;height:calc(100% - 30px);margin:0;opacity:0;cursor:ew-resize;-webkit-appearance:none;appearance:none}
.bas-in:focus-visible + *,.bas:focus-within .bas-knob{box-shadow:0 0 0 4px var(--brand-gold,#C6A24D),0 6px 16px rgba(11,31,58,.35)}
.bas-hint{font-size:.82rem;color:var(--muted);margin:10px 0 0;text-align:center}
.bas-one .bas-b,.bas-one .bas-a{min-height:96px}
.oc .bas{margin-top:4px}
@media (prefers-reduced-motion:reduce){.bas-a{transition:none}}
.bas.bas-snap .bas-a{transition:clip-path .45s cubic-bezier(.4,0,.2,1)}
.bas.bas-snap .bas-line{transition:left .45s cubic-bezier(.4,0,.2,1)}
.bas.bas-demo .bas-a{transition-duration:1.4s}.bas.bas-demo .bas-line{transition-duration:1.4s}
.bas .bt-b,.bas .bt-a{opacity:.45}
.bas:not(.is-after) .bt-b,.bas.is-after .bt-a{opacity:1}
@media (max-width:560px){.bas{padding-top:36px}.bas-tags span{font-size:.62rem;padding:4px 8px}.bas-in{inset:32px 0 0 0;height:calc(100% - 32px)}.bas-line{top:32px}}
.bas-line{left:clamp(20px,var(--pos),calc(100% - 20px))}
.bas-line{background:transparent;width:0;margin-left:0}
.bas-knob{width:32px;height:32px;font-size:1rem}
.bas-line{left:clamp(17px,var(--pos),calc(100% - 17px))}
.bas-b,.bas-a{padding:14px 44px}
@media (max-width:560px){.bas-b,.bas-a{padding:12px 40px;font-size:.9rem}}

/* ================= Why InspireGRC strengths ================= */
.whys{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}
.why{border:1px solid var(--line);border-radius:18px;padding:24px;background:#fff;display:grid;gap:8px;align-content:start;transition:box-shadow .2s,transform .2s}
.why:hover{transform:translateY(-2px);box-shadow:0 14px 32px rgba(11,31,58,.08)}
.why-n{font-family:var(--mono);font-size:.8rem;font-weight:700;color:var(--brand-gold-d,#8A6A22);background:#F6EFDD;border-radius:8px;padding:4px 8px;justify-self:start}
.why h3{font-size:1.08rem;line-height:1.3}
.why p{color:var(--muted);font-size:.93rem;line-height:1.5}
@media (max-width:900px){.whys{grid-template-columns:1fr 1fr}}
@media (max-width:560px){.whys{grid-template-columns:1fr}}

/* ================= before / after visual flow ================= */
.ftabs{display:flex;gap:6px;flex-wrap:wrap;margin:4px 0 14px}
.ftabs button{font:inherit;font-size:.86rem;font-weight:600;border:1px solid var(--line);background:#fff;color:var(--ink);border-radius:999px;padding:7px 14px;cursor:pointer}
.ftabs button:hover{border-color:var(--brand-navy,#0B1F3A)}
.ftabs button[aria-selected=true]{background:var(--brand-navy,#0B1F3A);border-color:var(--brand-navy,#0B1F3A);color:#fff}
.bflow{position:relative;--pos:100%;user-select:none;-webkit-user-select:none;touch-action:pan-y;border-radius:22px;overflow:hidden}
.flow-stage{display:grid}
.fp{grid-area:1/1;padding:26px 28px 24px;display:grid;grid-template-columns:auto minmax(0,1fr) auto;gap:22px;align-items:center;min-height:330px}
.fp-b{background:#FBF4F1;color:var(--ink)}
.fp-a{background:radial-gradient(90% 120% at 100% 0%,rgba(198,162,77,.16),transparent 55%),var(--brand-navy,#0B1F3A);color:#fff;clip-path:inset(0 0 0 var(--pos))}
.flow-snap .fp-a{transition:clip-path .5s cubic-bezier(.4,0,.2,1)}.flow-snap .flow-line{transition:left .5s cubic-bezier(.4,0,.2,1)}
.flow-slow .fp-a,.flow-slow .flow-line{transition-duration:1.6s}
.fp-tag{position:absolute;top:14px;font-size:.68rem;font-weight:800;letter-spacing:.12em;text-transform:uppercase;padding:5px 11px;border-radius:999px}
.fp-b .fp-tag{left:16px;background:#F7DCD6;color:#9B2C2C}
.fp-a .fp-tag{right:16px;background:rgba(198,162,77,.2);color:#E6CF95}
.fp-who{display:grid;justify-items:center;gap:8px;font-size:.78rem;font-weight:700;text-align:center;min-width:86px}
.fp-av{width:56px;height:56px;border-radius:50%;display:grid;place-items:center;background:#fff;border:1px solid #EADAD3;color:#7A5C55}
.fp-logo{width:60px;height:60px;border-radius:16px;box-shadow:0 0 0 6px rgba(198,162,77,.18),0 10px 26px rgba(0,0,0,.35)}
.fsteps{list-style:none;margin:0;padding:0;display:flex;flex-wrap:wrap;align-items:center;gap:12px 0}
.fs{position:relative;display:flex;align-items:center;gap:8px;font-size:.86rem;font-weight:600;line-height:1.25;border-radius:999px;padding:9px 14px 9px 9px;margin-right:26px}
.fs:not(:last-child)::after{content:"";position:absolute;right:-26px;top:50%;width:26px;border-top:2px dashed currentColor;opacity:.35}
.fs-i{flex:none;width:24px;height:24px;border-radius:50%;display:grid;place-items:center;font-size:.72rem;font-weight:800}
.zig .fs{background:#fff;border:1px dashed #E2C9C1;color:#3D2A26}
.zig .fs:nth-child(even){transform:translateY(18px) rotate(-1deg)}.zig .fs:nth-child(odd){transform:translateY(-6px) rotate(.6deg)}
.zig .fs-i{background:#F3E7E3;color:#7A5C55}
.zig .fs.warn{border-color:#E7A39A;border-style:solid}.zig .fs.warn .fs-i{background:#C23A3A;color:#fff}
.line .fs{background:rgba(255,255,255,.08);border:1px solid rgba(255,255,255,.18);color:#fff}
.line .fs:not(:last-child)::after{border-top-style:solid;opacity:.5;border-color:#C6A24D}
.line .fs-i{background:rgba(255,255,255,.12);color:#9FB4D6;font-size:.6rem}
.line .fs.you{background:var(--brand-gold,#C6A24D);border-color:var(--brand-gold,#C6A24D);color:#1A1200}.line .fs.you .fs-i{background:#1A1200;color:var(--brand-gold,#C6A24D);font-size:.8rem}
.fout{display:grid;justify-items:center;text-align:center;gap:4px;max-width:150px}
.fout b{font-size:1.02rem;line-height:1.2}.fout small{font-size:.76rem;opacity:.75;line-height:1.3}
.fout::before{content:"";width:58px;height:58px;border-radius:50%;margin-bottom:6px;background-repeat:no-repeat;background-position:center;background-size:26px}
.fout.bad{color:#8F2A20}.fout.bad::before{border:5px solid #B4533F;background-color:#fff;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M12 6v8' stroke='%23B4533F' stroke-width='3' stroke-linecap='round'/%3E%3Ccircle cx='12' cy='18.5' r='1.8' fill='%23B4533F'/%3E%3C/svg%3E")}
.fout.good{color:#BFF0D5}.fout.good::before{background-color:#1C8657;box-shadow:0 0 0 7px rgba(28,134,87,.25);background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M6 12.5l4 4 8-9' fill='none' stroke='white' stroke-width='3' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E")}
.flow-line{position:absolute;top:0;bottom:0;left:clamp(18px,var(--pos),calc(100% - 18px));width:0;pointer-events:none}
.flow-knob{position:absolute;top:50%;left:0;transform:translate(-50%,-50%);width:36px;height:36px;border-radius:50%;background:#C6A24D;color:#0B1F3A;display:grid;place-items:center;font-size:1.05rem;font-weight:800;box-shadow:0 0 0 4px #fff,0 8px 20px rgba(11,31,58,.35)}
.flow-in{position:absolute;inset:0;width:100%;height:100%;margin:0;opacity:0;cursor:ew-resize;-webkit-appearance:none;appearance:none}
.bflow:focus-within .flow-knob{box-shadow:0 0 0 4px #0B1F3A,0 8px 20px rgba(11,31,58,.35)}
@media (max-width:900px){
 .fp{grid-template-columns:1fr;justify-items:start;gap:16px;padding:52px 18px 22px;min-height:0}
 .fp-who{grid-auto-flow:column;align-items:center;min-width:0}
 .fsteps{flex-direction:column;align-items:flex-start;gap:14px}
 .fs{margin-right:0}.fs:not(:last-child)::after{right:auto;left:20px;top:100%;width:0;height:14px;border-top:0;border-left:2px dashed currentColor}
 .line .fs:not(:last-child)::after{border-left-style:solid;border-color:#C6A24D}
 .zig .fs:nth-child(even){transform:translateX(18px) rotate(-.6deg)}.zig .fs:nth-child(odd){transform:none}
 .fout{justify-items:start;text-align:left;max-width:none;grid-template-columns:auto 1fr;column-gap:12px;align-items:center}.fout::before{grid-row:span 2;margin:0;width:44px;height:44px;background-size:20px}
}
@media (prefers-reduced-motion:reduce){.flow-snap .fp-a,.flow-snap .flow-line{transition:none}}
.fp{position:relative}
.zig{row-gap:22px}
.zig .fs:nth-child(even){transform:translateY(10px) rotate(-1.2deg)}.zig .fs:nth-child(odd){transform:translateY(-4px) rotate(.8deg)}
@media (max-width:900px){.zig .fs:nth-child(even){transform:translateX(16px) rotate(-.8deg)}.zig .fs:nth-child(odd){transform:none}}
@media (max-width:700px){.ftabs{flex-wrap:nowrap;overflow-x:auto;padding-bottom:6px;margin-left:-2px;scrollbar-width:none}.ftabs::-webkit-scrollbar{display:none}.ftabs button{flex:none}}

/* ================= Indian regulators + modules ================= */
.regs{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:12px}
.reg{display:grid;gap:6px;align-content:start;border:1px solid var(--line);border-top:3px solid var(--brand-gold,#C6A24D);border-radius:16px;padding:18px;background:#fff;text-decoration:none;color:var(--ink);transition:transform .15s,box-shadow .15s}
.reg:hover{transform:translateY(-2px);box-shadow:0 14px 30px rgba(11,31,58,.08)}
.reg-n{font-size:1.25rem;font-weight:800;color:var(--brand-navy,#0B1F3A)}
.reg b{font-size:.9rem;line-height:1.3}
.reg-d{font-family:var(--mono);font-size:.72rem;color:var(--brand-gold-d,#8A6A22)}
.reg p{color:var(--muted);font-size:.86rem;line-height:1.45;margin:4px 0 0}
.reg .go{font-size:.84rem;font-weight:600;color:var(--brand-navy,#0B1F3A);margin-top:6px}
.hub{margin-top:14px;display:grid;grid-template-columns:auto minmax(0,1fr) auto;gap:18px;align-items:center;background:var(--brand-navy,#0B1F3A);color:#fff;border-radius:18px;padding:20px 24px}
.hub-ic{width:48px;height:48px;border-radius:14px;background:rgba(198,162,77,.18);color:var(--brand-gold,#C6A24D);display:grid;place-items:center}.hub-ic svg{width:26px;height:26px}
.hub b{font-size:1.08rem}.hub p{margin:4px 0 0;color:#C8D0DC;font-size:.92rem}
.mods{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:10px}
.mod{border:1px solid var(--line);border-radius:14px;padding:14px 16px;background:#fff;display:grid;gap:4px}
.mod b{font-size:.95rem}.mod span{font-size:.84rem;color:var(--muted);line-height:1.4}
@media (max-width:1100px){.regs{grid-template-columns:repeat(3,minmax(0,1fr))}.mods{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media (max-width:720px){.regs,.mods{grid-template-columns:1fr 1fr}.hub{grid-template-columns:1fr;text-align:left}}
@media (max-width:460px){.regs,.mods{grid-template-columns:1fr}}

/* ================= phase 1: trust, legal, enterprise ================= */
footer .f-addr{font-style:normal;display:grid;gap:4px;margin-top:16px;font-size:.86rem;line-height:1.45}
footer .f-addr b{color:#fff;font-weight:600}
footer .legal-links{display:flex;flex-wrap:wrap;gap:6px 16px}
/* static fallback header/footer, replaced by site.js */
.sfb{display:flex;align-items:center;gap:18px;flex-wrap:wrap;padding:14px 0;max-width:1240px;margin:0 auto}
.sfb img{height:36px;width:auto}
.sfb nav{display:flex;flex-wrap:wrap;gap:4px 16px;font-size:.92rem}
.sfb nav a{text-decoration:none;color:var(--ink)}
.sff{background:#081628;color:#AEB9CC;padding:32px 20px;font-size:.88rem}
.sff a{color:#AEB9CC}
/* items still to confirm: invisible normally, highlighted with ?review */
html.review .tbc{background:#FFF1A8;color:#3B2F00;outline:1px dashed #B58900;border-radius:3px;cursor:help}
.tbc-hide{display:none}
html.review .tbc-hide{display:inline}
.review-bar{position:fixed;left:12px;right:12px;bottom:12px;z-index:200;background:#3B2F00;color:#FFF1A8;padding:10px 14px;border-radius:10px;font-size:.88rem;box-shadow:0 6px 24px rgba(0,0,0,.25)}
/* long-form legal and trust text */
.doc{max-width:780px;padding-block:48px 24px}
.doc h2{font-size:1.45rem;margin:40px 0 10px;scroll-margin-top:90px}
.doc h3{font-size:1.08rem;margin:24px 0 6px}
.doc p,.doc li{color:#2A3444;line-height:1.7}
.doc p{margin:0 0 12px}
.doc ul,.doc ol{margin:0 0 14px;padding-left:22px;display:grid;gap:6px}
.doc .meta{font-size:.86rem;color:var(--muted);border-bottom:1px solid var(--line);padding-bottom:16px;margin-bottom:8px}
.doc table{width:100%;border-collapse:collapse;margin:8px 0 18px;font-size:.92rem}
.doc th,.doc td{text-align:left;vertical-align:top;border-bottom:1px solid var(--line);padding:10px 12px 10px 0}
.doc th{font-size:.76rem;letter-spacing:.08em;text-transform:uppercase;color:var(--muted)}
.doc .toc{border:1px solid var(--line);border-radius:14px;padding:16px 20px;background:var(--sunk)}
.doc .toc ol{margin:6px 0 0;gap:2px}
.doc .toc a{text-decoration:none}
.tablewrap{overflow-x:auto;-webkit-overflow-scrolling:touch}
.draftnote{border-left:3px solid var(--brand-gold,#C6A24D);background:#FBF7EC;padding:12px 16px;border-radius:0 10px 10px 0;font-size:.9rem;color:#4A3A12;margin:0 0 20px}
/* status table on enterprise / security */
.st-ok,.st-req,.st-plan{display:inline-block;font-size:.72rem;font-weight:700;letter-spacing:.06em;text-transform:uppercase;padding:3px 8px;border-radius:999px;white-space:nowrap}
.st-ok{background:#E3F4EA;color:#1D6B3F}
.st-req{background:#EAF0FA;color:#23467A}
.st-plan{background:#F3F0E8;color:#6B5A2E}
.tgrid{display:grid;grid-template-columns:repeat(2,1fr);gap:16px}
.tgrid .card h3{display:flex;gap:10px;align-items:center}
.tgrid .card ul{margin:0;padding-left:18px;display:grid;gap:6px;color:#2A3444;font-size:.95rem}
@media (max-width:760px){.tgrid{grid-template-columns:1fr}}
.today{border:1px solid var(--line);border-radius:16px;overflow:hidden}
.today div{display:grid;grid-template-columns:220px 1fr;gap:16px;padding:16px 20px;border-top:1px solid var(--line)}
.today div:first-child{border-top:0}
.today b{font-weight:600}
@media (max-width:640px){.today div{grid-template-columns:1fr;gap:4px}}
.plan{counter-reset:p;display:grid;grid-template-columns:repeat(4,1fr);gap:16px}
.plan li{list-style:none;border:1px solid var(--line);border-radius:16px;padding:20px;background:#fff}
.plan li b{display:block;font-family:var(--mono);font-size:.74rem;letter-spacing:.08em;text-transform:uppercase;color:var(--brand-gold-d,#8A6A22);margin-bottom:6px}
@media (max-width:900px){.plan{grid-template-columns:1fr 1fr}}
@media (max-width:520px){.plan{grid-template-columns:1fr}}
.nf{min-height:50vh;display:grid;place-content:center;text-align:center;gap:14px;padding-block:80px}
html.review p.tbc-hide{display:block}

/* ================= who-does-what handoff (replaces before/after) ================= */
.ho{margin-top:40px;border:1px solid var(--line);border-radius:24px;padding:28px;background:#fff}
.ho-head{display:flex;justify-content:space-between;align-items:flex-end;gap:16px;flex-wrap:wrap;margin-bottom:16px}
.ho-head h3{font-size:1.35rem;margin-top:6px}.ho-head h3 span{color:var(--brand-gold-d,#8A6A22)}
.ho-tally{margin:0;font-size:.92rem;color:var(--muted)}
.ho-tally b{font-size:1.25rem;color:var(--brand-navy,#0B1F3A);font-weight:700}
.ho-tally span{margin:0 6px;color:var(--line)}
.ho-board{--n:5;position:relative;display:grid;grid-template-columns:150px repeat(var(--n),minmax(0,1fr)) 170px;grid-template-rows:auto auto;gap:12px 10px;margin-top:6px;padding:6px 0}
.ho-steps{display:contents;list-style:none;margin:0;padding:0}
.ho-lab{grid-column:1;display:flex;align-items:center;gap:10px;font-size:.8rem;font-weight:700;letter-spacing:.02em;line-height:1.25;align-self:center}
.ho-lab-a{grid-row:1;color:var(--brand-navy,#0B1F3A)}.ho-lab-y{grid-row:2;color:var(--brand-gold-d,#8A6A22)}
.ho-lab img{width:34px;height:34px;border-radius:9px;flex:none}
.ho-me{width:34px;height:34px;border-radius:50%;display:grid;place-items:center;background:#FBF4E4;color:var(--brand-gold-d,#8A6A22);border:1px solid #E9D9AE;flex:none}
.ho-band{grid-column:2 / span var(--n);border-radius:14px;align-self:stretch;z-index:0}
.ho-band-a{grid-row:1;background:repeating-linear-gradient(90deg,#E6EBF3 0 6px,transparent 6px 12px) center/100% 2px no-repeat,#F6F8FC}
.ho-band-y{grid-row:2;background:repeating-linear-gradient(90deg,#EADBB4 0 6px,transparent 6px 12px) center/100% 2px no-repeat,#FDFAF2}
.ho-s{position:relative;z-index:1;margin:8px 0;padding:12px 12px 12px;border-radius:12px;font-size:.86rem;line-height:1.35;font-weight:500;animation:hoIn .45s cubic-bezier(.2,.7,.2,1) both;animation-delay:calc(var(--i) * 90ms)}
.ho-s.a{background:var(--brand-navy,#0B1F3A);color:#fff;box-shadow:0 6px 16px rgba(11,31,58,.18)}
.ho-s.y{background:#fff;color:#3A2E12;border:1.5px solid var(--brand-gold,#C6A24D);box-shadow:0 6px 16px rgba(138,106,34,.12)}
.ho-n{display:inline-grid;place-items:center;width:20px;height:20px;border-radius:50%;font-size:.7rem;font-weight:800;margin-right:6px;vertical-align:1px}
.ho-s.a .ho-n{background:rgba(198,162,77,.25);color:#E6CF95}.ho-s.y .ho-n{background:var(--brand-gold,#C6A24D);color:#fff}
.ho-who{display:none}
.ho-out{grid-row:1 / span 2;align-self:center;display:grid;justify-items:center;text-align:center;gap:4px;padding:18px 12px;border-radius:16px;background:linear-gradient(160deg,#0F2747,#0B1F3A);color:#fff;animation:hoIn .5s cubic-bezier(.2,.7,.2,1) both;animation-delay:calc(var(--n) * 90ms)}
.ho-out b{font-size:1rem;line-height:1.2}.ho-out small{font-size:.76rem;color:#C9D3E3;line-height:1.3}
.ho-tick{width:40px;height:40px;border-radius:50%;display:grid;place-items:center;background:var(--brand-gold,#C6A24D);color:#0B1F3A;font-weight:800;margin-bottom:4px}
@keyframes hoIn{from{opacity:0;transform:translateY(8px)}to{opacity:1;transform:none}}
@media (max-width:860px){
 .ho{padding:20px}
 .ho-board{display:grid;grid-template-columns:1fr;gap:8px}
 .ho-lab,.ho-band{display:none}
 .ho-s,.ho-out{grid-column:1!important;grid-row:auto!important;margin:0}
 .ho-who{display:block;font-size:.68rem;font-weight:800;letter-spacing:.1em;text-transform:uppercase;opacity:.75;margin-bottom:3px}
 .ho-s.y{margin-left:18px}
 .ho-out{justify-items:start;text-align:left;grid-template-columns:auto 1fr;column-gap:12px;align-items:center}
 .ho-out .ho-tick{grid-row:1 / span 2;margin:0}
}
/* platform outcomes: two-row split */
.hs{display:grid;gap:8px;margin-top:4px}
.hs-row{display:grid;grid-template-columns:150px 1fr;gap:14px;align-items:start;padding:14px 16px;border-radius:14px}
.hs-row p{margin:0;font-size:.95rem;line-height:1.5}
.hs-a{background:var(--brand-navy,#0B1F3A);color:#fff}
.hs-y{background:#FDFAF2;border:1.5px solid #E9D9AE;color:#3A2E12}
.hs-k{display:flex;align-items:center;gap:8px;font-size:.74rem;font-weight:800;letter-spacing:.08em;text-transform:uppercase;line-height:1.25}
.hs-a .hs-k{color:#E6CF95}.hs-y .hs-k{color:var(--brand-gold-d,#8A6A22)}
.hs-k img{width:24px;height:24px;border-radius:6px;flex:none}
.hs-me{width:24px;height:24px;border-radius:50%;display:grid;place-items:center;background:var(--brand-gold,#C6A24D);color:#fff;font-size:.8rem;flex:none}
@media (max-width:560px){.hs-row{grid-template-columns:1fr;gap:6px}}
@media (max-width:860px){.ho-who{display:inline-block;vertical-align:1px}.ho-s .ho-n{margin-bottom:4px}}
.hs-k img{background:#fff;padding:2px}

/* ================= guides ================= */
.guide{max-width:820px}
.gfacts{display:grid;grid-template-columns:repeat(4,1fr);gap:10px;margin:18px 0 24px}
.gfacts div{border:1px solid var(--line);border-radius:14px;padding:14px;background:#fff;display:grid;gap:4px;align-content:start}
.gfacts b{font-size:1.15rem;color:var(--brand-navy,#0B1F3A);line-height:1.2}
.gfacts span{font-size:.82rem;color:var(--muted);line-height:1.35}
@media (max-width:760px){.gfacts{grid-template-columns:1fr 1fr}}
.gchk{list-style:none;padding:0!important;display:grid;gap:8px}
.gchk li{position:relative;padding:12px 14px 12px 44px;border:1px solid var(--line);border-radius:12px;background:#fff}
.gchk li::before{content:"";position:absolute;left:14px;top:14px;width:18px;height:18px;border-radius:5px;border:2px solid var(--brand-gold,#C6A24D)}
.ghelp{margin:36px 0 8px;padding:22px;border-radius:18px;background:var(--brand-navy,#0B1F3A);color:#fff;display:grid;gap:12px;justify-items:start}
.ghelp p{color:#DCE3EE!important;margin:0}.ghelp .eyebrow{color:var(--brand-gold,#C6A24D)!important}
.ghelp .btn{background:var(--brand-gold,#C6A24D);color:#0B1F3A}
.gsrc{font-size:.92rem}
.guide ol:not(.gsrc){counter-reset:none}
