/* ===========================================================
   AGNIRA RESEARCH LABS — Design System
   Mood: data instrument. Spare, serious, confident.
   Agnira purple = parent brand. ARIA data palette = accents.
   =========================================================== */
:root{
  /* Agnira brand palette (exact, from brand guidelines) */
  --purple:#8A3CDD;
  --purple-deep:#5B21B6;
  --purple-light:#DBBAFF;
  --lavender:#DBBAFF;
  --mint:#AAE3D2;
  --brand-yellow:#FBFF87;
  --violet-bg:#F6F2FE;
  --violet-bg-2:#EFE6FB;

  /* ARIA data palette (exact, from brand guidelines) */
  --data-blue:#001AFF;
  --data-sky:#03A6E1;
  --data-red:#F15137;
  --data-yellow:#FFC702;
  --data-orange:#FF8F15;
  --data-pink:#FCAEBB;
  --data-purple:#722F8C;

  /* Brand product accents */
  --aria-blue:#001AFF;
  --cornerstone-blue:#1A4FC4;
  --nalanda-green:#1f7a4d;
  --minerva-gold:#B8860B;

  /* Neutrals */
  --ink:#15111F;
  --ink-2:#3A3548;
  --grey:#6B6577;
  --line:#E7E2F0;
  --paper:#FBFAFD;
  --white:#FFFFFF;
  --near-black:#0E0B16;

  --maxw:1160px;
  --narrow:740px;
  --r:14px;
}
*{box-sizing:border-box;margin:0;padding:0}
html{scroll-behavior:smooth;-webkit-text-size-adjust:100%}
body{
  font-family:'Inter',system-ui,sans-serif;
  color:var(--ink);background:var(--white);
  font-size:18px;line-height:1.7;-webkit-font-smoothing:antialiased;
}
img{max-width:100%;display:block}
a{color:inherit;text-decoration:none}

/* Layout */
.container{width:100%;max-width:var(--maxw);margin:0 auto;padding:0 28px}
.container.narrow{max-width:var(--narrow)}
.section{padding:100px 0}
.section.tight{padding:72px 0}
.bg-white{background:var(--white)}
.bg-soft{background:var(--violet-bg)}
.bg-paper{background:var(--paper)}
.center{text-align:center}

/* Type */
h1,h2,h3,h4{font-family:'Fraunces',Georgia,serif;font-weight:600;line-height:1.1;letter-spacing:-0.015em;color:var(--ink)}
h1{font-size:clamp(2.4rem,6vw,4.4rem)}
h2{font-size:clamp(1.8rem,3.8vw,2.9rem);margin-bottom:24px}
h3{font-size:1.4rem;margin-bottom:10px}
h4{font-size:1.1rem;font-family:'Inter',sans-serif;font-weight:600}
p{margin-bottom:20px;color:var(--ink-2)}
p:last-child{margin-bottom:0}
.narrow p,.measure{max-width:64ch}
.center p{margin-left:auto;margin-right:auto}
.lead{font-size:1.22rem;color:var(--ink);font-weight:450}
strong{font-weight:600;color:var(--ink)}

.eyebrow{
  font-family:'Inter',sans-serif;font-weight:600;font-size:.74rem;
  letter-spacing:.2em;text-transform:uppercase;color:var(--purple);
  margin-bottom:20px;display:block;
}
.eyebrow.light{color:rgba(255,255,255,.75)}

/* mono labels — the "instrument" texture */
.mono{font-family:'IBM Plex Mono','SF Mono',ui-monospace,monospace;font-size:.78rem;letter-spacing:.02em}

/* Buttons */
.btn{display:inline-flex;align-items:center;gap:9px;font-weight:600;font-size:.98rem;
  padding:14px 28px;border-radius:100px;transition:transform .2s,box-shadow .2s,background .2s,color .2s;cursor:pointer;border:none}
.btn-primary{background:var(--purple);color:#fff}
.btn-primary:hover{background:var(--purple-deep);transform:translateY(-2px)}
.btn-light{background:#fff;color:var(--purple-deep);box-shadow:0 8px 30px rgba(0,0,0,.16)}
.btn-light:hover{transform:translateY(-2px);box-shadow:0 12px 38px rgba(0,0,0,.24)}
.btn-ghost{border:1.5px solid var(--line);color:var(--ink)}
.btn-ghost:hover{border-color:var(--purple);color:var(--purple)}
.btn .arr{transition:transform .2s}
.btn:hover .arr{transform:translateX(3px)}

/* Header */
#hd{position:fixed;top:0;left:0;right:0;z-index:100;padding:18px 0;transition:.3s}
.hd-in{max-width:var(--maxw);margin:0 auto;padding:0 28px;display:flex;align-items:center;justify-content:space-between}
.hd-logo img{height:28px;width:auto;display:block}
.hd-logo .dark{display:none}
#hd.solid{background:rgba(255,255,255,.97);backdrop-filter:blur(14px);box-shadow:0 1px 0 var(--line),0 6px 24px rgba(20,12,40,.06);padding:12px 0}
#hd.solid .light{display:none}
#hd.solid .dark{display:block}
.nav{display:flex;align-items:center;gap:30px}
.nav a{font-size:.92rem;font-weight:500;color:rgba(255,255,255,.9);transition:color .2s}
.nav a:hover,.nav a.active{color:#fff}
#hd.solid .nav a{color:var(--ink-2)}
#hd.solid .nav a:hover,#hd.solid .nav a.active{color:var(--purple)}
.nav .cta{border:1.5px solid rgba(255,255,255,.45);padding:8px 18px;border-radius:100px}
#hd.solid .nav .cta{border-color:var(--purple);color:var(--purple)}
/* header on light pages (no hero) */
#hd.on-light .light{display:none}
#hd.on-light .dark{display:block}
#hd.on-light .nav a{color:var(--ink-2)}
#hd.on-light .nav .cta{border-color:var(--purple);color:var(--purple)}

.burger{display:none;background:none;border:0;cursor:pointer;width:44px;height:44px;position:relative;padding:11px 8px}
.burger span{display:block;height:2px;width:28px;background:#fff;position:absolute;left:8px;transition:.3s}
#hd.solid .burger span,#hd.on-light .burger span{background:var(--ink)}
.burger span:nth-child(1){top:12px}.burger span:nth-child(2){top:21px}.burger span:nth-child(3){top:30px}
.burger.open span:nth-child(1){top:10px;transform:rotate(45deg)}
.burger.open span:nth-child(2){opacity:0}
.burger.open span:nth-child(3){top:10px;transform:rotate(-45deg)}
.mnav{background:#fff;border-top:1px solid var(--line);padding:12px 28px 20px}
.mnav[hidden]{display:none}
.mnav:not([hidden]){display:flex;flex-direction:column}
.mnav a{padding:13px 0;font-weight:500;color:var(--ink);border-bottom:1px solid var(--line)}
.mnav a:last-child{border-bottom:0}

/* Hero (home) */
.hero{position:relative;min-height:94vh;display:flex;align-items:center;color:#fff;overflow:hidden;padding:140px 0 90px}
.hero-bg{position:absolute;inset:0;z-index:0;
  background:radial-gradient(120% 100% at 15% 10%,#8B5CF6 0%,transparent 55%),
    radial-gradient(120% 120% at 90% 95%,#5B21B6 0%,transparent 60%),
    linear-gradient(135deg,#7C3AED 0%,#4C1D95 100%)}
.hero-bg::after{content:"";position:absolute;inset:0;background:radial-gradient(70% 60% at 50% 50%,transparent 35%,rgba(30,12,60,.4) 100%)}
.hero .container{position:relative;z-index:1}
.hero h1{color:#fff;max-width:14ch;margin-bottom:26px}
.hero .lead{color:rgba(255,255,255,.9);max-width:54ch;font-size:clamp(1.05rem,2.1vw,1.3rem);margin-bottom:36px}
.hero-cta{display:flex;gap:14px;flex-wrap:wrap}

/* page hero (interior) */
.phero{padding:160px 0 70px;background:var(--violet-bg);border-bottom:1px solid var(--line)}
.phero h1{max-width:18ch;margin-bottom:20px}
.phero .lead{max-width:60ch;color:var(--ink-2)}

/* Stat band */
.stats{display:grid;grid-template-columns:repeat(4,1fr);gap:0;border:1px solid var(--line);border-radius:var(--r);overflow:hidden;background:var(--line)}
.stat{background:#fff;padding:34px 26px}
.stat .n{font-family:'Fraunces',serif;font-size:2.6rem;font-weight:600;line-height:1;color:var(--purple);margin-bottom:8px}
.stat .l{font-size:.86rem;color:var(--grey)}

/* Cards */
.grid-2{display:grid;grid-template-columns:repeat(2,1fr);gap:24px}
.grid-3{display:grid;grid-template-columns:repeat(3,1fr);gap:22px}
.card{background:#fff;border:1px solid var(--line);border-radius:var(--r);padding:34px 30px;transition:transform .25s,box-shadow .25s,border-color .25s;position:relative;overflow:hidden}
.card::before{content:"";position:absolute;top:0;left:0;width:100%;height:3px;transform:scaleX(0);transform-origin:left;transition:transform .3s;background:var(--purple)}
.card.c-blue::before{background:var(--data-blue)}
.card.c-sky::before{background:var(--data-sky)}
.card.c-orange::before{background:var(--data-orange)}
.card.c-red::before{background:var(--data-red)}
.card:hover{transform:translateY(-4px);box-shadow:0 18px 50px rgba(91,33,182,.12);border-color:transparent}
.card:hover::before{transform:scaleX(1)}
.card .tag{font-family:'IBM Plex Mono',monospace;font-size:.72rem;letter-spacing:.08em;text-transform:uppercase;color:var(--purple);margin-bottom:14px;display:block}
.card p{font-size:.97rem}

/* Split feature */
.split{display:grid;grid-template-columns:1fr 1fr;gap:60px;align-items:center}
.split.rev .split-media{order:-1}
.split-media img{border-radius:var(--r);width:100%}
.split-media.frame{border:1px solid var(--line);border-radius:var(--r);overflow:hidden;background:var(--paper)}

/* Fact panel */
.facts{display:grid;gap:0;border:1px solid var(--line);border-radius:var(--r);overflow:hidden;margin-top:24px}
.facts .f{display:flex;justify-content:space-between;gap:16px;padding:15px 22px;border-bottom:1px solid var(--line);background:#fff}
.facts .f:last-child{border-bottom:0}
.facts .k{font-size:.84rem;color:var(--grey)}
.facts .v{font-size:.9rem;font-weight:600;color:var(--ink);text-align:right;font-family:'IBM Plex Mono',monospace}

/* Findings (data viz strip) */
.finding{display:grid;grid-template-columns:auto 1fr;gap:26px;align-items:start;padding:30px 0;border-top:1px solid var(--line)}
.finding:last-child{border-bottom:1px solid var(--line)}
.finding .big{font-family:'Fraunces',serif;font-size:3rem;font-weight:600;line-height:.95;color:var(--ink);min-width:150px}
.finding .big.blue{color:var(--data-blue)}
.finding .big.red{color:var(--data-red)}
.finding .big.orange{color:var(--data-orange)}
.finding h3{margin-bottom:6px}
.finding p{font-size:.98rem;margin:0}

/* School list */
.schools{display:grid;grid-template-columns:repeat(2,1fr);gap:1px;background:var(--line);border:1px solid var(--line);border-radius:var(--r);overflow:hidden}
.schools .sc{background:#fff;padding:24px 26px;display:flex;justify-content:space-between;align-items:baseline;gap:16px}
.schools .sc .nm{font-family:'Fraunces',serif;font-size:1.18rem;font-weight:500;color:var(--ink)}
.schools .sc .lo{font-family:'IBM Plex Mono',monospace;font-size:.74rem;color:var(--purple);text-transform:uppercase;letter-spacing:.04em}
.schools .sc .meta{font-size:.82rem;color:var(--grey);white-space:nowrap}

/* Closing band */
.cband{position:relative;color:#fff;overflow:hidden}
.cband-bg{position:absolute;inset:0;z-index:0;background:radial-gradient(120% 120% at 80% 0%,#8B5CF6 0%,transparent 55%),linear-gradient(135deg,#6D28D9 0%,#4C1D95 100%)}
.cband .container{position:relative;z-index:1}
.cband h2,.cband p{color:#fff}
.cband .lead{color:rgba(255,255,255,.9)}

/* Pull quote */
.pull{font-family:'Fraunces',serif;font-size:clamp(1.4rem,2.6vw,1.9rem);line-height:1.34;color:var(--ink);border-left:3px solid var(--purple);padding-left:26px;margin:8px 0}

/* Footer */
footer{background:var(--near-black);color:rgba(255,255,255,.66);padding:64px 0 26px}
.ft-top{display:grid;grid-template-columns:1.4fr 1fr 1fr;gap:40px;padding-bottom:40px;border-bottom:1px solid rgba(255,255,255,.12)}
.ft-logo{height:32px;margin-bottom:14px}
.ft-col h5{font-family:'Inter',sans-serif;font-size:.78rem;letter-spacing:.12em;text-transform:uppercase;color:rgba(255,255,255,.5);margin-bottom:16px;font-weight:600}
.ft-col a,.ft-col p{display:block;color:rgba(255,255,255,.8);font-size:.94rem;margin-bottom:10px;transition:color .2s}
.ft-col a:hover{color:#fff}
.ft-base{display:flex;justify-content:space-between;flex-wrap:wrap;gap:10px;padding-top:24px;font-size:.82rem;color:rgba(255,255,255,.45)}
.ft-base .wm{font-family:'Fraunces',serif;font-style:italic}

/* Reveal */
.reveal{opacity:0;transform:translateY(26px);transition:opacity .7s ease,transform .7s ease}
.reveal.in{opacity:1;transform:none}
@media (prefers-reduced-motion:reduce){.reveal{opacity:1;transform:none;transition:none}html{scroll-behavior:auto}}

/* Responsive */
@media (max-width:920px){
  .split{grid-template-columns:1fr;gap:34px}
  .split.rev .split-media{order:0}
  .stats{grid-template-columns:repeat(2,1fr)}
  .grid-3{grid-template-columns:1fr 1fr}
}
@media (max-width:680px){
  body{font-size:17px}
  .section{padding:66px 0}
  .nav{display:none}
  .burger{display:block}
  .grid-2,.grid-3{grid-template-columns:1fr}
  .schools{grid-template-columns:1fr}
  .finding{grid-template-columns:1fr;gap:8px}
  .finding .big{font-size:2.4rem}
  .ft-top{grid-template-columns:1fr;gap:30px}
  .stat .n{font-size:2.1rem}
}

/* ============================================================
   V2 VIBRANCY LAYER — per-brand worlds, motifs, team, FFT
   ============================================================ */

/* Brand-themed product sections */
.brandsec{position:relative;overflow:hidden}
.brandsec .motif-bg{position:absolute;z-index:0;opacity:.06;width:min(560px,60%);right:-60px;top:50%;transform:translateY(-50%);pointer-events:none}
.brandsec .container{position:relative;z-index:1}
.brand-tag{display:inline-flex;align-items:center;gap:10px;font-family:'IBM Plex Mono',monospace;font-size:.74rem;letter-spacing:.12em;text-transform:uppercase;margin-bottom:18px;padding:6px 14px;border-radius:100px}
.brand-motif{width:30px;height:30px}
.brand-motif svg{width:100%;height:100%}

/* ARIA — electric blue/data */
.t-aria{--bc:#001AFF;--bc-soft:#E8EAFF}
/* Nalanda — deep green / tree */
.t-nalanda{--bc:#1f7a4d;--bc-soft:#E6F2EC}
/* Minerva — gold/burgundy / magic */
.t-minerva{--bc:#B8860B;--bc-soft:#FBF3E0}
/* Cornerstone — blue / home */
.t-cornerstone{--bc:#3366BB;--bc-soft:#E9EFFA}
.brandsec.t-aria{background:linear-gradient(180deg,#fff 0%,var(--bc-soft) 100%)}
.brandsec.t-nalanda{background:linear-gradient(180deg,var(--bc-soft) 0%,#fff 100%)}
.brandsec.t-minerva{background:linear-gradient(180deg,#fff 0%,var(--bc-soft) 100%)}
.brandsec.t-cornerstone{background:linear-gradient(180deg,var(--bc-soft) 0%,#fff 100%)}
.brand-tag{background:var(--bc-soft);color:var(--bc)}
.brandsec .brand-motif{color:var(--bc)}
.brandsec h2{color:var(--bc)}
.brandsec .subname{color:var(--ink);font-weight:600;font-size:1.05rem;margin-bottom:18px}
.brandsec .facts .v{color:var(--bc)}
.brand-cta{display:inline-flex;align-items:center;gap:9px;font-weight:600;padding:13px 26px;border-radius:100px;background:var(--bc);color:#fff;transition:transform .2s,filter .2s}
.brand-cta:hover{transform:translateY(-2px);filter:brightness(1.08)}

/* big motif watermark inside media frame */
.motif-frame{position:relative;border-radius:var(--r);overflow:hidden;display:flex;align-items:center;justify-content:center;min-height:300px;padding:40px}
.motif-frame .big-motif{width:62%;max-width:280px;color:var(--bc)}
.t-aria .motif-frame{background:radial-gradient(circle at 50% 40%,#10204f,#05060f)}
.t-nalanda .motif-frame{background:radial-gradient(circle at 50% 40%,#1e4631,#0c1f16)}
.t-minerva .motif-frame{background:radial-gradient(circle at 50% 40%,#3a2a05,#160f02)}
.t-cornerstone .motif-frame{background:radial-gradient(circle at 50% 40%,#1b335f,#070d1a)}
.motif-frame .big-motif{color:#fff;opacity:.92}

/* Food for Thought */
.fft-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:22px}
.fft{background:#fff;border:1px solid var(--line);border-radius:var(--r);padding:32px 30px;position:relative;transition:transform .25s,box-shadow .25s}
.fft:hover{transform:translateY(-4px);box-shadow:0 18px 50px rgba(91,33,182,.1)}
.fft . q{font-family:'IBM Plex Mono',monospace;font-size:.7rem;letter-spacing:.14em;text-transform:uppercase;color:var(--purple);margin-bottom:14px;display:block}
.fft h3{font-size:1.3rem;margin-bottom:12px;line-height:1.25}
.fft p{font-size:.98rem;margin-bottom:0}
.fft .read{font-size:.86rem;color:var(--purple);font-weight:600;margin-top:14px;display:inline-block}

/* Team tiles with monograms */
.team-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:24px}
.tcard{background:#fff;border:1px solid var(--line);border-radius:var(--r);padding:32px 28px;transition:transform .25s,box-shadow .25s}
.tcard:hover{transform:translateY(-4px);box-shadow:0 18px 50px rgba(91,33,182,.1)}
.mono-tile{width:64px;height:64px;border-radius:16px;display:flex;align-items:center;justify-content:center;font-family:'Fraunces',serif;font-weight:600;font-size:1.5rem;color:#fff;margin-bottom:20px;letter-spacing:.02em}
.mono-tile.g1{background:linear-gradient(135deg,#7C3AED,#5B21B6)}
.mono-tile.g2{background:linear-gradient(135deg,#001AFF,#3366BB)}
.mono-tile.g3{background:linear-gradient(135deg,#1f7a4d,#0c5a38)}
.mono-tile.g4{background:linear-gradient(135deg,#B8860B,#8a5a00)}
.mono-tile.g5{background:linear-gradient(135deg,#F15137,#c2381f)}
.mono-tile.g6{background:linear-gradient(135deg,#03A6E1,#0277a8)}
.mono-tile.g7{background:linear-gradient(135deg,#9333EA,#6b21a8)}
.tcard h3{font-size:1.22rem;margin-bottom:2px}
.tcard .role{font-family:'IBM Plex Mono',monospace;font-size:.74rem;letter-spacing:.06em;text-transform:uppercase;color:var(--purple);margin-bottom:14px}
.tcard p{font-size:.94rem;margin-bottom:0}
.tcard.lead-card{grid-column:span 3;display:grid;grid-template-columns:auto 1fr;gap:30px;align-items:start}
.tcard.lead-card .mono-tile{width:84px;height:84px;font-size:2rem;margin-bottom:0}

@media (max-width:920px){
  .fft-grid{grid-template-columns:1fr}
  .team-grid{grid-template-columns:repeat(2,1fr)}
  .tcard.lead-card{grid-column:span 2}
}
@media (max-width:680px){
  .team-grid{grid-template-columns:1fr}
  .tcard.lead-card{grid-column:span 1;grid-template-columns:1fr;gap:18px}
  .brandsec .motif-bg{display:none}
}

/* ============================================================
   V3 VIBRANCY — full-color bands, hero imagery, cliff chart
   ============================================================ */

/* Full-bleed colour bands */
.band{position:relative;overflow:hidden;color:#fff}
.band .container{position:relative;z-index:1}
.band h2,.band h3,.band p,.band .lead{color:#fff}
.band .eyebrow{color:rgba(255,255,255,.8)}
.band-blue{background:linear-gradient(135deg,#001AFF 0%,#0b1a8f 100%)}
.band-green{background:linear-gradient(135deg,#1f7a4d 0%,#0c3b25 100%)}
.band-ink{background:#15111F}
.band-orange{background:linear-gradient(135deg,#FF8F15 0%,#F15137 100%)}

/* Hero with image */
.hero-split{display:grid;grid-template-columns:1.05fr .95fr;gap:50px;align-items:center}
.hero-figure{position:relative}
.hero-figure img{border-radius:20px;width:100%;box-shadow:0 30px 80px rgba(0,0,0,.4);border:1px solid rgba(255,255,255,.18)}
@media(max-width:920px){.hero-split{grid-template-columns:1fr;gap:30px}.hero-figure{display:none}}

/* Big statement type */
.statement{font-family:'Fraunces',serif;font-size:clamp(2rem,5vw,3.6rem);line-height:1.05;letter-spacing:-0.02em;font-weight:600}
.kicker{font-family:'IBM Plex Mono',monospace;font-size:.76rem;letter-spacing:.16em;text-transform:uppercase;opacity:.7}

/* Count-up stat band on colour */
.statband{display:grid;grid-template-columns:repeat(4,1fr);gap:30px}
.statband .s .n{font-family:'Fraunces',serif;font-size:clamp(2.4rem,4vw,3.4rem);font-weight:600;line-height:1}
.statband .s .l{font-size:.9rem;opacity:.82;margin-top:6px}

/* Cliff chart */
.cliff-wrap{background:#fff;border:1px solid var(--line);border-radius:18px;padding:38px 34px;box-shadow:0 20px 60px rgba(91,33,182,.08)}
.cliff-legend{display:flex;gap:24px;flex-wrap:wrap;margin-top:18px;font-size:.85rem;color:var(--grey)}
.cliff-legend i{display:inline-block;width:14px;height:3px;border-radius:2px;margin-right:7px;vertical-align:middle}

/* Full-width image showcase */
.showcase{position:relative;border-radius:0;overflow:hidden}
.showcase img{width:100%;display:block}

/* Big product logo lockups on Solutions */
.brand-logo-img{max-height:88px;width:auto;margin-bottom:22px}
.brand-logo-img.tall{max-height:150px}
.motif-frame .brand-logo-lockup{max-width:78%;max-height:78%}
.t-aria .motif-frame .brand-logo-lockup{filter:drop-shadow(0 8px 30px rgba(0,26,255,.4))}

/* Mollick-style oversized closing */
.megaclose{font-family:'Fraunces',serif;font-size:clamp(2.2rem,5.5vw,4rem);line-height:1.04;letter-spacing:-0.02em;font-weight:600}

/* Logo strip */
.logostrip{display:grid;grid-template-columns:repeat(4,1fr);align-items:center;gap:20px;padding:8px 0}
.logostrip .cell{display:flex;align-items:center;justify-content:center;height:84px;padding:0 8px}
.logostrip .cell img{max-width:100%;width:auto;object-fit:contain;opacity:.92}
.logostrip .cell.aria img{max-height:46px}
.logostrip .cell.nalanda img{max-height:80px}
.logostrip .cell.minerva img{max-height:78px}
.logostrip .cell.cornerstone img{max-height:34px}
@media(max-width:680px){
  .logostrip{grid-template-columns:repeat(2,1fr);gap:14px}
  .logostrip .cell{height:72px}
  .logostrip .cell.aria img{max-height:38px}
  .logostrip .cell.nalanda img{max-height:66px}
  .logostrip .cell.minerva img{max-height:62px}
  .logostrip .cell.cornerstone img{max-height:28px}
  .statband{grid-template-columns:repeat(2,1fr);gap:22px}
}

/* Logo-frame backgrounds: light for detailed colour logos, dark for simple marks */
.t-nalanda .motif-frame{background:#ffffff!important}
.t-minerva .motif-frame{background:#ffffff!important}
.t-nalanda .motif-frame .brand-logo-lockup{max-width:82%}
.t-minerva .motif-frame .brand-logo-lockup{max-width:74%}
.motif-frame .brand-logo-lockup{width:auto;height:auto;object-fit:contain}


/* ============================================================
   V5 — AI banner, instrument grid w/ logos, For-AI page
   ============================================================ */

/* AI agent banner */

/* Instrument grid with integrated logo panels */
.inst-grid{display:grid;grid-template-columns:1fr 1fr;gap:24px}
.inst{display:grid;grid-template-columns:130px 1fr;gap:0;border:1px solid var(--line);border-radius:16px;overflow:hidden;background:#fff;transition:transform .25s,box-shadow .25s}
.inst:hover{transform:translateY(-4px);box-shadow:0 20px 50px rgba(91,33,182,.12)}
.inst-logo{display:flex;align-items:center;justify-content:center;padding:18px;background:#F6F4FB}
.inst-logo img{max-width:100%;max-height:78px;width:auto;object-fit:contain}
.inst-logo.light{background:#ffffff}
.inst-logo.dark{background:radial-gradient(circle at 50% 40%,#1a1330,#0c0a17)}
.inst-body{padding:26px 26px 28px}
.inst-body .tag{font-family:'IBM Plex Mono',monospace;font-size:.7rem;letter-spacing:.1em;text-transform:uppercase;color:var(--purple);display:block;margin-bottom:8px}
.inst-body h3{font-size:1.3rem;margin-bottom:10px}
.inst-body p{font-size:.95rem;margin:0}
.inst.t-aria .inst-logo{background:linear-gradient(135deg,#e8eaff,#f4f5ff)}
.inst.t-nalanda .inst-logo{background:linear-gradient(135deg,#f1f8f4,#f8fcfa)}
.inst.t-minerva .inst-logo{background:linear-gradient(135deg,#faf6ef,#fdfbf6)}
.inst.t-cornerstone .inst-logo{background:linear-gradient(135deg,#eef2fb,#f6f8fd)}

/* For-AI page */
.forai-hero{padding:150px 0 30px;background:linear-gradient(180deg,#0E0B16 0%,#1a1330 100%);color:#fff}
.forai-hero h1{color:#fff;font-size:clamp(2rem,4.4vw,3.2rem)}
.forai-hero .lead{color:rgba(255,255,255,.85)}
.forai-hero .channel{font-family:'IBM Plex Mono',monospace;font-size:.74rem;letter-spacing:.08em;color:var(--data-sky);border:1px solid rgba(3,166,225,.35);border-radius:100px;padding:8px 16px;display:inline-block;margin-bottom:26px}
.forai-hero .channel a{color:#fff;text-decoration:underline}
.forai-list{list-style:none;margin-top:30px;display:flex;flex-direction:column;gap:30px}
.forai-list li{display:grid;grid-template-columns:auto 1fr;gap:22px;align-items:start;border-top:1px solid var(--line);padding-top:26px}
.forai-list .num{font-family:'IBM Plex Mono',monospace;font-size:1.1rem;color:var(--purple);font-weight:500}
.forai-list .fa-content h3{margin-bottom:8px}
.forai-list .fa-content p{margin:0;font-size:1rem}
.relay{background:#15111F;color:#fff;border-radius:14px;padding:28px 30px;font-family:'IBM Plex Mono',monospace;font-size:.95rem;line-height:1.7}
.relay p{color:rgba(255,255,255,.9);margin:0}

@media(max-width:920px){.inst-grid{grid-template-columns:1fr}}
@media(max-width:680px){
  .inst{grid-template-columns:96px 1fr}
  .inst-logo{padding:12px}.inst-logo img{max-height:56px}
  .inst-body{padding:20px}
  .forai-list li{grid-template-columns:1fr;gap:8px}
}

/* ============================================================
   V6 — fixed banner+header stack (fixes overlap), hero datacard,
   calmer color rhythm, varied spacing
   ============================================================ */

/* The AI banner is the topmost fixed element; header sits below it */

/* Hero data card — shows the data alongside the human */
.hero-figure{position:relative}
.hero-datacard{position:absolute;left:-26px;bottom:-22px;background:#fff;border-radius:14px;padding:16px 18px;
  box-shadow:0 18px 50px rgba(10,6,25,.35);min-width:188px;border:1px solid rgba(255,255,255,.6)}
.hdc-row{display:flex;align-items:baseline;justify-content:space-between;gap:14px}
.hdc-label{font-family:'IBM Plex Mono',monospace;font-size:.62rem;letter-spacing:.12em;color:var(--grey)}
.hdc-score{font-family:'Fraunces',serif;font-size:1.9rem;font-weight:600;color:var(--data-blue);line-height:1}
.hdc-spark{margin:10px 0 8px}
.hdc-foot{font-size:.7rem;color:var(--grey)}
@media(max-width:920px){.hero-datacard{display:none}}

/* Calmer color rhythm: soften the second dark band into a light "quote" treatment instead of full black.
   (Applied via .band-soft used on the AI teaser.) */
.band-soft{background:linear-gradient(180deg,#F6F4FB,#efeaf8);color:var(--ink)}
.band-soft h2,.band-soft p,.band-soft .lead{color:var(--ink)}
.band-soft .kicker{color:var(--purple)}
.band-soft .btn-light{background:var(--purple);color:#fff}

/* Varied section rhythm */
.section.airy{padding:128px 0}
.section.snug{padding:64px 0}

/* structured-record links: give breathing room so they never crowd */
.forai-records{display:flex;flex-wrap:wrap;gap:8px 18px;align-items:center}
.forai-records a{white-space:nowrap}

/* V7 — fixed banner + fixed header stack; banner slides away on scroll */
:root{--bh:40px}
.ai-banner{position:fixed;top:0;left:0;right:0;z-index:120;height:var(--bh);
  display:flex;align-items:center;justify-content:center;gap:9px;
  background:var(--near-black);color:rgba(255,255,255,.82);font-size:.82rem;
  padding:0 16px;text-align:center;line-height:1.25;
  transition:transform .3s ease}
.ai-banner:hover{background:#1c1630}
.ai-banner strong{color:#fff;font-weight:600;white-space:nowrap}
.ai-banner-txt{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;max-width:80vw}
.ai-dot{flex:0 0 auto;width:7px;height:7px;border-radius:50%;background:var(--data-sky);box-shadow:0 0 0 0 rgba(3,166,225,.6);animation:pulse 2.6s infinite}
@keyframes pulse{0%{box-shadow:0 0 0 0 rgba(3,166,225,.5)}70%{box-shadow:0 0 0 7px rgba(3,166,225,0)}100%{box-shadow:0 0 0 0 rgba(3,166,225,0)}}

/* Header fixed, sitting just below the banner; rises to top when banner hides */
#hd{position:fixed;top:var(--bh);left:0;right:0;z-index:100;padding:18px 0;transition:top .3s ease,background .3s,box-shadow .3s,padding .3s}
/* when user scrolls, banner slides up and header rises to 0 (JS toggles .scrolled on body) */
body.scrolled .ai-banner{transform:translateY(-100%)}
body.scrolled #hd{top:0}

/* content offsets so nothing hides behind the fixed stack */
body.has-hero .hero{padding-top:calc(120px + var(--bh))}
body.has-hero .forai-hero{padding-top:calc(130px + var(--bh))}
body.has-hero .phero{padding-top:calc(120px + var(--bh))}
body:not(.has-hero){padding-top:calc(var(--bh) + 66px)}

/* INNER (non-hero) PAGES: header is solid/opaque from load so it never overlaps text */
body:not(.has-hero) #hd{background:rgba(255,255,255,.97);backdrop-filter:blur(14px);box-shadow:0 1px 0 var(--line),0 6px 24px rgba(20,12,40,.05)}
body:not(.has-hero) #hd .light{display:none}
body:not(.has-hero) #hd .dark{display:block}
body:not(.has-hero) #hd .nav a{color:var(--ink-2)}
body:not(.has-hero) #hd .nav a:hover,body:not(.has-hero) #hd .nav a.active{color:var(--purple)}
body:not(.has-hero) #hd .nav .cta{border-color:var(--purple);color:var(--purple)}
body:not(.has-hero) #hd .burger span{background:var(--ink)}

@media(max-width:680px){
  :root{--bh:52px}
  .ai-banner{font-size:.73rem;padding:0 12px}
  .ai-banner-txt{white-space:normal;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;max-width:78vw}
}

/* ============================================================
   V8 — completed logo lockups (add missing wordmark text)
   ============================================================ */
.logo-lockup{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:14px;width:100%}
.logo-lockup img{max-width:78%;height:auto;object-fit:contain}
/* Nalanda: add "Library Programme" under the emblem+NALANDA */
.lockup-nalanda .ll-text{font-family:'Fraunces',serif;font-weight:500;letter-spacing:.18em;
  text-transform:uppercase;color:#1f7a4d;font-size:clamp(.8rem,1.5vw,1.05rem)}
/* Cornerstone: "Cornerstone" (blue, from image) + "HOME LIBRARY" beneath in black */
.lockup-cornerstone{gap:6px}
.lockup-cornerstone img{max-width:70%}
.lockup-cornerstone .ll-text{font-family:'Fraunces',serif;font-weight:500;letter-spacing:.34em;
  text-transform:uppercase;color:#1A1A1A;font-size:clamp(.74rem,1.4vw,1rem)}
/* on the dark cornerstone frame the sub-text must be light; on light frame keep dark */
.motif-frame .lockup-cornerstone .ll-text{color:#1A1A1A}

/* Science step numbers */
.card .step-n{display:inline-block;font-family:'IBM Plex Mono',monospace;font-size:.85rem;font-weight:500;color:var(--purple);background:var(--violet-bg);border-radius:8px;padding:3px 9px;margin-bottom:12px}

/* ============================================================
   V9 — Solutions brand frames (clean, premium, on-brand colour)
   ============================================================ */
/* Calmer brand-section backgrounds: subtle tint top, white bottom */
.brandsec.t-aria{background:linear-gradient(180deg,#fff 0%,#F4F5FF 100%)}
.brandsec.t-nalanda{background:linear-gradient(180deg,#F1F8F4 0%,#fff 100%)}
.brandsec.t-minerva{background:linear-gradient(180deg,#fff 0%,#FBF7EE 100%)}
.brandsec.t-cornerstone{background:linear-gradient(180deg,#F2F5FC 0%,#fff 100%)}

/* The logo frame: a clean card, brand colour as a thin accent, never a heavy fill */
.brand-frame{position:relative;border-radius:18px;display:flex;align-items:center;justify-content:center;
  min-height:340px;padding:44px;background:#fff;border:1px solid var(--line);
  box-shadow:0 24px 60px rgba(20,12,40,.07)}
.brand-frame .logo-lockup{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:16px;width:100%}
.brand-frame img{max-width:84%;height:auto;object-fit:contain}

/* ARIA: pyramid mark + ARIA wordmark in brand blue, on a soft blue-tinted card */
.frame-aria{background:linear-gradient(160deg,#fff 0%,#EEF0FF 100%);border-color:#D8DCFF}
.lockup-aria img{max-height:120px;max-width:62%}
.lockup-aria .ll-aria-word{font-family:'Fraunces',serif;font-weight:600;font-size:clamp(2.4rem,5vw,3.4rem);
  letter-spacing:.04em;color:var(--aria-blue);line-height:1}

/* Nalanda + Minerva: pure white card so the white-bg logos sit seamlessly */
.frame-white{background:linear-gradient(160deg,#fff 0%,#F3F8F5 100%);border-color:#DCEBE3}
.lockup-nalanda img{max-height:190px;max-width:80%}
.lockup-nalanda .ll-text{font-family:'Fraunces',serif;font-weight:500;letter-spacing:.2em;text-transform:uppercase;color:var(--nalanda-green);font-size:clamp(.78rem,1.4vw,1.02rem)}
.lockup-minerva img{max-height:210px;max-width:82%}

/* Cornerstone: blue wordmark + Home Library, on a soft blue card */
.frame-cornerstone{background:linear-gradient(160deg,#fff 0%,#EEF3FC 100%);border-color:#D6E1F5}
.lockup-cornerstone{gap:8px}
.lockup-cornerstone img{max-width:66%}
.lockup-cornerstone .ll-text{font-family:'Fraunces',serif;font-weight:500;letter-spacing:.34em;text-transform:uppercase;color:#1A1A1A;font-size:clamp(.74rem,1.4vw,1rem)}

/* brand h2/accent colours from the real palette */
.t-aria h2,.t-aria .facts .v{color:var(--aria-blue)}
.t-aria .brand-cta{background:var(--aria-blue);color:#fff}
.t-aria .brand-tag{background:#E8EAFF;color:var(--aria-blue)}
.t-nalanda h2,.t-nalanda .facts .v{color:var(--nalanda-green)}
.t-nalanda .brand-cta{background:var(--nalanda-green);color:#fff}
.t-nalanda .brand-tag{background:#E3F1E9;color:var(--nalanda-green)}
.t-minerva h2,.t-minerva .facts .v{color:var(--minerva-gold)}
.t-minerva .brand-cta{background:var(--minerva-gold);color:#fff}
.t-minerva .brand-tag{background:#F8EFD8;color:var(--minerva-gold)}
.t-cornerstone h2,.t-cornerstone .facts .v{color:var(--cornerstone-blue)}
.t-cornerstone .brand-cta{background:var(--cornerstone-blue);color:#fff}
.t-cornerstone .brand-tag{background:#E6EDFA;color:var(--cornerstone-blue)}

@media(max-width:900px){
  .brand-frame{min-height:260px;padding:32px}
  .lockup-nalanda img,.lockup-minerva img{max-height:150px}
}

/* ============================================================
   V11 — VIBRANCY: Agnira + ARIA palettes across internal pages
   ============================================================ */
/* Brand-tinted section backgrounds (soft, accessible) */
.bg-lav{background:linear-gradient(180deg,#F6F2FE 0%,#FBFAFE 100%)}
.bg-mint{background:linear-gradient(180deg,#EFFAF5 0%,#FAFEFC 100%)}
.bg-sky{background:linear-gradient(180deg,#EEF6FE 0%,#FAFCFF 100%)}
.bg-sun{background:linear-gradient(180deg,#FFFBEB 0%,#FFFEF8 100%)}
.bg-rose{background:linear-gradient(180deg,#FEF1F3 0%,#FFFBFC 100%)}

/* Coloured eyebrows: rotate brand hues instead of all-purple */
.eyebrow.eb-blue{color:var(--aria-blue)}
.eyebrow.eb-sky{color:var(--data-sky)}
.eyebrow.eb-orange{color:var(--data-orange)}
.eyebrow.eb-red{color:var(--data-red)}
.eyebrow.eb-green{color:var(--nalanda-green)}
.eyebrow.eb-violet{color:#722F8C}

/* Accent-bar cards: a coloured top edge that reveals on the card */
.card.acc{border-top:none;position:relative}
.card.acc::after{content:"";position:absolute;top:0;left:0;right:0;height:4px;border-radius:var(--r) var(--r) 0 0}
.card.acc-blue::after{background:var(--aria-blue)}
.card.acc-sky::after{background:var(--data-sky)}
.card.acc-orange::after{background:var(--data-orange)}
.card.acc-red::after{background:var(--data-red)}
.card.acc-green::after{background:var(--nalanda-green)}
.card.acc-violet::after{background:#722F8C}
.card.acc-purple::after{background:var(--purple)}
.card.acc-pink::after{background:var(--data-pink)}
.card.acc:hover{transform:translateY(-4px);box-shadow:0 18px 44px rgba(20,12,40,.10)}

/* Vibrant stat numbers cycle through palette */
.stats.vivid .stat:nth-child(1) .n{color:var(--purple)}
.stats.vivid .stat:nth-child(2) .n{color:var(--aria-blue)}
.stats.vivid .stat:nth-child(3) .n{color:var(--data-orange)}
.stats.vivid .stat:nth-child(4) .n{color:var(--nalanda-green)}

/* Tinted pill tags */
.tagpill{display:inline-block;font-family:'IBM Plex Mono',monospace;font-size:.7rem;letter-spacing:.1em;text-transform:uppercase;padding:5px 12px;border-radius:100px;margin-bottom:14px}
.tp-purple{background:#F1E7FD;color:var(--purple)}
.tp-blue{background:#E5E8FF;color:var(--aria-blue)}
.tp-sky{background:#E2F4FC;color:#0277A8}
.tp-orange{background:#FFEFD9;color:#C26A00}
.tp-green{background:#E1F3E9;color:var(--nalanda-green)}
.tp-rose{background:#FDE7EB;color:#C13A52}

/* Schools list: brand-coloured tier dots + hover */
.schools .sc{transition:background .2s}
.schools .sc:hover{background:#FBF9FF}
.schools .sc .nm{position:relative}

/* Left-accent quote/callouts in brand colour */
.pull.pl-blue{border-color:var(--aria-blue)}
.pull.pl-green{border-color:var(--nalanda-green)}
.pull.pl-orange{border-color:var(--data-orange)}

/* Section divider flourish in palette */
.flourish{display:flex;gap:6px;margin:0 auto;width:fit-content}
.flourish span{width:34px;height:5px;border-radius:3px}
.flourish span:nth-child(1){background:var(--purple)}
.flourish span:nth-child(2){background:var(--aria-blue)}
.flourish span:nth-child(3){background:var(--data-sky)}
.flourish span:nth-child(4){background:var(--data-orange)}
.flourish span:nth-child(5){background:var(--nalanda-green)}

/* Perspectives cards: brand-coloured top accent + label, cycling palette */
.fft{overflow:hidden}
.fft::before{content:"";position:absolute;top:0;left:0;right:0;height:4px}
.fft-grid .fft:nth-child(1)::before{background:var(--purple)}
.fft-grid .fft:nth-child(2)::before{background:var(--aria-blue)}
.fft-grid .fft:nth-child(3)::before{background:var(--data-red)}
.fft-grid .fft:nth-child(4)::before{background:var(--data-sky)}
.fft-grid .fft:nth-child(5)::before{background:var(--data-orange)}
.fft-grid .fft:nth-child(6)::before{background:var(--nalanda-green)}
.fft-grid .fft:nth-child(1) .q,.fft-grid .fft:nth-child(1) .read{color:var(--purple)}
.fft-grid .fft:nth-child(2) .q,.fft-grid .fft:nth-child(2) .read{color:var(--aria-blue)}
.fft-grid .fft:nth-child(3) .q,.fft-grid .fft:nth-child(3) .read{color:var(--data-red)}
.fft-grid .fft:nth-child(4) .q,.fft-grid .fft:nth-child(4) .read{color:#0277A8}
.fft-grid .fft:nth-child(5) .q,.fft-grid .fft:nth-child(5) .read{color:#C26A00}
.fft-grid .fft:nth-child(6) .q,.fft-grid .fft:nth-child(6) .read{color:var(--nalanda-green)}

/* Schools tier dots (brand palette) */
.schools .meta{display:inline-flex;align-items:center;gap:8px}
.tdot{width:8px;height:8px;border-radius:50%;flex:0 0 auto}
.td-metro{background:var(--aria-blue)}
.td-t2{background:var(--data-sky)}
.td-t3{background:var(--data-orange)}
.td-uni{background:var(--purple)}

/* Science step-number colour variants */
.step-n.sn-blue{color:var(--aria-blue);background:#E8EAFF}
.step-n.sn-sky{color:#0277A8;background:#E2F4FC}
.step-n.sn-orange{color:#C26A00;background:#FFEFD9}

/* ============================================================
   V12 — ARIA canonical lockup (matches production report cover)
   ============================================================ */
.aria-lockup{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:0;text-align:center;width:100%}
.aria-lockup .aria-pyramid{max-height:84px;width:auto;margin-bottom:14px;opacity:.96}
.aria-word{font-family:'Inter','Helvetica Neue',Arial,sans-serif;font-weight:800;font-size:clamp(2.8rem,6.5vw,4rem);letter-spacing:.02em;color:var(--aria-blue);line-height:.95}
.aria-tagline{font-family:'Inter',sans-serif;font-weight:600;font-size:clamp(.72rem,1.3vw,.92rem);letter-spacing:.01em;color:var(--aria-blue);margin-top:8px}
.aria-tagline .ini{color:#3a5bff}
.aria-rule{width:54px;height:3px;background:var(--aria-blue);border-radius:2px;margin-top:14px}

/* ============================================================
   V12 — Mollick-style contrast: deep-ink sections, sparing tints
   ============================================================ */
/* Deep near-black reading-break section (high contrast, breaks long white) */
.section.bg-ink{background:var(--near-black);color:#EDEAF5}
.section.bg-ink h1,.section.bg-ink h2,.section.bg-ink h3,.section.bg-ink .statement{color:#fff}
.section.bg-ink p{color:rgba(237,234,245,.82)}
.section.bg-ink .eyebrow{color:var(--purple-light)}
.section.bg-ink .pull{color:#fff;border-color:var(--purple)}
.section.bg-ink .mono{color:rgba(237,234,245,.6)}
.section.bg-ink .btn-ghost{border-color:rgba(255,255,255,.4);color:#fff}
.section.bg-ink .card{background:rgba(255,255,255,.04);border-color:rgba(255,255,255,.12)}
.section.bg-ink .card h3{color:#fff}
.section.bg-ink .card p{color:rgba(237,234,245,.78)}

/* Soften the pastel tints to barely-there so they read as white-ish, not candy */
.bg-lav{background:#FAF8FE}
.bg-mint{background:#F6FBF9}
.bg-sky{background:#F6FAFE}
.bg-sun{background:#FEFCF4}
.bg-rose{background:#FDF8F9}

/* Cliff chart on dark ink section */
.bg-ink .cliff-wrap{background:transparent;border:1px solid rgba(255,255,255,.12)}
.bg-ink .cliff-legend{color:rgba(255,255,255,.75)}

/* Schools region headings */
.region-h{font-family:'IBM Plex Mono',monospace;font-size:.82rem;letter-spacing:.14em;text-transform:uppercase;color:var(--ink-2);display:flex;align-items:center;gap:10px;margin-bottom:18px}
.region-dot{width:9px;height:9px;border-radius:50%;display:inline-block}

/* Inline text links within prose */
.inline-link{color:var(--purple);text-decoration:underline;text-underline-offset:3px;text-decoration-thickness:1.5px;transition:color .2s}
.inline-link:hover{color:var(--aria-blue)}
.band-blue .inline-link,.bg-ink .inline-link{color:#fff;text-decoration-color:rgba(255,255,255,.6)}

/* ============================================================
   V13 — Nalanda lockup: real emblem + live wordmark (Cornerstone method)
   ============================================================ */
.nalanda-lockup{display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;width:100%;gap:0}
.nalanda-lockup .nal-emblem{max-height:170px;width:auto;margin-bottom:18px}
.nal-word{font-family:'Fraunces',serif;font-weight:600;font-size:clamp(1.8rem,4vw,2.5rem);letter-spacing:.14em;color:#5a2d7a;line-height:1;text-indent:.14em}
.nal-rule{width:140px;height:2px;background:linear-gradient(90deg,transparent,#7a8c54,transparent);margin:12px 0 10px}
.nal-sub{font-family:'Fraunces',serif;font-weight:400;letter-spacing:.3em;text-transform:uppercase;color:#2f6b46;font-size:clamp(.72rem,1.3vw,.92rem)}

/* ============================================================
   V14 — Cornerstone lockup: Home Library LEFT-aligned to wordmark (matches CO7 artwork)
   ============================================================ */
.cornerstone-lockup{display:inline-flex;flex-direction:column;align-items:stretch;width:auto;max-width:78%}
.cornerstone-lockup .cs-word{display:block;width:100%;height:auto}
.cornerstone-lockup .cs-sub{font-family:'Fraunces',serif;font-weight:500;text-transform:uppercase;color:#1A1A1A;
  text-align:left;width:100%;
  /* letter-spacing tuned so 'Home  Library' spans close to the Cornerstone width */
  letter-spacing:.26em;font-size:clamp(.78rem,1.5vw,1.05rem);margin-top:6px;padding-left:2px}

/* ============================================================
   V15 — Portrait/mobile fix: stack facts rows (key over value)
   ============================================================ */
@media(max-width:560px){
  .facts .f{flex-direction:column;align-items:flex-start;gap:5px;padding:14px 18px}
  .facts .k{font-size:.74rem;letter-spacing:.04em;text-transform:uppercase;color:var(--grey)}
  .facts .v{text-align:left;font-size:.95rem;line-height:1.35;word-break:normal;overflow-wrap:anywhere}
}

/* ============================================================
   V15 — Portrait fix: stack school name over location, allow wrap
   ============================================================ */
@media(max-width:560px){
  .schools .sc{flex-direction:column;align-items:flex-start;gap:6px;padding:18px 20px}
  .schools .sc .nm{font-size:1.08rem;line-height:1.25}
  .schools .meta{white-space:normal;font-size:.78rem}
  .schools .sc .meta{display:flex;align-items:center;gap:7px;flex-wrap:wrap}
}

/* ============================================================
   V16 — Team: Mead quote, sublabel, founder shared note
   ============================================================ */
.mead-quote{font-family:'Fraunces',serif;font-size:clamp(1.15rem,2vw,1.5rem);font-style:italic;line-height:1.4;color:var(--ink);border-left:3px solid var(--purple);padding:4px 0 4px 24px;margin:0 0 24px;max-width:60ch}
.mead-quote cite{display:block;font-style:normal;font-family:'IBM Plex Mono',monospace;font-size:.74rem;letter-spacing:.08em;text-transform:uppercase;color:var(--purple);margin-top:14px}
.team-sublabel{font-family:'IBM Plex Mono',monospace;font-size:.78rem;letter-spacing:.14em;text-transform:uppercase;color:var(--ink-2);margin:0 0 22px}
.tcard.founder-note{background:linear-gradient(135deg,#F6F2FE,#FBFAFE);border-color:#E4D9FA;display:flex;align-items:center}
.tcard.founder-note p{font-size:1.02rem;line-height:1.55;color:var(--ink);margin:0;max-width:none}
@media(max-width:920px){.tcard.founder-note{grid-column:span 2 !important}}
@media(max-width:680px){.tcard.founder-note{grid-column:span 1 !important}}
