/* ============================================================
   AI Ethics Index — self-contained section styles
   The v3 mockup CSS, scoped under .aiei so it renders identically
   and never collides with WordPress's own layout/chrome.
   Every designed section (and the header/footer parts) wraps its
   markup in <div class="aiei">…</div>.
   ============================================================ */

:root{
  --navy:#002751; --navy-lift:#0A3A5E; --cyan:#00C8FF; --cyan-ink:#0A6E86;
  --amber:#F8B44F; --ink:#171717; --muted:#4B5563; --white:#fff;
  --wash:#EAF1F7; --wash-2:#F5F8FB; --line:#DCE4EC; --paper:#F6F5F1;
  /* supporting tokens */
  --cyan-hover:#2AD2FF;        /* button hover */
  --on-dark:#CFE0EE;          /* primary text on navy sections */
  --on-dark-muted:#9FB6CC;    /* secondary text on navy */
  --on-dark-accent:#9FC2FF;   /* accent light-blue label on navy */
  --ok-bg:#F0FAF4; --ok-border:#BBF7D0; --ok-text:#166534;  /* form success */
  --m-claude:#264771; --m-gpt:#0AA5CE; --m-gemini:#E8973A; --m-deepseek:#8B7FE8;  /* scorecard model colors */
  /* scoring-band ramp: ordinal, one hue, light to dark, every step >=2:1 on white */
  --band-0:#8CB9DF; --band-20:#6BA0CE; --band-40:#4A86BC;
  --band-60:#2F6B9E; --band-80:#17527F; --band-100:#002751;
  --f-head:'Archivo',system-ui,-apple-system,'Segoe UI',sans-serif;
  --f-body:'Red Hat Text',system-ui,-apple-system,'Segoe UI',sans-serif;
  --f-serif:'DM Serif Display',Georgia,'Times New Roman',serif;
  --f-mono:ui-monospace,'SF Mono',Menlo,monospace;
  --maxw:1200px; --gut:clamp(22px,5vw,72px);
}

/* reset + base, scoped */
.aiei,.aiei *,.aiei *::before,.aiei *::after{box-sizing:border-box;margin:0;padding:0}
.aiei{font-family:var(--f-body);color:var(--ink);font-size:17px;line-height:1.65;-webkit-font-smoothing:antialiased}
.aiei .wrap{max-width:var(--maxw);margin:0 auto;padding:0 var(--gut)}
.aiei a{color:inherit;text-decoration:none}
.aiei h1,.aiei h2,.aiei h3,.aiei h4{font-family:var(--f-head);color:var(--navy);line-height:1.12;letter-spacing:-.02em}
.aiei img{display:block;max-width:100%}
.aiei .label{font-family:var(--f-mono);font-size:.72rem;letter-spacing:.14em;text-transform:uppercase;color:var(--muted)}
.aiei .idx{font-family:var(--f-mono);font-size:.8rem;color:var(--cyan-ink);letter-spacing:.05em}
.aiei figcaption{font-family:var(--f-mono);font-size:.7rem;letter-spacing:.08em;text-transform:uppercase;color:var(--muted);margin-top:10px}

/* flowing line-trace backdrop */
.aiei .traces{position:absolute;inset:0;width:100%;height:100%;z-index:0;pointer-events:none}
.aiei .traces svg{width:100%;height:100%}
@media(prefers-reduced-motion:reduce){.aiei .traces .flow{display:none}}

/* top bar */
.aiei.bar,.aiei .bar{position:sticky;top:0;z-index:30;background:rgba(255,255,255,.88);backdrop-filter:blur(8px);border-bottom:1px solid var(--line)}
.aiei .bar .wrap{display:flex;align-items:center;justify-content:space-between;height:68px}
.aiei .mark{font-family:var(--f-head);font-weight:800;font-size:1.05rem;color:var(--navy);display:flex;align-items:center;gap:10px}
.aiei .mark .sq{width:14px;height:14px;background:var(--cyan)}
.aiei .mark img.logo{height:34px;width:auto;display:block}
.aiei .footer img.flogo{height:30px;width:auto;display:block;margin-bottom:14px}
.aiei nav.main{display:flex;align-items:center;gap:30px}
.aiei nav.main a{font-family:var(--f-head);font-weight:500;font-size:.92rem;color:var(--navy)}
.aiei nav.main a:hover{color:var(--cyan-ink)}
.aiei .btn{font-family:var(--f-head);font-weight:600;font-size:.9rem;padding:10px 20px;border-radius:2px;border:1.5px solid var(--navy);color:var(--navy);display:inline-block;transition:.15s}
.aiei .btn-solid,.aiei .btn-navy{background:var(--navy);color:#fff}
.aiei .btn-solid:hover,.aiei .btn-navy:hover{background:var(--navy-lift);border-color:var(--navy-lift)}
.aiei .btn-cyan{background:var(--cyan);border-color:var(--cyan);color:var(--navy)}.aiei .btn-cyan:hover{background:var(--cyan-hover);border-color:var(--cyan-hover)}
.aiei .bar nav.main a.btn-solid{color:#fff}
.aiei .bar nav.main a.btn-cyan{color:var(--navy)}
/* dropdown */
.aiei .hasmenu{position:relative;display:flex;align-items:center;height:100%}
.aiei .hasmenu>a{display:inline-flex;align-items:center;gap:7px;cursor:pointer}
.aiei .caret{width:7px;height:7px;border-right:2px solid currentColor;border-bottom:2px solid currentColor;transform:rotate(45deg) translateY(-2px);transition:transform .2s;opacity:.65}
.aiei .hasmenu:hover .caret,.aiei .hasmenu:focus-within .caret,.aiei .hasmenu.open .caret{transform:rotate(225deg) translateY(-2px);opacity:.9}
.aiei .submenu{position:absolute;top:100%;left:-16px;min-width:352px;background:#fff;border:1px solid var(--line);border-top:2px solid var(--cyan);
  box-shadow:0 22px 48px rgba(0,39,81,.15);padding:6px;z-index:40;
  opacity:0;visibility:hidden;transform:translateY(8px);transition:opacity .18s,transform .18s,visibility .18s}
.aiei .submenu::before{content:"";position:absolute;top:-12px;left:0;right:0;height:12px}
.aiei .hasmenu:hover .submenu,.aiei .hasmenu:focus-within .submenu,.aiei .hasmenu.open .submenu{opacity:1;visibility:visible;transform:translateY(0)}
.aiei .submenu .cap{font-family:var(--f-mono);font-size:.64rem;letter-spacing:.14em;text-transform:uppercase;color:var(--muted);padding:12px 14px 6px}
.aiei .submenu a{display:block;padding:12px 14px;border-radius:2px;transition:background .12s}
.aiei .submenu a:hover{background:var(--wash-2)}
.aiei .submenu a+a{border-top:1px solid var(--line)}
.aiei .submenu .t{font-family:var(--f-head);font-weight:700;color:var(--navy);font-size:.98rem;display:block}
.aiei .submenu .d{color:var(--muted);font-size:.85rem;line-height:1.45;margin-top:3px;display:block}
/* --- Mobile navigation ------------------------------------------------
   The hamburger is a real <button> disclosure. Sections reuse the same
   .hasmenu.open state as the desktop dropdowns, so one bit of state drives
   both presentations. Below 820px the nav becomes a panel under the bar. */
.aiei .navtoggle{display:none;align-items:center;justify-content:center;width:44px;height:44px;margin-right:calc(var(--gut) * -0.35);padding:0;border:0;background:none;color:var(--navy);cursor:pointer;border-radius:3px}
.aiei .navtoggle:focus-visible{outline:2px solid var(--cyan-ink);outline-offset:2px}
.aiei .navtoggle .bars{position:relative;display:block;width:22px;height:2px;background:currentColor;border-radius:2px;transition:background .18s}
.aiei .navtoggle .bars::before,.aiei .navtoggle .bars::after{content:"";position:absolute;left:0;display:block;width:22px;height:2px;background:currentColor;border-radius:2px;transition:transform .18s}
.aiei .navtoggle .bars::before{top:-7px}
.aiei .navtoggle .bars::after{top:7px}
.aiei .bar.nav-open .navtoggle .bars{background:transparent}
.aiei .bar.nav-open .navtoggle .bars::before{transform:translateY(7px) rotate(45deg)}
.aiei .bar.nav-open .navtoggle .bars::after{transform:translateY(-7px) rotate(-45deg)}

@media(max-width:820px){
	.aiei .navtoggle{display:flex}
	.aiei nav.main{position:absolute;left:0;right:0;top:100%;display:block;align-items:stretch;gap:0;
		background:#fff;border-bottom:1px solid var(--line);box-shadow:0 18px 40px rgba(12,26,58,.10);
		padding:4px 0 18px;max-height:calc(100vh - 68px);overflow-y:auto;overscroll-behavior:contain;
		opacity:0;visibility:hidden;transform:translateY(-8px);
		transition:opacity .18s ease,transform .18s ease,visibility .18s}
	.aiei .bar.nav-open nav.main{opacity:1;visibility:visible;transform:none}
	.aiei .hasmenu{position:static;display:block;height:auto}
	.aiei nav.main>a:not(.btn),.aiei .hasmenu>a{display:flex;align-items:center;gap:10px;
		padding:14px var(--gut);font-size:1rem;border-bottom:1px solid var(--line)}
	.aiei .caret{margin-left:auto;flex:none}
	.aiei .submenu{position:static;display:none;min-width:0;padding:4px 0 8px;
		background:var(--wash-2);border:0;box-shadow:none;opacity:1;visibility:visible;transform:none}
	.aiei .hasmenu.open .submenu{display:block}
	.aiei .submenu .cap,.aiei .submenu .d{display:none}
	.aiei .submenu a{padding:12px var(--gut) 12px calc(var(--gut) + 16px)}
	.aiei .submenu a+a{border-top:1px solid var(--line)}
	.aiei .submenu .t{font-size:.95rem;font-weight:500}
	.aiei nav.main a.btn{display:block;margin:16px var(--gut) 0;text-align:center;padding:13px 20px}
}

@media(prefers-reduced-motion:reduce){
	.aiei nav.main,.aiei .navtoggle .bars,
	.aiei .navtoggle .bars::before,.aiei .navtoggle .bars::after{transition:none}
}

/* hero */
.aiei .hero{position:relative;overflow:hidden;background:linear-gradient(180deg,#FFFFFF 0%,#F2F7FB 100%)}
.aiei .hero .wrap{position:relative;z-index:2;padding:clamp(56px,7vw,108px) var(--gut) clamp(52px,6vw,92px)}
.aiei .hero-grid{display:grid;grid-template-columns:1.8fr 1fr;gap:clamp(30px,5vw,56px);align-items:center}
@media(max-width:900px){.aiei .hero-grid{grid-template-columns:1fr}}
.aiei .hero h1{font-family:var(--f-serif);font-weight:400;color:var(--navy);font-size:clamp(2.4rem,1.2rem + 3.4vw,4rem);line-height:1.08;letter-spacing:-.01em;max-width:26ch}
.aiei .hero .stand{margin-top:26px;max-width:52ch;font-size:1.2rem;color:var(--muted)}
.aiei .hero .acts{margin-top:36px;display:flex;gap:22px;align-items:center;flex-wrap:wrap}
.aiei .textlink{font-family:var(--f-head);font-weight:600;color:var(--cyan-ink);border-bottom:2px solid var(--cyan);padding-bottom:2px}
.aiei .hero-photo{position:relative;border:1px solid var(--line);box-shadow:0 18px 40px rgba(0,39,81,.10)}
.aiei .hero-photo img{width:100%;height:clamp(300px,38vw,440px);object-fit:cover;filter:saturate(1.05)}

/* ---------- academic masthead (education pages) ---------- */
.aiei .mast{background:var(--paper);border-bottom:1px solid var(--line)}
.aiei .mast .wrap{padding:clamp(38px,5.5vw,68px) var(--gut) clamp(26px,3.5vw,38px)}
/* plain masthead variant: white ground + more air, for short teaser pages
   that sit directly above a tinted band (avoids two coloured blocks stacking) */
.aiei .mast.mast-plain{background:#fff;border-bottom:0}
.aiei .mast.mast-plain .wrap{padding:clamp(64px,8vw,120px) var(--gut) clamp(60px,7vw,100px)}
.aiei .mast-top{display:flex;justify-content:space-between;align-items:baseline;margin-bottom:clamp(20px,3vw,30px)}
.aiei .mast-tag{font-family:var(--f-mono);font-size:.7rem;letter-spacing:.16em;text-transform:uppercase;color:var(--muted)}
.aiei .mast-title{font-family:var(--f-serif);font-weight:400;color:var(--navy);font-size:clamp(2.5rem,1.3rem + 3.6vw,4.4rem);line-height:1.03;letter-spacing:-.015em;max-width:24ch}
.aiei .mast-rule{height:1px;background:var(--line);margin:clamp(26px,3.5vw,38px) 0}
.aiei .mast-intro{display:grid;grid-template-columns:1.55fr 1fr;gap:clamp(28px,4vw,56px);align-items:start}
.aiei .mast-intro .stand{color:var(--muted);font-size:1.12rem;line-height:1.62;max-width:56ch}
.aiei .mast-intro .stand + .stand{margin-top:16px}
.aiei .mast-acts{display:flex;flex-direction:column;gap:14px;align-items:flex-start}
.aiei .mast-photo{margin:0}
.aiei .mast-photo img{width:100%;height:clamp(240px,30vw,360px);object-fit:cover;object-position:center 22%;display:block;filter:saturate(1.03)}
@media(max-width:820px){.aiei .mast-intro{grid-template-columns:1fr;gap:22px}}

/* spec strip */
.aiei .specstrip{border-top:1px solid var(--line);border-bottom:1px solid var(--line);background:var(--wash-2)}
.aiei .specstrip .wrap{display:grid;grid-template-columns:repeat(5,1fr)}
.aiei .specstrip .c{padding:22px 20px;border-left:1px solid var(--line)}
.aiei .specstrip .c:first-child{border-left:0;padding-left:0}
.aiei .specstrip .k{font-family:var(--f-mono);font-size:.68rem;letter-spacing:.1em;text-transform:uppercase;color:var(--muted)}
.aiei .specstrip .v{font-family:var(--f-head);font-weight:700;color:var(--navy);font-size:1.05rem;margin-top:6px}
@media(max-width:820px){.aiei .specstrip .wrap{grid-template-columns:1fr 1fr}.aiei .specstrip .c:nth-child(odd){border-left:0;padding-left:0}}

/* generic section */
.aiei section{padding:clamp(52px,7vw,96px) 0}
.aiei .sechead{display:flex;align-items:baseline;gap:16px;margin-bottom:10px}
.aiei .sec-t{font-family:var(--f-serif);font-weight:400;letter-spacing:-.01em;color:var(--navy);font-size:clamp(2.3rem,1.4rem + 2.8vw,3.35rem);line-height:1.08;margin-top:8px;max-width:28ch}
.aiei .sec-lead{max-width:62ch;color:var(--muted);font-size:1.12rem;margin-top:18px}
.aiei .cols{display:grid;grid-template-columns:1fr 1.15fr;gap:clamp(30px,6vw,80px);margin-top:44px}
@media(max-width:860px){.aiei .cols{grid-template-columns:1fr;gap:32px}}
.aiei .cols p+p{margin-top:18px}
.aiei .deflist{border-top:1px solid var(--line)}
.aiei .deflist .d{display:grid;grid-template-columns:auto 1fr;gap:20px;padding:16px 0;border-bottom:1px solid var(--line)}
.aiei .deflist .d b{font-family:var(--f-head);color:var(--navy);font-weight:700;white-space:nowrap}
.aiei .deflist .d span{color:var(--muted)}

.aiei .band .cap{position:absolute;left:0;bottom:0;background:rgba(0,39,81,.86);color:var(--on-dark);font-family:var(--f-mono);font-size:.7rem;letter-spacing:.09em;text-transform:uppercase;padding:9px 14px;border-top:2px solid var(--cyan)}

/* nine */
.aiei .nine{background:var(--wash-2);border-top:1px solid var(--line);border-bottom:1px solid var(--line)}
.aiei .ninelist{margin-top:40px;border-top:1px solid var(--line)}
.aiei .ninelist .r{display:grid;grid-template-columns:64px 1fr 1.5fr;gap:24px;align-items:baseline;padding:22px 0;border-bottom:1px solid var(--line);transition:.15s}
.aiei .ninelist .r:hover{background:#fff}
.aiei .ninelist .n{font-family:var(--f-mono);color:var(--cyan-ink);font-size:.95rem;padding-top:3px}
.aiei .ninelist .r h3{font-size:1.28rem;font-weight:700}
.aiei .ninelist .r p{color:var(--muted);font-size:1rem}
@media(max-width:760px){.aiei .ninelist .r{grid-template-columns:44px 1fr;gap:14px}.aiei .ninelist .r p{grid-column:2}}

/* harms */
.aiei .harm{display:grid;grid-template-columns:300px 1fr;gap:clamp(22px,4vw,48px);padding:36px 0;border-bottom:1px solid var(--line);align-items:start}
.aiei .harm:first-of-type{border-top:1px solid var(--line)}
.aiei .harm .ph{position:relative;border:1px solid var(--line)}
.aiei .harm .ph img{width:100%;height:200px;object-fit:cover;filter:grayscale(.15)}
.aiei .harm .ph .num{position:absolute;top:0;left:0;background:var(--navy);color:#fff;font-family:var(--f-serif);font-size:1.5rem;line-height:1;padding:8px 14px}
.aiei .harm h3{font-family:var(--f-head);font-weight:700;font-size:1.5rem;margin-bottom:12px}
.aiei .harm p{max-width:64ch}
@media(max-width:680px){.aiei .harm{grid-template-columns:1fr}}

/* quote */
.aiei .quote{position:relative;background:var(--navy);color:#fff;text-align:center;overflow:hidden}
.aiei .quote .wrap{position:relative;z-index:2;padding:clamp(72px,11vw,128px) var(--gut)}
.aiei .quote blockquote{font-family:var(--f-serif);font-style:italic;font-size:clamp(2.45rem, 1.5rem + 3.4vw, 4rem);line-height:1.18;max-width:24ch;margin:0 auto;color:#fff}
.aiei .quote blockquote .dot{color:var(--cyan)}
.aiei .quote .src{margin-top:28px}

/* standards + cta */
.aiei .cta{position:relative;background:var(--wash);overflow:hidden}
.aiei .cta .wrap{position:relative;z-index:2}
.aiei .cta .row2{display:flex;flex-wrap:wrap;gap:16px;margin-top:30px}

/* ---------- why: gap-fill + credible list ---------- */
.aiei .gapfill{margin-top:clamp(48px,5vw,72px);max-width:74ch}
/* secondary statement: Archivo sub-head, clearly below the serif section title */
.aiei .gap-head{font-family:var(--f-head);font-weight:700;color:var(--navy);font-size:clamp(1.35rem,1.05rem + 1.1vw,1.7rem);line-height:1.2;letter-spacing:-.01em;margin-bottom:16px;max-width:32ch}
.aiei .lead-p{color:var(--muted);font-size:1.08rem;margin-bottom:20px;max-width:66ch}
.aiei .credible{list-style:none;border-top:1px solid var(--line);max-width:54ch}
.aiei .credible li{display:flex;align-items:center;gap:16px;padding:15px 0;border-bottom:1px solid var(--line);color:var(--ink)}
.aiei .credible li::before{content:"";flex:none;width:16px;height:2px;background:var(--cyan)}

/* ---------- harms: why-this-matters + citations ---------- */
.aiei .whymatters{color:var(--ink);margin-top:14px;max-width:64ch}
.aiei .whymatters b{font-family:var(--f-head);color:var(--navy)}
.aiei .cases{margin-top:18px;border-top:1px solid var(--line)}
.aiei .case{padding:12px 0;border-bottom:1px solid var(--line);font-size:.95rem;color:var(--muted);line-height:1.55;max-width:66ch}
.aiei .case b{font-family:var(--f-head);color:var(--navy);font-weight:700}
.aiei .case .src{font-family:var(--f-mono);font-size:.72rem;letter-spacing:.02em;color:var(--cyan-ink);white-space:nowrap}

/* ---------- standards: alignment list ---------- */
.aiei .alignlist{margin-top:38px;border-top:1px solid var(--line)}
.aiei .alignlist .a{display:grid;grid-template-columns:300px 1fr;gap:28px;padding:18px 0;border-bottom:1px solid var(--line);align-items:baseline}
.aiei .alignlist .a b{font-family:var(--f-head);color:var(--navy);font-weight:700;line-height:1.3}
.aiei .alignlist .a span{color:var(--muted)}
@media(max-width:680px){.aiei .alignlist .a{grid-template-columns:1fr;gap:6px}}
.aiei .align-close{max-width:66ch;color:var(--muted);font-size:1.05rem;margin-top:28px}

/* ---------- team ---------- */
.aiei .teamgrid{display:grid;grid-template-columns:repeat(3,1fr);gap:clamp(24px,4vw,48px);margin-top:44px}
@media(max-width:760px){.aiei .teamgrid{grid-template-columns:1fr;gap:28px}}
.aiei .tcol{border-top:2px solid var(--navy);padding-top:18px}
.aiei .tcol h3{font-family:var(--f-head);font-weight:700;font-size:1.2rem;margin-bottom:10px;color:var(--navy)}
.aiei .tcol p{color:var(--muted)}

/* ---------- full-width photo break ---------- */
.aiei .imgbreak{position:relative;width:100%}
.aiei .imgbreak img{width:100%;height:clamp(260px,34vw,460px);object-fit:cover;object-position:center 32%;display:block}
/* photo-band caption */
.aiei .imgbreak .cap{display:block;font-family:var(--f-mono);font-size:.68rem;letter-spacing:.1em;text-transform:uppercase;color:var(--muted);padding:11px var(--gut) 0}

/* ---------- about + Just Horizons logo ---------- */
.aiei .aboutwrap{display:grid;grid-template-columns:1.5fr 1fr;gap:clamp(30px,5vw,60px);align-items:center;margin-top:24px}
@media(max-width:760px){.aiei .aboutwrap{grid-template-columns:1fr;gap:34px}}
.aiei .aboutbox{max-width:60ch}
.aiei .aboutbox .btn{margin-top:26px}
.aiei .btn-ghost{background:transparent;color:var(--navy);border:1.5px solid var(--navy)}
.aiei .btn-ghost:hover{background:var(--navy);color:#fff}
.aiei .aboutwrap .jh{display:flex;justify-content:flex-end;align-items:center}
.aiei .aboutwrap .jh img{height:66px;width:auto;display:block}
@media(max-width:760px){.aiei .aboutwrap .jh{justify-content:flex-start;padding-top:32px;border-top:1px solid var(--line)}}

/* ========== EDUCATION / LEAGUE reusable blocks ========== */

/* emphasis statement line */
.aiei .emphasis{font-family:var(--f-head);font-weight:700;color:var(--navy);font-size:clamp(1.3rem, 1rem + 1vw, 1.65rem);line-height:1.3;margin-top:30px;max-width:58ch}

/* big-number stats */
.aiei .stats{display:grid;grid-template-columns:repeat(4,1fr);gap:clamp(20px,3vw,40px);margin-top:44px;border-top:1px solid var(--line);padding-top:38px}
@media(max-width:820px){.aiei .stats{grid-template-columns:1fr 1fr;gap:32px}}
@media(max-width:520px){.aiei .stats{grid-template-columns:1fr}}
.aiei .stat .num{font-family:var(--f-serif);font-size:clamp(2.4rem, 1.4rem + 3vw, 3.4rem);color:var(--navy);line-height:1;letter-spacing:-.01em}
.aiei .stat p{color:var(--muted);font-size:.98rem;margin-top:12px;line-height:1.5}

/* 360 fluency wheel diagram */
.aiei .fluency-wheel{position:relative;max-width:600px;margin:48px auto 12px}
.aiei .fluency-wheel svg{position:relative;z-index:1;width:100%;height:auto;display:block}
/* soft moving glow behind the wheel */
.aiei .fluency-wheel::before,.aiei .fluency-wheel::after{content:"";position:absolute;border-radius:50%;filter:blur(58px);z-index:0;pointer-events:none}
.aiei .fluency-wheel::before{width:44%;height:44%;top:8%;left:6%;background:radial-gradient(circle,var(--cyan),transparent 66%);opacity:.28;animation:wheelblob1 20s ease-in-out infinite alternate}
.aiei .fluency-wheel::after{width:42%;height:42%;bottom:6%;right:6%;background:radial-gradient(circle,var(--m-deepseek),transparent 66%);opacity:.24;animation:wheelblob2 26s ease-in-out infinite alternate}
@keyframes wheelblob1{from{transform:translate(0,0) scale(1)}to{transform:translate(26px,20px) scale(1.12)}}
@keyframes wheelblob2{from{transform:translate(0,0) scale(1.06)}to{transform:translate(-24px,-16px) scale(1)}}
@media(prefers-reduced-motion:reduce){.aiei .fluency-wheel::before,.aiei .fluency-wheel::after{animation:none}}
/* clickable blocks */
.aiei .fluency-wheel a{cursor:pointer}
.aiei .fluency-wheel .wb{fill:#fff;stroke:var(--navy);stroke-width:1.5;transition:stroke .15s,fill .15s}
.aiei .fluency-wheel a:hover .wb,.aiei .fluency-wheel a:focus .wb{stroke:var(--cyan);fill:var(--wash-2)}
.aiei .fluency-wheel .wn{font-family:var(--f-mono);font-size:13px;fill:var(--cyan-ink)}
.aiei .fluency-wheel .wt{font-family:var(--f-head);font-weight:700;font-size:15.5px;fill:var(--navy)}
/* highlight the dimension a block points to */
.aiei .dim{scroll-margin-top:96px;transition:background .3s,box-shadow .3s;border-radius:4px}
.aiei .dim.lit{background:rgba(0,200,255,0.09);box-shadow:inset 0 0 0 1px rgba(0,200,255,0.35)}

/* numbered dimension / criteria entries (title + question + sub-content) */
.aiei .dimlist{border-top:1px solid var(--line);margin-top:42px}
.aiei .dim{display:grid;grid-template-columns:64px 1fr;gap:24px;padding:30px 0;border-bottom:1px solid var(--line)}
.aiei .dim .n{font-family:var(--f-mono);color:var(--cyan-ink);font-size:.95rem;padding-top:5px}
.aiei .dim h3{font-family:var(--f-head);font-weight:700;font-size:1.4rem;color:var(--navy);margin-bottom:8px}
.aiei .dim .q{color:var(--ink);font-size:1.08rem;margin-bottom:20px;max-width:72ch}
.aiei .dim .sub{display:grid;grid-template-columns:1fr 1fr;gap:26px;max-width:84ch}
.aiei .dim .sub .lbl{font-family:var(--f-mono);font-size:.66rem;letter-spacing:.1em;text-transform:uppercase;color:var(--cyan-ink);margin-bottom:6px;display:block}
.aiei .dim .sub p{color:var(--muted);font-size:.98rem;line-height:1.55}
@media(max-width:700px){.aiei .dim{grid-template-columns:44px 1fr;gap:16px}.aiei .dim .sub{grid-template-columns:1fr;gap:16px}}
/* tick sub-list variant (Education criteria) */
.aiei .dim .crit{list-style:none;display:grid;grid-template-columns:1fr 1fr;gap:2px 26px;max-width:84ch}
@media(max-width:640px){.aiei .dim .crit{grid-template-columns:1fr}}
.aiei .dim .crit li{display:flex;align-items:center;gap:12px;padding:4px 0;color:var(--ink);font-size:.98rem}
.aiei .dim .crit li::before{content:"";flex:none;width:14px;height:2px;background:var(--cyan)}

/* audience cards */
@media(max-width:820px){.aiei .audiences{grid-template-columns:1fr}}
.aiei .aud .label{display:block;margin-bottom:12px}
.aiei .aud .btn{align-self:flex-start;margin-top:auto}

/* two-column comparison lists */
.aiei .compare{display:grid;grid-template-columns:1fr 1fr;gap:clamp(24px,4vw,48px);margin-top:42px}
@media(max-width:760px){.aiei .compare{grid-template-columns:1fr;gap:30px}}
.aiei .compare .col-lbl{font-family:var(--f-mono);font-size:.7rem;letter-spacing:.1em;text-transform:uppercase;color:var(--muted);margin-bottom:8px;display:block;padding-bottom:12px;border-bottom:1px solid var(--line)}
.aiei .compare ul{list-style:none}
.aiei .compare li{display:flex;align-items:flex-start;gap:12px;padding:12px 0;border-bottom:1px solid var(--line);color:var(--ink);font-size:.98rem;line-height:1.5}
.aiei .compare li::before{content:"";flex:none;width:14px;height:2px;background:var(--line);margin-top:11px}
.aiei .compare .need li::before{background:var(--cyan)}

/* reasons grid (heading + description) */
.aiei .reasons{display:grid;grid-template-columns:1fr 1fr;gap:0 clamp(32px,5vw,64px);margin-top:40px;border-top:1px solid var(--line)}
@media(max-width:720px){.aiei .reasons{grid-template-columns:1fr}}
.aiei .reason{padding:24px 0;border-bottom:1px solid var(--line)}
.aiei .reason h3,.aiei .reason h4{font-family:var(--f-head);font-weight:700;color:var(--navy);font-size:1.15rem;margin-bottom:8px}
.aiei .reason p{color:var(--muted);font-size:.98rem;line-height:1.55}
.aiei .reason p a,.aiei .sec-lead a,.aiei .reasons-close a,.aiei .sc-find p a{color:var(--cyan-ink);border-bottom:1px solid var(--line);transition:border-color .12s}
.aiei .reason p a:hover,.aiei .sec-lead a:hover,.aiei .reasons-close a:hover,.aiei .sc-find p a:hover{border-color:var(--cyan)}
.aiei .reasons-close{margin-top:30px;color:var(--ink);font-size:1.1rem;line-height:1.55;max-width:62ch}
.aiei .reasons-close b{color:var(--navy);font-family:var(--f-head)}

/* feature rows (audience blocks: text + image, alternating) */
.aiei .featrow{display:grid;grid-template-columns:1fr 1fr;gap:clamp(28px,5vw,64px);align-items:center;padding:clamp(36px,5vw,56px) 0;border-bottom:1px solid var(--line)}
.aiei .featrow:first-of-type{border-top:1px solid var(--line)}
@media(max-width:760px){.aiei .featrow{grid-template-columns:1fr;gap:24px}}
.aiei .featrow .featrow-text .label{display:block;margin-bottom:12px}
.aiei .featrow h3{font-family:var(--f-head);font-weight:700;color:var(--navy);font-size:1.5rem;margin-bottom:16px}
.aiei .featrow p{color:var(--muted);line-height:1.6}
.aiei .featrow p + p{margin-top:14px}
.aiei .featrow .btn{margin-top:24px}
.aiei .featrow-img{line-height:0}
.aiei .featrow-img img{width:100%;height:clamp(240px,26vw,340px);object-fit:cover;display:block}
.aiei .featrow.rev .featrow-text{order:2}
@media(max-width:760px){.aiei .featrow.rev .featrow-text{order:0}}

/* ========== EDITORIAL ARTICLE format (News, Methodology, Scorecard) ========== */
.aiei .article{padding:clamp(40px,6vw,84px) 0 clamp(56px,7vw,96px)}
.aiei .article .col{padding:0 var(--gut)}
/* full-width band inside an article (e.g. the nine dimensions) */
.aiei .article .alignfull{margin-left:calc(-50vw + 50%);margin-right:calc(-50vw + 50%);max-width:100vw}
.aiei .article .alignfull .nine{margin-top:0}

/* four-level structure (L1 to L4) */
.aiei .levels{border-top:1px solid var(--line);margin:30px 0}
.aiei .levels .lv{display:grid;grid-template-columns:52px 1fr;gap:20px;padding:18px 0;border-bottom:1px solid var(--line)}
.aiei .levels .lv .tag{font-family:var(--f-mono);font-weight:700;color:var(--cyan-ink);font-size:.95rem;padding-top:2px}
.aiei .levels .lv b{font-family:var(--f-head);color:var(--navy);font-weight:700}
.aiei .levels .lv p{color:var(--muted);font-size:1rem;line-height:1.55;margin-top:6px;max-width:none}

/* article header */
.aiei .article .art-title{font-family:var(--f-serif);font-weight:400;color:var(--navy);font-size:clamp(2.4rem,1.4rem + 3vw,3.7rem);line-height:1.08;letter-spacing:-.01em;max-width:24ch;margin-left:0 !important;margin-right:auto !important}
/* methodology gets a subtle animated trace backdrop for extra presence */
.aiei .article.art-hero{position:relative;overflow:hidden}
.aiei .article.art-hero .art-traces{position:absolute;top:0;left:0;right:0;height:clamp(220px,20vw,300px);z-index:0;pointer-events:none;-webkit-mask-image:linear-gradient(180deg,#000 68%,transparent 100%);mask-image:linear-gradient(180deg,#000 68%,transparent 100%)}
.aiei .article.art-hero .art-traces svg{width:100%;height:100%}
.aiei .article.art-hero .col{position:relative;z-index:1}
.aiei .standfirst{font-size:1.3rem;line-height:1.5;color:var(--muted);margin-top:24px;max-width:58ch}
.aiei .art-body img{display:block;width:100%;height:auto;margin:14px 0}
.aiei .art-fig{margin:30px 0 8px}
.aiei .art-fig svg{display:block;width:100%;height:auto}
.aiei .art-fig figcaption{font-family:var(--f-mono);font-size:.68rem;letter-spacing:.1em;text-transform:uppercase;color:var(--muted);margin-top:11px}
.aiei .byline{font-family:var(--f-mono);font-size:.72rem;letter-spacing:.08em;text-transform:uppercase;color:var(--muted);margin-top:30px;padding:16px 0;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}

/* article body prose */
.aiei .art-body{margin-top:40px;font-size:1.15rem;line-height:1.75;color:var(--ink)}
.aiei .art-body > * + *{margin-top:24px}
.aiei .art-body p{max-width:68ch}
.aiei .art-body h2{font-family:var(--f-serif);font-weight:400;color:var(--navy);font-size:clamp(1.7rem,1.3rem + 1.4vw,2.2rem);line-height:1.15;letter-spacing:-.01em;margin-top:52px;max-width:26ch}
.aiei .art-body h3{font-family:var(--f-head);font-weight:700;color:var(--navy);font-size:1.35rem;line-height:1.25;margin-top:38px}
.aiei .art-body h4{font-family:var(--f-head);font-weight:700;color:var(--navy);font-size:1.1rem;margin-top:30px}
.aiei .art-body a{color:var(--cyan-ink);border-bottom:1px solid var(--line);transition:border-color .12s}
.aiei .art-body a:hover{border-color:var(--cyan)}
.aiei .art-body strong{color:var(--navy);font-weight:700}
.aiei .art-body ul,.aiei .art-body ol{list-style:none;max-width:68ch;padding:0}
.aiei .art-body ul li{display:flex;gap:14px;padding:7px 0}
.aiei .art-body ul li::before{content:"";flex:none;width:14px;height:2px;background:var(--cyan);margin-top:.85em}
.aiei .art-body ol{counter-reset:artli}
.aiei .art-body ol li{position:relative;padding:7px 0 7px 34px;counter-increment:artli}
.aiei .art-body ol li::before{content:counter(artli,decimal-leading-zero);position:absolute;left:0;top:.55em;font-family:var(--f-mono);font-size:.85rem;color:var(--cyan-ink)}
.aiei .art-body blockquote{font-family:var(--f-serif);font-style:italic;font-size:clamp(1.5rem,1.2rem + 1vw,1.9rem);line-height:1.32;color:var(--navy);margin:44px 0;padding:0;border:0;max-width:24ch}
.aiei .art-body blockquote p{max-width:none;margin:0}
.aiei .art-body .wp-block-quote{max-width:36ch;font-size:clamp(1.4rem,1.15rem + .8vw,1.75rem)}
.aiei .art-body .wp-block-quote cite{display:block;margin-top:18px;font-family:var(--f-mono);font-style:normal;font-size:.72rem;letter-spacing:.09em;text-transform:uppercase;color:var(--cyan-ink)}

/* ---------- AI Scorecards: score bars + findings ---------- */
@keyframes scgrow{from{width:0}}
.aiei .sc-legend .li{display:flex;align-items:center;gap:8px;font-family:var(--f-mono);font-size:.72rem;letter-spacing:.03em;color:var(--navy)}
.aiei .sc-legend .dot{width:11px;height:11px;border-radius:50%;flex:none}
.aiei .sc-block{border:1px solid var(--line);border-radius:8px;padding:22px 26px;margin:24px 0}
.aiei .sc-block .cap{font-family:var(--f-mono);font-size:.68rem;letter-spacing:.1em;text-transform:uppercase;color:var(--muted);margin-bottom:18px}
.aiei .sc-finds{margin:32px 0}
.aiei .sc-find{padding:20px 0;border-bottom:1px solid var(--line)}
.aiei .sc-find:last-child{border-bottom:0}
.aiei .sc-find .fl{font-family:var(--f-mono);font-size:.66rem;letter-spacing:.1em;text-transform:uppercase;color:var(--cyan-ink);margin-bottom:6px}
.aiei .sc-find h3,.aiei .sc-find h4{font-family:var(--f-head);font-weight:700;font-size:1.08rem;line-height:1.35;color:var(--navy);margin-bottom:12px;max-width:56ch}
.aiei .sc-find p{color:var(--muted);font-size:1rem;line-height:1.65;max-width:76ch}
.aiei .sc-find p + p{margin-top:14px}
.aiei .sc-details{margin-top:28px;border:1px solid var(--line);border-radius:8px;overflow:hidden}
.aiei .sc-details summary{padding:14px 20px;font-family:var(--f-head);font-weight:600;font-size:.9rem;color:var(--navy);cursor:pointer;list-style:none;display:flex;justify-content:space-between;align-items:center;background:var(--wash-2)}
.aiei .sc-details summary::-webkit-details-marker{display:none}
.aiei .sc-details summary:focus-visible{outline:2px solid var(--cyan-ink);outline-offset:-2px}
.aiei .sc-details summary::after{content:'+';font-size:1.15rem;color:var(--muted)}
.aiei .sc-details[open] summary::after{content:'\2212'}
.aiei .sc-dbody{padding:18px 20px;display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:16px}
@media(prefers-reduced-motion:reduce){.aiei .sc-fill,.aiei .sc-dfill{animation:none}}
.aiei .art-body hr{border:0;border-top:1px solid var(--line);margin:48px 0}
.aiei .art-body figure{margin:36px 0}
.aiei .art-body figure img{width:100%;display:block}
.aiei .art-body figcaption{font-family:var(--f-mono);font-size:.7rem;letter-spacing:.06em;text-transform:uppercase;color:var(--muted);margin-top:10px}

/* callout / note band (default cyan, .warn = amber) */
.aiei .callout{background:var(--wash-2);border-top:3px solid var(--cyan);padding:24px 28px;margin:40px 0;font-size:1.05rem;line-height:1.6;color:var(--ink)}
.aiei .callout .clabel{font-family:var(--f-mono);font-size:.66rem;letter-spacing:.12em;text-transform:uppercase;color:var(--cyan-ink);display:block;margin-bottom:10px}
.aiei .callout p{max-width:none}
.aiei .callout p + p{margin-top:12px}
.aiei .callout.warn{background:#FEF3E9;border-top-color:var(--amber)}
.aiei .callout.warn .clabel{color:#9A6A12}

/* article end: author + inline CTA */
.aiei .art-end{max-width:720px;margin:56px auto 0}
.aiei .art-author{display:flex;gap:16px;align-items:center;padding:26px 0;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}
.aiei .art-author .who{font-family:var(--f-head);font-weight:700;color:var(--navy)}
.aiei .art-author .role{font-family:var(--f-mono);font-size:.72rem;letter-spacing:.06em;text-transform:uppercase;color:var(--muted);margin-top:4px}
.aiei .art-cta{margin-top:34px}
.aiei .art-cta h3{font-family:var(--f-head);font-weight:700;color:var(--navy);font-size:1.45rem;letter-spacing:-.01em;margin-bottom:16px}
.aiei .art-cta .wp-block-button__link{font-family:var(--f-head);font-weight:600;font-size:.9rem;padding:12px 24px;border-radius:2px;background:var(--navy);color:#fff;border:1.5px solid var(--navy);transition:.15s}
.aiei .art-cta .wp-block-button__link:hover{background:var(--navy-lift);border-color:var(--navy-lift)}

/* ---------- contact page + Fluent Forms brand styling ---------- */
.aiei-contact{padding:clamp(52px,7vw,96px) var(--gut);font-family:var(--f-body);color:var(--ink)}
.aiei-contact .wp-block-columns{align-items:flex-start}
.aiei-contact .c-eyebrow{font-family:var(--f-mono);font-size:.72rem;letter-spacing:.14em;text-transform:uppercase;color:var(--muted);display:flex;align-items:center;gap:12px;margin-bottom:14px}
.aiei-contact .c-tick{width:34px;height:2px;background:var(--cyan);display:inline-block}
.aiei-contact .c-title{font-family:var(--f-serif);font-weight:400;color:var(--navy);font-size:clamp(1.9rem,1.2rem + 2vw,2.6rem);line-height:1.1;letter-spacing:-.01em;margin:0 0 16px;max-width:16ch}
.aiei-contact .c-lead{color:var(--muted);font-size:1.08rem;line-height:1.6;margin:0 0 28px;max-width:46ch}
.aiei-contact .c-details{border-top:1px solid var(--line);margin-top:8px}
.aiei-contact .c-details>div{display:grid;grid-template-columns:90px 1fr;gap:16px;padding:14px 0;border-bottom:1px solid var(--line)}
.aiei-contact .c-details dt{font-family:var(--f-mono);font-size:.68rem;letter-spacing:.1em;text-transform:uppercase;color:var(--muted)}
.aiei-contact .c-details dd{margin:0;color:var(--ink);font-size:.95rem;line-height:1.5}
.aiei-contact .c-details a{color:var(--cyan-ink);text-decoration:none}
.aiei-contact .c-details a:hover{color:var(--navy)}

/* the form panel */
.aiei-formwrap{background:var(--wash-2);border:1px solid var(--line);border-top:3px solid var(--navy);padding:clamp(24px,3vw,38px)}
.aiei-contact .frm-fluent-form .ff-el-group{margin-bottom:18px}
.aiei-contact .frm-fluent-form .ff-el-input--label label{font-family:var(--f-mono);font-size:.68rem;letter-spacing:.1em;text-transform:uppercase;color:var(--muted);font-weight:500;margin-bottom:6px;line-height:1.4}
.aiei-contact .frm-fluent-form input.ff-el-form-control,
.aiei-contact .frm-fluent-form textarea.ff-el-form-control{
  font-family:var(--f-body);font-size:1rem;color:var(--ink);
  padding:11px 13px;border:1px solid var(--line);border-radius:2px;background:#fff;
  box-shadow:none;width:100%;line-height:1.5;transition:border-color .12s,box-shadow .12s}
.aiei-contact .frm-fluent-form input.ff-el-form-control:focus,
.aiei-contact .frm-fluent-form textarea.ff-el-form-control:focus{
  outline:none;border-color:var(--cyan);box-shadow:0 0 0 3px rgba(0,200,255,.18)}
.aiei-contact .frm-fluent-form textarea.ff-el-form-control{min-height:120px;resize:vertical}
/* Fluent Forms sets the button colour inline, so override with !important */
.aiei-contact .frm-fluent-form .ff-btn-submit{
  font-family:var(--f-head)!important;font-weight:600!important;font-size:.95rem!important;
  background:var(--navy)!important;color:#fff!important;border:1.5px solid var(--navy)!important;border-radius:2px!important;
  padding:13px 28px!important;cursor:pointer;transition:background .15s,border-color .15s;box-shadow:none!important}
.aiei-contact .frm-fluent-form .ff-btn-submit:hover{background:var(--navy-lift)!important;border-color:var(--navy-lift)!important}
.aiei-contact .frm-fluent-form .ff-message-success{border:1px solid var(--ok-border);background:var(--ok-bg);color:var(--ok-text);padding:14px 16px;border-radius:2px;font-family:var(--f-body)}

/* footer */
.aiei.footer,.aiei .footer{background:var(--navy);color:var(--on-dark);padding:64px 0 40px}
.aiei .footer .top{display:grid;grid-template-columns:1.4fr 1fr 1fr;gap:32px;padding-bottom:36px;border-bottom:1px solid rgba(255,255,255,.14)}
@media(max-width:760px){.aiei .footer .top{grid-template-columns:1fr 1fr}}
.aiei .footer h4{color:#fff;font-size:.8rem;font-family:var(--f-mono);letter-spacing:.12em;text-transform:uppercase;font-weight:500;margin-bottom:16px}
.aiei .footer a{display:block;color:var(--on-dark);padding:5px 0;font-size:.95rem}
.aiei .footer a:hover{color:var(--cyan)}
.aiei .footer .fmark{font-family:var(--f-head);font-weight:800;color:#fff;font-size:1.15rem;margin-bottom:12px}
.aiei .footer .legal{padding-top:26px;font-size:.85rem;color:var(--on-dark-muted);display:flex;justify-content:space-between;flex-wrap:wrap;gap:10px}

/* ============================================================
   Equity scorecard: radar, small multiples, data table,
   scoring bands, indicator record. Single-hue by design —
   identity comes from panel titles and the highlight state,
   never from seven competing series colours.
   ============================================================ */
.aiei section.wash{background:var(--wash-2);border-top:1px solid var(--line);border-bottom:1px solid var(--line)}
.aiei section.wash .sc-block{background:#fff}
.aiei section.wash.nb{border-bottom:0;padding-bottom:clamp(26px,3vw,44px)}
.aiei section.wash.nt{border-top:0;padding-top:clamp(26px,3vw,44px)}
.aiei .vh{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}
.aiei .mast-plain .callout{margin-bottom:0}

/* radar + chip rail */
.aiei .sc-radarwrap{display:grid;grid-template-columns:1fr 268px;gap:clamp(20px,3vw,44px);align-items:start}
@media(max-width:900px){.aiei .sc-radarwrap{grid-template-columns:1fr}}
.aiei .radarsvg{display:block;width:100%;height:auto;overflow:visible}
.aiei .radarsvg .ring,.aiei .radarsvg .spoke{fill:none;stroke:var(--line);stroke-width:1}
.aiei .radarsvg .rl{font-family:var(--f-mono);font-size:10px;fill:var(--muted);paint-order:stroke;stroke:#fff;stroke-width:3px;stroke-linejoin:round}
.aiei .radarsvg .rl.ctr{fill:var(--cyan-ink);font-weight:600}
.aiei .radarsvg .al{font-family:var(--f-head);font-weight:600;font-size:13px;fill:var(--navy)}
.aiei .radarsvg .ser{fill:none;stroke:var(--muted);stroke-width:1.4;opacity:.32;transition:opacity .15s,stroke .15s,stroke-width .15s}
.aiei .radarsvg .meanfill{fill:var(--cyan);fill-opacity:.14;stroke:var(--cyan-ink);stroke-width:2;transition:opacity .15s}
.aiei .radarsvg .meandot{fill:var(--cyan-ink);stroke:#fff;stroke-width:2}
.aiei .sc-radar.lit .ser{opacity:.1}
.aiei .sc-radar.lit .meanfill,.aiei .sc-radar.lit .meandot{opacity:.28}
.aiei .sc-radar .ser.on{stroke:var(--navy);stroke-width:2.6;opacity:1}
.aiei .sc-chipcap{font-family:var(--f-mono);font-size:.66rem;letter-spacing:.12em;text-transform:uppercase;color:var(--muted);margin-bottom:10px}
.aiei .sc-chips{border-top:1px solid var(--line)}
.aiei .sc-chip{display:grid;grid-template-columns:1fr auto;gap:10px;align-items:center;width:100%;padding:10px 8px;border:0;border-bottom:1px solid var(--line);background:none;cursor:pointer;text-align:left;font-family:var(--f-head);font-weight:600;font-size:.9rem;color:var(--navy);transition:background .12s}
.aiei .sc-chip:hover,.aiei .sc-chip:focus-visible,.aiei .sc-chip.on{background:var(--wash)}
.aiei .sc-chip:focus-visible{outline:2px solid var(--cyan-ink);outline-offset:-2px}
.aiei .sc-chip .v{font-family:var(--f-mono);font-size:.82rem;color:var(--cyan-ink)}
.aiei .sc-hint{margin-top:14px;color:var(--muted);font-size:.9rem;line-height:1.55}

/* data table */
.aiei .sc-tablewrap{overflow-x:auto}
.aiei .sc-table{width:100%;border-collapse:collapse;font-size:.9rem;min-width:640px}
.aiei .sc-table th,.aiei .sc-table td{padding:9px 10px;border-bottom:1px solid var(--line);text-align:right;white-space:nowrap}
.aiei .sc-table th:first-child,.aiei .sc-table td:first-child{text-align:left}
.aiei .sc-table thead th{font-family:var(--f-mono);font-size:.62rem;letter-spacing:.08em;text-transform:uppercase;color:var(--muted);font-weight:400;white-space:normal;min-width:82px}
.aiei .sc-table tbody th{font-family:var(--f-head);font-weight:600;color:var(--navy)}
.aiei .sc-table td{font-family:var(--f-mono);color:var(--ink)}
.aiei .sc-table td.ov{color:var(--navy);font-weight:600}
.aiei .sc-table .meanrow th,.aiei .sc-table .meanrow td{border-top:2px solid var(--line);color:var(--cyan-ink)}

/* scoring bands (ordinal ramp, one hue, light to dark) */
.aiei .sc-bands{border-top:1px solid var(--line);margin-top:38px}
.aiei .sc-band{display:grid;grid-template-columns:52px 84px 1fr;gap:20px;align-items:baseline;padding:18px 0;border-bottom:1px solid var(--line)}
@media(max-width:720px){.aiei .sc-band{grid-template-columns:52px 1fr;gap:12px}.aiei .sc-band .bd{grid-column:1/-1}}
.aiei .sc-band .bn{font-family:var(--f-mono);font-weight:400;font-size:1.05rem;color:var(--navy)}
.aiei .sc-band .chip{height:15px;border-radius:2px;background:var(--c);align-self:center}
.aiei .sc-band .bn{font-family:var(--f-head);font-weight:700;color:var(--navy)}
.aiei .sc-band .bn small{display:block;font-family:var(--f-mono);font-weight:400;font-size:.68rem;letter-spacing:.07em;text-transform:uppercase;color:var(--muted);margin-top:4px}
.aiei .sc-band .bd{color:var(--muted);font-size:1rem;line-height:1.6}

/* indicator record */
.aiei .sc-rec{display:grid;grid-template-columns:repeat(auto-fit,minmax(290px,1fr));gap:20px 32px}
.aiei .sc-rec .full{grid-column:1/-1;padding-top:18px;border-top:1px solid var(--line)}
.aiei .sc-rec .full dd{max-width:88ch}
.aiei .sc-rec dt{font-family:var(--f-mono);font-size:.64rem;letter-spacing:.09em;text-transform:uppercase;color:var(--muted);margin-bottom:5px}
.aiei .sc-rec dd{color:var(--navy);font-size:.98rem;line-height:1.55}
.aiei .sc-rec dd.mono{font-family:var(--f-mono);font-size:.86rem;color:var(--cyan-ink)}

/* overall score bars: single measure, shaded by scoring band (ordinal, not categorical) */
.aiei .eq-bars{display:flex;flex-direction:column;gap:14px}
.aiei .eq-bar{display:grid;grid-template-columns:136px 1fr 84px 54px;align-items:center;gap:16px}
@media(max-width:720px){
  .aiei .eq-bar{grid-template-columns:1fr auto;gap:6px 12px}
  .aiei .eq-bar .track{grid-column:1/-1;order:3;height:26px}
  .aiei .eq-bar .bandname{order:2;text-align:right}
  .aiei .eq-bar .val{display:none}
}
.aiei .eq-bar .who{font-family:var(--f-head);font-weight:600;font-size:.94rem;color:var(--navy)}
.aiei .eq-bar .track{background:var(--wash);border-radius:4px;height:34px;overflow:hidden}
.aiei .eq-bar .fill{height:100%;border-radius:4px;width:var(--w);background:var(--c);animation:scgrow .9s cubic-bezier(.16,1,.3,1) both}
.aiei .eq-bar .bandname{font-family:var(--f-mono);font-size:.7rem;letter-spacing:.06em;text-transform:uppercase;color:var(--muted)}
.aiei .eq-bar .val{font-family:var(--f-head);font-weight:700;font-size:1.15rem;color:var(--navy);text-align:right}
@media(prefers-reduced-motion:reduce){.aiei .eq-bar .fill{animation:none}}

/* matched-transcript grid: one grid for all variants so the arcs line up
   turn by turn. Column count comes from --cols on the element. */
.aiei .eq-pair{display:grid;grid-template-columns:repeat(var(--cols,2),1fr);gap:10px 14px}
.aiei .eq-pair .ph{font-family:var(--f-mono);font-size:.64rem;letter-spacing:.09em;text-transform:uppercase;color:var(--muted);padding-bottom:9px;border-bottom:1px solid var(--line)}
.aiei .turn{border:1px solid var(--line);border-radius:4px;background:#fff;padding:12px 14px}
.aiei .turn .role{display:block;font-family:var(--f-mono);font-size:.6rem;letter-spacing:.1em;text-transform:uppercase;color:var(--muted);margin-bottom:7px}
.aiei .turn .role em{font-style:normal;display:none}
.aiei .turn p{font-size:.92rem;line-height:1.6;color:var(--ink);max-width:none}
.aiei .turn.ai{background:var(--wash)}
.aiei .turn.ai .role{color:var(--cyan-ink)}
@media(max-width:860px){
  .aiei .eq-pair{grid-template-columns:1fr}
  .aiei .eq-pair .ph{display:none}
  .aiei .turn .role em{display:inline}
}

/* rich content inside a transcript cell (verbatim model output) */
.aiei .turn ol,.aiei .turn ul{margin:9px 0 9px 20px;padding:0}
.aiei .turn ol li{list-style:decimal;margin:4px 0;font-size:.88rem;line-height:1.55}
.aiei .turn ul li{list-style:none;margin:4px 0 4px -6px;font-size:.88rem;line-height:1.55}
.aiei .turn strong{color:var(--navy);font-weight:700}
.aiei .turn em{font-style:italic}
.aiei .turn p + p,.aiei .turn ol + p,.aiei .turn ul + p,.aiei .turn table + p{margin-top:9px}
.aiei .turn .eqn{display:block;font-family:var(--f-mono);font-size:.82rem;color:var(--navy);background:#fff;border:1px solid var(--line);border-radius:4px;padding:7px 9px;margin:9px 0}
.aiei .turn table{width:100%;border-collapse:collapse;margin:9px 0;font-size:.78rem;background:#fff}
.aiei .turn th,.aiei .turn td{border:1px solid var(--line);padding:5px 7px;text-align:left;vertical-align:top}
.aiei .turn thead th{font-family:var(--f-mono);font-size:.6rem;letter-spacing:.05em;text-transform:uppercase;color:var(--muted);font-weight:400}
.aiei .eq-mtranscript .turn .role em{display:inline;color:var(--muted)}

/* in-page anchors must clear the sticky header */
.aiei section[id],.aiei header[id]{scroll-margin-top:92px}
@media(prefers-reduced-motion:no-preference){html{scroll-behavior:smooth}}

/* per-model behaviour card: header, narrative, then the matched transcripts */
.aiei .eq-mtranscript{margin-top:26px}
.aiei .eq-mtranscript .tcap{font-family:var(--f-mono);font-size:.64rem;letter-spacing:.09em;text-transform:uppercase;color:var(--muted);margin-bottom:12px}
.aiei .eq-mtranscript .eq-pair{gap:8px 12px}
.aiei .eq-mtranscript .turn{padding:10px 12px}
.aiei .eq-mtranscript .turn p{font-size:.88rem}

/* ranking table helpers */
.aiei .sc-table td.rk{font-family:var(--f-mono);color:var(--muted);text-align:left;width:1%}
.aiei .sc-table td.real{color:var(--navy);font-weight:600}
.aiei .sc-table tbody th{white-space:nowrap}
.aiei .sc-block > .sc-tablewrap{margin-top:4px}

/* sub-heads that follow a chart, stat row, finding list or lead need air above */
.aiei .stats + .gap-head,.aiei .sc-block + .gap-head,.aiei .sc-finds + .gap-head,
.aiei .reasons + .gap-head,.aiei .eq-bars + .gap-head,.aiei .sec-lead + .gap-head,
.aiei .eq-model + .gap-head,.aiei .reasons-close + .gap-head,
.aiei .stats + .sec-t-sm,.aiei .sc-block + .sec-t-sm,.aiei .sc-finds + .sec-t-sm,
.aiei .reasons + .sec-t-sm,.aiei .eq-bars + .sec-t-sm,.aiei .sec-lead + .sec-t-sm,
.aiei .reasons-close + .sec-t-sm{margin-top:clamp(40px,5vw,64px)}

/* list variants without the leading hairline (the first row's own rule reads
   as the top edge, so a border above it doubles up) */
.aiei .credible.plain,.aiei .ninelist.plain{border-top:0}
.aiei .ninelist.plain{margin-top:26px}

/* equity case study: evidence list and real-world impact line inside .sc-find */
.aiei .sc-ev{list-style:none;margin:12px 0 0;padding:0;max-width:76ch}
.aiei .sc-ev li{color:var(--muted);font-size:1rem;line-height:1.65;margin-top:9px}
.aiei .sc-ev li b{color:var(--navy);font-family:var(--f-head);font-weight:700}
.aiei .sc-find .rwi{color:var(--ink);margin-top:16px;max-width:76ch}
.aiei .sc-find .rwi b{color:var(--navy);font-family:var(--f-head);font-weight:700}
/* stacked disclosure body, instead of the default column grid */
.aiei .sc-dbody.flow{display:block}
.aiei .sc-dbody.flow > * + *{margin-top:30px}
.aiei .sc-find > .sc-details{background:#fff}
.aiei .turn .quo{display:block;background:#fff;border:1px solid var(--line);border-radius:4px;padding:8px 10px;margin:9px 0;font-size:.9rem;line-height:1.55;color:var(--ink)}
.aiei .sc-dbody.flow .eq-mtranscript{margin-top:0}
.aiei .sc-dbody.flow .eq-mtranscript + .eq-mtranscript{margin-top:36px;padding-top:32px;border-top:1px solid var(--line)}
