/* Layout: full-width colour bands, 1200px content column, cards on a 12-col grid that stacks on phones */
:root{
  --indigo:#4b3ef0; --indigo-4:#5c50f5; --indigo-6:#3b32bf; --indigo-8:#2a268a;
  --mint:#35e0b0; --mint-ink:#0d7a5c;
  --ink:#14152e; --ink-7:#2e2f58; --ink-5:#23254f;
  --mist:#eef0fa; --mist-50:#f7f8fd; --lav-100:#e4e1fc; --lav-300:#b9b6f5; --lav-50:#e8e7fd;
  --slate:#5f6577; --slate-3:#9aa0c0; --line:#d8daf0; --magenta:#e31c79; --white:#ffffff;
  --on-dark:#c9c7f4;
  --font:"Poppins", "Segoe UI", Arial, sans-serif;
  color-scheme: light;
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
@media (prefers-reduced-motion: reduce){html{scroll-behavior:auto}*{transition:none!important;animation:none!important}}
body{margin:0;font-family:var(--font);color:var(--ink);background:var(--white);font-size:16px;line-height:1.6;-webkit-font-smoothing:antialiased}
body::before{content:"";position:fixed;inset:0 0 auto;height:env(safe-area-inset-top,0px);z-index:60;background:var(--ink)}
h1,h2,h3,h4{margin:0;line-height:1.15;text-wrap:balance;letter-spacing:-.01em}
p{margin:0}
a{color:inherit}
ul{margin:0;padding:0}
img,svg{max-width:100%}
.wrap{max-width:1240px;margin:0 auto;padding-left:max(20px,env(safe-area-inset-left,0px));padding-right:max(20px,env(safe-area-inset-right,0px))}
.eyebrow{font-size:13px;font-weight:700;letter-spacing:.2em;text-transform:uppercase;color:var(--indigo)}
.on-dark .eyebrow,.eyebrow.mint{color:var(--mint)}
.h1{font-size:clamp(36px,5.2vw,60px);font-weight:700;letter-spacing:-.02em;line-height:1.07}
.h2{font-size:clamp(28px,3.4vw,42px);font-weight:700}
.h3{font-size:20px;font-weight:700}
.lead{font-size:clamp(16px,1.4vw,19px);color:var(--slate);max-width:62ch}
.on-dark .lead{color:var(--on-dark)}
.muted{color:var(--slate)}
.small{font-size:14px}
.fine{font-size:13px;color:var(--slate)}
.on-dark .fine{color:var(--slate-3)}
.accent{color:var(--mint)}
.indigo{color:var(--indigo)}
.stack{display:flex;flex-direction:column}
.g8{gap:8px}.g12{gap:12px}.g16{gap:16px}.g24{gap:24px}.g32{gap:32px}
.row{display:flex;flex-wrap:wrap;align-items:center}
.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;padding:14px 24px;border-radius:999px;font-weight:600;font-size:15px;text-decoration:none;border:1.5px solid transparent;cursor:pointer;font-family:var(--font);transition:transform .15s ease, background .15s ease}
.btn:hover{transform:translateY(-1px)}
.btn:focus-visible,a:focus-visible,button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:3px solid var(--mint);outline-offset:2px}
.btn-mint{background:var(--mint);color:var(--ink)}
.btn-ink{background:var(--ink);color:var(--white)}
.btn-indigo{background:var(--indigo);color:var(--white)}
.btn-ghost{border-color:rgba(255,255,255,.45);color:var(--white);background:transparent}
.btn-line{border-color:var(--line);color:var(--ink);background:var(--white)}
.pill{display:inline-flex;align-items:center;gap:8px;padding:7px 14px;border-radius:999px;font-size:12px;font-weight:600;letter-spacing:.08em;text-transform:uppercase}
.pill-dark{background:rgba(255,255,255,.08);border:1px solid rgba(255,255,255,.18);color:var(--lav-50)}
.pill-live{background:#dcfbf1;color:var(--mint-ink);text-transform:none;letter-spacing:0;font-size:12px;padding:4px 10px}
.pill-soon{background:var(--lav-100);color:var(--indigo-8);text-transform:none;letter-spacing:0;font-size:12px;padding:4px 10px}
.dot{width:8px;height:8px;border-radius:50%;background:var(--mint);flex:none}
.tag{display:inline-block;padding:5px 12px;border-radius:999px;font-size:13px;font-weight:600;background:var(--lav-100);color:var(--indigo-8)}
.on-dark .tag{background:var(--ink-7);color:var(--lav-50)}

/* header */
.site-header{position:sticky;top:env(safe-area-inset-top,0px);z-index:50;background:var(--ink);color:var(--white);border-bottom:1px solid rgba(255,255,255,.08)}
.nav{display:flex;align-items:center;justify-content:space-between;gap:20px;min-height:72px}
.logo {
  display: inline-flex;
  align-items: center;
  gap: 10px;
  font-size: 24px;
  font-weight: 700;
  text-decoration: none;
  color: var(--white);
  letter-spacing: -0.01em;
  white-space: nowrap;
  flex-shrink: 0;
}

.logo img {
  display: block;
  width: 38px;
  height: 38px;
  object-fit: contain;
  flex-shrink: 0;
}

.logo-text {
  color: var(--white);
  letter-spacing: 1px;
}

.logo-text span {
  color: var(--mint);
}
.navlinks{display:flex;gap:4px;align-items:center}
.navlinks a{text-decoration:none;font-size:15px;color:var(--lav-50);padding:8px 10px;border-radius:8px;white-space:nowrap}
/* .navlinks a:hover{background:rgba(255,255,255,.07);color:var(--white)} */
.navlinks a[aria-current="page"]{color:var(--mint)}
.nav .btn{padding:10px 18px;font-size:14px}
.dd{position:relative}
.dd-btn{font-family:var(--font);font-size:15px;color:var(--lav-50);background:none;border:none;padding:8px 10px;white-space:nowrap;border-radius:8px;cursor:pointer;display:inline-flex;gap:6px;align-items:center}
.dd-btn:hover,.dd:focus-within .dd-btn{background:rgba(255,255,255,.07);color:var(--white)}
.dd.is-active .dd-btn{color:var(--mint)}
.dd-menu{display:none;position:absolute;left:0;top:100%;padding-top:8px;min-width:250px;z-index:70}
.dd-menu::before{content:"";position:absolute;inset:8px 0 0;background:var(--white);border-radius:14px;box-shadow:0 20px 50px rgba(6,6,30,.35);z-index:-1}
.dd:hover .dd-menu,.dd:focus-within .dd-menu,.dd.open .dd-menu{display:flex;flex-direction:column;padding:16px 8px 8px}
.navlinks .dd-menu a{color:var(--ink);font-size:15px;padding:10px 14px;border-radius:10px}
.navlinks .dd-menu a:first-child{font-weight:600;border-bottom:1px solid var(--line);border-radius:10px 10px 0 0;margin-bottom:4px}
.navlinks .dd-menu a[href="intelligence-as-a-service.html"]{border-top:1px solid var(--line);margin-top:4px;border-radius:0 0 10px 10px;font-weight:600;color:var(--indigo)}
.navlinks .dd-menu a:hover{background:var(--mist);color:var(--indigo)}
.navlinks .dd-menu a[aria-current="page"]{color:var(--indigo);background:var(--lav-50)}
.m-group{color:var(--white);font-weight:600;padding:12px 4px 4px}
.m-sub{display:flex;flex-direction:column;padding-left:14px;border-left:2px solid var(--ink-7);margin:0 0 6px 4px}
.menu-btn{display:none}
.mobile-nav{display:none}

/* bands */
.band{padding-block:clamp(56px,8vw,96px)}
.band-tight{padding-block:clamp(40px,6vw,64px)}
.bg-ink{background:var(--ink);color:var(--white)}
.bg-mist{background:var(--mist)}
.bg-mist50{background:var(--mist-50)}
.bg-indigo8{background:var(--indigo-8);color:var(--white)}
.glow{position:relative;overflow:hidden;isolation:isolate}
.glow::before{content:"";position:absolute;z-index:-1;width:900px;height:900px;border-radius:50%;background:radial-gradient(circle,rgba(75,62,240,.5),rgba(75,62,240,0) 65%);right:-280px;top:-260px;pointer-events:none}
.glow::after{content:"";position:absolute;z-index:-1;width:620px;height:620px;border-radius:50%;background:radial-gradient(circle,rgba(53,224,176,.16),rgba(53,224,176,0) 65%);left:-260px;bottom:-320px;pointer-events:none}
.sec-head{display:flex;justify-content:space-between;align-items:flex-end;gap:24px 56px;flex-wrap:wrap;margin-bottom:40px}
.sec-head>div{min-width:0;flex:1 1 420px}
.sec-head .lead{flex:1 1 340px}

/* hero */
.hero{padding-block:clamp(48px,7vw,88px) clamp(56px,8vw,96px)}
.hero-grid{display:grid;grid-template-columns:minmax(0,1.05fr) minmax(0,.95fr);gap:56px;align-items:center}
.hero-grid.single{grid-template-columns:minmax(0,1fr)}
.hero h1 em{font-style:normal;color:var(--mint)}
.hero .lead{margin-top:20px}
.hero .ctas{margin-top:32px}
.crumb{font-size:14px;color:var(--slate-3);margin-bottom:18px}
.crumb a{color:var(--lav-300);text-decoration:none}
@media (max-width: 900px){.hero-grid{grid-template-columns:minmax(0,1fr)}}

/* product mock */
.mock{background:#1d1f45;border:1px solid rgba(255,255,255,.12);border-radius:20px;padding:20px;box-shadow:0 40px 80px rgba(6,6,30,.45);color:var(--white);min-width:0}
.mock-bar{display:flex;justify-content:space-between;align-items:center;gap:12px;margin-bottom:14px;font-size:14px;font-weight:600}
.mock-bar small{font-size:12px;color:var(--mint);font-weight:500;display:flex;gap:8px;align-items:center}
.flow{display:flex;gap:6px;margin-bottom:14px;flex-wrap:wrap}
.flow span{flex:1 1 52px;text-align:center;font-size:11px;font-weight:600;padding:8px 2px;border-radius:8px;background:var(--indigo)}
.flow span.done{background:var(--mint);color:var(--ink)}
.mcard{background:#262857;border-radius:12px;padding:14px}
.mcard+.mcard{margin-top:10px}
.mrow{display:flex;justify-content:space-between;gap:10px;font-size:12px;color:var(--slate-3);margin-bottom:8px}
.mtitle{font-size:15px;font-weight:600;margin-bottom:8px}
.field{display:flex;justify-content:space-between;align-items:center;gap:10px;font-size:12px;padding:7px 10px;background:#1d1f45;border-radius:8px;margin-top:6px;color:var(--lav-50)}
.src{font-size:11px;color:var(--mint);border:1px solid rgba(53,224,176,.5);padding:2px 8px;border-radius:999px;white-space:nowrap}
.gate{display:flex;align-items:center;gap:10px;margin-top:12px;background:rgba(53,224,176,.12);border:1px solid rgba(53,224,176,.4);border-radius:10px;padding:10px 12px;font-size:12px;color:#d5fff2}
.mini2{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-top:10px}
.mini2 div{background:#262857;border-radius:12px;padding:12px}
.mini2 small{display:block;font-size:11px;color:var(--slate-3);letter-spacing:.08em;text-transform:uppercase;font-weight:600}
.mini2 p{font-size:13px;margin-top:4px;line-height:1.4}

/* strips & grids */
.std{padding-block:20px}
.std .wrap{display:flex;align-items:center;justify-content:space-between;gap:12px 28px;flex-wrap:wrap}
.std small{font-size:12px;letter-spacing:.18em;text-transform:uppercase;color:var(--lav-300);font-weight:600}
.std .items{display:flex;gap:10px 26px;flex-wrap:wrap;font-size:15px;font-weight:600}
.grid{display:grid;gap:20px}
.c2{grid-template-columns:repeat(2,minmax(0,1fr))}
.c3{grid-template-columns:repeat(3,minmax(0,1fr))}
.c4{grid-template-columns:repeat(4,minmax(0,1fr))}
.c5{grid-template-columns:repeat(5,minmax(0,1fr))}
@media (max-width: 1100px){.c5{grid-template-columns:repeat(3,minmax(0,1fr))}.c4{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media (max-width: 800px){.c3,.c5{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media (max-width: 600px){.c2,.c3,.c4,.c5{grid-template-columns:minmax(0,1fr)}}
.card{background:var(--white);border:1px solid var(--line);border-radius:18px;padding:26px;display:flex;flex-direction:column;gap:10px;min-width:0}
.card.tint{background:var(--mist);border-color:var(--mist)}
.card.dark{background:var(--ink);border-color:var(--ink);color:var(--white)}
.card.dark p{color:var(--on-dark)}
.card.dark .h3{color:var(--mint)}
.card.indigo{background:var(--indigo);border-color:var(--indigo);color:var(--white)}
.card.indigo p,.card.indigo li{color:var(--lav-50)}
.card p{font-size:15px;color:var(--slate)}
.card a.more{margin-top:auto;font-weight:600;font-size:14px;color:var(--indigo);text-decoration:none}
.card.dark a.more{color:var(--mint)}
.on-dark .card:not(.dark){background:rgba(255,255,255,.05);border-color:rgba(255,255,255,.14);color:var(--white)}
.on-dark .card:not(.dark) p{color:var(--on-dark)}
.ic{width:46px;height:46px;border-radius:14px;background:var(--lav-100);display:flex;align-items:center;justify-content:center;flex:none}
.ic svg{width:22px;height:22px;stroke:var(--indigo);fill:none;stroke-width:2;stroke-linecap:round;stroke-linejoin:round}
.on-dark .verb{color:var(--mint)}
.on-dark .ic{background:var(--ink-7)}.on-dark .ic svg{stroke:var(--mint)}
.verb{font-size:12px;font-weight:700;letter-spacing:.16em;color:var(--indigo);text-transform:uppercase}
.num{width:42px;height:42px;border-radius:50%;background:var(--indigo);color:var(--white);font-weight:700;display:flex;align-items:center;justify-content:center;flex:none}
.card.dark .num{background:var(--mint);color:var(--ink)}
.checks li{list-style:none;position:relative;padding:5px 0 5px 26px;font-size:15px}
.checks li::before{content:"";position:absolute;left:2px;top:12px;width:12px;height:7px;border-left:2.5px solid var(--mint-ink);border-bottom:2.5px solid var(--mint-ink);transform:rotate(-45deg)}
.checks.x li::before{width:12px;height:12px;border:none;transform:none;top:10px;background:linear-gradient(45deg,transparent 43%,var(--magenta) 43%,var(--magenta) 57%,transparent 57%),linear-gradient(-45deg,transparent 43%,var(--magenta) 43%,var(--magenta) 57%,transparent 57%)}
.on-dark .checks li::before,.card.indigo .checks li::before,.card.dark .checks li::before{border-color:var(--mint)}
.stat{background:var(--mist);border-radius:18px;padding:26px;min-width:0}
.stat b{display:block;font-size:clamp(34px,3.4vw,44px);font-weight:700;color:var(--indigo);line-height:1.1;font-variant-numeric:tabular-nums}
.stat span{display:block;font-size:15px;margin-top:10px;color:var(--ink-7)}
.stat.hl{background:var(--mint)}.stat.hl b{color:var(--ink)}
.pipe{display:flex;align-items:center;gap:8px 10px;flex-wrap:wrap;margin-top:24px;background:var(--ink);border-radius:16px;padding:18px 22px;color:var(--white);font-size:15px}
.pipe b{color:var(--mint);white-space:nowrap}
.pipe .st{padding:6px 14px;border-radius:999px;background:var(--ink-7);font-size:13px;font-weight:600}
.pipe .ar{color:var(--lav-300)}
.pipe .tail{margin-left:auto;color:var(--on-dark);font-size:14px}
.steps{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px;counter-reset:s}
@media (max-width:900px){.steps{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media (max-width:560px){.steps{grid-template-columns:minmax(0,1fr)}}
.step{border-radius:16px;padding:22px;background:var(--indigo);color:var(--white);min-width:0}
.step:nth-child(2){background:var(--indigo-6)}.step:nth-child(3){background:var(--indigo-8)}.step:nth-child(4){background:var(--mint);color:var(--ink)}
.step small{font-size:12px;font-weight:700;letter-spacing:.16em;opacity:.85}
.step h3{font-size:19px;margin:6px 0 6px}
.step p{font-size:14px;opacity:.9}
.split{display:grid;grid-template-columns:minmax(0,1fr) auto minmax(0,1fr);gap:20px;align-items:center}
@media (max-width:800px){.split{grid-template-columns:minmax(0,1fr)}.split .hub{justify-self:center}}
.hub{width:120px;height:120px;border-radius:50%;background:var(--mint);color:var(--ink);font-weight:700;display:flex;align-items:center;justify-content:center;text-align:center;line-height:1.2;font-size:15px}
.principle{display:flex;gap:16px;align-items:center;flex-wrap:wrap;margin-top:20px;background:var(--ink);color:var(--white);border-radius:14px;padding:16px 22px}
.principle small{color:var(--mint);font-weight:700;letter-spacing:.16em;font-size:12px}
.chips{display:flex;flex-wrap:wrap;gap:8px}
.chip{background:var(--white);color:var(--ink);border-radius:999px;padding:7px 16px;font-size:13px;font-weight:600}
.controls{display:flex;align-items:center;gap:10px;flex-wrap:wrap;margin-top:20px;background:var(--ink);border-radius:16px;padding:16px 22px}
.controls small{color:var(--mint);font-size:12px;font-weight:700;letter-spacing:.16em;margin-right:8px}
.table-wrap{overflow-x:auto;border:1px solid var(--line);border-radius:16px}
table{border-collapse:collapse;width:100%;min-width:640px;font-size:15px}
th,td{text-align:left;padding:14px 18px;border-bottom:1px solid var(--line);vertical-align:top}
th{background:var(--ink);color:var(--white);font-weight:600;font-size:14px}
tr:last-child td{border-bottom:none}
td:first-child{font-weight:600}
.targets div{display:flex;justify-content:space-between;align-items:center;gap:12px;padding:14px 0;border-bottom:1px solid var(--line);font-size:16px}
.targets div:last-child{border-bottom:none}
.targets b{color:var(--indigo);font-size:20px;white-space:nowrap;font-variant-numeric:tabular-nums}
.g6{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}
@media (max-width:500px){.g6{grid-template-columns:minmax(0,1fr)}}
.g6 div{background:var(--ink-7);border-radius:12px;padding:14px 16px}
.g6 b{display:block;font-size:26px;color:var(--mint)}
.g6 span{font-size:14px;color:var(--lav-50);line-height:1.4}

/* OS stack */
.osstack{background:rgba(255,255,255,.05);border:1px solid rgba(255,255,255,.14);border-radius:22px;padding:24px;display:flex;flex-direction:column;gap:12px;min-width:0}
.layer small{display:block;font-size:12px;font-weight:600;letter-spacing:.16em;text-transform:uppercase;color:var(--lav-300);margin-bottom:8px}
.cells{display:grid;gap:8px}
.cells.k5{grid-template-columns:repeat(5,minmax(0,1fr))}.cells.k4{grid-template-columns:repeat(4,minmax(0,1fr))}
@media (max-width:560px){.cells.k5,.cells.k4{grid-template-columns:repeat(2,minmax(0,1fr))}}
.cell{text-align:center;padding:10px 4px;border-radius:10px;font-size:13px;font-weight:600;min-width:0;overflow-wrap:anywhere}
.cell.i{background:var(--indigo)}.cell.k{background:var(--ink-7);border:1px solid rgba(255,255,255,.12);color:var(--white);text-decoration:none}
a.cell.k:hover{border-color:var(--mint);color:var(--mint)}
/* metrics */
.metrics{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px}
@media (max-width:1000px){.metrics{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media (max-width:520px){.metrics{grid-template-columns:minmax(0,1fr)}}
.metric{border-radius:18px;padding:24px;display:flex;flex-direction:column;gap:6px;background:var(--white);border:1px solid var(--line);min-width:0}
.metric .kind{align-self:flex-start;font-size:11px;font-weight:700;letter-spacing:.12em;text-transform:uppercase;padding:4px 10px;border-radius:999px}
.metric.ill .kind{background:var(--lav-100);color:var(--indigo-8)}
.metric.des{background:var(--ink);border-color:var(--ink);color:var(--white)}
.metric.des .kind{background:var(--mint);color:var(--ink)}
.metric.tgt{border-style:dashed;border-color:var(--lav-300);background:var(--mist-50)}
.metric.tgt .kind{background:var(--white);color:var(--slate);border:1px solid var(--line)}
.metric b{font-size:clamp(34px,3.2vw,44px);line-height:1.1;font-weight:700;color:var(--indigo);font-variant-numeric:tabular-nums;margin-top:6px}
.metric.des b{color:var(--mint)}
.metric.tgt b{color:var(--slate-3)}
.metric strong{font-size:16px}
.metric span.sub{font-size:14px;color:var(--slate)}
.metric.des span.sub{color:var(--on-dark)}
.legend{display:flex;flex-wrap:wrap;gap:10px 22px;margin-top:18px;font-size:13px;color:var(--slate)}
.legend i{display:inline-block;width:10px;height:10px;border-radius:50%;margin-right:6px;vertical-align:middle}
.core{display:flex;align-items:center;gap:16px;background:var(--mint);color:var(--ink);border-radius:14px;padding:16px 18px}
.core b{font-size:17px}.core p{font-size:13px;line-height:1.45}
.orb{width:50px;height:50px;flex:none;border-radius:50%;background:var(--ink);display:flex;align-items:center;justify-content:center}
.orb svg{width:24px;height:24px;stroke:var(--mint);fill:none;stroke-width:2}
.loop{display:flex;align-items:stretch;gap:8px;border:1.5px dashed var(--lav-300);border-radius:14px;padding:10px;flex-wrap:wrap}
.loop div{flex:1 1 110px;background:var(--ink-7);border-radius:10px;padding:10px 12px;font-size:12px;color:var(--lav-50)}
.loop div b{display:block;color:var(--white);font-size:14px}
.loop div.on{background:var(--mint);color:var(--ink)}.loop div.on b{color:var(--ink)}
.barline{background:var(--ink-7);border-radius:10px;padding:11px 14px;font-size:13px;color:var(--lav-50)}
.feat{display:flex;flex-direction:column;gap:14px;margin-top:26px}
.feat div{display:flex;gap:14px;font-size:15px;color:var(--lav-50)}
.feat i{flex:none;width:28px;height:28px;border-radius:50%;background:var(--mint);display:flex;align-items:center;justify-content:center;font-style:normal;color:var(--ink);font-weight:700;font-size:13px}
.feat b{color:var(--white)}

/* CTA */
.cta{background:var(--indigo);color:var(--white);border-radius:28px;padding:clamp(28px,5vw,56px);display:grid;grid-template-columns:minmax(0,1fr) minmax(0,400px);gap:40px;align-items:center;position:relative;overflow:hidden;isolation:isolate}
.cta::after{content:"";position:absolute;z-index:-1;width:520px;height:520px;border-radius:50%;background:rgba(255,255,255,.07);right:-140px;top:-200px}
.cta p{color:var(--lav-50);margin-top:14px;font-size:17px}
.cta .ctas{margin-top:26px}
.pilot{background:var(--white);color:var(--ink);border-radius:20px;padding:26px}
.pilot h3{font-size:22px;margin:6px 0 12px}
.pilot .btn{margin-top:16px;width:100%}
@media (max-width:900px){.cta{grid-template-columns:minmax(0,1fr)}}

/* forms */
form .fgrid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}
@media (max-width:600px){form .fgrid{grid-template-columns:minmax(0,1fr)}}
label{display:flex;flex-direction:column;gap:6px;font-size:14px;font-weight:600}
input,select,textarea{font-family:var(--font);font-size:15px;padding:12px 14px;border:1.5px solid var(--line);border-radius:12px;background:var(--white);color:var(--ink);width:100%}
textarea{min-height:120px;resize:vertical}
.full{grid-column:1/-1}
.notice{margin-top:16px;padding:14px 16px;border-radius:12px;background:#dcfbf1;color:var(--mint-ink);font-size:14px;font-weight:500}
.copy{display:flex;gap:10px;align-items:center;flex-wrap:wrap}
.copy code{font-family:var(--font);font-weight:600;background:var(--mist);padding:8px 12px;border-radius:10px;user-select:all}
.copy button{font-family:var(--font);font-size:13px;font-weight:600;border:1.5px solid var(--line);background:var(--white);border-radius:999px;padding:7px 14px;cursor:pointer;color:var(--ink)}

/* footer */
.site-footer{background:var(--ink);color:var(--on-dark);padding-block:64px 36px}
.site-footer {
                overflow: hidden;
                padding-bottom: 0;
            }
.fcols{display:grid;grid-template-columns:1.5fr repeat(5,minmax(0,1fr));gap:32px}
@media (max-width:900px){.fcols{grid-template-columns:repeat(2,minmax(0,1fr))}.fcols>div:first-child{grid-column:1/-1}}
.fcols h4{color:var(--white);font-size:15px;margin-bottom:12px}
.fcols li{list-style:none;padding:5px 0;font-size:14px}
.fcols a{text-decoration:none;color:var(--on-dark)}
.fcols a:hover{color:var(--mint)}
.fbot{display:flex;justify-content:space-between;gap:12px;flex-wrap:wrap;border-top:1px solid rgba(255,255,255,.12);margin-top:44px;padding-top:22px;font-size:13px;color:var(--slate-3)}
.fbot a{color:var(--slate-3);text-decoration:none}
.fbot .ftag {
    color: var(--mint);
    font-weight: 600;
    letter-spacing: 0.02em;
}
.note-box{border:1.5px dashed var(--lav-300);border-radius:14px;padding:16px 18px;font-size:14px;color:var(--slate);background:var(--mist-50)}

/* feature sections with illustrations */
.toc{display:flex;flex-wrap:wrap;gap:8px}
.toc a{text-decoration:none;font-size:14px;font-weight:600;padding:8px 14px;border-radius:999px;background:var(--lav-100);color:var(--indigo-8)}
.toc a:hover{background:var(--indigo);color:var(--white)}
.fsec{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:clamp(28px,5vw,64px);align-items:center}
.fsec.rev .ftext{order:2}
@media (max-width:900px){.fsec{grid-template-columns:minmax(0,1fr)}.fsec.rev .ftext{order:0}}
.ftext{min-width:0;display:flex;flex-direction:column;gap:14px}
.ftext .count{font-size:13px;font-weight:700;color:var(--slate-3);letter-spacing:.1em;display: none;}
.viz{background:#1d1f45;border:1px solid rgba(20,21,46,.08);border-radius:22px;padding:22px;color:var(--white);box-shadow:0 30px 60px rgba(20,21,46,.18);min-width:0}
.viz-head{display:flex;justify-content:space-between;align-items:center;gap:10px;font-size:13px;font-weight:600;margin-bottom:14px;color:var(--lav-50)}
.viz-head small{color:var(--mint);font-weight:500;font-size:12px;display:flex;gap:6px;align-items:center}
.vrow{display:flex;justify-content:space-between;align-items:center;gap:12px;background:#262857;border-radius:10px;padding:10px 12px;font-size:13px;margin-top:8px;color:var(--lav-50)}
.vrow b{color:var(--white);font-weight:600}
.vrow .src{flex:none}
.vk{font-size:11px;color:var(--slate-3);text-transform:uppercase;letter-spacing:.08em;display:block}
.st-ok,.st-flag,.st-info{font-size:11px;font-weight:700;padding:3px 10px;border-radius:999px;white-space:nowrap;flex:none}
.st-ok{background:rgba(53,224,176,.18);color:var(--mint)}
.st-flag{background:rgba(227,28,121,.2);color:#ff8fc0}
.st-info{background:rgba(185,182,245,.18);color:var(--lav-300)}
.tree{display:flex;flex-direction:column;gap:6px}
.tree div{background:#262857;border-radius:10px;padding:9px 12px;font-size:13px;display:flex;justify-content:space-between;gap:10px}
.tree div span:first-child{color:var(--slate-3);font-size:11px;font-weight:700;letter-spacing:.08em;width:46px;flex:none}
.tree div b{flex:1;font-weight:600}
.tree div.hit{background:var(--mint);color:var(--ink)}.tree div.hit span:first-child{color:var(--ink-7)}
.verbatim{background:var(--white);color:var(--ink);border-radius:10px;padding:10px 12px;font-size:13px;margin-bottom:10px}
.verbatim i{color:var(--slate)}
.vtable{overflow-x:auto;border-radius:12px;background:#262857}
.vtable table{min-width:420px;font-size:13px}
.vtable th{background:var(--indigo);color:var(--white);padding:9px 12px;font-size:12px}
.vtable td{padding:9px 12px;border-bottom:1px solid rgba(255,255,255,.08);color:var(--lav-50);font-weight:400}
.vtable td:first-child{font-weight:600;color:var(--white)}
.vtable tr.flag td{color:#ffc2dc}
.cap{font-size:12px;color:var(--slate-3);margin-top:10px}
.docwrap{display:grid;grid-template-columns:minmax(0,.9fr) auto minmax(0,1.1fr);gap:12px;align-items:center}
@media (max-width:520px){.docwrap{grid-template-columns:minmax(0,1fr)}.docwrap .arrow{transform:rotate(90deg);justify-self:center}}
.paper{background:var(--white);border-radius:10px;padding:12px;color:var(--ink);position:relative;min-height:220px}
.paper .ptitle{font-size:10px;font-weight:700;letter-spacing:.1em;color:var(--slate);margin-bottom:8px}
.ln{height:6px;background:#e4e6f2;border-radius:3px;margin:6px 0}
.box{border:2px solid var(--mint);border-radius:6px;padding:4px 6px;margin:6px 0;position:relative;font-size:10px;color:var(--ink-7)}
.box.b2{border-color:var(--indigo)}.box.b3{border-color:var(--magenta)}
.box em{position:absolute;top:-9px;right:6px;background:var(--mint);color:var(--ink);font-style:normal;font-size:9px;font-weight:700;padding:0 6px;border-radius:999px}
.box.b2 em{background:var(--indigo);color:var(--white)}.box.b3 em{background:var(--magenta);color:var(--white)}
.minigrid{display:grid;grid-template-columns:repeat(3,1fr);gap:3px;margin-top:4px}
.minigrid span{height:8px;background:#e4e6f2;border-radius:2px}
.arrow{color:var(--mint);font-size:22px;font-weight:700}
.classify div{display:grid;grid-template-columns:minmax(0,1fr) auto auto;gap:10px;align-items:center;background:#262857;border-radius:10px;padding:10px 12px;font-size:13px;margin-top:8px}
.classify code{font-family:var(--font);color:var(--lav-50);overflow-wrap:anywhere}
.classify .conf{font-size:12px;color:var(--slate-3);font-variant-numeric:tabular-nums}
.chipgroup{background:#262857;border-radius:12px;padding:14px;margin-top:10px}
.chipgroup b{display:block;font-size:13px;margin-bottom:8px}
.chipgroup .chips span{background:#1d1f45;border:1px solid rgba(255,255,255,.14);color:var(--lav-50);font-size:12px;padding:5px 10px;border-radius:999px}
.chipgroup.on{background:var(--mint);color:var(--ink)}.chipgroup.on .chips span{background:var(--white);color:var(--ink);border-color:transparent}
.clock{background:#262857;border-radius:10px;padding:10px 12px;margin-top:8px;font-size:13px}
.clock .top{display:flex;justify-content:space-between;gap:10px;margin-bottom:6px}
.bar{height:8px;border-radius:999px;background:#1d1f45;overflow:hidden}
.bar i{display:block;height:100%;border-radius:999px;background:var(--mint)}
.bar i.warn{background:var(--magenta)}
/* .lang{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:10px}
@media (max-width:520px){.lang{grid-template-columns:minmax(0,1fr)}} */
.lang div{border-radius:12px;padding:12px;font-size:13px;line-height:1.5}
.lang .o{background:var(--white);color:var(--ink)}
.lang .t{background:#262857;color:var(--lav-50)}
.lang small{display:block;font-size:11px;font-weight:700;letter-spacing:.08em;margin-bottom:6px;color:var(--slate)}
.lang .t small{color:var(--mint)}
mark{background:rgba(53,224,176,.35);color:inherit;border-radius:3px;padding:0 2px}
mark.p{background:rgba(75,62,240,.25)}mark.e{background:rgba(227,28,121,.25)}mark.d{background:rgba(255,196,0,.35)}
.legend2{display:flex;flex-wrap:wrap;gap:8px;margin-top:10px;font-size:11px;color:var(--lav-50)}
.legend2 span{display:inline-flex;gap:6px;align-items:center}
.legend2 i{width:10px;height:10px;border-radius:3px;display:inline-block}
.steps-v{display:flex;flex-direction:column;gap:6px}
.steps-v div{display:flex;gap:10px;align-items:center;background:#262857;border-radius:10px;padding:10px 12px;font-size:13px}
.steps-v div i{flex:none;width:24px;height:24px;border-radius:50%;background:var(--indigo);display:flex;align-items:center;justify-content:center;font-style:normal;font-size:12px;font-weight:700}
.steps-v div.done i{background:var(--mint);color:var(--ink)}
.steps-v div span:first-of-type{flex:1;min-width:0}

.faq{display:flex;flex-direction:column;gap:10px}
.faq details{background:var(--white);border:1px solid var(--line);border-radius:14px;padding:0}
.faq summary{list-style:none;cursor:pointer;padding:18px 22px;font-weight:600;font-size:16px;display:flex;justify-content:space-between;gap:16px;align-items:center}
.faq summary::-webkit-details-marker{display:none}
.faq summary::after{content:"+";flex:none;width:28px;height:28px;border-radius:50%;background:var(--lav-100);color:var(--indigo);display:flex;align-items:center;justify-content:center;font-size:18px;font-weight:600}
.faq details[open] summary::after{content:"−";background:var(--indigo);color:var(--white)}
.faq details p{padding:0 22px 18px;color:var(--slate);font-size:15px;max-width:72ch}
.faq-grid{display:grid;grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr);gap:clamp(24px,5vw,64px);align-items:start}
@media (max-width:900px){.faq-grid{grid-template-columns:minmax(0,1fr)}}

.article{max-width:820px;margin:0 auto}
.article h2{font-size:clamp(24px,2.6vw,30px);margin:48px 0 14px}
.article h3{font-size:20px;margin:28px 0 8px}
.article p{font-size:17px;line-height:1.75;color:var(--ink-7);margin:0 0 16px}
.article ul,.article ol{margin:0 0 18px;padding-left:22px}
.article li{font-size:17px;line-height:1.7;color:var(--ink-7);margin:6px 0}
.article a{color:var(--indigo);font-weight:600}
.article .note{font-size:14px;color:var(--slate);margin-top:-6px}
.article .callout{background:var(--mist);border-radius:14px;padding:18px 22px;font-size:16px;line-height:1.6;margin:20px 0;color:var(--ink)}
.article .figs{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:12px;margin:8px 0 18px}
.article .figs div{background:var(--mist);border-radius:14px;padding:18px}
.article .figs b{display:block;font-size:32px;color:var(--indigo);line-height:1.1;font-variant-numeric:tabular-nums}
.article .figs span{display:block;font-size:14px;color:var(--ink-7);margin-top:6px}
.article .sources li{font-size:14px;color:var(--slate)}
.takeaways{background:var(--ink);color:var(--white);border-radius:20px;padding:26px 28px;margin:0 0 32px}
.takeaways .eyebrow{color:var(--mint)}
.takeaways ul{margin:12px 0 0;padding-left:20px}
.takeaways li{color:var(--lav-50);font-size:16px;line-height:1.6;margin:8px 0}
.execbox{background:var(--indigo);border-radius:20px;padding:26px 28px;margin:36px 0 24px}
.execbox ul{margin:12px 0 0;padding-left:20px}
.execbox li{color:var(--white);font-size:16px;line-height:1.6;margin:8px 0}
.diagram{margin:28px 0;background:var(--white);border:1px solid var(--line);border-radius:20px;padding:18px}
.diagram-scroll{overflow-x:auto}
.diagram-scroll svg{display:block;min-width:640px;width:100%;height:auto}
.diagram figcaption{font-size:14px;color:var(--slate);margin-top:10px;line-height:1.5}
.art-table{margin:12px 0 22px;background:var(--white)}
.art-table table{font-size:15px}
.art-table td{font-weight:400;color:var(--ink-7)}
.art-table td:first-child{font-weight:600;color:var(--ink)}
.meta{display:flex;flex-wrap:wrap;gap:10px 18px;margin-top:22px;font-size:14px;color:var(--slate-3)}

.gl-tools{display:flex;flex-direction:column;gap:14px;position:sticky;top:calc(72px + env(safe-area-inset-top,0px));z-index:5;background:var(--white);padding-block:14px;border-bottom:1px solid var(--line)}
.gl-search{max-width:520px}
.az{display:flex;flex-wrap:wrap;gap:6px}
.az a,.az span{width:34px;height:34px;border-radius:9px;display:flex;align-items:center;justify-content:center;font-weight:600;font-size:14px;text-decoration:none}
.az a{background:var(--lav-100);color:var(--indigo-8)}
.az a:hover{background:var(--indigo);color:var(--white)}
.az span{background:var(--mist-50);color:var(--slate-3)}
.gl-letter{font-size:28px;font-weight:700;color:var(--indigo);margin:34px 0 10px;scroll-margin-top:200px}
.gl-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}
@media (max-width:760px){.gl-list{grid-template-columns:minmax(0,1fr)}}
.term{background:var(--white);border:1px solid var(--line);border-radius:14px;padding:18px 20px;scroll-margin-top:200px;min-width:0}
.term dt{font-weight:700;font-size:17px}
.term dt small{display:block;font-weight:500;font-size:13px;color:var(--slate);margin-top:2px}
.term dd{margin:8px 0 0;font-size:15px;line-height:1.6;color:var(--ink-7)}
.term a{display:inline-block;margin-top:8px;font-size:14px;font-weight:600;color:var(--indigo);text-decoration:none}
.term:target{border-color:var(--indigo);box-shadow:0 0 0 3px var(--lav-100)}
.gl-empty{padding:24px;border:1.5px dashed var(--line);border-radius:14px;color:var(--slate)}

.cmp table{min-width:760px}
.cmp th:last-child{background:var(--indigo)}
.cmp td:last-child{background:var(--lav-50);color:var(--indigo-8);font-weight:600}
.cmp td{font-weight:400;color:var(--ink-7)}
.cmp td:first-child{font-weight:600;color:var(--ink)}
.cmp tr td:nth-child(2),.cmp tr td:nth-child(3){color:var(--slate)}
.dfacts{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px}
@media (max-width:900px){.dfacts{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media (max-width:480px){.dfacts{grid-template-columns:minmax(0,1fr)}}
.dfacts div{background:var(--mist);border-radius:16px;padding:20px}
.dfacts b{display:block;font-size:24px;color:var(--indigo);line-height:1.2}
.dfacts span{display:block;font-size:14px;color:var(--ink-7);margin-top:6px}
.prose{max-width:780px}
.prose p{font-size:17px;line-height:1.75;color:var(--ink-7);margin:0 0 14px}
.adv{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}
@media (max-width:900px){.adv{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media (max-width:560px){.adv{grid-template-columns:minmax(0,1fr)}}
.domain-cards{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}
@media (max-width:1000px){.domain-cards{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media (max-width:640px){.domain-cards{grid-template-columns:minmax(0,1fr)}}

.roll{background:var(--indigo);overflow:hidden;position:relative;height:56px;display:flex;align-items:center;border-top:1px solid rgba(255,255,255,.12)}
.roll::before,.roll::after{content:"";position:absolute;top:0;bottom:0;width:56px;z-index:2;pointer-events:none}
.roll::before{left:0;background:linear-gradient(90deg,var(--indigo),rgba(75,62,240,0))}
.roll::after{right:0;background:linear-gradient(270deg,var(--indigo),rgba(75,62,240,0))}
.roll-track{display:flex;align-items:center;width:max-content;animation:roll 52s linear infinite}
.roll:hover .roll-track,.roll:focus-within .roll-track{animation-play-state:paused}
.roll:focus-visible{outline:3px solid var(--mint);outline-offset:-3px}
.roll-item{display:flex;align-items:center;gap:10px;padding:0 28px;height:56px;border-right:1px solid rgba(255,255,255,.18);white-space:nowrap}
.roll-item b{font-size:17px;font-weight:700;color:var(--mint);font-variant-numeric:tabular-nums}
.roll-item span{font-size:13px;color:var(--lav-50)}
.roll-item em{font-style:normal;font-size:9px;font-weight:700;letter-spacing:.1em;text-transform:uppercase;padding:2px 7px;border-radius:999px;border:1px solid rgba(53,224,176,.6);color:var(--mint)}
.roll-item em.ill{border-color:rgba(255,255,255,.45);color:var(--white)}
@keyframes roll{from{transform:translateX(0)}to{transform:translateX(-50%)}}
@media (prefers-reduced-motion: reduce){.roll{height:auto}.roll-track{animation:none;flex-wrap:wrap;width:auto}.roll-track [aria-hidden="true"]{display:none}}

.found{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}
@media (max-width:860px){.found{grid-template-columns:minmax(0,1fr)}}
.found div{border-radius:20px;padding:28px;background:var(--mist)}
.found div:nth-child(2){background:var(--ink);color:var(--white)}
.found div:nth-child(2) p{color:var(--lav-50)}
.found small{font-size:12px;font-weight:700;letter-spacing:.16em;text-transform:uppercase;color:var(--indigo)}
.found div:nth-child(2) small{color:var(--mint)}
.found p{font-size:19px;line-height:1.5;font-weight:600;margin-top:10px}
.pillars{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px;counter-reset:p}
@media (max-width:1000px){.pillars{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media (max-width:560px){.pillars{grid-template-columns:minmax(0,1fr)}}
.pillar{border-top:3px solid var(--indigo);padding-top:16px}
.pillar .pn{font-size:14px;font-weight:700;color:var(--indigo)}
.pillar h3{font-size:20px;margin:6px 0 8px}
.pillar p{font-size:15px;color:var(--slate)}
.manifesto{display:flex;flex-direction:column;gap:6px}
.manifesto p{font-size:clamp(24px,3vw,36px);font-weight:700;line-height:1.25;color:var(--white)}
.manifesto p:nth-child(2){color:var(--mint)}
.leaders{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px}
@media (max-width:1000px){.leaders{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media (max-width:520px){.leaders{grid-template-columns:minmax(0,1fr)}}
.leader{background:var(--white);border:1px solid var(--line);border-radius:18px;padding:22px;display:flex;flex-direction:column;gap:8px}
.avatar{width:84px;height:84px;border-radius:50%;background:var(--lav-100);display:flex;align-items:center;justify-content:center;color:var(--indigo-8);font-weight:700;font-size:22px;border:2px dashed var(--lav-300)}
.leader b{font-size:17px}.leader span{font-size:14px;color:var(--indigo);font-weight:600}.leader p{font-size:14px;color:var(--slate)}
.expect li{list-style:none;display:flex;gap:12px;padding:10px 0;border-bottom:1px solid rgba(255,255,255,.12);color:var(--lav-50)}
.expect li b{color:var(--mint);min-width:24px}
.ill-banner{background:#fff4d6;color:#6a4a00;border:1px solid #f0d58a;border-radius:14px;padding:14px 18px;font-size:14px;line-height:1.5;font-weight:500}
.cs-kpis{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px}
@media (max-width:900px){.cs-kpis{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media (max-width:480px){.cs-kpis{grid-template-columns:minmax(0,1fr)}}
.cs-kpis div{background:var(--white);border:1px solid var(--line);border-radius:16px;padding:20px}
.cs-kpis b{display:block;font-size:30px;color:var(--indigo);line-height:1.1;font-variant-numeric:tabular-nums}
.cs-kpis span{display:block;font-size:14px;color:var(--ink-7);margin-top:6px}
.cs-kpis em{font-style:normal;display:block;font-size:12px;color:var(--slate);margin-top:4px}
.profile{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}
@media (max-width:800px){.profile{grid-template-columns:repeat(2,minmax(0,1fr))}}
.profile div{background:rgba(255,255,255,.06);border:1px solid rgba(255,255,255,.14);border-radius:14px;padding:14px 16px}
.profile small{display:block;font-size:11px;font-weight:700;letter-spacing:.12em;text-transform:uppercase;color:var(--lav-300)}
.profile b{display:block;font-size:15px;margin-top:4px;color:var(--white)}
.timeline{display:flex;flex-direction:column;gap:0;border-left:3px solid var(--lav-100);margin-left:10px}
.timeline div{position:relative;padding:0 0 22px 24px}
.timeline div::before{content:"";position:absolute;left:-9px;top:4px;width:15px;height:15px;border-radius:50%;background:var(--indigo)}
.timeline b{display:block;font-size:13px;color:var(--indigo);letter-spacing:.06em;text-transform:uppercase}
.timeline h3{font-size:18px;margin:2px 0 4px}
.timeline p{font-size:15px;color:var(--slate)}
.calc{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:24px;align-items:start}
@media (max-width:900px){.calc{grid-template-columns:minmax(0,1fr)}}
.calc .inputs{display:flex;flex-direction:column;gap:18px}
.calc label span.hint{font-weight:400;color:var(--slate);font-size:13px}
.rangerow{display:flex;gap:12px;align-items:center}
.rangerow input[type=range]{flex:1;padding:0;accent-color:var(--indigo)}
.rangerow output{min-width:64px;text-align:right;font-weight:700;color:var(--indigo);font-variant-numeric:tabular-nums}
.results{background:var(--ink);color:var(--white);border-radius:22px;padding:28px;position:sticky;top:calc(90px + env(safe-area-inset-top,0px))}
.results .big{font-size:clamp(36px,5vw,52px);font-weight:700;color:var(--mint);line-height:1.1;font-variant-numeric:tabular-nums}
.rgrid{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin-top:18px}
.rgrid div{background:var(--ink-7);border-radius:12px;padding:14px}
.rgrid b{display:block;font-size:22px;font-variant-numeric:tabular-nums}
.rgrid span{font-size:13px;color:var(--lav-300)}
.models{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px}
@media (max-width:1100px){.models{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media (max-width:600px){.models{grid-template-columns:minmax(0,1fr)}}
.model{border-radius:20px;padding:26px;display:flex;flex-direction:column;gap:12px;background:var(--white);border:1px solid var(--line)}
.model.feat{background:var(--ink);color:var(--white);border-color:var(--ink)}
.model.feat p,.model.feat li{color:var(--lav-50)}
.model .best{font-size:14px;font-weight:600;color:var(--indigo);background:var(--lav-50);border-radius:10px;padding:8px 12px}
.model.feat .best{background:var(--ink-7);color:var(--mint)}
.newscard{background:var(--white);border:1.5px dashed var(--lav-300);border-radius:18px;padding:22px;display:flex;flex-direction:column;gap:8px}
.newscard .date{font-size:13px;color:var(--slate);font-weight:600}

/* utility bar */
.utility{background:var(--indigo);color:var(--lav-300);font-size:13px}
.utility .wrap{display:flex;align-items:center;justify-content:space-between;gap:16px;min-height:36px}
.utility a{color:var(--lav-50);text-decoration:none}
.utility a:hover{color:var(--mint)}
.utility .ann{display:flex;align-items:center;gap:10px;min-width:0}
.utility .ann b{background:var(--mint);color:var(--ink);font-size:11px;font-weight:700;letter-spacing:.06em;padding:2px 8px;border-radius:999px;flex:none}
.utility .ann a{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.utility .links{display:flex;align-items:center;gap:18px;flex:none}
.utility .lang{border:1px solid rgba(255,255,255,.2);border-radius:999px;padding:2px 10px;font-size:12px}
@media (max-width:760px){.utility .links{display:none}}
/* main nav */
.site-header .nav{position:relative}
.navlinks{display:flex;gap:2px;align-items:center}
.navlinks .dd{position:static}
.dd-btn{font-family:var(--font);font-size:15px;color:var(--lav-50);background:none;border:none;padding:14px 12px;white-space:nowrap;border-radius:8px;cursor:pointer;display:inline-flex;gap:6px;align-items:center}
.dd-btn:hover,.dd:focus-within .dd-btn,.dd.open .dd-btn{background:rgba(255,255,255,.07);color:var(--white)}
.dd.is-active .dd-btn{color:var(--mint)}
.nav-right{display:flex;align-items:center;gap:10px}
.nav-right .txt{color:var(--lav-50);text-decoration:none;font-size:15px;padding:8px 10px}
.nav-right .txt:hover,.nav-right .txt[aria-current="page"]{color:var(--mint)}
.nav-right .btn{padding:4px 18px;font-size:14px}
.mega{display:none;position:absolute;left:0;right:0;top:calc(100% - 18px);padding-top:18px;z-index:70}
.dd:hover .mega,.dd:focus-within .mega,.dd.open .mega{display:block}
.mega-inner{background:var(--white);color:var(--ink);border-radius:18px;box-shadow:0 30px 60px rgba(6,6,30,.35);padding:24px;display:grid;grid-template-columns:repeat(var(--cols),minmax(0,1fr)) minmax(0,300px);gap:24px}
.mega h6{margin:0 0 10px;font-size:11px;font-weight:700;letter-spacing:.16em;text-transform:uppercase;color:var(--slate)}
.mega-col{display:flex;flex-direction:column;gap:2px;min-width:0}
.navlinks .mega a,.navlinks .mega span{white-space:normal}
.mega-col a{display:flex;flex-direction:column;padding:9px 12px;border-radius:10px;text-decoration:none;color:var(--ink)}
.mega-col a b{font-size:15px;font-weight:600}
.mega-col a span{font-size:13px;color:var(--slate)}
.mega-col a:hover{background:var(--mist)}
.mega-col a:hover b{color:var(--indigo)}
.mega-col a[aria-current="page"]{background:var(--lav-50)}
.mega-col a[aria-current="page"] b{color:var(--indigo)}
.mega-feat{background:var(--ink);color:var(--white);border-radius:14px;padding:20px;display:flex;flex-direction:column;gap:8px;text-decoration:none}
.mega-feat small{font-size:11px;font-weight:700;letter-spacing:.14em;text-transform:uppercase;color:var(--mint)}
.mega-feat b{font-size:18px}
.mega-feat span{font-size:14px;color:var(--lav-50);line-height:1.5}
.mega-feat em{font-style:normal;margin-top:auto;font-weight:600;color:var(--mint);font-size:14px}
.mega-feat:hover{background:var(--indigo-8)}
.menu-btn{display:none}
@media (max-width:1100px){
  .navlinks,.nav-right .txt,.nav-right .btn-ghost-sm{display:none}
  .menu-btn{display:inline-flex;align-items:center;justify-content:center;min-width:68px;background:none;border:1px solid rgba(255,255,255,.3);color:var(--white);border-radius:10px;padding:8px 14px;font-family:var(--font);font-size:14px;font-weight:600;cursor:pointer;user-select:none;-webkit-tap-highlight-color:transparent;transition:background .15s,border-color .15s}
  .menu-btn:hover,.menu-btn:active{background:rgba(255,255,255,.1);border-color:rgba(255,255,255,.5)}
}
@media (max-width:640px){.nav-right .btn-mint{display:none}}
.btn-ghost-sm{border:1.5px solid rgba(255,255,255,.4);color:var(--white);background:transparent}
/* journey panel */
.mega-inner.jmode{display:flex;flex-direction:column;gap:18px}
.journey{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:12px}
.jstep{display:flex;flex-direction:column;gap:2px;min-width:0;position:relative}
.jstep:not(:last-child)::after{content:"→";position:absolute;right:-12px;top:6px;color:var(--lav-300);font-weight:700}
.jhead{display:flex;align-items:center;gap:10px;padding:0 10px 8px;border-bottom:2px solid var(--lav-100);margin-bottom:6px}
.jhead i{font-style:normal;width:26px;height:26px;border-radius:50%;background:var(--indigo);color:var(--white);display:flex;align-items:center;justify-content:center;font-size:13px;font-weight:700;flex:none}
.jstep:nth-child(4) .jhead i{background:var(--mint);color:var(--ink)}
.jhead h6{margin:0;font-size:12px;font-weight:700;letter-spacing:.14em;text-transform:uppercase;color:var(--ink)}
.jstep a{display:flex;flex-direction:column;padding:8px 10px;border-radius:10px;text-decoration:none;color:var(--ink)}
.jstep a b{font-size:14px;font-weight:600}
.jstep a span{font-size:12px;color:var(--slate)}
.jstep a:hover{background:var(--mist)}.jstep a:hover b{color:var(--indigo)}
.jstep a[aria-current="page"]{background:var(--lav-50)}
.jcta{display:flex;align-items:center;justify-content:space-between;gap:16px;flex-wrap:wrap;background:var(--mist);border-radius:14px;padding:14px 18px;font-size:14px;color:var(--ink-7)}
.jcta b{color:var(--ink)}
.navlinks .jbtns .btn-line{color:var(--ink);background:var(--white);border-color:var(--line)}
.navlinks .jbtns .btn-indigo{color:var(--white)}
.navlinks .jbtns .btn{padding:9px 16px}
.navlinks .jstep a[aria-current="page"]{color:var(--ink)}
.navlinks .jstep a[aria-current="page"] b{color:var(--indigo)}
.navlinks .mega-col a[aria-current="page"]{color:var(--ink)}
.jbtns{display:flex;gap:10px}
.jbtns .btn{padding:9px 16px;font-size:14px}
/* mobile menu & scroll locking */
html.nav-open,
body.nav-open {
  overflow: hidden !important;
  overscroll-behavior: none !important;
}

body.nav-open .site-header {
  position: fixed;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  z-index: 100;
  display: flex;
  flex-direction: column;
  padding-top: env(safe-area-inset-top, 0px);
  background: var(--ink);
}

body.admin-bar.nav-open .site-header {
  top: 32px;
}
@media (max-width: 782px) {
  body.admin-bar.nav-open .site-header {
    top: 46px;
  }
}
@media (max-width: 600px) {
  body.admin-bar.nav-open .site-header {
    top: 0;
  }
}

body.nav-open .site-header > .wrap {
  display: flex;
  flex-direction: column;
  height: 100%;
  max-height: 100dvh;
  width: 100%;
  flex: 1 1 auto;
  min-height: 0;
}

body.nav-open .site-header .nav {
  flex-shrink: 0;
}

body.nav-open .mcta {
  display: none !important;
}

.mobile-nav {
  display: none;
}

.mobile-nav.open {
  display: flex;
  flex-direction: column;
  flex: 1 1 auto;
  min-height: 0;
  overflow-y: auto;
  -webkit-overflow-scrolling: touch;
  overscroll-behavior: contain;
  touch-action: pan-y;
  padding-block: 8px max(40px, calc(env(safe-area-inset-bottom, 0px) + 24px));
}

.mobile-nav::-webkit-scrollbar {
  width: 5px;
}
.mobile-nav::-webkit-scrollbar-track {
  background: transparent;
}
.mobile-nav::-webkit-scrollbar-thumb {
  background: rgba(255, 255, 255, 0.2);
  border-radius: 10px;
}
.mobile-nav::-webkit-scrollbar-thumb:hover {
  background: rgba(255, 255, 255, 0.35);
}

.mobile-nav details {
  border-bottom: 1px solid rgba(255, 255, 255, 0.1);
}

.mobile-nav details[open] {
  padding-bottom: 10px;
}

.mobile-nav summary {
  list-style: none;
  cursor: pointer;
  color: var(--white);
  font-weight: 600;
  font-size: 16px;
  padding: 14px 6px;
  display: flex;
  align-items: center;
  justify-content: space-between;
  user-select: none;
  -webkit-tap-highlight-color: transparent;
  transition: color 0.15s ease;
}

.mobile-nav summary:hover {
  color: var(--mint);
}

.mobile-nav summary::-webkit-details-marker {
  display: none;
}

.mobile-nav summary::after {
  content: "+";
  color: var(--mint);
  font-size: 20px;
  font-weight: 700;
  line-height: 1;
}

.mobile-nav details[open] summary::after {
  content: "−";
  font-size: 20px;
  font-weight: 700;
}

.mobile-nav details a {
  display: block;
  color: var(--lav-50);
  text-decoration: none;
  padding: 10px 12px 10px 16px;
  font-size: 15px;
  border-radius: 8px;
  transition: color 0.15s ease, background 0.15s ease;
}

.mobile-nav details a:hover,
.mobile-nav details a:active {
  color: var(--white);
  background: rgba(255, 255, 255, 0.06);
}

.mobile-nav details a[aria-current="page"] {
  color: var(--mint);
  font-weight: 600;
  background: rgba(53, 224, 176, 0.08);
}

.mobile-nav .m-step {
  display: block;
  color: var(--mint);
  font-size: 11px;
  font-weight: 700;
  letter-spacing: .12em;
  text-transform: uppercase;
  padding: 14px 12px 4px 16px;
}

.mobile-nav .m-plain {
  color: var(--lav-50);
  text-decoration: none;
  padding: 14px 6px;
  font-size: 16px;
  font-weight: 600;
  border-bottom: 1px solid rgba(255, 255, 255, 0.1);
  display: block;
  transition: color 0.15s ease;
}

.mobile-nav .m-plain:hover,
.mobile-nav .m-plain:active {
  color: var(--white);
}

.mobile-nav .m-plain[aria-current="page"] {
  color: var(--mint);
}

.mobile-nav .m-ctas {
  display: flex;
  gap: 12px;
  margin-top: 20px;
  padding-bottom: 12px;
  flex-wrap: wrap;
}

.mobile-nav .m-ctas .btn {
  flex: 1 1 140px;
  text-align: center;
  justify-content: center;
  padding: 12px 16px;
  font-size: 15px;
}
/* sticky mobile CTA */
.mcta{display:none}
/* @media (max-width:640px){
  .mcta{display:flex;gap:10px;position:fixed;left:0;right:0;bottom:0;z-index:80;background:var(--ink);border-top:1px solid rgba(255,255,255,.12);padding:10px max(16px,env(safe-area-inset-right,0px)) calc(10px + env(safe-area-inset-bottom,0px)) max(16px,env(safe-area-inset-left,0px))}
  .mcta .btn{flex:1;padding:12px 10px;font-size:14px}
  body{padding-bottom:72px}
} */
/* footer */
.fcols{grid-template-columns:1.4fr repeat(6,minmax(0,1fr))!important;gap:28px!important}
@media (max-width:1100px){.fcols{grid-template-columns:repeat(3,minmax(0,1fr))!important}.fcols>div:first-child{grid-column:1/-1}}
@media (max-width:560px){.fcols{grid-template-columns:repeat(2,minmax(0,1fr))!important}}

.drivers{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:14px}
@media (max-width:1100px){.drivers{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media (max-width:700px){.drivers{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media (max-width:440px){.drivers{grid-template-columns:minmax(0,1fr)}}
.driver{background:var(--white);border:1px solid var(--line);border-radius:18px;padding:22px;display:flex;flex-direction:column;gap:8px}
.driver h3{font-size:18px}.driver p{font-size:14px;color:var(--slate)}
.driver .ex{font-size:13px;color:var(--indigo-8);background:var(--lav-50);border-radius:10px;padding:8px 10px;margin-top:auto}
.ptable td b{color:var(--indigo)}
.assure{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}
@media (max-width:860px){.assure{grid-template-columns:minmax(0,1fr)}}
.quote fieldset{border:none;margin:0;padding:0;display:flex;flex-direction:column;gap:8px}
.quote legend{font-size:14px;font-weight:600;margin-bottom:6px}
.quote .opts{display:flex;flex-wrap:wrap;gap:8px}
.quote .opts label{flex-direction:row;align-items:center;gap:8px;font-weight:500;background:var(--mist);border-radius:999px;padding:8px 14px;cursor:pointer}
.quote .opts input{width:auto;accent-color:var(--indigo)}

/* WordPress additions */
.admin-bar .site-header{top:32px}
@media (max-width:782px){.admin-bar .site-header{top:46px}}
@media (max-width:600px){.admin-bar .site-header{top:0}}
.wp-generic .entry{max-width:820px}
.wp-generic .entry img{max-width:100%;height:auto}
.wp-generic .entry h2{font-size:28px;margin:32px 0 12px}
.wp-generic .entry p,.wp-generic .entry li{color:var(--slate)}
.notice.is-error{background:#fde7f1;color:#9b1150}
.vg-hp{position:absolute!important;left:-9999px!important;width:1px;height:1px;overflow:hidden}

/* End-to-end automation */
.e2e-compare-grid{display:grid;grid-template-columns:1fr 1.75fr;gap:16px}
@media (max-width:900px){.e2e-compare-grid{grid-template-columns:1fr}}
.e2e-card{border-radius:14px;padding:22px 26px;display:flex;flex-direction:column;gap:16px}
.e2e-card-partial{background:var(--white);border:1px solid var(--line)}
.e2e-card-true{background:var(--indigo);color:var(--white)}
.e2e-eyebrow{font-size:13px;font-weight:700;letter-spacing:.16em;text-transform:uppercase}
.e2e-eyebrow-partial{color:var(--magenta)}
.e2e-eyebrow-true{color:var(--mint)}
.e2e-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:14px}
.e2e-list li{display:flex;align-items:center;gap:12px;font-size:15px;line-height:1.35;color:var(--ink)}
.e2e-list-true li{color:var(--white)}
.e2e-badge{width:22px;height:22px;border-radius:50%;display:inline-flex;align-items:center;justify-content:center;flex-shrink:0}
.e2e-badge-x{background:#ffd9f2;color:var(--magenta)}
.e2e-badge-check{background:var(--mint);color:var(--mint-ink)}
.e2e-pipeline-card{margin-top:16px;background:var(--white);border:1px solid var(--line);border-radius:14px;padding:16px 20px}
.e2e-pipeline-flow{display:flex;align-items:center;justify-content:space-between;gap:6px}
.e2e-pill{flex:1 1 0;min-width:0;height:34px;display:flex;align-items:center;justify-content:center;background:var(--indigo);color:var(--white);font-size:13.5px;font-weight:700;border-radius:6px;text-align:center;white-space:nowrap}
.e2e-pill-archive{background:var(--mint);color:var(--ink)}
.e2e-arrow{color:#9aa0c0;display:flex;align-items:center;justify-content:center;flex-shrink:0}
@media (max-width:800px){
  .e2e-pipeline-flow{overflow-x:auto;padding-bottom:6px}
  .e2e-pill{flex:0 0 85px}
}
.e2e-lanes{margin-top:14px;display:grid;grid-template-columns:1fr 1fr;gap:12px}
@media (max-width:768px){.e2e-lanes{grid-template-columns:1fr}}
.e2e-lane{border-radius:8px;padding:11px 16px;display:flex;align-items:center;gap:12px;font-size:13.5px;line-height:1.4;color:var(--ink)}
.e2e-lane-ic{flex-shrink:0}
.e2e-lane-zero{background:#2ee2b1}
.e2e-lane-zero .e2e-lane-ic{color:var(--mint-ink)}
.e2e-lane-expert{background:#eeeafc}
.e2e-lane-expert .e2e-lane-ic{color:#7b75a6}
.e2e-bottom-bar{margin-top:16px;background:#0f132a;border-radius:8px;padding:11px 20px;display:flex;align-items:center;gap:18px;color:var(--white)}
.e2e-bottom-label{color:var(--mint);font-size:12.5px;font-weight:700;letter-spacing:.16em;text-transform:uppercase;white-space:nowrap}
.e2e-bottom-text{font-size:14px;font-weight:500;color:var(--white)}
@media (max-width:640px){
  .e2e-bottom-bar{flex-direction:column;align-items:flex-start;gap:6px}
}

/* ==========================================================================
   Platform Overview Sections
   1. Challenge to Solution
   2. Platform Omnivigilance Architecture
   3. Fit For Your Purpose (SOP Configuration)
   4. Collective Intelligence (How AI Thinks)
   ========================================================================== */

/* --- 1. Challenge to Solution --- */
.c2s-labels {
  display: grid;
  grid-template-columns: 1fr 36px 1fr;
  align-items: center;
  gap: 16px;
  margin-bottom: 10px;
}
.c2s-label-left {
  color: var(--magenta);
  font-size: 13px;
  font-weight: 700;
  letter-spacing: .16em;
  text-transform: uppercase;
}
.c2s-label-right {
  color: var(--indigo);
  font-size: 13px;
  font-weight: 700;
  letter-spacing: .16em;
  text-transform: uppercase;
}
.c2s-list {
  display: flex;
  flex-direction: column;
  gap: 14px;
}
.c2s-row {
  display: grid;
  grid-template-columns: 1fr 36px 1fr;
  align-items: center;
  gap: 16px;
}
.c2s-card {
  border-radius: 12px;
  padding: 18px 24px;
  min-height: 82px;
  display: flex;
  flex-direction: column;
  justify-content: center;
}
.c2s-card-white {
  background: var(--white);
  border: 1px solid var(--line);
  box-shadow: 0 1px 4px rgba(20,21,46,.03);
}
.c2s-card-white h3 {
  font-size: 16.5px;
  font-weight: 700;
  color: var(--ink);
  line-height: 1.25;
}
.c2s-card-white p {
  font-size: 14px;
  color: var(--slate);
  margin-top: 4px;
  line-height: 1.35;
}
.c2s-arrow {
  display: flex;
  align-items: center;
  justify-content: center;
  color: var(--lav-300);
  flex-shrink: 0;
}
.c2s-card-indigo {
  background: var(--indigo);
  color: var(--white);
}
.c2s-card-indigo h3 {
  font-size: 16.5px;
  font-weight: 700;
  color: var(--white);
  line-height: 1.25;
}
.c2s-card-indigo p {
  font-size: 14px;
  color: var(--lav-50);
  margin-top: 4px;
  line-height: 1.35;
}
.c2s-card-mint {
  background: var(--mint);
  color: var(--ink);
}
.c2s-card-mint h3 {
  font-size: 16.5px;
  font-weight: 700;
  color: var(--ink);
  line-height: 1.25;
}
.c2s-card-mint p {
  font-size: 14px;
  color: var(--ink);
  margin-top: 4px;
  line-height: 1.35;
  opacity: .95;
}
.c2s-footer-bar {
  margin-top: 18px;
  background: var(--ink);
  border-radius: 12px;
  padding: 16px 24px;
  display: flex;
  align-items: center;
  gap: 20px;
  color: var(--white);
}
.c2s-footer-tag {
  color: var(--mint);
  font-size: 13px;
  font-weight: 700;
  letter-spacing: .16em;
  text-transform: uppercase;
  white-space: nowrap;
}
.c2s-footer-text {
  font-size: 14px;
  color: var(--white);
  line-height: 1.4;
  font-weight: 500;
}
@media (max-width: 820px) {
  .c2s-labels { display: none; }
  .c2s-row {
    grid-template-columns: 1fr;
    gap: 8px;
    background: var(--white);
    border: 1px solid var(--line);
    border-radius: 14px;
    padding: 12px;
  }
  .c2s-card-white { border: none; box-shadow: none; padding: 6px 6px 0; }
  .c2s-card-indigo, .c2s-card-mint { padding: 14px 16px; }
  .c2s-arrow { transform: rotate(90deg); padding: 2px 0; }
  .c2s-footer-bar { flex-direction: column; align-items: flex-start; gap: 8px; }
}

/* --- 2. Platform Omnivigilance Architecture --- */
.omni-top-row {
  display: flex;
  justify-content: space-between;
  align-items: flex-end;
  gap: 20px;
  flex-wrap: wrap;
  margin-bottom: 24px;
}
.omni-quote {
  font-size: 16px;
  font-weight: 700;
  color: var(--indigo);
  font-style: italic;
  white-space: nowrap;
  margin-bottom: 6px;
}
.omni-matrix {
  display: flex;
  flex-direction: column;
  gap: 10px;
}
.omni-row {
  display: grid;
  grid-template-columns: 130px 1fr;
  gap: 12px;
  align-items: stretch;
}
.omni-badge {
  background: var(--lav-50);
  color: var(--indigo-6);
  font-weight: 700;
  font-size: 12px;
  letter-spacing: .14em;
  text-transform: uppercase;
  border-radius: 8px;
  display: flex;
  align-items: center;
  justify-content: center;
  text-align: center;
  padding: 10px 8px;
}
.omni-badge-indigo {
  background: var(--indigo);
  color: var(--white);
}
.omni-badge-mint {
  background: var(--mint);
  color: var(--ink);
}
.omni-grid-6 {
  display: grid;
  grid-template-columns: repeat(6, 1fr);
  gap: 10px;
}
.omni-pill-indigo {
  background: var(--indigo);
  color: var(--white);
  font-weight: 600;
  font-size: 13.5px;
  border-radius: 8px;
  padding: 12px 6px;
  text-align: center;
  display: flex;
  align-items: center;
  justify-content: center;
}
.omni-pill-white {
  background: var(--white);
  border: 1px solid var(--line);
  color: var(--ink);
  font-weight: 500;
  font-size: 13.5px;
  border-radius: 8px;
  padding: 12px 6px;
  text-align: center;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  line-height: 1.35;
}
.omni-grid-4 {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 10px;
}
.omni-module-card {
  background: var(--indigo);
  color: var(--white);
  border-radius: 10px;
  padding: 18px 18px;
  display: flex;
  flex-direction: column;
  justify-content: space-between;
}
.omni-module-eyebrow {
  color: var(--mint);
  font-size: 12px;
  font-weight: 700;
  letter-spacing: .12em;
  text-transform: uppercase;
  margin-bottom: 6px;
}
.omni-module-title {
  font-size: 16px;
  font-weight: 700;
  color: var(--white);
  line-height: 1.25;
  margin-bottom: 10px;
}
.omni-module-desc {
  font-size: 12.5px;
  color: var(--lav-50);
  line-height: 1.4;
}
.omni-bar-dark {
  background: var(--ink);
  border-radius: 8px;
  padding: 13px 20px;
  text-align: center;
  color: var(--white);
  font-size: 13.5px;
  font-weight: 500;
  display: flex;
  align-items: center;
  justify-content: center;
  line-height: 1.45;
}
.omni-bottom-banner {
  background: var(--ink);
  border-radius: 8px;
  padding: 14px 22px;
  display: flex;
  align-items: center;
  gap: 18px;
  color: var(--white);
  margin-top: 4px;
}
.omni-bottom-label {
  color: var(--mint);
  font-size: 12.5px;
  font-weight: 700;
  letter-spacing: .14em;
  text-transform: uppercase;
  white-space: nowrap;
}
.omni-bottom-text {
  font-size: 13.5px;
  color: var(--white);
  font-weight: 500;
  line-height: 1.4;
}
@media (max-width: 1080px) {
  .omni-grid-6 { grid-template-columns: repeat(3, 1fr); }
  .omni-grid-4 { grid-template-columns: repeat(2, 1fr); }
}
@media (max-width: 768px) {
  .omni-row {
    grid-template-columns: 1fr;
    gap: 8px;
  }
  .omni-badge {
    justify-content: flex-start;
    padding: 8px 12px;
  }
  .omni-grid-6 { grid-template-columns: repeat(2, 1fr); }
  .omni-grid-4 { grid-template-columns: 1fr; }
  .omni-bottom-banner { flex-direction: column; align-items: flex-start; gap: 6px; }
}
@media (max-width: 480px) {
  .omni-grid-6 { grid-template-columns: 1fr; }
}

/* --- 3. Fit For Your Purpose --- */
.ffp-grid {
  display: grid;
  grid-template-columns: 320px 1fr;
  gap: 24px;
  align-items: stretch;
}
.ffp-card-generic {
  background: var(--white);
  border: 1px solid #fecdd3;
  border-radius: 14px;
  padding: 22px;
  margin-bottom: 14px;
}
.ffp-eyebrow-generic {
  color: var(--magenta);
  font-size: 13px;
  font-weight: 700;
  letter-spacing: .14em;
  text-transform: uppercase;
  margin-bottom: 14px;
}
.ffp-card-vgenix {
  background: var(--indigo);
  color: var(--white);
  border-radius: 14px;
  padding: 22px;
}
.ffp-eyebrow-vgenix {
  color: var(--mint);
  font-size: 13px;
  font-weight: 700;
  letter-spacing: .14em;
  text-transform: uppercase;
  margin-bottom: 14px;
}
.ffp-list {
  list-style: none;
  margin: 0;
  padding: 0;
  display: flex;
  flex-direction: column;
  gap: 12px;
}
.ffp-list li {
  display: flex;
  align-items: center;
  gap: 10px;
  font-size: 14px;
  font-weight: 500;
  line-height: 1.35;
}
.ffp-badge-x {
  width: 20px;
  height: 20px;
  border-radius: 50%;
  background: #ffe4e6;
  color: var(--magenta);
  display: inline-flex;
  align-items: center;
  justify-content: center;
  flex-shrink: 0;
  font-size: 11px;
  font-weight: 700;
}
.ffp-badge-check {
  width: 20px;
  height: 20px;
  border-radius: 50%;
  background: var(--mint);
  color: var(--ink);
  display: inline-flex;
  align-items: center;
  justify-content: center;
  flex-shrink: 0;
  font-size: 12px;
  font-weight: 700;
}
.ffp-sop-header {
  color: var(--indigo);
  font-size: 13px;
  font-weight: 700;
  letter-spacing: .15em;
  text-transform: uppercase;
  margin-bottom: 12px;
}
.ffp-sop-grid {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 12px;
}
.ffp-sop-card {
  background: var(--white);
  border: 1px solid var(--line);
  border-radius: 12px;
  padding: 16px 20px;
  box-shadow: 0 1px 4px rgba(20,21,46,.02);
}
.ffp-sop-card h3 {
  font-size: 15.5px;
  font-weight: 700;
  color: var(--ink);
  line-height: 1.25;
}
.ffp-sop-card p {
  font-size: 13px;
  color: var(--slate);
  margin-top: 4px;
  line-height: 1.35;
}
.ffp-how-row {
  margin-top: 20px;
  display: flex;
  align-items: center;
  gap: 10px;
  flex-wrap: wrap;
}
.ffp-how-label {
  color: var(--indigo);
  font-size: 13px;
  font-weight: 700;
  letter-spacing: .16em;
  text-transform: uppercase;
  min-width: 44px;
}
.ffp-how-step {
  padding: 11px 22px;
  border-radius: 8px;
  font-size: 14px;
  font-weight: 700;
  text-align: center;
  flex: 1 1 0;
  white-space: nowrap;
}
.ffp-step-light {
  background: var(--lav-50);
  color: var(--ink);
}
.ffp-step-indigo {
  background: var(--indigo);
  color: var(--white);
}
.ffp-step-mint {
  background: var(--mint);
  color: var(--ink);
}
.ffp-arrow {
  color: var(--lav-300);
  display: flex;
  align-items: center;
  justify-content: center;
  flex-shrink: 0;
}
@media (max-width: 900px) {
  .ffp-grid { grid-template-columns: 1fr; }
  .ffp-sop-grid { grid-template-columns: 1fr; }
  .ffp-how-row { gap: 6px; }
  .ffp-how-step { flex: 1 1 120px; }
}

/* --- 4. How AI Thinks (Collective Intelligence) --- */
.thk-matrix {
  display: flex;
  flex-direction: column;
  gap: 14px;
}
.thk-row {
  display: grid;
  grid-template-columns: 160px 1fr;
  gap: 16px;
  align-items: stretch;
}
.thk-label-block {
  display: flex;
  flex-direction: column;
  justify-content: center;
}
.thk-label-tag {
  color: var(--mint);
  font-size: 12.5px;
  font-weight: 700;
  letter-spacing: .14em;
  text-transform: uppercase;
}
.thk-label-sub {
  color: #9aa0c0;
  font-size: 13px;
  margin-top: 3px;
}
.thk-grid-4 {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 12px;
}
.thk-mod-card {
  background: var(--indigo);
  color: var(--white);
  border-radius: 12px;
  padding: 16px 18px;
  display: flex;
  flex-direction: column;
}
.thk-mod-head {
  display: flex;
  align-items: center;
  gap: 8px;
  font-size: 15.5px;
  font-weight: 700;
  color: var(--white);
}
.thk-mod-head svg {
  width: 18px;
  height: 18px;
  color: var(--white);
  flex-shrink: 0;
}
.thk-mod-desc {
  font-size: 13px;
  color: var(--lav-50);
  line-height: 1.35;
  margin-top: 6px;
}
.thk-loop-box {
  border: 1.5px dashed rgba(255,255,255,.18);
  border-radius: 12px;
  padding: 10px 14px;
  display: flex;
  align-items: stretch;
  gap: 10px;
}
.thk-loop-step {
  background: #1c2042;
  border-radius: 8px;
  padding: 12px 14px;
  flex: 1;
  display: flex;
  flex-direction: column;
  justify-content: center;
}
.thk-loop-step b {
  color: var(--white);
  font-size: 14px;
  display: block;
}
.thk-loop-step span {
  color: #9aa0c0;
  font-size: 12px;
  line-height: 1.3;
  margin-top: 2px;
}
.thk-loop-arrow {
  color: var(--mint);
  display: flex;
  align-items: center;
  justify-content: center;
  flex-shrink: 0;
  font-size: 18px;
  font-weight: 700;
}
.thk-loop-step.is-mint {
  background: var(--mint);
  color: var(--ink);
}
.thk-loop-step.is-mint b {
  color: var(--ink);
}
.thk-loop-step.is-mint span {
  color: var(--ink);
  font-weight: 500;
}
.thk-grid-3 {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 12px;
}
.thk-domain-card {
  background: #1c2042;
  border: 1px solid rgba(255,255,255,.12);
  border-radius: 12px;
  padding: 16px 20px;
}
.thk-domain-card h3 {
  font-size: 15.5px;
  font-weight: 700;
  color: var(--white);
  line-height: 1.25;
}
.thk-domain-card p {
  font-size: 13px;
  color: #9aa0c0;
  margin-top: 4px;
  line-height: 1.35;
}
.thk-foundation-card {
  background: var(--mint);
  color: var(--ink);
  border-radius: 12px;
  padding: 18px 24px;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 20px;
  flex-wrap: wrap;
}
.thk-foundation-left {
  display: flex;
  align-items: center;
  gap: 16px;
  flex: 1 1 360px;
}
.thk-foundation-icon {
  width: 44px;
  height: 44px;
  border-radius: 50%;
  background: var(--ink);
  color: var(--mint);
  display: flex;
  align-items: center;
  justify-content: center;
  flex-shrink: 0;
}
.thk-foundation-icon svg {
  width: 22px;
  height: 22px;
}
.thk-foundation-title {
  font-size: 17.5px;
  font-weight: 700;
  color: var(--ink);
  line-height: 1.25;
}
.thk-foundation-sub {
  font-size: 13px;
  color: var(--ink);
  opacity: .95;
  margin-top: 2px;
  line-height: 1.35;
}
.thk-foundation-badges {
  display: grid;
  grid-template-columns: repeat(2, auto);
  gap: 8px;
}
.thk-foundation-pill {
  background: var(--white);
  color: var(--ink);
  font-size: 12.5px;
  font-weight: 600;
  padding: 6px 16px;
  border-radius: 999px;
  box-shadow: 0 1px 3px rgba(0,0,0,.08);
  text-align: center;
  white-space: nowrap;
}
.thk-footer {
  margin-top: 36px;
  display: flex;
  justify-content: space-between;
  align-items: center;
  color: #707596;
  font-size: 13px;
}
@media (max-width: 900px) {
  .thk-grid-4 { grid-template-columns: repeat(2, 1fr); }
  .thk-grid-3 { grid-template-columns: 1fr; }
  .thk-loop-box { flex-direction: column; }
  .thk-loop-arrow { transform: rotate(90deg); padding: 4px 0; }
  .thk-foundation-badges { grid-template-columns: 1fr; }
}
@media (max-width: 768px) {
  .thk-row {
    grid-template-columns: 1fr;
    gap: 8px;
  }
  .thk-grid-4 { grid-template-columns: 1fr; }
}

/* --- 5. Use Cases: What Changes For A Team Like Yours --- */
.uc-header {
  display: flex;
  justify-content: space-between;
  align-items: flex-start;
  gap: 20px;
  flex-wrap: wrap;
  margin-bottom: 28px;
}
.uc-badge-scenario {
  background: var(--magenta);
  color: var(--white);
  font-size: 12px;
  font-weight: 700;
  letter-spacing: .12em;
  text-transform: uppercase;
  padding: 6px 16px;
  border-radius: 999px;
  box-shadow: 0 2px 8px rgba(227, 28, 121, .3);
  white-space: nowrap;
}
.uc-grid {
  display: grid;
  grid-template-columns: 320px 1fr;
  gap: 20px;
  align-items: stretch;
}
.uc-sidebar {
  display: flex;
  flex-direction: column;
  gap: 12px;
}
.uc-side-card {
  background: rgba(255, 255, 255, .04);
  border: 1px solid rgba(255, 255, 255, .12);
  border-radius: 12px;
  padding: 16px 20px;
  flex: 1;
  display: flex;
  flex-direction: column;
  justify-content: center;
}
.uc-side-label {
  color: var(--lav-300);
  font-size: 12px;
  font-weight: 700;
  letter-spacing: .12em;
  text-transform: uppercase;
  margin-bottom: 6px;
}
.uc-side-text {
  color: var(--lav-50);
  font-size: 14.5px;
  line-height: 1.4;
}
.uc-main {
  display: flex;
  flex-direction: column;
  gap: 12px;
}
.uc-metrics-grid {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 12px;
}
.uc-metric-card {
  background: #22264e;
  border: 1px solid rgba(255, 255, 255, .08);
  border-radius: 12px;
  padding: 18px 22px;
  display: flex;
  flex-direction: column;
  justify-content: space-between;
}
.uc-metric-label {
  color: var(--lav-300);
  font-size: 12px;
  font-weight: 700;
  letter-spacing: .12em;
  text-transform: uppercase;
}
.uc-stat-row {
  display: flex;
  align-items: baseline;
  gap: 10px;
  margin: 6px 0 4px;
}
.uc-stat-val {
  font-size: 40px;
  font-weight: 700;
  color: var(--mint);
  line-height: 1;
  font-variant-numeric: tabular-nums;
  letter-spacing: -.02em;
}
.uc-stat-sub {
  font-size: 14px;
  color: #9aa0c0;
  font-weight: 500;
}
.uc-stat-sub.is-light {
  color: var(--lav-50);
}
.uc-metric-desc {
  font-size: 14px;
  color: var(--lav-50);
  line-height: 1.35;
}
.uc-submission-card {
  background: var(--mint);
  color: var(--ink);
  border-radius: 12px;
  padding: 18px 24px;
  display: flex;
  align-items: center;
  gap: 28px;
}
.uc-submission-label {
  color: var(--ink);
  font-size: 12.5px;
  font-weight: 700;
  letter-spacing: .14em;
  text-transform: uppercase;
  min-width: 90px;
}
.uc-submission-stat {
  font-size: 32px;
  font-weight: 700;
  color: var(--ink);
  line-height: 1;
  font-variant-numeric: tabular-nums;
  white-space: nowrap;
  letter-spacing: -.02em;
}
.uc-submission-desc {
  font-size: 14.5px;
  color: var(--ink);
  font-weight: 500;
  line-height: 1.35;
}
@media (max-width: 960px) {
  .uc-grid {
    grid-template-columns: 1fr;
  }
}
@media (max-width: 640px) {
  .uc-metrics-grid {
    grid-template-columns: 1fr;
  }
  .uc-submission-card {
    flex-direction: column;
    align-items: flex-start;
    gap: 8px;
  }
}
