/* Lumaegis site: follows the current lumaegis.com look. White pages, Righteous display, Nunito body, brand blue with logo pink and teal accents. Single light theme by design. */
:root{
  --bg:#FFFFFF; --soft:#F4F8FB; --ink:#1F2A37; --ink-2:#5B6675; --line:#DCE6EE;
  --blue:#214195; --blue-deep:#26206B; --violet:#6A4CFF; --heat:#F08A2E; --pink:#00B2B2; --teal:#00B2B2; --pass:#2E9E6B;
  --f-display:"Helvetica Neue", Helvetica, Arial, sans-serif;
  --f-body:"Helvetica Neue", Helvetica, Arial, sans-serif;
  color-scheme: light;
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
@media (prefers-reduced-motion: reduce){html{scroll-behavior:auto}*{transition:none!important;animation:none!important}}
body{margin:0;background:var(--bg);color:var(--ink);font-family:var(--f-body);font-size:17px;line-height:1.55}
body::before{content:"";position:fixed;inset:0 0 auto;height:env(safe-area-inset-top,0px);z-index:40;background:var(--bg)}
img{max-width:100%;height:auto;display:block}
a{color:var(--blue)}
a:focus-visible,button:focus-visible,input:focus-visible,summary:focus-visible{outline:3px solid var(--pink);outline-offset:2px;border-radius:4px}
.wrap{max-width:1140px;margin:0 auto;padding-left:max(16px,env(safe-area-inset-left,0px));padding-right:max(16px,env(safe-area-inset-right,0px))}
h1,h2,h3{font-family:var(--f-display);font-weight:700;margin:0;line-height:1.1;text-wrap:balance;letter-spacing:-.015em}
h1{font-size:clamp(2.1rem,4.6vw,3.4rem);color:var(--blue)}
h2{font-size:clamp(1.6rem,3vw,2.3rem);color:var(--blue)}
h3{font-size:1.2rem;font-weight:600;letter-spacing:0}
p{margin:0}
.kicker{font-family:var(--f-body);font-weight:700;font-size:.78rem;letter-spacing:.14em;text-transform:uppercase;color:var(--teal)}
.sub{font-size:1.15rem;color:var(--ink-2);max-width:56ch}
section{padding-block:clamp(3rem,7vw,5.5rem)}
.soft{background:var(--soft)}
.dark{background:var(--blue-deep);color:#fff}
.dark h2{color:#fff}
.dark .sub,.dark p{color:#C9D3EE}
.center{text-align:center}
.center .sub{margin-inline:auto}
.head{display:grid;gap:.8rem;margin-bottom:2.2rem}
sup a{text-decoration:none;font-size:.72em;color:inherit;opacity:.75}

/* header + dropdown nav */
header.top{position:sticky;top:env(safe-area-inset-top,0px);z-index:30;background:#fff;border-bottom:1px solid var(--line)}
.top .wrap{display:flex;align-items:center;justify-content:space-between;gap:1rem;padding-block:.6rem}
.top .logo img{height:52px;width:auto;display:block}
nav.main{display:flex;align-items:center;gap:.2rem}
nav.main > a,nav.main .dd > button{font:inherit;font-weight:600;font-size:.98rem;letter-spacing:0;color:var(--ink);text-decoration:none;background:none;border:0;padding:.7rem .75rem;cursor:pointer;border-radius:6px}
nav.main > a:hover,nav.main .dd > button:hover,nav.main > a[aria-current]{color:var(--blue)}
nav.main .dd{position:relative}
nav.main .dd > button::after{content:"";display:inline-block;margin-left:.4rem;border:4px solid transparent;border-top-color:currentColor;transform:translateY(2px)}
nav.main .menu{position:absolute;top:100%;left:0;min-width:230px;background:#fff;border:1px solid var(--line);border-radius:10px;box-shadow:0 16px 36px -18px rgba(19,42,102,.35);padding:.4rem;display:none}
nav.main .dd:hover .menu,nav.main .dd:focus-within .menu,nav.main .dd.open .menu{display:grid}
nav.main .menu a{padding:.6rem .75rem;border-radius:6px;text-decoration:none;color:var(--ink);font-size:.95rem}
nav.main .menu a:hover{background:var(--soft);color:var(--blue)}
.btn{display:inline-flex;align-items:center;gap:.5rem;padding:.8rem 1.4rem;border-radius:4px;background:var(--blue);color:#fff;text-decoration:none;font-weight:700;font-size:1rem;letter-spacing:0;border:2px solid var(--blue);border-radius:999px}
.btn.line{background:transparent;color:var(--blue)}
.dark .btn.line{color:#fff;border-color:#fff}
.menu-toggle{display:none;font:inherit;font-weight:800;background:none;border:1px solid var(--line);border-radius:6px;padding:.5rem .8rem;cursor:pointer}
@media (max-width:980px){
  .menu-toggle{display:inline-flex}
  nav.main{display:none;position:absolute;top:100%;left:0;right:0;background:#fff;border-bottom:1px solid var(--line);flex-direction:column;align-items:stretch;padding:.5rem max(16px,env(safe-area-inset-right,0px)) 1rem max(16px,env(safe-area-inset-left,0px))}
  nav.main.open{display:flex}
  nav.main .menu{position:static;display:grid;box-shadow:none;border:0;padding:0 0 .4rem .8rem}
  nav.main .dd > button::after{display:none}
  .top .cta-top{display:none}
}

/* hero */
.hero .grid{display:grid;grid-template-columns:1fr 1fr;gap:clamp(1.5rem,4vw,3.5rem);align-items:center}
@media (max-width:860px){.hero .grid{grid-template-columns:1fr}}
.hero .copy{display:grid;gap:1.3rem;min-width:0}
.hero h1 span{color:var(--blue)}
.ctas{display:flex;gap:.8rem;flex-wrap:wrap}
.hero figure{margin:0;min-width:0}
.hero figure img{width:100%;border-radius:8px}

/* stats */
.stats{display:grid;grid-template-columns:repeat(4,1fr);gap:1.5rem}
@media (max-width:860px){.stats{grid-template-columns:repeat(2,1fr)}}
@media (max-width:440px){.stats{grid-template-columns:1fr}}
.stat{display:grid;gap:.4rem;align-content:start;border-top:3px solid var(--teal);padding-top:1rem;min-width:0}
.stat b{font-family:var(--f-display);font-weight:300;font-size:clamp(2.1rem,4vw,3rem);line-height:1;font-variant-numeric:tabular-nums}
.stat p{font-size:.95rem}

/* split */
.split{display:grid;grid-template-columns:1fr 1fr;gap:clamp(1.5rem,5vw,4rem);align-items:center}
@media (max-width:860px){.split{grid-template-columns:1fr}}
.split > *{min-width:0}
.big{font-family:var(--f-display);font-size:clamp(3.5rem,9vw,6rem);line-height:.95;color:var(--pink)}

/* bars */
.card{background:#fff;border:1px solid var(--line);border-radius:10px;padding:1.4rem;min-width:0}
.card .cap{font-size:.82rem;color:var(--ink-2);margin-top:.9rem}
.hbar{display:grid;grid-template-columns:minmax(0,11rem) 1fr 3.4rem;gap:.7rem;align-items:center;margin-top:.7rem;font-size:.95rem}
.hbar .track{height:16px;background:var(--soft);border-radius:3px;overflow:hidden}
.hbar .fill{display:block;height:100%;background:#9AA6C4;border-radius:3px}
.hbar.hi .fill{background:var(--blue)}
.hbar .v{text-align:right;font-weight:800;font-variant-numeric:tabular-nums}
@media (max-width:440px){.hbar{grid-template-columns:1fr 3rem}.hbar .track{grid-column:1/-1;order:3}}

/* tiles */
.tiles{display:grid;grid-template-columns:repeat(4,1fr);gap:1rem}
@media (max-width:980px){.tiles{grid-template-columns:repeat(2,1fr)}}
@media (max-width:520px){.tiles{grid-template-columns:1fr}}
.tile{display:grid;gap:.5rem;align-content:start;padding:1.3rem;border-radius:10px;background:#fff;border:1px solid var(--line);min-width:0}
.tile .n{font-family:var(--f-display);font-size:2.2rem;line-height:1;color:var(--blue)}
.tile p{font-size:.92rem;color:var(--ink-2)}
.dark .tile{background:rgba(255,255,255,.06);border-color:rgba(255,255,255,.16)}
.dark .tile .n{color:#fff}

/* page links */
.go{display:grid;grid-template-columns:repeat(3,1fr);gap:1rem}
@media (max-width:860px){.go{grid-template-columns:1fr}}
.go a{display:grid;gap:.4rem;padding:1.4rem;border-radius:10px;border:1px solid var(--line);text-decoration:none;color:var(--ink);background:#fff;transition:border-color .15s, transform .15s}
.go a:hover{border-color:var(--blue);transform:translateY(-2px)}
.go a b{font-family:var(--f-display);font-weight:300;font-size:1.2rem;color:var(--blue);letter-spacing:.03em}
.go a span{color:var(--ink-2);font-size:.95rem}
.go a i{font-style:normal;font-weight:800;color:var(--pink);font-size:.85rem;letter-spacing:.08em;text-transform:uppercase}

/* steps */
.steps{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(6,1fr);gap:.7rem;counter-reset:s}
@media (max-width:980px){.steps{grid-template-columns:repeat(3,1fr)}}
@media (max-width:520px){.steps{grid-template-columns:1fr}}
.steps li{counter-increment:s;border:1px solid var(--line);border-radius:8px;padding:1rem;display:grid;gap:.3rem;align-content:start;background:#fff}
.steps li::before{content:counter(s);font-family:var(--f-display);color:var(--ink-2)}
.steps li.focus{border:2px solid var(--pink)}
.steps li small{color:var(--ink-2);font-size:.85rem}

/* figures */
figure.img{margin:0;display:grid;gap:.6rem}
figure.img img{border-radius:8px;border:1px solid var(--line);background:#fff;width:100%}
figure.img figcaption{font-size:.82rem;color:var(--ink-2)}

/* table */
.tablewrap{overflow-x:auto;border:1px solid var(--line);border-radius:10px}
table{border-collapse:collapse;width:100%;min-width:640px;font-size:.95rem}
th,td{text-align:left;padding:.8rem 1rem;border-bottom:1px solid var(--line);vertical-align:top}
th{font-size:.75rem;letter-spacing:.1em;text-transform:uppercase;color:var(--ink-2);background:var(--soft)}
tr.us td{background:#EEF2FB;font-weight:700}
tr:last-child td{border-bottom:0}

/* P cards */
.pgrid{display:grid;grid-template-columns:repeat(3,1fr);gap:1rem}
@media (max-width:980px){.pgrid{grid-template-columns:repeat(2,1fr)}}
@media (max-width:620px){.pgrid{grid-template-columns:1fr}}
.p{border:1px solid var(--line);border-radius:10px;padding:1.4rem;display:grid;gap:.6rem;align-content:start;background:#fff}
.p .pid{font-family:var(--f-display);color:var(--pink);font-size:1.4rem}
.p q{font-weight:800;font-size:1.08rem;line-height:1.3}
.p p{font-size:.93rem;color:var(--ink-2)}

/* timeline */
.tl{list-style:none;margin:0;padding:0 0 0 1.4rem;border-left:2px solid var(--line);display:grid;gap:1.3rem}
.tl li{position:relative;display:grid;gap:.15rem}
.tl li::before{content:"";position:absolute;left:calc(-1.4rem - 8px);top:.3rem;width:14px;height:14px;border-radius:50%;background:var(--teal)}
.tl li.next::before{background:#fff;border:2px solid var(--pink)}
.tl .when{font-weight:800;font-size:.8rem;letter-spacing:.1em;text-transform:uppercase;color:var(--ink-2)}

/* team */
.team{display:grid;grid-template-columns:repeat(3,1fr);gap:1rem}
@media (max-width:860px){.team{grid-template-columns:1fr}}
.person{display:grid;gap:.5rem;align-content:start;border:1px solid var(--line);border-radius:10px;padding:1.4rem}
.person .mono{width:64px;height:64px;border-radius:50%;display:grid;place-items:center;background:var(--soft);font-family:var(--f-display);color:var(--blue);font-size:1.3rem}
.person .role{font-weight:800;font-size:.75rem;letter-spacing:.1em;text-transform:uppercase;color:var(--pink)}
.person p{font-size:.93rem;color:var(--ink-2)}
.adv{display:grid;grid-template-columns:repeat(2,1fr);gap:2rem}
@media (max-width:760px){.adv{grid-template-columns:1fr}}
.adv ul{list-style:none;margin:.8rem 0 0;padding:0;display:grid;gap:.45rem}
.adv li{display:flex;justify-content:space-between;gap:1rem;border-bottom:1px solid var(--line);padding-bottom:.45rem;font-size:.95rem}
.adv li span{color:var(--ink-2);text-align:right}
.chips{display:flex;flex-wrap:wrap;gap:.5rem}
.chips span{border:1px solid var(--line);border-radius:999px;padding:.4rem .9rem;font-size:.88rem;color:var(--ink-2)}

/* calculator */
.calc{display:grid;grid-template-columns:1fr 1fr;gap:1rem}
@media (max-width:860px){.calc{grid-template-columns:1fr}}
.calc form{display:grid;gap:.9rem}
.calc label{display:grid;gap:.25rem;font-size:.92rem}
.calc .in{display:flex;align-items:center;gap:.8rem}
.calc input[type=range]{flex:1;accent-color:var(--blue);min-width:0}
.calc output{min-width:4.8rem;text-align:right;font-weight:800;font-variant-numeric:tabular-nums}
.calc .out{background:var(--blue-deep);color:#fff;border-radius:10px;padding:1.4rem;display:grid;gap:1.1rem;align-content:start}
.calc .out b{font-family:var(--f-display);font-weight:300;font-size:clamp(2rem,4vw,2.7rem);line-height:1;display:block;font-variant-numeric:tabular-nums}
.calc .out span{color:#C9D3EE;font-size:.92rem}
.calc .out small{color:#C9D3EE;font-size:.78rem}

/* evidence */
.ev{display:grid;grid-template-columns:repeat(4,1fr);gap:1rem}
@media (max-width:860px){.ev{grid-template-columns:repeat(2,1fr)}}
@media (max-width:440px){.ev{grid-template-columns:1fr}}
.ev div{border-left:3px solid var(--pink);padding:.1rem 0 .1rem 1rem;display:grid;gap:.3rem;align-content:start}
.ev b{font-family:var(--f-display);font-weight:300;font-size:1.5rem;line-height:1.1;color:var(--blue)}
.ev p{font-size:.9rem;color:var(--ink-2)}
.chart svg{width:100%;height:auto;display:block}
.note{font-size:.82rem;color:var(--ink-2)}

/* contact & footer */
.copyline{display:flex;gap:.6rem;align-items:center;flex-wrap:wrap;font-weight:800}
.copyline button{font:inherit;font-size:.8rem;border:1px solid currentColor;background:transparent;color:inherit;border-radius:4px;padding:.25rem .7rem;cursor:pointer}
footer{background:#111A33;color:#B7C1DA;font-size:.85rem}
footer .wrap{padding-block:2.4rem;display:grid;gap:1rem}
footer .refs ol{margin:.4rem 0 0;padding-left:1.2rem;display:grid;gap:.3rem}
footer a{color:#DCE3F5}
footer .fn{display:flex;gap:1.2rem;flex-wrap:wrap}
footer .fn a{text-decoration:none;font-weight:800;font-size:.78rem;letter-spacing:.1em;text-transform:uppercase}
.tiles.three{grid-template-columns:repeat(3,1fr)}
@media (max-width:860px){.tiles.three{grid-template-columns:1fr}}
.dark .tile p,.dark .tile h3{color:#C9D3EE}.dark .tile h3{color:#fff}

/* RACE */
.race{display:grid;gap:1.2rem;margin-top:2rem}
.lane{display:grid;grid-template-columns:9rem 1fr 5rem;gap:1rem;align-items:center}
@media (max-width:560px){.lane{grid-template-columns:1fr 4rem}.lane .track{grid-column:1/-1;order:3}}
.lane .track{height:34px;background:#fff;border:1px solid var(--line);border-radius:6px;overflow:hidden}
.lane .bar{height:100%;width:var(--w);border-radius:6px;background:#9AA6C4}
.lane.rb .bar{background:linear-gradient(90deg,var(--violet),var(--pink))}
.race.run .bar{animation:grow 2.4s cubic-bezier(.2,.7,.2,1) both}
@keyframes grow{from{width:0}}
.lane b{font-family:var(--f-display);font-weight:300;font-size:1.3rem;text-align:right}


/* SPORES */
.spores{display:grid;grid-template-columns:1fr 1fr;gap:clamp(1.5rem,4vw,3rem);align-items:center}
@media (max-width:860px){.spores{grid-template-columns:1fr}}
.dish{aspect-ratio:1;max-width:420px;width:100%;margin-inline:auto;border-radius:50%;background:radial-gradient(circle at 40% 35%,#fff,#EEF2FB);border:2px solid var(--line);position:relative;overflow:hidden}
.dish canvas{width:100%;height:100%;display:block}
.logread{font-family:var(--f-display);font-size:clamp(2.6rem,6vw,4.4rem);line-height:1;color:var(--blue);font-variant-numeric:tabular-nums}
.logsteps{display:flex;gap:.4rem;margin-top:1rem}
.logsteps button{font:inherit;font-weight:800;font-size:.85rem;border:1px solid var(--line);background:#fff;border-radius:6px;padding:.45rem .7rem;cursor:pointer;color:var(--ink-2)}
.logsteps button[aria-pressed="true"]{background:var(--blue);color:#fff;border-color:var(--blue)}


.person .photo{width:100%;aspect-ratio:1;object-fit:cover;border-radius:10px;margin-bottom:.4rem}
.crew{display:grid;grid-template-columns:repeat(3,1fr);gap:1.2rem}
@media (max-width:620px){.crew{grid-template-columns:1fr 1fr 1fr;gap:.6rem}}
.crew a{display:grid;gap:.5rem;text-decoration:none;color:var(--ink);text-align:center}
.crew img{width:100%;aspect-ratio:1;object-fit:cover;border-radius:50%;transition:transform .3s}
.crew a:hover img{transform:scale(1.03)}
.crew b{font-weight:700;font-size:1.02rem}
.crew span{color:var(--ink-2);font-size:.88rem}
@media (max-width:620px){.crew b{font-size:.85rem}.crew span{font-size:.75rem}}

.steps.three{grid-template-columns:repeat(3,1fr)}
@media (max-width:620px){.steps.three{grid-template-columns:1fr}}
.tablewrap table th{width:9rem;background:var(--soft)}

/* photo bands */
.photo-band{position:relative;min-height:clamp(380px,62vh,640px);display:grid;align-items:end;color:#fff;background-color:#132A66;background-size:cover;background-position:center;padding-block:clamp(2.5rem,6vw,4.5rem)}
.photo-band::before{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(11,20,48,0) 30%,rgba(11,20,48,.85) 100%)}
.photo-band.left::before{background:linear-gradient(90deg,rgba(11,20,48,.88) 0%,rgba(11,20,48,.55) 40%,rgba(11,20,48,0) 70%)}
@media (max-width:760px){.photo-band.left::before{background:linear-gradient(180deg,rgba(11,20,48,0) 20%,rgba(11,20,48,.9) 85%)}}
.photo-band .wrap{position:relative;width:100%;display:grid;gap:.8rem}
.photo-band h1,.photo-band h2{color:#fff;max-width:18ch;text-shadow:0 2px 20px rgba(0,0,0,.35)}
.photo-band .kicker{color:#7FE3E3}
.photo-band p{color:#E3E9F7;max-width:44ch;font-size:1.1rem}
.photo-band .credit{position:absolute;right:max(16px,env(safe-area-inset-right,0px));bottom:.6rem;font-size:.7rem;color:rgba(255,255,255,.6)}
figure.shot{margin:0}
figure.shot img{width:100%;border-radius:14px;object-fit:cover}

/* newsletter look */
header.top{border-top:6px solid var(--teal)}
.head h2,.head h1{padding-bottom:.7rem;border-bottom:2px solid var(--teal)}
.head.center h2{display:inline-block}
.photo-band .head h2,.photo-band h2,.photo-band h1,.dark .head h2,.p-hero h1,.xray h2,.close h2{border-bottom:0;padding-bottom:0}
.btn{border-radius:4px;font-weight:700}
.tile,.p,.person,.spec,.g4,.go a,.card{border-radius:4px;border:1px solid var(--line);border-left:4px solid var(--teal);background:var(--soft)}
.dark .tile{border-left-color:var(--teal)}
.stat{border-top-color:var(--teal)}
.tile .n,.ev b,.spec b,.stat b,.big,.counter b,.p .pid{font-weight:700!important}
.tablewrap{border-radius:4px}
th{color:var(--teal)!important;background:var(--soft)}
footer{background:#26206B}
.dark,.close{background:#26206B}

/* journey */
nav.main > a[aria-current="page"]{color:var(--teal);box-shadow:inset 0 -3px 0 var(--teal);border-radius:0}
.explore{display:grid;grid-template-columns:repeat(3,1fr);gap:1rem}
@media (max-width:860px){.explore{grid-template-columns:1fr 1fr}}
@media (max-width:520px){.explore{grid-template-columns:1fr}}
.explore a,.nextcard{position:relative;display:grid;gap:.35rem;padding:1.4rem 3rem 1.4rem 1.4rem;background:#fff;border:1px solid var(--line);border-left:4px solid var(--teal);border-radius:4px;text-decoration:none;color:var(--ink);transition:transform .15s,box-shadow .15s}
.explore a:hover,.nextcard:hover{transform:translateY(-2px);box-shadow:0 12px 24px -16px rgba(33,65,149,.4)}
.explore b,.nextcard b{font-size:1.2rem;color:var(--blue)}
.explore a > span:not(.kicker),.nextcard > span:not(.kicker){color:var(--ink-2);font-size:.93rem}
.explore i,.nextcard i{position:absolute;right:1.2rem;top:50%;transform:translateY(-50%);font-style:normal;font-size:1.4rem;color:var(--teal)}
section.next{background:var(--soft);padding-block:2.5rem}
section.next .wrap{display:grid;gap:1.2rem}
.trail{display:flex;flex-wrap:wrap;gap:.4rem;font-size:.85rem}
.trail a{text-decoration:none;color:var(--ink-2);padding:.35rem .7rem;border:1px solid var(--line);border-radius:999px;background:#fff}
.trail a[aria-current="page"]{background:var(--blue);color:#fff;border-color:var(--blue)}
.nextcard{max-width:520px}

/* Stakeholder stories */
.sstories{display:grid;gap:1.2rem}
.sstory{display:grid;grid-template-columns:.9fr 1.6fr;gap:clamp(1rem,3vw,2.5rem);padding:clamp(1.3rem,3vw,2rem);background:#fff;border:1px solid var(--line);border-left:4px solid var(--teal);border-radius:4px;scroll-margin-top:96px}
@media (max-width:800px){.sstory{grid-template-columns:1fr}}
.sstory .who{display:grid;gap:.5rem;align-content:start}
.sstory .pid{font-weight:700;color:var(--teal);letter-spacing:.1em;font-size:.85rem}
.sstory h2{font-size:clamp(1.3rem,2.4vw,1.7rem);color:var(--blue);border:0;padding:0}
.sstory q{font-family:var(--f-display);font-style:italic;color:var(--ink-2);font-size:1.05rem}
.sstory .ba{display:grid;grid-template-columns:1fr 1fr;gap:1rem}
@media (max-width:560px){.sstory .ba{grid-template-columns:1fr}}
.sstory .ba>div{padding:1.1rem;border-radius:4px;display:grid;gap:.4rem;align-content:start}
.sstory .today{background:var(--soft)}
.sstory .today .kicker{color:var(--ink-2)}
.sstory .with{background:#E8F7F9;border:1px solid #BFE6EB}
.sstory .ba p{margin:0;font-size:.98rem}

/* Footer (AIRA-style) */
footer.site{background:#1E1A57;color:#9FB0C4;font-size:.9rem}
footer.site .wrap{padding-block:clamp(2.5rem,5vw,3.5rem) 1.6rem;display:grid;gap:2.2rem}
footer.site a{color:#E6EDF5;text-decoration:none}
footer.site a:hover{color:#7FE3E3}
.f-refs{padding-bottom:2rem;border-bottom:1px solid rgba(255,255,255,.1);font-size:.78rem;color:#7E8EA3}
.f-refs b{display:block;color:#C9D3E0;font-size:.72rem;letter-spacing:.14em;text-transform:uppercase;margin-bottom:.6rem}
.f-refs ol{margin:0;padding-left:1.2rem;display:grid;gap:.3rem;columns:2;column-gap:2.5rem;display:block}
.f-refs li{break-inside:avoid;margin-bottom:.3rem}
.f-refs a{color:#B8C6D6;text-decoration:underline;text-underline-offset:2px}
@media (max-width:760px){.f-refs ol{columns:1}}
.f-main{display:flex;justify-content:space-between;gap:2rem;flex-wrap:wrap;align-items:flex-start}
.f-brand{display:grid;gap:1.1rem;max-width:340px}
.f-brand img{height:40px;width:auto;display:block}
.f-brand p{margin:0;color:#C9D3E0;line-height:1.5}
.f-li{display:grid;grid-template-columns:30px 1fr;gap:.8rem;align-items:start}
.f-li svg{width:30px;height:30px}
.f-li b{display:block;color:#fff;font-weight:600}
.f-li small{display:block;color:#9FB0C4;font-size:.8rem;margin-top:.2rem;line-height:1.45}
.f-nav{display:flex;flex-wrap:wrap;gap:.6rem 1.6rem}
.f-nav a{font-size:.92rem;font-weight:500}
.f-legal{margin:0;padding-top:1.6rem;border-top:1px solid rgba(255,255,255,.1);font-size:.76rem;line-height:1.55;color:#7E8EA3}
.f-bottom{display:flex;justify-content:space-between;gap:1rem;flex-wrap:wrap;font-size:.78rem;color:#7E8EA3}
.f-bottom a{color:#E6EDF5}

/* counters (shared) */
.counters{display:grid;grid-template-columns:repeat(3,1fr);gap:1.5rem}
@media (max-width:760px){.counters{grid-template-columns:1fr}}
.counter{border-top:3px solid var(--teal);padding-top:1rem;display:grid;gap:.4rem;align-content:start}
.counter b{font-family:var(--f-display);font-weight:700;font-size:clamp(2.4rem,5vw,3.6rem);line-height:1;color:var(--blue);font-variant-numeric:tabular-nums}

/* Refined header */
header.top{border-top:3px solid var(--teal);background:rgba(255,255,255,.9);-webkit-backdrop-filter:saturate(1.6) blur(14px);backdrop-filter:saturate(1.6) blur(14px)}
.top .wrap{padding-block:.9rem}
@media (min-width:981px){
 nav.main{margin-left:auto;gap:.4rem}
 .top .wrap>div:last-child{display:none}
 nav.main > a{font-weight:500;font-size:.95rem;color:#2A3A4E;padding:.6rem .8rem}
 nav.main > a:hover{color:var(--teal)}
 nav.main > a[aria-current="page"]{color:var(--blue);font-weight:600}
}

/* photo tiles */
.tile.ph{padding-top:0;overflow:hidden}
.tile.ph img{display:block;max-width:none;width:calc(100% + 2.6rem);margin:0 -1.3rem .8rem;aspect-ratio:4/3;object-fit:cover}

/* Product: annotated spec map */
.glance{overflow:hidden;background:radial-gradient(70% 60% at 50% 55%,#EAF6F8 0%,#fff 70%)}
.spec-map{display:grid;grid-template-columns:1fr minmax(0,1.25fr) 1fr;gap:clamp(1rem,3vw,2.5rem);align-items:center;margin-top:1rem}
.spec-col{list-style:none;margin:0;padding:0;display:grid;gap:clamp(1.4rem,3vw,2.4rem)}
.spec-col li{position:relative;display:grid;gap:.3rem;padding-bottom:.9rem;border-bottom:1px solid var(--line)}
.spec-col li span{font-size:.72rem;font-weight:700;letter-spacing:.16em;text-transform:uppercase;color:var(--teal)}
.spec-col li b{font-family:var(--f-display);font-size:clamp(1.05rem,1.6vw,1.3rem);line-height:1.25;color:var(--blue)}
.spec-col.l li{text-align:right}
.spec-col li::after{content:"";position:absolute;bottom:-4px;width:7px;height:7px;border-radius:50%;background:var(--teal);box-shadow:0 0 0 4px rgba(22,166,181,.15)}
.spec-col.l li::after{right:-4px}.spec-col.r li::after{left:-4px}
.spec-img{position:relative;margin:0}
.spec-img img{position:relative;width:100%;height:auto;border-radius:12px;box-shadow:0 40px 70px -40px rgba(33,65,149,.55)}
.spec-img .ring{position:absolute;inset:-10%;border-radius:50%;border:1px dashed rgba(22,166,181,.45);animation:spin 60s linear infinite}
@media (max-width:860px){
 .spec-map{grid-template-columns:1fr}
 .spec-img{order:-1;max-width:460px;margin-inline:auto}
 .spec-col.l li{text-align:left}
 .spec-col.l li::after{right:auto;left:-4px}
}
@media (prefers-reduced-motion: reduce){.spec-img .ring{animation:none}}
@keyframes spin{to{transform:rotate(360deg)}}

/* Readability for investors: lift small text */
body{font-size:1.0625rem}
.note,.cap{font-size:.95rem!important;color:var(--ink-2)}
.tile p,.p p,.steps small,.sstory .ba p{font-size:1rem!important;line-height:1.5}
.counter p{font-size:1.05rem;line-height:1.5}
.sub{font-size:clamp(1.08rem,1.4vw,1.25rem)}
td,th{font-size:1rem}

/* spec map: more air */
.glance{padding-block:clamp(5rem,10vw,8rem)}
.glance .head{margin-bottom:clamp(3rem,6vw,5rem)}
.spec-map{grid-template-columns:1fr minmax(0,1fr) 1fr;gap:clamp(2.5rem,6vw,6rem);margin-top:0}
.spec-col{gap:clamp(2rem,4vw,3.2rem)}
.spec-col li{padding-bottom:1.2rem}
.spec-img .ring{inset:-14% -8%}
.glance .note{margin-top:clamp(3rem,6vw,4.5rem)!important}
@media (max-width:1100px){
 .spec-map{grid-template-columns:1fr 1fr;gap:2.5rem 3rem}
 .spec-img{grid-column:1/-1;order:-1;max-width:520px;margin:0 auto 2rem}
 .spec-col.l li{text-align:left}
 .spec-col.l li::after{right:auto;left:-4px}
}
@media (max-width:640px){.spec-map{grid-template-columns:1fr}}

/* Challenge: chapter story */
.chap-index{position:sticky;top:calc(env(safe-area-inset-top,0px) + 72px);z-index:20;background:rgba(255,255,255,.92);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border-bottom:1px solid var(--line)}
.chap-index .wrap{display:flex;gap:.4rem 1.8rem;overflow-x:auto;padding-block:.8rem;scrollbar-width:none}
.chap-index a{white-space:nowrap;text-decoration:none;color:var(--ink-2);font-size:.92rem;font-weight:500;display:inline-flex;gap:.45rem;align-items:baseline}
.chap-index a i{font-style:normal;font-size:.75rem;font-weight:700;color:var(--teal);letter-spacing:.08em}
.chap-index a.on{color:var(--blue);font-weight:700}
.chap{padding-block:clamp(4.5rem,9vw,7.5rem);scroll-margin-top:130px}
.chap-grid{display:grid;grid-template-columns:.9fr 1.1fr;gap:clamp(2rem,6vw,5.5rem);align-items:start}
@media (max-width:900px){.chap-grid{grid-template-columns:1fr}}
.chap-head{display:grid;gap:.9rem;align-content:start;position:sticky;top:150px}
@media (max-width:900px){.chap-head{position:static}}
.chap-n{font-family:var(--f-display);font-weight:700;font-size:clamp(3.4rem,7vw,5.5rem);line-height:.9;color:transparent;-webkit-text-stroke:1.5px var(--teal);letter-spacing:-.03em}
.chap h2{font-size:clamp(1.8rem,3.4vw,2.7rem);line-height:1.08;color:var(--blue);border:0;padding:0}
.chap-img{margin:.8rem 0 0}
.chap-img img{width:100%;aspect-ratio:16/10;object-fit:cover;border-radius:6px;display:block}
.ev2{list-style:none;margin:0;padding:0;display:grid}
.ev2 li{display:grid;grid-template-columns:13.5rem 1fr;gap:1.5rem;align-items:baseline;padding:1.6rem 0;border-top:1px solid var(--line)}
.ev2 li:last-child{border-bottom:1px solid var(--line)}
.ev2 b{font-family:var(--f-display);font-weight:700;font-size:clamp(2rem,4vw,3rem);line-height:1;color:var(--blue);letter-spacing:-.02em}
.ev2 p{font-size:1.05rem;line-height:1.5;color:var(--ink)}
@media (max-width:560px){.ev2 li{grid-template-columns:1fr;gap:.5rem}}
.steps.three-col{grid-template-columns:repeat(3,1fr)!important}
@media (max-width:560px){.steps.three-col{grid-template-columns:1fr 1fr!important}}
.forward{text-align:center;background:var(--blue-deep);color:#fff}
.forward .wrap{display:grid;justify-items:center;gap:1rem}
.forward h2{color:#fff;max-width:22ch}
.forward .sub{color:#C9D3E0}
.forward .chap-n{-webkit-text-stroke-color:#7FE3E3}
.forward .kicker{color:#7FE3E3}
.forward .btn{background:#fff;color:var(--blue);border-color:#fff}

/* Education explainer */
.edu{padding-block:clamp(4.5rem,9vw,7rem)}
.levels{list-style:none;margin:2.5rem 0 0;padding:0;display:grid;grid-template-columns:repeat(4,1fr);gap:1.2rem;position:relative}
.levels::before{content:"";position:absolute;left:12%;right:12%;top:75px;height:2px;background:linear-gradient(90deg,var(--line),var(--teal));z-index:0}
@media (max-width:900px){.levels{grid-template-columns:1fr 1fr}.levels::before{display:none}}

.lv{position:relative;z-index:1;display:grid;gap:.45rem;justify-items:center;text-align:center;padding:0 .4rem}
.lv svg{width:150px;height:150px;margin-bottom:.6rem;filter:drop-shadow(0 12px 18px rgba(33,65,149,.12))}
.lv-n{font-size:.72rem;font-weight:700;letter-spacing:.16em;text-transform:uppercase;color:var(--ink-2)}
.lv h3{font-size:1.45rem;color:var(--blue)}
.lv p{font-size:1rem;color:var(--ink);max-width:24ch}
.lv small{font-size:.9rem;color:var(--ink-2)}
.lv.top .lv-n{color:var(--teal)}
.lv.top h3{color:var(--teal)}
.legend2{display:flex;gap:1.6rem;justify-content:center;margin-top:2rem;font-size:.9rem;color:var(--ink-2)}
.legend2 span{display:inline-flex;align-items:center;gap:.5rem}
.legend2 i{display:inline-block}
.legend2 i.g{width:12px;height:8px;border-radius:50%;background:#E01585}
.legend2 i.s{width:12px;height:12px;border-radius:50%;background:#214195;box-shadow:inset 0 0 0 3px #214195,inset 0 0 0 6px #7FE3E3}
.legend2 i.bar{width:22px;height:10px;border-radius:3px;background:var(--blue)}
.legend2 i.bar.air{background:repeating-linear-gradient(45deg,#E01585 0 4px,#F7C3DF 4px 8px)}
.takeaway{margin:2.4rem auto 0;text-align:center;font-family:var(--f-display);font-size:clamp(1.4rem,2.6vw,2rem);color:var(--blue);max-width:30ch}
.takeaway b{color:var(--teal)}
.edu-fig{margin:0}
.edu-fig svg{width:100%;height:auto;display:block}
.edu-fig.rings{max-width:400px;margin-inline:auto}
.tiers{list-style:none;margin:0;padding:0;display:grid;gap:.8rem}
.tiers li{display:grid;grid-template-columns:1fr auto;gap:.2rem 1rem;padding:1.1rem 1.2rem;border-radius:4px;background:#fff;border:1px solid var(--line);border-left:6px solid}
.tiers li.t3{border-left-color:#214195}.tiers li.t2{border-left-color:#7FD3DC}.tiers li.t1{border-left-color:#DCE6EE}
.tiers b{font-size:1.1rem;color:var(--blue)}
.tiers span{grid-column:1;color:var(--ink-2);font-size:.98rem}
.tiers em{grid-row:1/3;grid-column:2;align-self:center;font-style:normal;font-weight:700;font-size:.9rem;color:var(--teal);text-align:right;max-width:16ch}
@media (max-width:520px){.tiers li{grid-template-columns:1fr}.tiers em{grid-row:auto;grid-column:1;text-align:left}}
.proofs{display:grid;grid-template-columns:repeat(3,1fr);gap:1.2rem}
@media (max-width:860px){.proofs{grid-template-columns:1fr}}
.proofs>div{display:grid;gap:.5rem;align-content:start;padding:1.6rem;background:var(--soft);border:1px solid var(--line);border-top:4px solid var(--teal);border-radius:4px}
.proofs svg{width:48px;height:48px;margin-bottom:.4rem}
.proofs .when{font-size:.72rem;font-weight:700;letter-spacing:.16em;text-transform:uppercase;color:var(--teal)}
.proofs h3{color:var(--blue);font-size:1.25rem}
.proofs p{font-size:1rem;color:var(--ink)}
.mrace{display:grid;gap:1rem}
.mrow{display:grid;grid-template-columns:15rem 1fr 7.5rem;gap:1.2rem;align-items:center;padding:1.1rem 1.2rem;background:#fff;border:1px solid var(--line);border-radius:4px}
.mrow.us{border:2px solid var(--teal)}
@media (max-width:760px){.mrow{grid-template-columns:1fr auto}.mbar{grid-column:1/-1;grid-row:2}}
.mlab b{display:block;color:var(--blue);font-size:1.05rem}
.mlab span{font-size:.88rem;color:var(--ink-2)}
.mbar{height:14px;background:#EEF3F7;border-radius:7px;overflow:hidden;display:flex}
.mbar i{display:block;height:100%;width:0;transition:width 1.6s cubic-bezier(.2,.7,.2,1)}
.mbar i.run{background:var(--blue)}
.mrow.us .mbar i.run{background:var(--teal);min-width:0}
.mbar i.air{background:repeating-linear-gradient(45deg,#E01585 0 6px,#F7C3DF 6px 12px);transition-delay:.8s}
.mrace.on .mbar i{width:var(--w)}
.mrace.on .mrow.us .mbar i.run{min-width:8px}
.mval{font-family:var(--f-display);font-weight:700;font-size:1.15rem;color:var(--blue);text-align:right;white-space:nowrap}
@media (prefers-reduced-motion: reduce){.mbar i{transition:none}}
.lv{align-content:start}
.edu .split{align-items:center}
@media (max-width:480px){.levels{grid-template-columns:1fr 1fr;gap:2rem .8rem}.lv svg{width:116px;height:116px}.lv h3{font-size:1.2rem}.lv p{font-size:.92rem}.lv small{font-size:.82rem}}

/* Stakeholders: zigzag stories with imagery */
.srows{display:grid;gap:clamp(3rem,7vw,5.5rem);margin-top:1rem}
.srow{display:grid;grid-template-columns:1fr 1.15fr;gap:clamp(1.5rem,5vw,4rem);align-items:center;scroll-margin-top:110px}
.srow:nth-child(even) .sfig{order:2}
@media (max-width:860px){.srow{grid-template-columns:1fr}.srow:nth-child(even) .sfig{order:0}}
.sfig{margin:0;border-radius:8px;overflow:hidden;aspect-ratio:4/3;box-shadow:0 30px 60px -36px rgba(33,65,149,.45)}
.sfig img,.sfig svg{width:100%;height:100%;object-fit:cover;display:block}
.sbody{display:grid;gap:.8rem}
.sbody .pid{font-weight:700;color:var(--teal);letter-spacing:.14em;font-size:.8rem}
.sbody h2{font-size:clamp(1.7rem,3vw,2.4rem);color:var(--blue);border:0;padding:0}
.sbody q{font-family:var(--f-display);font-size:clamp(1.15rem,1.8vw,1.4rem);color:var(--ink-2);font-style:italic;line-height:1.35}
.sbody .ba{display:grid;grid-template-columns:1fr 1fr;gap:1rem;margin-top:.6rem}
@media (max-width:520px){.sbody .ba{grid-template-columns:1fr}}
.sbody .ba>div{padding:1.1rem 1.2rem;border-radius:4px;display:grid;gap:.4rem;align-content:start}
.sbody .today{background:var(--soft);border:1px solid var(--line)}
.sbody .today .kicker{color:var(--ink-2)}
.sbody .with{background:#E8F7F9;border:1px solid #BFE6EB}
.sbody .ba p{margin:0;font-size:1.02rem;line-height:1.5}
/* About: progress image */
.pfig{margin:1.8rem 0 0;border-radius:8px;overflow:hidden;aspect-ratio:4/3;max-width:520px;box-shadow:0 30px 60px -36px rgba(33,65,149,.45)}
.pfig img{width:100%;height:100%;object-fit:cover;object-position:center 35%;display:block}
.li-link{display:inline-flex;align-items:center;gap:.5rem;margin-top:.4rem;font-weight:600;font-size:.92rem;color:var(--blue);text-decoration:none;justify-self:start}
.li-link svg{width:22px;height:22px}
.li-link:hover{color:var(--teal)}

/* Large screens: wider grid, slightly larger type */
@media (min-width:1760px){html{font-size:17px}}
@media (min-width:2200px){html{font-size:18px}}

/* Fluid editorial grid (Heal's-inspired): wide container, consistent gutter */
:root{--gutter:max(16px,env(safe-area-inset-left,0px))}
@media (min-width:761px){:root{--gutter:clamp(24px,3.5vw,64px)}}
.wrap{max-width:1560px;padding-left:var(--gutter);padding-right:var(--gutter)}
@media (min-width:1760px){.wrap{max-width:1640px}}

/* RadBox illustration: transparent, no card styling */
img[src="img/radbox.png"]{box-shadow:none!important;border-radius:0!important;background:transparent!important;object-fit:contain!important;aspect-ratio:auto!important;height:auto!important;animation:none}
.ed-img{background:radial-gradient(60% 55% at 50% 55%,#E3F3F6 0%,rgba(244,248,251,0) 70%)}
.spec-img .ring{display:none}

/* Sources page */
.srcs{list-style:none;margin:1rem 0 0;padding:0;display:grid}
.srcs li{display:grid;grid-template-columns:3rem 1fr;gap:1rem;padding:1.1rem 0;border-top:1px solid var(--line);scroll-margin-top:110px}
.srcs li:last-child{border-bottom:1px solid var(--line)}
.srcs .sn{font-family:var(--f-display);font-weight:700;font-size:1.2rem;color:var(--teal)}
.srcs p{margin:0;color:var(--ink);line-height:1.55}
.srcs a{color:var(--blue)}
.srcs li:target{background:#E8F7F9}

/* Mobile: comfortable tap targets */
@media (max-width:980px){
 .f-nav{display:grid;grid-template-columns:1fr 1fr;gap:0 1.5rem;width:100%}
 .f-nav a{padding:.7rem 0;border-bottom:1px solid rgba(255,255,255,.08)}
 .chap-index a{padding:.6rem 0}
 .li-link{padding:.5rem 0}
}
@media (max-width:560px){#problem .gaps li img{aspect-ratio:16/10!important}#problem .gaps{gap:2.4rem}}
.chap .steps li::before{display:none}

/* News */
.news{list-style:none;margin:1rem 0 0;padding:0;display:grid}
.news li{display:grid;grid-template-columns:8rem 1fr;gap:1.5rem;padding:1.6rem 0;border-top:1px solid var(--line)}
.news li:last-child{border-bottom:1px solid var(--line)}
.news .when{font-size:.78rem;font-weight:700;letter-spacing:.14em;text-transform:uppercase;color:var(--teal);padding-top:.3rem}
.news h3{color:var(--blue);font-size:1.3rem}
.news p{margin:.4rem 0 0;color:var(--ink-2)}
.news .more{margin-top:.8rem}
@media (max-width:560px){.news li{grid-template-columns:1fr;gap:.4rem}}
nav.main > a{white-space:nowrap}
@media (min-width:981px) and (max-width:1200px){nav.main{gap:0}nav.main > a{padding:.6rem .55rem;font-size:.9rem}.top .logo img{height:44px}}

/* Stakeholder key P1–P6 */
.pkey{display:grid;grid-template-columns:repeat(6,1fr);gap:.8rem;margin:0 0 clamp(2.5rem,5vw,4rem)}
@media (max-width:1000px){.pkey{grid-template-columns:repeat(3,1fr)}}
@media (max-width:520px){.pkey{grid-template-columns:repeat(2,1fr)}}
.pkey a{display:grid;gap:.35rem;align-content:start;padding:1rem 1.1rem;background:var(--soft);border:1px solid var(--line);border-radius:6px;text-decoration:none;transition:border-color .2s,transform .2s}
.pkey a:hover{border-color:var(--teal);transform:translateY(-2px)}
.pkey b{font-family:var(--f-display);font-size:1.6rem;line-height:1;color:var(--teal)}
.pkey span{font-weight:600;font-size:.95rem;line-height:1.3;color:var(--blue)}
.proof-rb{margin-top:1.4rem;padding:1rem 1.2rem;background:#E8F7F9;border-left:4px solid var(--teal);border-radius:2px;color:var(--blue)}

/* product steps with real photos */
.steps.three li img{display:block;width:calc(100% + 2rem);max-width:none;margin:-1rem -1rem .9rem;aspect-ratio:4/3;object-fit:cover;border-radius:4px 4px 0 0}
.steps.three li{overflow:hidden}
.steps.three li::before{display:none}
img[src^="img/rb_cut_"]{box-shadow:none!important;border-radius:0!important;background:transparent!important;object-fit:contain!important;aspect-ratio:auto!important;height:auto!important;animation:none;filter:drop-shadow(0 30px 40px rgba(33,65,149,.28))}

/* Lumaegis brand palette (Oct 2026): Blue #214195, Magenta #E51685, Cyan #00B2B2, Cyan-magenta #652F68, Blue-magenta #3A2583, Blue-cyan #117AA4 */
:root{--magenta:#E51685;--cyan:#00B2B2;--cmag:#652F68;--bmag:#3A2583;--bcyan:#117AA4;--brand-grad:linear-gradient(135deg,#214195 0%,#3A2583 60%,#652F68 100%)}
footer.site{background:#1E1A57}

/* Oct 26 feedback */
.chap .waste{margin-top:1rem;padding:.8rem 1rem;background:#FDF1F0;border-left:4px solid #C4312D;border-radius:2px;color:#5A2A28}
.chap .waste b{color:#A8231F}
.forward .fwd-last{margin:0;font-family:var(--f-display);font-weight:700;font-size:clamp(1.6rem,3vw,2.4rem);color:#fff}
.edu-hero{padding-block:clamp(3rem,7vw,5rem)}
.edu-hero .split{align-items:center}
.reach{display:grid;grid-template-columns:repeat(4,1fr);gap:1.2rem;margin-top:1.4rem;align-items:start}
.reach-uv{grid-column:1/4;border:2px dashed #9AA5B4;border-radius:8px;padding:.7rem 1rem;text-align:center;color:var(--ink-2);font-size:.95rem}
.reach-uv b{color:var(--ink)}
.reach-rb{grid-column:4;display:grid;justify-items:center;gap:.4rem;padding:.6rem;border:2px solid var(--cyan);border-radius:8px;background:#E6F7F7;text-align:center;font-size:.95rem;color:var(--blue)}
.reach-rb img{width:80%;height:auto}
@media (max-width:900px){.reach{grid-template-columns:1fr 1fr}.reach-uv{grid-column:1/2}.reach-rb{grid-column:2}}
.size-cmp{display:flex;align-items:center;gap:1rem;margin-top:1rem;color:var(--ink-2);font-size:.95rem}
.size-cmp svg{width:120px;flex:none}
.size-cmp b{color:var(--blue)}
.tiles.five{grid-template-columns:repeat(5,1fr)}
@media (max-width:1100px){.tiles.five{grid-template-columns:repeat(3,1fr)}}
@media (max-width:640px){.tiles.five{grid-template-columns:1fr 1fr}}
.calc select{font:inherit;padding:.45rem .6rem;border:1px solid var(--line);border-radius:6px;background:#fff;color:var(--ink);width:100%}
.out .pair{display:grid;grid-template-columns:1fr 1fr;gap:1rem}
.tl li p{margin:.15rem 0 0;font-size:.92rem;color:var(--ink-2)}

/* advisors as cards */
.agrp{font-size:1rem;letter-spacing:.06em;text-transform:uppercase;color:var(--muted,#5E5E5E);margin:2.2rem 0 1rem}
.agrid{display:grid;grid-template-columns:repeat(auto-fill,minmax(250px,1fr));gap:1rem}
.acard{display:flex;gap:1rem;align-items:center;background:#fff;border:1px solid #E2E6EE;border-radius:14px;padding:1rem}
.acard img,.acard .ini{width:72px;height:72px;border-radius:50%;flex:none;object-fit:cover}
.acard .ini{display:grid;place-items:center;background:linear-gradient(135deg,#214195,#3A2583);color:#fff;font-weight:800;font-size:1.25rem;letter-spacing:.04em}
.acard h3{font-size:1.02rem;margin:0 0 .15rem}
.acard p{margin:0;color:#5E5E5E;font-size:.92rem}
.acard .li-link{margin-top:.45rem}
/* contact */
.copyline.big a{color:#fff;font-size:clamp(1.3rem,3vw,1.9rem);font-weight:700;text-decoration:none;border-bottom:2px solid #00B2B2}
/* legal */
.f-bottom{display:flex;justify-content:space-between;flex-wrap:wrap;gap:.6rem 1.5rem}
.f-lg{display:flex;gap:1.2rem}.f-lg a{color:inherit;opacity:.8;text-decoration:none}.f-lg a:hover{opacity:1;text-decoration:underline}
.legal{max-width:780px}.legal h2{font-size:1.25rem;margin:2rem 0 .5rem}.legal p{line-height:1.65;color:#2B2B2B}
.legal .upd{color:#5E5E5E;margin:0}.legal .draft{display:inline-block;background:#FCE7F1;color:#8A0E4E;border-radius:6px;padding:.3rem .7rem;font-size:.9rem;font-weight:600}
.legal p+p{margin-top:.8rem}

/* education hero: rebuilt four-levels pyramid */
.edu-hero .split{grid-template-columns:.8fr 1.5fr}
@media (max-width:860px){.edu-hero .split{grid-template-columns:1fr}}
.pyr{margin:0;display:grid;grid-template-columns:auto 1fr;gap:1rem}
.pyr-axis{position:relative;width:28px;display:flex;justify-content:center}
.pyr-axis::before{content:"";position:absolute;top:6px;bottom:0;left:50%;width:2px;background:#214195;transform:translateX(-50%)}
.pyr-axis::after{content:"";position:absolute;top:0;left:50%;transform:translateX(-50%);border:7px solid transparent;border-bottom:11px solid #214195;border-top:0}
.pyr-axis span{writing-mode:vertical-rl;transform:rotate(180deg);background:var(--bg,#fff);position:relative;padding:.6rem 0;font-size:.78rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:#214195;align-self:center}
.pyr ol{list-style:none;margin:0;padding:0;display:grid;gap:6px}
.pyr li{display:grid;grid-template-columns:minmax(120px,42%) 1fr;gap:1.4rem;align-items:stretch;min-height:96px}
.pyr li i{display:block}
.pyr li.l4 i{clip-path:polygon(50% 0,50% 0,62.5% 100%,37.5% 100%);background:#214195}
.pyr li.l3 i{clip-path:polygon(37.5% 0,62.5% 0,75% 100%,25% 100%);background:#117AA4}
.pyr li.l2 i{clip-path:polygon(25% 0,75% 0,87.5% 100%,12.5% 100%);background:#00B2B2}
.pyr li.l1 i{clip-path:polygon(12.5% 0,87.5% 0,100% 100%,0 100%);background:#9FDCE0}
.pyr li>div{border-bottom:2px dashed #C9D3E3;padding:.5rem 0 .8rem;display:grid;grid-template-columns:auto 1fr;column-gap:.9rem;align-content:center}
.pyr li:last-child>div{border-bottom:0}
.pyr .k{grid-column:1/-1;font-size:.8rem;font-weight:800;letter-spacing:.1em;text-transform:uppercase;color:#5E6B7A}
.pyr li.l4 .k{color:#E51685}
.pyr b{font-size:1.55rem;line-height:1.2;color:#214195;white-space:nowrap}
.pyr li.l1 b{font-size:1.15rem;align-self:center}
.pyr p{margin:0;color:#3D4654;font-size:.98rem;line-height:1.4;align-self:center}
@media (max-width:560px){.pyr li{grid-template-columns:34% 1fr;gap:.8rem;min-height:84px}.pyr li>div{grid-template-columns:1fr}.pyr b{font-size:1.25rem}.pyr p{font-size:.9rem}}
/* rings: fill the column */
.ringsplit{grid-template-columns:1.1fr 1fr}
@media (max-width:860px){.ringsplit{grid-template-columns:1fr}}
.edu-fig.rings{max-width:600px;width:100%}

/* education graphics: one palette, matching the pyramid (clean → sterilize) */
.levels::before{background:linear-gradient(90deg,#9FDCE0,#00B2B2,#117AA4,#214195);height:3px}
.lv svg>circle:first-child{stroke-width:5}
.lv.l1 svg>circle:first-child{stroke:#9FDCE0}
.lv.l2 svg>circle:first-child{stroke:#00B2B2}
.lv.l3 svg>circle:first-child{stroke:#117AA4}
.lv.l4 svg>circle:first-child{stroke:#214195}
.lv-n{font-weight:800;letter-spacing:.1em;color:#5E6B7A}
.lv.top .lv-n{color:#E51685}
.lv.top h3{color:#214195}
.tiers li.t3{border-left-color:#214195}.tiers li.t2{border-left-color:#00B2B2}.tiers li.t1{border-left-color:#9FDCE0}
.tiers em{color:#5E6B7A}
.tiers li.t3 em{color:#E51685}

/* savings headline */
.save-head{display:flex;flex-wrap:wrap;align-items:baseline;gap:.4rem 1.2rem;margin:0 0 2rem;padding:1.2rem 1.4rem;border-left:6px solid #E51685;background:#fff;border-radius:6px}
.save-head b{font-size:clamp(2rem,4.5vw,3rem);line-height:1;color:#214195}
.save-head span{color:#3D4654;max-width:52ch}
.size-cmp svg{width:150px}
/* way forward: set the answer apart */
.forward .fwd-last{margin-top:1.4rem;padding-top:1.6rem;position:relative;color:#7FE3E3;font-size:clamp(1.8rem,3.6vw,2.8rem)}
.forward .fwd-last::before{content:"";position:absolute;top:0;left:50%;width:72px;height:4px;border-radius:2px;background:#E51685;transform:translateX(-50%)}
.forward .fwd-last b{color:#FF5CAD}
.forward .fwd-last{line-height:1.2}
/* product: footprint */
.sizesplit{grid-template-columns:1fr 1.15fr}
@media (max-width:860px){.sizesplit{grid-template-columns:1fr}}
.dims{margin:1.6rem 0 0;display:grid;gap:1rem}
.dims div{border-left:5px solid #214195;padding:.2rem 0 .2rem 1rem}
.dims div+div{border-left-color:#C9D3E3}
.dims dt{font-size:.8rem;font-weight:800;letter-spacing:.1em;text-transform:uppercase;color:#5E6B7A}
.dims dd{margin:.2rem 0 0;font-size:1.5rem;font-weight:700;color:#214195}
.dims div+div dd{color:#3D4654;font-size:1.25rem}
.dims small{display:block;font-size:.9rem;font-weight:400;color:#5E6B7A}
.size-fig{margin:0}.size-fig svg{width:100%;height:auto;display:block}
.size-fig figcaption{font-size:.85rem;color:#5E6B7A;margin-top:.5rem;text-align:center}
/* legal pages, full versions */
.legal .lead{font-size:1.15rem;color:#3D4654;margin:1rem 0 0;line-height:1.6}
.legal .ltoc{margin:2rem 0 1rem;padding:1.2rem 1.4rem;background:#F2F5FA;border-radius:10px}
.legal .ltoc b{font-size:.8rem;letter-spacing:.1em;text-transform:uppercase;color:#5E6B7A}
.legal .ltoc ol{margin:.6rem 0 0;padding-left:1.3rem;columns:2;column-gap:2rem}
@media (max-width:600px){.legal .ltoc ol{columns:1}}
.legal .ltoc li{margin:.2rem 0;break-inside:avoid}.legal .ltoc a{color:#214195;text-decoration:none}.legal .ltoc a:hover{text-decoration:underline}
.legal h2{scroll-margin-top:100px;padding-top:.6rem;border-top:1px solid #E2E6EE;margin-top:2.2rem}
.legal h2 span{color:#00B2B2;margin-right:.2rem}
.legal h3{font-size:1.05rem;margin:1.3rem 0 .3rem;color:#214195}
.legal ul{margin:.6rem 0;padding-left:1.3rem;line-height:1.6;color:#2B2B2B}.legal li{margin:.3rem 0}
/* contact form */
.contactsplit{align-items:start}
.cform{display:grid;gap:1rem;background:rgba(255,255,255,.06);border:1px solid rgba(255,255,255,.16);border-radius:14px;padding:clamp(1.2rem,3vw,2rem)}
.cform label{display:grid;gap:.35rem;font-size:.9rem;font-weight:600;color:#fff}
.cform .opt{font-weight:400;color:#C9D3EE}
.cform input,.cform select,.cform textarea{font:inherit;font-weight:400;font-size:1rem;color:#1B1B1B;background:#fff;border:1px solid #C9D3E3;border-radius:8px;padding:.7rem .8rem;width:100%;box-sizing:border-box}
.cform input:focus,.cform select:focus,.cform textarea:focus{outline:3px solid #00B2B2;outline-offset:1px}
.cform .row2{display:grid;grid-template-columns:1fr 1fr;gap:1rem}
@media (max-width:560px){.cform .row2{grid-template-columns:1fr}}
.cform .hp{position:absolute;left:-9999px;width:1px;height:1px;overflow:hidden}
.cform .fine{font-size:.8rem;line-height:1.5;color:#C9D3EE;margin:0}
.cform .fine a{color:#7FE3E3}
.cform .btn{justify-self:start;background:#fff;color:#214195;border:0;border-radius:8px;padding:.85rem 1.6rem;font-weight:700;cursor:pointer}
.cform .btn:disabled{opacity:.6}
.cform .fstatus{margin:0;color:#7FE3E3;font-weight:600;min-height:1.2em}.cform .fstatus a{color:#fff}

/* ===== whole-site mobile pass ===== */
.lsec>summary{list-style:none;cursor:pointer}
.lsec>summary::-webkit-details-marker{display:none}
.tl-more{display:none}
@media (max-width:600px){
 section{padding-block:2.6rem}
 .head{margin-bottom:1.4rem}
 /* product: three steps as a swipe row */
 .steps.three{display:flex!important;overflow-x:auto;scroll-snap-type:x mandatory;gap:.8rem;padding-bottom:.6rem;margin-inline:-16px;padding-inline:16px;scrollbar-width:none}
 .steps.three::-webkit-scrollbar{display:none}
 .steps.three li{flex:0 0 78%;scroll-snap-align:start}
 /* product: at a glance — drop the repeated photo, tighten the list */
 .glance{padding-block:2.6rem!important}
 .spec-map .spec-img{display:none!important}
 .spec-map{gap:1rem!important}
 .spec-col{gap:.9rem!important}
 .spec-col li{padding-bottom:.7rem!important}
 /* product: who it's for, two per row */
 .tiles.five{grid-template-columns:1fr 1fr!important;gap:.7rem}
 .tiles.five .tile{padding:0 .8rem .9rem}
 .tiles.five .tile.ph img{width:calc(100% + 1.6rem);margin:0 -.8rem .6rem;aspect-ratio:3/2}
 .tiles.five h3{font-size:.98rem}
 .tiles.five p{font-size:.85rem!important}
 /* challenge: shorter chapter photos */
 .chap-img img{aspect-ratio:16/9}
 /* education */
 .edu-fig.rings{max-width:280px}
 .dish{max-width:280px}
 /* stakeholders: smaller photos, today / with side by side */
 .srows{gap:2.4rem!important}
 .sfig img{aspect-ratio:16/9!important;height:auto!important}
 .srow .ba{grid-template-columns:1fr 1fr!important;gap:.6rem!important}
 .srow .ba>div{padding:.8rem!important}
 .srow .ba p{font-size:.9rem!important}
 .srow q{font-size:1rem}
 /* about: team as compact cards */
 .person{grid-template-columns:84px 1fr;column-gap:1rem;align-items:center;padding:1rem}
 .person .photo{grid-row:1/3;width:84px;margin:0;border-radius:50%}
 .person .role{align-self:end}
 .person h3{align-self:start;margin:0}
 .person p,.person .li-link{grid-column:1/-1}
 /* about: advisors two per row */
 .agrid{grid-template-columns:1fr 1fr!important;gap:.6rem}
 .acard{flex-direction:column;align-items:flex-start;gap:.5rem;padding:.8rem}
 .acard img,.acard .ini{width:48px;height:48px;font-size:.95rem}
 .acard h3{font-size:.92rem}.acard p{font-size:.82rem}
 /* about: timeline shows recent items until expanded */
 .tl{gap:1rem}
 .tl.short li.old{display:none}
 .tl-more{display:inline-block;margin:0 0 1rem 1.4rem;font:inherit;font-weight:700;font-size:.9rem;color:var(--blue);background:none;border:1px solid var(--line);border-radius:999px;padding:.5rem 1rem;cursor:pointer}
 /* home: workflow shows step names only */
 .wf-col li span{display:none}
 .wf-col li{padding:.6rem .8rem;align-items:center}
 .wf-col ol{gap:.45rem}
 /* news */
 .news{gap:1.2rem}
 /* legal: tap a heading to open its section */
 .legal .ltoc{display:none}
 .lsec{border-top:1px solid #E2E6EE}
 .lsec>summary{display:flex;align-items:center;justify-content:space-between;gap:1rem;padding:.9rem 0}
 .lsec>summary::after{content:"+";font-size:1.4rem;color:#214195;line-height:1}
 .lsec[open]>summary::after{content:"\2013"}
 .legal .lsec h2{border-top:0;margin:0;padding:0;font-size:1.05rem}
 .lsec>*:last-child{margin-bottom:1rem}
}
@media (max-width:600px){
 .spec-map{grid-template-columns:1fr!important}
 .spec-col{grid-template-columns:1fr 1fr!important;column-gap:1rem!important}
 .spec-col li::after{display:none}
 .spec-col li b{font-size:.98rem!important}
 .spec-map .spec-col.l{margin-bottom:0}
 .pfig img{aspect-ratio:16/9;object-fit:cover;width:100%}
 .news li{padding-block:1rem!important}
 .news p{font-size:.95rem}
}
@media (max-width:600px){.pfig{aspect-ratio:16/9;margin-top:1.2rem}}
