/* Blue Apple India — revision 2026.08-E "Aurora"
   Dark-first, colour-coded across six practices. Every component reads tokens,
   so the light counterpart is a token swap rather than a second stylesheet. */

:root{
  --bg:#070B12; --bg-2:#0A101A; --bg-3:#0D1522;
  --surface:#0F1826; --surface-2:#141F31; --glass:rgba(255,255,255,.035);
  --line:#1D2A3D; --line-2:#2B3C54;
  --ink:#F4F8FF; --ink-2:#C9D6E8; --body:#9FB1C9; --muted:#8195B0;
  --field:#0C1420;

  --c-ai:#22D3EE; --c-green:#34D399; --c-hr:#A78BFA;
  --c-tqm:#FBBF24; --c-tpm:#FB7185; --c-esg:#A3E635;
  --c-five:#FB923C; --c-iot:#60A5FA;
  --brand:#4FC8F5;

  --glow-a:rgba(34,211,238,.20); --glow-b:rgba(167,139,250,.17);
  --glow-c:rgba(52,211,153,.15); --glow-d:rgba(251,113,133,.12);
  --mesh-op:1;

  --wrap:1280px; --gut:clamp(20px,4.6vw,60px); --nav-h:76px; --r:18px;
  --disp:"Space Grotesk",system-ui,-apple-system,"Segoe UI",sans-serif;
  --sans:"Inter",system-ui,-apple-system,"Segoe UI",Roboto,sans-serif;
  --mono:"Geist Mono",ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;
  color-scheme:dark;
}
[data-theme="light"]{
  --bg:#FFFFFF; --bg-2:#F6F9FD; --bg-3:#EFF4FA;
  --surface:#FFFFFF; --surface-2:#F4F8FC; --glass:rgba(10,18,32,.025);
  --line:#E2E9F2; --line-2:#CBD7E6;
  --ink:#0A1220; --ink-2:#233246; --body:#4C5B70; --muted:#69768A;
  --field:#FFFFFF;

  --c-ai:#067A93; --c-green:#07734F; --c-hr:#6534D6;
  --c-tqm:#8F5606; --c-tpm:#C4173D; --c-esg:#456F0B;
  --c-five:#B4530A; --c-iot:#1D4ED8;
  --brand:#1E7FB8;

  --glow-a:rgba(34,150,200,.16); --glow-b:rgba(140,110,240,.13);
  --glow-c:rgba(30,180,130,.12); --glow-d:rgba(240,110,140,.10);
  --mesh-op:.85;
  color-scheme:light;
}

*,*::before,*::after{box-sizing:border-box}
html{-webkit-text-size-adjust:100%; scroll-behavior:smooth}
body{
  margin:0; background:var(--bg); color:var(--body);
  font-family:var(--sans); font-size:16.5px; line-height:1.65;
  -webkit-font-smoothing:antialiased; overflow-x:hidden;
}
img,svg{max-width:100%; display:block}
a{color:inherit; text-decoration:none}
::selection{background:var(--c-ai); color:#06121A}

h1,h2,h3,h4{
  font-family:var(--disp); color:var(--ink); margin:0;
  font-weight:600; letter-spacing:-.03em; line-height:1.06; text-wrap:balance;
}
h1{font-size:clamp(2.6rem,6vw,4.7rem)}
h2{font-size:clamp(2rem,4.1vw,3.3rem); letter-spacing:-.028em}
h3{font-size:clamp(1.14rem,1.7vw,1.42rem); letter-spacing:-.018em; line-height:1.2}
h4{font-size:1rem; letter-spacing:-.01em}
p{margin:0}

.wrap{width:100%; max-width:var(--wrap); margin-inline:auto; padding-inline:var(--gut); position:relative}
.wrap--tight{max-width:900px}
section{padding-block:clamp(64px,8vw,124px); position:relative}
.lede{font-size:clamp(1.02rem,1.35vw,1.17rem); line-height:1.62; color:var(--body); max-width:62ch}
.small{font-size:.86rem; line-height:1.55; color:var(--muted)}

/* ── the aurora field ───────────────────────────────────── */
.aurora{position:fixed; inset:0; z-index:-2; pointer-events:none; opacity:var(--mesh-op); overflow:hidden}
.aurora i{position:absolute; display:block; border-radius:50%; filter:blur(90px)}
.aurora i:nth-child(1){width:62vw; height:62vw; left:-16vw; top:-22vw; background:var(--glow-a); animation:drift-a 34s ease-in-out infinite}
.aurora i:nth-child(2){width:52vw; height:52vw; right:-14vw; top:6vw;  background:var(--glow-b); animation:drift-b 41s ease-in-out infinite}
.aurora i:nth-child(3){width:46vw; height:46vw; left:22vw; top:64vh;   background:var(--glow-c); animation:drift-c 47s ease-in-out infinite}
.aurora i:nth-child(4){width:38vw; height:38vw; right:6vw; top:118vh;  background:var(--glow-d); animation:drift-a 53s ease-in-out infinite}
@keyframes drift-a{0%,100%{transform:translate3d(0,0,0) scale(1)}50%{transform:translate3d(6vw,5vh,0) scale(1.14)}}
@keyframes drift-b{0%,100%{transform:translate3d(0,0,0) scale(1.06)}50%{transform:translate3d(-7vw,7vh,0) scale(.92)}}
@keyframes drift-c{0%,100%{transform:translate3d(0,0,0) scale(.96)}50%{transform:translate3d(5vw,-6vh,0) scale(1.18)}}
.grid-lines{
  position:fixed; inset:0; z-index:-1; pointer-events:none; opacity:.42;
  background-image:linear-gradient(var(--line) 1px,transparent 1px),linear-gradient(90deg,var(--line) 1px,transparent 1px);
  background-size:74px 74px;
  -webkit-mask-image:radial-gradient(ellipse 90% 60% at 50% 0%,#000 10%,transparent 72%);
  mask-image:radial-gradient(ellipse 90% 60% at 50% 0%,#000 10%,transparent 72%);
}

/* ── nav ────────────────────────────────────────────────── */
.nav{position:sticky; top:0; z-index:60; backdrop-filter:blur(16px) saturate(150%);
     background:color-mix(in srgb,var(--bg) 76%,transparent); border-bottom:1px solid var(--line)}
.nav__in{max-width:var(--wrap); margin-inline:auto; padding-inline:var(--gut);
         height:var(--nav-h); display:flex; align-items:center; gap:22px}
.brand{display:flex; align-items:center; gap:11px; margin-right:auto}
.brand__mark{width:38px;height:38px;min-width:38px;max-width:38px;min-height:38px;max-height:38px;flex:0 0 38px;object-fit:contain}
.brand__mark--dark{display:block} .brand__mark--light{display:none}
[data-theme="light"] .brand__mark--dark{display:none}
[data-theme="light"] .brand__mark--light{display:block}
.brand__t{display:flex; flex-direction:column; line-height:1}
.brand__a{font-family:var(--disp); font-weight:600; font-size:1.12rem; color:var(--ink); letter-spacing:-.02em}
.brand__b{font-family:var(--mono); font-size:.53rem; letter-spacing:.36em; color:var(--muted); margin-top:4px}
.nav__links{display:flex; align-items:center; gap:4px}
.nav__links>a{padding:9px 13px; border-radius:9px; font-size:.925rem; color:var(--body); transition:color .18s,background .18s}
.nav__links>a:hover{color:var(--ink); background:var(--glass)}
.nav__links>a[aria-current]{color:var(--ink)}
.nav__links>a[aria-current]::after{content:""; display:block; height:2px; margin-top:5px; border-radius:2px;
  background:linear-gradient(90deg,var(--c-ai),var(--c-hr))}
.nav__links>a.btn{color:#050A12; padding:11px 18px; font-size:.9rem; flex:0 0 auto}
.nav__links>a.btn:hover{color:#050A12; background:linear-gradient(120deg,var(--c-ai),#7DD3FC 40%,var(--c-hr))}
.tgl{width:38px;height:38px;flex:0 0 38px; display:grid; place-items:center; cursor:pointer;
     border:1px solid var(--line); border-radius:11px; background:var(--glass); color:var(--body)}
.tgl:hover{color:var(--ink); border-color:var(--line-2)}
.tgl svg{width:17px;height:17px}
.tgl .moon{display:none} [data-theme="light"] .tgl .moon{display:block} [data-theme="light"] .tgl .sun{display:none}
.burger{display:none; width:38px;height:38px; border:1px solid var(--line); border-radius:11px;
        background:var(--glass); cursor:pointer; padding:0; place-items:center}
.burger span{display:block; width:15px; height:1.6px; background:var(--ink); margin:3px auto; border-radius:2px}

/* ── buttons ────────────────────────────────────────────── */
.btn{
  display:inline-flex; align-items:center; gap:9px; padding:13px 22px; border-radius:12px;
  font-family:var(--sans); font-weight:600; font-size:.94rem; letter-spacing:-.005em;
  color:#050A12; background:linear-gradient(120deg,var(--c-ai),#7DD3FC 40%,var(--c-hr));
  border:0; cursor:pointer; white-space:nowrap; transition:transform .2s, box-shadow .25s;
  box-shadow:0 8px 30px -10px rgba(34,211,238,.55);
}
.btn:hover{transform:translateY(-2px); box-shadow:0 14px 40px -10px rgba(34,211,238,.7)}
.btn--ghost{
  background:var(--glass); color:var(--ink); border:1px solid var(--line-2); box-shadow:none;
}
.btn--ghost:hover{background:color-mix(in srgb,var(--ink) 8%,transparent); box-shadow:none}
.go{display:inline-flex; align-items:center; gap:8px; color:var(--ink); font-weight:500; font-size:.94rem;
    border-bottom:1px solid var(--line-2); padding-bottom:3px; transition:border-color .2s,color .2s}
.go:hover{border-bottom-color:var(--c-ai); color:var(--c-ai)}
.actions{display:flex; flex-wrap:wrap; gap:14px 18px; align-items:center; margin-top:38px}

/* ── eyebrow / pill ─────────────────────────────────────── */
.eyebrow{
  display:inline-flex; align-items:center; gap:9px; padding:7px 14px 7px 11px; border-radius:999px;
  border:1px solid var(--line-2); background:var(--glass);
  font-family:var(--mono); font-size:.66rem; letter-spacing:.19em; text-transform:uppercase;
  color:var(--ink-2);
}
.eyebrow b{width:6px;height:6px;border-radius:50%;background:var(--c-ai);
           box-shadow:0 0 0 4px color-mix(in srgb,var(--c-ai) 22%,transparent)}
.sec-head{max-width:66ch}
.sec-head h2{margin-top:20px}
.sec-head .lede{margin-top:18px}

/* ── hero ───────────────────────────────────────────────── */
.hero{padding-block:clamp(52px,7vw,104px) clamp(40px,5vw,72px); text-align:center}
.hero h1{margin-top:26px; max-width:19ch; margin-inline:auto}
.hero h1 em{font-style:normal; background:linear-gradient(100deg,var(--c-ai),var(--c-hr) 52%,var(--c-tpm));
            -webkit-background-clip:text; background-clip:text; color:transparent}
.hero .lede{margin:24px auto 0; text-align:center; max-width:64ch}
.hero .actions{justify-content:center}
.hero--left{text-align:left}
.hero--left h1,.hero--left .lede{margin-left:0; margin-right:0; text-align:left}
.hero--left .actions,.hero--left .chips{justify-content:flex-start}

.chips{display:flex; flex-wrap:wrap; justify-content:center; gap:9px; margin-top:44px}
.chip{
  display:inline-flex; align-items:center; gap:8px; padding:8px 15px; border-radius:999px;
  border:1px solid var(--line); background:var(--surface); font-size:.83rem; color:var(--ink-2);
  font-weight:500; transition:border-color .2s, transform .2s, box-shadow .25s;
}
.chip i{width:7px;height:7px;border-radius:50%;background:var(--c);flex:0 0 7px;
        box-shadow:0 0 12px color-mix(in srgb,var(--c) 80%,transparent)}
.chip:hover{transform:translateY(-2px); border-color:color-mix(in srgb,var(--c) 55%,var(--line));
            box-shadow:0 10px 30px -14px color-mix(in srgb,var(--c) 70%,transparent)}

/* ── the console: live plant telemetry ──────────────────── */
.console{
  margin-top:clamp(44px,5vw,68px); border:1px solid var(--line); border-radius:22px;
  background:linear-gradient(180deg,color-mix(in srgb,var(--surface) 92%,transparent),var(--bg-2));
  overflow:hidden; text-align:left; box-shadow:0 40px 90px -50px rgba(0,0,0,.85);
}
.console__bar{display:flex; align-items:center; gap:14px; padding:13px 20px; border-bottom:1px solid var(--line);
  font-family:var(--mono); font-size:.63rem; letter-spacing:.17em; text-transform:uppercase; color:var(--muted)}
.console__dots{display:flex; gap:6px}
.console__dots i{width:9px;height:9px;border-radius:50%;background:var(--line-2)}
.console__dots i:first-child{background:var(--c-tpm)} .console__dots i:nth-child(2){background:var(--c-tqm)}
.console__dots i:nth-child(3){background:var(--c-green)}
.console__live{margin-left:auto; display:inline-flex; align-items:center; gap:8px; color:var(--c-green)}
.console__live b{width:6px;height:6px;border-radius:50%;background:var(--c-green);animation:blip 2.4s ease-in-out infinite}
@keyframes blip{0%,100%{opacity:1}50%{opacity:.2}}
.console__g{display:grid; grid-template-columns:repeat(4,1fr)}
.tile{padding:clamp(18px,2.2vw,26px); border-right:1px solid var(--line); border-bottom:1px solid var(--line)}
.tile:nth-child(4n){border-right:0}
.tile:nth-last-child(-n+4){border-bottom:0}
.tile__k{font-family:var(--mono); font-size:.6rem; letter-spacing:.17em; text-transform:uppercase; color:var(--muted)}
.tile__v{font-family:var(--disp); font-size:clamp(1.7rem,2.8vw,2.3rem); font-weight:600; color:var(--ink);
         letter-spacing:-.03em; margin-top:10px; line-height:1; font-variant-numeric:tabular-nums}
.tile__v small{font-size:.5em; color:var(--muted); font-weight:500; margin-left:3px}
.tile__d{display:inline-flex; align-items:center; gap:6px; margin-top:11px; font-size:.76rem; color:var(--c)}
.spark{margin-top:14px; height:26px; width:100%}
.spark path{fill:none; stroke:var(--c); stroke-width:1.8; stroke-linecap:round; stroke-linejoin:round}
.spark .fillp{fill:color-mix(in srgb,var(--c) 13%,transparent); stroke:none}

/* ── marquee ────────────────────────────────────────────── */
.mq{border-block:1px solid var(--line); padding-block:20px; overflow:hidden; background:var(--glass)}
.mq__t{display:flex; gap:44px; width:max-content; animation:slide 42s linear infinite}
.mq__t span{font-family:var(--mono); font-size:.74rem; letter-spacing:.2em; text-transform:uppercase; color:var(--muted); white-space:nowrap}
.mq__t span::after{content:"◆"; margin-left:44px; color:var(--line-2)}
@keyframes slide{from{transform:translateX(0)}to{transform:translateX(-50%)}}

/* ── bento ──────────────────────────────────────────────── */
.bento{display:grid; grid-template-columns:repeat(6,1fr); gap:clamp(14px,1.6vw,22px); margin-top:clamp(40px,5vw,62px)}
.pc{
  --c:var(--c-ai);
  position:relative; grid-column:span 2; border-radius:var(--r); overflow:hidden;
  background:var(--surface); border:1px solid var(--line);
  padding:clamp(22px,2.4vw,32px); transition:transform .3s, border-color .3s, box-shadow .35s;
  isolation:isolate;
}
.pc::after{
  content:""; position:absolute; z-index:-1; width:340px; height:340px; right:-130px; top:-160px;
  border-radius:50%; background:radial-gradient(circle,color-mix(in srgb,var(--c) 34%,transparent),transparent 66%);
  filter:blur(22px); opacity:.85; transition:opacity .35s, transform .5s;
}
.pc:hover{transform:translateY(-4px); border-color:color-mix(in srgb,var(--c) 45%,var(--line));
          box-shadow:0 26px 60px -34px color-mix(in srgb,var(--c) 85%,transparent)}
.pc:hover::after{opacity:1; transform:translate(-14px,14px) scale(1.08)}
.pc--wide{grid-column:span 3}
.pc--tall{grid-column:span 2; grid-row:span 2}
.pc__i{width:46px;height:46px;border-radius:13px; display:grid; place-items:center;
       background:color-mix(in srgb,var(--c) 15%,transparent);
       border:1px solid color-mix(in srgb,var(--c) 35%,transparent); color:var(--c)}
.pc__i svg{width:23px;height:23px}
.pc__n{font-family:var(--mono); font-size:.62rem; letter-spacing:.2em; text-transform:uppercase;
       color:var(--c); margin-top:20px}
.pc h3{margin-top:9px}
.pc__b{margin-top:12px; font-size:.93rem; line-height:1.58; color:var(--body)}
.pc__l{list-style:none; margin:16px 0 0; padding:0}
.pc__l li{position:relative; padding-left:19px; font-size:.875rem; line-height:1.5; color:var(--ink-2); margin-top:8px}
.pc__l li::before{content:""; position:absolute; left:0; top:9px; width:8px; height:8px; border-radius:3px;
  background:color-mix(in srgb,var(--c) 70%,transparent)}
.pc__m{display:flex; align-items:baseline; gap:9px; margin-top:20px; padding-top:16px; border-top:1px solid var(--line)}
.pc__m b{font-family:var(--disp); font-size:1.6rem; font-weight:600; color:var(--c); letter-spacing:-.03em}
.pc__m span{font-size:.8rem; color:var(--muted)}

/* ── stepper (greenfield) ───────────────────────────────── */
.steps{display:grid; grid-template-columns:repeat(6,1fr); gap:clamp(12px,1.5vw,20px); margin-top:clamp(38px,4.6vw,58px)}
.step{position:relative; padding-top:28px; border-top:2px solid var(--line)}
.step::before{content:""; position:absolute; top:-6px; left:0; width:10px; height:10px; border-radius:50%;
  background:var(--c); box-shadow:0 0 0 4px color-mix(in srgb,var(--c) 20%,transparent)}
.step__k{font-family:var(--mono); font-size:.6rem; letter-spacing:.18em; text-transform:uppercase; color:var(--c)}
.step h4{margin-top:9px; color:var(--ink)}
.step p{margin-top:8px; font-size:.845rem; line-height:1.5; color:var(--body)}

/* ── stats ──────────────────────────────────────────────── */
.stats{display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:clamp(16px,2vw,26px)}
.stat{border:1px solid var(--line); border-radius:var(--r); padding:clamp(20px,2.2vw,28px); background:var(--surface)}
.stat b{display:block; font-family:var(--disp); font-size:clamp(2.2rem,4vw,3.1rem); font-weight:600;
        letter-spacing:-.04em; line-height:1; color:var(--ink); font-variant-numeric:tabular-nums}
.stat b em{font-style:normal; background:linear-gradient(120deg,var(--c-ai),var(--c-hr));
           -webkit-background-clip:text; background-clip:text; color:transparent}
.stat span{display:block; margin-top:13px; font-size:.86rem; line-height:1.5; color:var(--body)}

/* ── panels & rows ──────────────────────────────────────── */
.panel h2{font-size:clamp(1.55rem,2.7vw,2.35rem)}
.panel .stats{grid-template-columns:repeat(3,minmax(0,1fr)); gap:12px}
.panel .stat{padding:15px 14px}
.panel .stat b{font-size:clamp(1.25rem,1.8vw,1.65rem); white-space:nowrap}
.panel .stat span{margin-top:9px; font-size:.74rem; line-height:1.4}
.panel{border:1px solid var(--line); border-radius:calc(var(--r) + 6px); background:var(--surface);
       padding:clamp(24px,3vw,44px); position:relative; overflow:hidden}
.panel--glow::before{content:""; position:absolute; inset:0; pointer-events:none;
  background:radial-gradient(700px 260px at 12% -10%,color-mix(in srgb,var(--c-ai) 14%,transparent),transparent 70%)}
.split{display:grid; grid-template-columns:minmax(0,1fr) minmax(0,1fr); gap:clamp(28px,4vw,64px); align-items:start}
.split--wide{grid-template-columns:minmax(0,.82fr) minmax(0,1.18fr)}
.f2{display:grid; grid-template-columns:1fr 1fr; gap:clamp(16px,2vw,26px)}
.f3{display:grid; grid-template-columns:repeat(3,1fr); gap:clamp(16px,2vw,26px)}

.rows{margin-top:clamp(34px,4vw,54px); border-top:1px solid var(--line)}
.row{display:grid; grid-template-columns:52px minmax(0,1fr) minmax(0,1.5fr); gap:clamp(14px,2.6vw,38px);
     padding:clamp(22px,2.6vw,32px) 0; border-bottom:1px solid var(--line); align-items:start}
.row__c{font-family:var(--mono); font-size:.66rem; letter-spacing:.14em; color:var(--c); padding-top:5px; font-weight:600}
.row__b{font-size:.93rem; line-height:1.6}
.row__b ul{margin:11px 0 0; padding-left:17px} .row__b li{margin:5px 0}

/* ── results ────────────────────────────────────────────── */
.res{display:grid; grid-template-columns:repeat(3,1fr); gap:clamp(16px,2vw,26px); margin-top:clamp(34px,4vw,52px)}
.res__i{border:1px solid var(--line); border-radius:var(--r); padding:clamp(20px,2.2vw,28px); background:var(--surface)}
.res__d{font-family:var(--disp); font-size:clamp(1.9rem,3.2vw,2.6rem); font-weight:600; letter-spacing:-.035em; color:var(--c); line-height:1}
.res__t{margin-top:12px; color:var(--ink); font-weight:500}
.res__ba{font-family:var(--mono); font-size:.7rem; letter-spacing:.1em; color:var(--muted); margin-top:7px}

/* ── people ─────────────────────────────────────────────── */
.people{display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:clamp(16px,2vw,26px); margin-top:clamp(34px,4vw,52px)}
.person--wide{grid-column:1 / -1; display:grid; grid-template-columns:auto minmax(0,1fr) auto;
  gap:clamp(18px,2.4vw,34px); align-items:center}
.person--wide h3{margin-top:0}
.person__yrs{position:absolute; right:clamp(20px,2.2vw,28px); top:clamp(22px,2.4vw,30px);
  font-family:var(--mono); font-size:.62rem; letter-spacing:.13em; text-transform:uppercase;
  color:var(--muted); text-align:right; line-height:1.5}
.person--wide .person__yrs{position:static; text-align:left}
.person{border:1px solid var(--line); border-radius:var(--r); background:var(--surface); padding:clamp(20px,2.2vw,28px);
        position:relative; overflow:hidden; transition:border-color .3s, transform .3s}
.person:hover{transform:translateY(-3px); border-color:color-mix(in srgb,var(--c) 45%,var(--line))}
.person__a{width:54px;height:54px;border-radius:15px; display:grid; place-items:center;
  background:color-mix(in srgb,var(--c) 14%,transparent); border:1px solid color-mix(in srgb,var(--c) 32%,transparent);
  font-family:var(--disp); font-weight:600; font-size:1.12rem; color:var(--c); letter-spacing:-.02em}
.person h3{margin-top:18px; font-size:1.16rem}
.person__r{font-family:var(--mono); font-size:.62rem; letter-spacing:.16em; text-transform:uppercase; color:var(--c); margin-top:9px}
.person__d{margin-top:12px; font-size:.885rem; line-height:1.55; color:var(--body)}
.person__x{margin-top:14px; padding-top:13px; border-top:1px solid var(--line); font-family:var(--mono);
           font-size:.65rem; letter-spacing:.13em; text-transform:uppercase; color:var(--muted)}

/* ── cta band ───────────────────────────────────────────── */
.cta{position:relative; overflow:hidden; border-radius:calc(var(--r) + 10px); padding:clamp(34px,5vw,72px);
     border:1px solid var(--line-2); background:var(--surface);}
.cta::before{content:""; position:absolute; inset:0; pointer-events:none;
  background:
    radial-gradient(520px 300px at 6% 8%,color-mix(in srgb,var(--c-ai) 26%,transparent),transparent 68%),
    radial-gradient(520px 300px at 94% 92%,color-mix(in srgb,var(--c-hr) 24%,transparent),transparent 68%),
    radial-gradient(420px 260px at 60% 0%,color-mix(in srgb,var(--c-green) 14%,transparent),transparent 70%)}
.cta>*{position:relative}

/* ── form ───────────────────────────────────────────────── */
.field{margin-top:18px}
.field label{display:block; font-family:var(--mono); font-size:.63rem; letter-spacing:.16em;
             text-transform:uppercase; color:var(--muted); margin-bottom:8px}
.field input,.field select,.field textarea{
  width:100%; padding:13px 15px; border-radius:12px; border:1px solid var(--line-2);
  background:var(--field); color:var(--ink); font-family:var(--sans); font-size:.95rem;
}
.field textarea{min-height:132px; resize:vertical}
.field select{
  appearance:none; -webkit-appearance:none; padding-right:40px; cursor:pointer;
  background-image:linear-gradient(45deg,transparent 50%,currentColor 50%),linear-gradient(135deg,currentColor 50%,transparent 50%);
  background-position:calc(100% - 20px) calc(50% + 1px),calc(100% - 14px) calc(50% + 1px);
  background-size:6px 6px,6px 6px; background-repeat:no-repeat;
}
.field input:focus,.field select:focus,.field textarea:focus{
  outline:none; border-color:var(--c-ai); box-shadow:0 0 0 3px color-mix(in srgb,var(--c-ai) 18%,transparent)}
.hp{position:absolute; left:-9999px}

/* ── footer ─────────────────────────────────────────────── */
.foot{border-top:1px solid var(--line); padding-block:clamp(44px,5vw,66px) 30px; background:var(--bg-2)}
.foot__g{display:grid; grid-template-columns:1.6fr 1fr 1fr 1fr; gap:clamp(24px,3vw,46px)}
.foot h4{font-family:var(--mono); font-size:.62rem; letter-spacing:.2em; text-transform:uppercase;
         color:var(--muted); font-weight:600; margin-bottom:15px}
.foot a{display:block; padding:5px 0; font-size:.9rem; color:var(--body)}
.foot a:hover{color:var(--c-ai)}
.foot__b{display:flex; flex-wrap:wrap; gap:10px 24px; justify-content:space-between; margin-top:clamp(34px,4vw,50px);
         padding-top:22px; border-top:1px solid var(--line); font-size:.8rem; color:var(--muted)}


/* ── academy: the one thing that teaches all six ────────── */
.rainbow{background:linear-gradient(100deg,var(--c-ai),var(--c-green) 20%,var(--c-hr) 40%,
  var(--c-tqm) 60%,var(--c-tpm) 80%,var(--c-esg));
  -webkit-background-clip:text; background-clip:text; color:transparent}
.eyebrow--rb b{background:linear-gradient(100deg,var(--c-ai),var(--c-esg));
  box-shadow:0 0 0 4px color-mix(in srgb,var(--c-hr) 20%,transparent)}
.btn--rb{background:linear-gradient(100deg,var(--c-ai),var(--c-hr) 45%,var(--c-tpm));
  box-shadow:0 8px 30px -10px rgba(167,139,250,.55)}
.btn--rb:hover{box-shadow:0 14px 40px -10px rgba(167,139,250,.7)}
.nav__links>a.btn--rb,.nav__links>a.btn--rb:hover{
  background:linear-gradient(100deg,var(--c-ai),var(--c-hr) 45%,var(--c-tpm))}
.spectrum{display:flex; height:4px; border-radius:4px; overflow:hidden; margin-top:26px}
.spectrum--8 i{flex:1}
.spectrum i{flex:1}
.tiers{width:100%; border-collapse:collapse; margin-top:clamp(28px,3.4vw,44px); font-size:.92rem}
.tiers th,.tiers td{text-align:left; padding:15px 16px; border-bottom:1px solid var(--line);
  vertical-align:top}
.tiers th{font-family:var(--mono); font-size:.6rem; letter-spacing:.17em; text-transform:uppercase;
  color:var(--muted); font-weight:600; border-bottom-color:var(--line-2)}
.tiers td:first-child{color:var(--ink); font-weight:600; white-space:nowrap}
.tiers tr:last-child td{border-bottom:0}
.tiers td b{color:var(--c); font-weight:600}
.swap{width:100%; border-collapse:collapse; margin-top:22px; font-size:.9rem}
.swap td{padding:12px 14px; border-bottom:1px solid var(--line); vertical-align:top}
.swap tr:last-child td{border-bottom:0}
.swap td:first-child{color:var(--muted); width:46%}
.swap td:last-child{color:var(--ink-2)}
.swap td:last-child b{color:var(--c-ai); font-weight:600}
@media (max-width:700px){
  .tiers,.tiers tbody,.tiers tr,.tiers td{display:block; width:100%}
  .tiers thead{display:none}
  .tiers tr{border-bottom:1px solid var(--line-2); padding-block:8px}
  .tiers td{border-bottom:0; padding:4px 0}
  .tiers td:first-child{font-size:1.05rem; padding-top:12px}
  .swap td{display:block; width:100%} .swap td:first-child{border-bottom:0; padding-bottom:0}
}

/* ── curriculum levels ──────────────────────────────────── */
.lvl{position:relative; border:1px solid var(--line); border-radius:calc(var(--r) + 4px);
     background:var(--surface); padding:clamp(22px,2.6vw,34px); overflow:hidden}
.lvl::after{content:""; position:absolute; inset:0 0 auto 0; height:4px; background:var(--c)}
.lvl__k{font-family:var(--mono); font-size:.62rem; letter-spacing:.2em; text-transform:uppercase; color:var(--c)}
.lvl__a{font-family:var(--disp); font-size:clamp(1.9rem,3.2vw,2.6rem); font-weight:600;
        letter-spacing:-.035em; line-height:1; color:var(--ink); margin-top:12px}
.lvl__t{margin-top:10px; font-size:1.02rem; color:var(--ink-2); font-weight:500}
.lvl__b{margin-top:12px; font-size:.92rem; line-height:1.56; color:var(--body)}
.lvl__m{display:flex; flex-wrap:wrap; gap:8px 10px; margin-top:18px}
.lvl__m span{font-family:var(--mono); font-size:.58rem; letter-spacing:.14em; text-transform:uppercase;
  color:var(--muted); border:1px solid var(--line); border-radius:999px; padding:5px 10px}
.lvl__d{margin-top:20px; padding-top:16px; border-top:1px solid var(--line);
        display:flex; flex-wrap:wrap; gap:10px 16px; align-items:center}

/* ── reveal ─────────────────────────────────────────────── */
.js .rv{opacity:0; transform:translateY(16px); transition:opacity .7s cubic-bezier(.2,.7,.3,1),transform .7s cubic-bezier(.2,.7,.3,1)}
.js .rv.on{opacity:1; transform:none}

/* ── responsive ─────────────────────────────────────────── */
@media (max-width:1080px){
  .bento{grid-template-columns:repeat(4,1fr)}
  .pc,.pc--wide,.pc--tall{grid-column:span 2; grid-row:auto}
  .steps{grid-template-columns:repeat(3,1fr); gap:26px}
  .stats{grid-template-columns:repeat(2,1fr)}
  .people{grid-template-columns:repeat(2,minmax(0,1fr))}
  .person--wide{grid-template-columns:auto minmax(0,1fr)}
  .foot__g{grid-template-columns:1fr 1fr}
}
@media (max-width:880px){
  .nav__links{display:none; position:absolute; inset:var(--nav-h) 0 auto; flex-direction:column;
    align-items:stretch; gap:0; background:var(--bg); border-bottom:1px solid var(--line); padding:10px var(--gut) 22px}
  .nav__links.open{display:flex}
  .nav__links>a{padding:13px 0; border-radius:0; border-bottom:1px solid var(--line)}
  .nav__links>a[aria-current]::after{display:none}
  .nav__links .btn{margin-top:15px; justify-content:center}
  .burger{display:grid; order:3}
  .console__g{grid-template-columns:repeat(2,1fr)}
  .tile:nth-child(2n){border-right:0} .tile:nth-child(4n-1){border-right:1px solid var(--line)}
  .tile:nth-last-child(-n+2){border-bottom:0} .tile:nth-last-child(-n+4){border-bottom:1px solid var(--line)}
  .split,.split--wide{grid-template-columns:1fr; gap:30px}
  .f2,.f3,.res{grid-template-columns:1fr}
  .row{grid-template-columns:1fr; gap:9px}
  .row__c{padding-top:0}
}
@media (max-width:560px){
  .bento{grid-template-columns:1fr}
  .pc,.pc--wide,.pc--tall{grid-column:span 1}
  .steps{grid-template-columns:1fr; gap:22px}
  .stats,.people,.foot__g{grid-template-columns:1fr}
  .person--wide{grid-template-columns:1fr}
  .panel .stats{grid-template-columns:1fr}
  .console__g{grid-template-columns:1fr}
  .tile{border-right:0!important; border-bottom:1px solid var(--line)!important}
  .tile:last-child{border-bottom:0!important}
}
@media (prefers-reduced-motion:reduce){
  html{scroll-behavior:auto}
  .rv{opacity:1!important; transform:none!important; transition:none}
  .aurora i,.mq__t,.console__live b{animation:none}
  .btn:hover,.pc:hover,.chip:hover,.person:hover{transform:none}
}
