/*
  Yanthra Labs website — v3, aligned with the MeetIQ360 product site.
  Layout: soft-grid hero with glow, bold display headings with a serif gradient accent,
  live product panels, tabbed suite bento, rounded cards, navy pill CTAs.
*/
:root{
  --navy:#0f2557; --navy-2:#1b3a80; --cyan:#29abe2; --blue:#1a6fd1; --gold:#c9a227;
  --bg:#f8f9fc; --surface:#ffffff; --surface-2:#f3f6fb; --sunk:#eef2f8;
  --ink:#0f1b3d; --text:#334061; --muted:#66738f; --faint:#98a3b8;
  --line:#e4e9f2; --line-2:#d3dbe8;
  --grid:rgba(15,37,87,.045); --glow-a:rgba(41,171,226,.20); --glow-b:rgba(26,111,209,.14);
  --pill-bg:#ffffff; --btn:#0f2557; --btn-fg:#ffffff; --btn-hover:#1b3a80;
  --ok:#14915f; --ok-bg:#e5f6ee; --warn:#b7791f; --warn-bg:#fdf3e1; --crit:#c8412e; --crit-bg:#fdecea; --info:#1a6fd1; --info-bg:#e7f1fd;
  --shadow:0 1px 2px rgba(15,27,61,.04),0 12px 32px -12px rgba(15,27,61,.14);
  --shadow-lg:0 2px 4px rgba(15,27,61,.04),0 30px 70px -24px rgba(15,37,87,.32);
  --accent-grad:linear-gradient(95deg,#29abe2 0%,#1a6fd1 55%,#0f2557 100%);
  --f-display:"Plus Jakarta Sans",Manrope,system-ui,-apple-system,"Segoe UI",sans-serif;
  --f-serif:Gloock,Georgia,"Times New Roman",serif;
  --f-body:Manrope,"Segoe UI",system-ui,-apple-system,sans-serif;
  --f-mono:"JetBrains Mono",ui-monospace,"SFMono-Regular",Menlo,monospace;
  --r-lg:22px; --r-md:16px; --r-sm:10px;
  --wrap:1240px;
  padding-top:env(safe-area-inset-top,0px); padding-bottom:env(safe-area-inset-bottom,0px);
}

:root[data-yl="dark"]{
  --bg:#070f24; --surface:#0d1833; --surface-2:#111f40; --sunk:#0a1430;
  --ink:#eef2fa; --text:#c4cde0; --muted:#8e9bb7; --faint:#5f6d8c;
  --line:#1b2a4d; --line-2:#26385f;
  --grid:rgba(255,255,255,.035); --glow-a:rgba(41,171,226,.16); --glow-b:rgba(26,111,209,.16);
  --pill-bg:#0d1833; --btn:#29abe2; --btn-fg:#04182f; --btn-hover:#55bfe9;
  --ok:#43c991; --ok-bg:rgba(67,201,145,.12); --warn:#e6b04f; --warn-bg:rgba(230,176,79,.12); --crit:#f07867; --crit-bg:rgba(240,120,103,.12); --info:#63b3ff; --info-bg:rgba(99,179,255,.12);
  --shadow:0 1px 2px rgba(0,0,0,.3),0 12px 32px -12px rgba(0,0,0,.6);
  --shadow-lg:0 2px 4px rgba(0,0,0,.3),0 30px 70px -24px rgba(0,0,0,.8);
  --accent-grad:linear-gradient(95deg,#6fd0f5 0%,#3c95ef 60%,#8fb4ff 100%);
  color-scheme:dark}

*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;background:var(--bg);color:var(--text);font-family:var(--f-body);font-size:16.5px;line-height:1.65;-webkit-font-smoothing:antialiased;overflow-x:hidden}
img{max-width:100%}
[hidden]{display:none!important}
@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{animation:none!important;transition:none!important}}
h1,h2,h3,h4{font-family:var(--f-display);color:var(--ink);margin:0;text-wrap:balance;font-weight:800;letter-spacing:-.03em;line-height:1.05}
p{margin:0}
a{color:var(--info)}
:focus-visible{outline:2px solid var(--cyan);outline-offset:3px;border-radius:8px}
.wrap{max-width:var(--wrap);margin:0 auto;padding-inline:28px}
@media (max-width:560px){.wrap{padding-inline:18px}}
.sr{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0)}
.mono{font-family:var(--f-mono);font-variant-numeric:tabular-nums}
.serif{font-family:var(--f-serif);font-weight:400;letter-spacing:-.02em;background:var(--accent-grad);-webkit-background-clip:text;background-clip:text;color:transparent;padding-right:.04em}

/* labels & badges */
.label{font-family:var(--f-mono);font-size:.72rem;letter-spacing:.2em;text-transform:uppercase;color:var(--muted);font-weight:500}
.badge{display:inline-flex;align-items:center;gap:10px;padding:8px 16px;border-radius:999px;background:var(--pill-bg);border:1px solid var(--line);box-shadow:var(--shadow);font-family:var(--f-mono);font-size:.72rem;letter-spacing:.18em;text-transform:uppercase;color:var(--ink);font-weight:500}
.badge svg{width:14px;height:14px;color:var(--cyan)}
.tag{display:inline-flex;align-items:center;padding:4px 11px;border-radius:999px;border:1px solid var(--line-2);font-size:.76rem;color:var(--text);background:var(--surface);font-weight:500}

/* buttons */
.btn{display:inline-flex;align-items:center;justify-content:center;gap:10px;font-family:var(--f-display);font-size:.95rem;font-weight:700;padding:14px 24px;border-radius:999px;border:1px solid transparent;text-decoration:none;cursor:pointer;white-space:nowrap;transition:background .18s,transform .18s,box-shadow .18s,border-color .18s;letter-spacing:-.01em}
.btn svg{width:16px;height:16px;transition:transform .18s}
.btn:hover svg.arr{transform:translateX(3px)}
.btn-primary{background:var(--btn);color:var(--btn-fg);box-shadow:0 10px 24px -10px rgba(15,37,87,.55)}
.btn-primary:hover{background:var(--btn-hover)}
.btn-ghost{background:var(--surface);color:var(--ink);border-color:var(--line-2)}
.btn-ghost:hover{border-color:var(--ink)}
.btn-sm{padding:10px 18px;font-size:.88rem}
.actions{display:flex;flex-wrap:wrap;gap:12px;align-items:center}

/* ---------------- Header ---------------- */
.site-header{position:sticky;top:env(safe-area-inset-top,0px);z-index:60;background:var(--bg);border-bottom:1px solid var(--line)}
.site-header .wrap{display:flex;align-items:center;gap:20px;height:72px}
.brand{display:flex;align-items:center;gap:11px;text-decoration:none;color:var(--ink);flex:none}
.brand .mark{width:40px;height:40px;border-radius:50%;background:var(--navy);display:grid;place-items:center;flex:none}
.brand .mark svg{width:22px;height:20px}
.brand b{font-family:var(--f-display);font-weight:800;font-size:1.14rem;letter-spacing:-.02em}
.brand b span{color:var(--cyan)}
.primary-nav{display:flex;align-items:center;gap:2px;margin-left:18px}
.primary-nav > a,.nav-trigger{font-family:var(--f-body);font-size:.95rem;font-weight:600;color:var(--text);text-decoration:none;background:none;border:0;padding:9px 14px;border-radius:999px;cursor:pointer;display:inline-flex;align-items:center;gap:6px}
.primary-nav > a:hover,.nav-trigger:hover,.nav-trigger[aria-expanded="true"]{color:var(--ink);background:var(--sunk)}
.primary-nav > a[aria-current="page"],.nav-trigger.current{color:var(--ink);background:var(--sunk)}
.nav-trigger svg{width:12px;height:12px;transition:transform .2s}
.nav-trigger[aria-expanded="true"] svg{transform:rotate(180deg)}
.header-right{display:flex;align-items:center;gap:10px;margin-left:auto}
.icon-btn{width:42px;height:42px;border-radius:50%;border:1px solid var(--line-2);background:var(--surface);color:var(--ink);display:grid;place-items:center;cursor:pointer}
.icon-btn svg{width:18px;height:18px}
.icon-btn .moon{display:none}
:root[data-yl="dark"] .icon-btn .sun{display:none}
:root[data-yl="dark"] .icon-btn .moon{display:block}

.menu-toggle{display:none;font:inherit;font-weight:700;font-size:.9rem;background:var(--surface);color:var(--ink);border:1px solid var(--line-2);border-radius:999px;padding:9px 16px;cursor:pointer}

.mega{position:absolute;left:0;right:0;top:100%;padding-top:10px}
.mega-inner{max-width:var(--wrap);margin:0 auto;padding-inline:28px}
.mega-card{background:var(--surface);border:1px solid var(--line);border-radius:var(--r-lg);box-shadow:var(--shadow-lg);display:grid;grid-template-columns:1fr 1.5fr 1.1fr 1fr;overflow:hidden}
.mega-col{padding:26px 24px;min-width:0}
.mega-col + .mega-col{border-left:1px solid var(--line)}
.mega-col h2{font-family:var(--f-mono);font-size:.68rem;letter-spacing:.2em;text-transform:uppercase;color:var(--muted);font-weight:500;margin-bottom:12px}
.mega-col ul{list-style:none;margin:0;padding:0;display:grid;gap:4px}
.mega-col.two ul{grid-template-columns:1fr 1fr}
.mega-link{display:flex;gap:12px;align-items:flex-start;padding:10px;border-radius:12px;text-decoration:none;margin-inline:-10px}
.mega-link:hover{background:var(--sunk)}
.mega-link .mi{width:34px;height:34px;border-radius:10px;background:var(--info-bg);color:var(--info);display:grid;place-items:center;flex:none}
.mega-link .mi svg{width:17px;height:17px}
.mega-link b{display:block;font-family:var(--f-display);font-size:.93rem;font-weight:700;color:var(--ink);letter-spacing:-.01em}
.mega-link span{display:block;font-size:.8rem;color:var(--muted);line-height:1.45}
.mega-promo{background:linear-gradient(160deg,var(--navy),#16337a);color:#dfe8fb;display:grid;align-content:space-between;gap:16px}
.mega-promo h2{color:#9fb3da}
.mega-promo p{font-family:var(--f-display);font-weight:700;color:#fff;font-size:1.05rem;line-height:1.3;letter-spacing:-.01em}
.mega-promo a{color:#7fd3f5;font-weight:700;text-decoration:none;font-size:.9rem}

@media (max-width:1080px){
  .menu-toggle{display:inline-block}
  .header-right .btn{display:none}
  .primary-nav{display:none;position:absolute;left:0;right:0;top:100%;flex-direction:column;align-items:stretch;gap:4px;background:var(--bg);border-bottom:1px solid var(--line);padding:12px 18px 22px;margin:0;max-height:calc(100vh - 90px);overflow:auto}
  .primary-nav.open{display:flex}
  .primary-nav > a,.nav-trigger{justify-content:space-between;width:100%;padding:13px 14px}
  .mega{position:static;padding:0}
  .mega-inner{padding:0}
  .mega-card{grid-template-columns:1fr;box-shadow:none}
  .mega-col + .mega-col{border-left:0;border-top:1px solid var(--line)}
  .mega-col.two ul{grid-template-columns:1fr}
  .mega-promo{display:none}
  .primary-nav .btn{margin-top:10px}
}
@media (min-width:1081px){.primary-nav .mobile-only{display:none}}

/* ---------------- Backgrounds ---------------- */
.gridbg{position:relative;isolation:isolate}
.gridbg::before{content:"";position:absolute;inset:0;z-index:-2;background-image:linear-gradient(var(--grid) 1px,transparent 1px),linear-gradient(90deg,var(--grid) 1px,transparent 1px);background-size:56px 56px;mask-image:radial-gradient(ellipse 80% 70% at 50% 30%,#000 40%,transparent 100%);-webkit-mask-image:radial-gradient(ellipse 80% 70% at 50% 30%,#000 40%,transparent 100%)}
.gridbg::after{content:"";position:absolute;inset:0;z-index:-1;background:radial-gradient(520px 380px at 8% 18%,var(--glow-a),transparent 70%),radial-gradient(560px 420px at 96% 86%,var(--glow-b),transparent 70%);pointer-events:none}

/* ---------------- Hero ---------------- */
.hero .wrap{display:grid;grid-template-columns:minmax(0,1.02fr) minmax(0,.98fr);gap:56px;align-items:center;padding-block:84px 96px}
.hero h1{font-size:clamp(2.6rem,5.6vw,4.5rem);margin:26px 0 24px}
.hero .lede{font-size:1.15rem;color:var(--muted);max-width:52ch;line-height:1.65}
.hero .lede b{color:var(--ink);font-weight:700}
.hero .actions{margin-top:34px}
.proof{display:flex;flex-wrap:wrap;gap:10px 26px;margin-top:34px;font-size:.88rem;color:var(--muted)}
.proof span{display:inline-flex;align-items:center;gap:8px}
.proof svg{width:16px;height:16px;color:var(--cyan)}
@media (max-width:1000px){.hero .wrap{grid-template-columns:1fr;padding-block:56px 72px;gap:48px}}

/* ---------------- Live panel ---------------- */
.live-wrap{position:relative;max-width:560px;width:100%;justify-self:end}
.live{background:color-mix(in srgb,var(--surface) 92%,transparent);border:1px solid var(--line);border-radius:26px;box-shadow:var(--shadow-lg);overflow:hidden;backdrop-filter:blur(8px)}
.live::before{content:"";display:block;height:1px;background:linear-gradient(90deg,transparent,var(--cyan),transparent);opacity:.7}
.live-h{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:16px 20px;border-bottom:1px solid var(--line)}
.live-h .lt{display:flex;align-items:center;gap:10px;font-family:var(--f-mono);font-size:.72rem;letter-spacing:.18em;text-transform:uppercase;color:var(--ink);font-weight:500;min-width:0}
.live-h .lt span{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.dot{width:10px;height:10px;border-radius:50%;background:#ef4b5f;box-shadow:0 0 0 4px rgba(239,75,95,.16);flex:none;animation:blink 1.8s infinite}
@keyframes blink{50%{box-shadow:0 0 0 7px rgba(239,75,95,.04)}}
.wave{display:flex;gap:3px;align-items:center;height:18px}
.wave i{width:3px;border-radius:2px;background:var(--cyan);animation:wave 1.2s ease-in-out infinite}
.wave i:nth-child(1){height:40%;animation-delay:-.2s}.wave i:nth-child(2){height:90%;animation-delay:-.5s}.wave i:nth-child(3){height:60%;animation-delay:-.1s}.wave i:nth-child(4){height:100%;animation-delay:-.7s}.wave i:nth-child(5){height:50%;animation-delay:-.3s}.wave i:nth-child(6){height:30%;animation-delay:-.9s}
@keyframes wave{50%{transform:scaleY(.4)}}
.live-meter{padding:16px 20px 6px}
.live-meter .row{display:flex;justify-content:space-between;font-family:var(--f-mono);font-size:.7rem;letter-spacing:.16em;text-transform:uppercase;color:var(--ink);margin-bottom:9px}
.live-meter .row b{font-weight:500;color:var(--muted);letter-spacing:0}
.bar{height:6px;border-radius:6px;background:var(--sunk);overflow:hidden}
.bar i{display:block;height:100%;border-radius:6px;background:linear-gradient(90deg,var(--navy),var(--cyan))}
.live-rows{list-style:none;margin:0;padding:10px 14px 14px;display:grid;gap:4px}
.live-row{display:grid;grid-template-columns:auto minmax(0,1fr) auto;gap:12px;align-items:start;padding:11px 12px;border-radius:14px;border:1px solid transparent;transition:background .45s,border-color .45s,opacity .45s;opacity:.72}
.live-row.on{background:var(--info-bg);border-color:color-mix(in srgb,var(--cyan) 45%,transparent);opacity:1}
.av{width:30px;height:30px;border-radius:50%;display:grid;place-items:center;font-family:var(--f-display);font-weight:700;font-size:.72rem;color:#fff;background:var(--navy);flex:none}
.av.c{background:#2b8fd6}.av.g{background:#b08b1e}.av.s{background:#6c7c9c}
.live-row .who{display:flex;align-items:baseline;gap:8px;font-size:.82rem;font-weight:700;color:var(--ink);font-family:var(--f-display)}
.live-row .who small{font-family:var(--f-mono);font-size:.62rem;letter-spacing:.14em;text-transform:uppercase;color:var(--faint);font-weight:500}
.live-row p{font-size:.92rem;color:var(--text);line-height:1.45;margin-top:2px}
.chip{font-family:var(--f-mono);font-size:.6rem;letter-spacing:.14em;text-transform:uppercase;padding:4px 8px;border-radius:6px;font-weight:600;white-space:nowrap}
.c-ok{background:var(--ok-bg);color:var(--ok)}.c-warn{background:var(--warn-bg);color:var(--warn)}.c-crit{background:var(--crit-bg);color:var(--crit)}.c-info{background:var(--info-bg);color:var(--info)}
.live-stats{display:grid;grid-template-columns:repeat(3,1fr);border-top:1px solid var(--line)}
.live-stats div{padding:16px 18px;min-width:0}
.live-stats div + div{border-left:1px solid var(--line)}
.live-stats b{display:block;font-family:var(--f-display);font-weight:800;font-size:1.6rem;color:var(--ink);letter-spacing:-.03em;line-height:1.1;font-variant-numeric:tabular-nums}
.live-stats span{font-family:var(--f-mono);font-size:.62rem;letter-spacing:.16em;text-transform:uppercase;color:var(--muted)}
.toast{position:absolute;right:-26px;top:38%;background:var(--surface);border:1px solid var(--line);border-radius:16px;box-shadow:var(--shadow-lg);padding:13px 16px;min-width:220px;max-width:260px;transition:transform .5s cubic-bezier(.2,.8,.2,1),opacity .5s}
.toast .tt{display:flex;align-items:center;gap:8px;font-family:var(--f-mono);font-size:.64rem;letter-spacing:.18em;text-transform:uppercase;color:var(--ok);font-weight:600}
.toast .tt svg{width:14px;height:14px}
.toast b{display:block;font-family:var(--f-display);font-size:.9rem;color:var(--ink);margin-top:5px;letter-spacing:-.01em;line-height:1.3}
.toast span{font-family:var(--f-mono);font-size:.68rem;color:var(--muted)}
.toast.pop{transform:translateY(-6px) scale(1.02)}
@media (max-width:1180px){.toast{right:-8px}}
@media (max-width:1000px){.live-wrap{justify-self:stretch;max-width:620px}}
@media (max-width:560px){
  .toast{position:relative;right:auto;top:auto;margin:-18px 14px 0 auto;max-width:none;min-width:0;width:fit-content}
  .live-row{grid-template-columns:auto minmax(0,1fr)}
  .live-row .chip{grid-column:2;justify-self:start}
  .live-stats b{font-size:1.25rem}
  .live-stats div{padding:12px}
  .live-stats span{font-size:.56rem;letter-spacing:.1em}
}

/* ---------------- Stats strip ---------------- */
.stats{border-block:1px solid var(--line);background:var(--surface)}
.stats .wrap{display:grid;grid-template-columns:repeat(4,1fr);gap:24px;padding-block:34px}
.stat b{display:block;font-family:var(--f-display);font-weight:800;font-size:clamp(1.9rem,3vw,2.5rem);color:var(--ink);letter-spacing:-.04em;line-height:1.1}
.stat p{font-weight:600;color:var(--text);font-size:.95rem;margin-top:4px}
.stat small{font-family:var(--f-mono);font-size:.64rem;letter-spacing:.16em;text-transform:uppercase;color:var(--faint)}
@media (max-width:760px){.stats .wrap{grid-template-columns:1fr 1fr;row-gap:26px}}

/* ---------------- Sections ---------------- */
.section{padding-block:110px}
.section.alt{background:var(--surface);border-block:1px solid var(--line)}
.section.tight{padding-block:80px}
@media (max-width:700px){.section{padding-block:72px}.section.tight{padding-block:56px}}
.head{display:grid;gap:18px;max-width:760px;margin-bottom:56px}
.head h2{font-size:clamp(2.1rem,4.4vw,3.4rem)}
.head p{font-size:1.1rem;color:var(--muted);max-width:60ch}
.head.center{margin-inline:auto;text-align:center;justify-items:center}
.head.row{max-width:none;grid-template-columns:minmax(0,1.2fr) minmax(0,1fr);align-items:end;gap:20px 60px}
.head.row > div{display:grid;gap:18px}
@media (max-width:860px){.head.row{grid-template-columns:1fr}}

/* cards */
.card{position:relative;background:var(--surface);border:1px solid var(--line);border-radius:var(--r-lg);padding:30px;box-shadow:var(--shadow);min-width:0;display:flex;flex-direction:column;gap:14px;overflow:hidden}
.card::before{content:"";position:absolute;left:18%;right:18%;top:0;height:1px;background:linear-gradient(90deg,transparent,var(--cyan),transparent);opacity:.55}
.card .ic{width:46px;height:46px;border-radius:14px;background:var(--sunk);color:var(--ink);display:grid;place-items:center}
.card .ic svg{width:21px;height:21px}
.card h3{font-size:1.32rem;letter-spacing:-.025em;line-height:1.2}
.card p{color:var(--muted);font-size:.97rem;line-height:1.6}
.card .tags{display:flex;flex-wrap:wrap;gap:7px;margin-top:auto;padding-top:8px}
.card .num{position:absolute;right:26px;top:26px;font-family:var(--f-mono);font-size:.78rem;color:var(--faint)}
a.card{text-decoration:none;transition:transform .2s,box-shadow .2s,border-color .2s}
a.card:hover{transform:translateY(-3px);border-color:var(--line-2);box-shadow:var(--shadow-lg)}
.card .more{margin-top:auto;font-family:var(--f-display);font-weight:700;font-size:.9rem;color:var(--info);display:inline-flex;align-items:center;gap:6px}
.card .more svg{width:15px;height:15px;transition:transform .2s}
a.card:hover .more svg{transform:translateX(3px)}
.grid3{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:22px}
.grid2{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:22px}
.grid4{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:22px}
@media (max-width:1000px){.grid3,.grid4{grid-template-columns:1fr 1fr}}
@media (max-width:640px){.grid3,.grid2,.grid4{grid-template-columns:1fr}}

/* ---------------- Suite tabs + bento ---------------- */
.tabs{display:inline-flex;gap:4px;padding:5px;border-radius:999px;background:var(--surface);border:1px solid var(--line);box-shadow:var(--shadow);margin-bottom:34px;flex-wrap:wrap}
.tab{font-family:var(--f-display);font-weight:700;font-size:.92rem;border:0;background:transparent;color:var(--muted);padding:10px 20px;border-radius:999px;cursor:pointer;display:inline-flex;gap:8px;align-items:center}
.tab svg{width:16px;height:16px}
.tab[aria-selected="true"]{background:var(--btn);color:var(--btn-fg)}
.bento{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:20px}
.bento .feature{grid-column:span 4;display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:24px;align-items:center;background:linear-gradient(150deg,var(--navy) 0%,#163378 70%,#1f4aa0 100%);border-color:transparent;color:#d6e1f6}
.bento .feature h3{color:#fff;font-size:1.7rem}
.bento .feature p{color:#b8c7e6}
.bento .feature .ic{background:rgba(255,255,255,.1);color:#7fd3f5}
.bento .feature .tag{background:rgba(255,255,255,.06);border-color:rgba(255,255,255,.18);color:#dfe8fb}
.bento .feature .more{color:#7fd3f5}
.bento .side{grid-column:span 2}
.bento .third{grid-column:span 2}
.bento .half{grid-column:span 3}
.mini{background:rgba(255,255,255,.06);border:1px solid rgba(255,255,255,.12);border-radius:16px;padding:14px;display:grid;gap:8px;min-width:0}
.mini .mrow{display:flex;justify-content:space-between;gap:8px;font-size:.8rem;color:#dfe8fb;align-items:center}
.mini .mrow span:first-child{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.mini .bar{background:rgba(255,255,255,.1)}
.mini .bar i{background:linear-gradient(90deg,#29abe2,#8fd8f7)}
@media (max-width:1000px){.bento{grid-template-columns:1fr 1fr}.bento .feature{grid-column:1/-1}.bento .side,.bento .third,.bento .half{grid-column:span 1}}
@media (max-width:640px){.bento{grid-template-columns:1fr}.bento .feature{grid-template-columns:1fr}.bento .side,.bento .third,.bento .half{grid-column:1/-1}}

/* ---------------- Split / checklist ---------------- */
.split{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:72px;align-items:center}
.split .copy{display:grid;gap:20px}
.split .copy h2{font-size:clamp(2rem,4vw,3.1rem)}
.split .copy > p{color:var(--muted);font-size:1.08rem}
.ticks{list-style:none;margin:6px 0 0;padding:0;display:grid;gap:14px}
.ticks li{display:grid;grid-template-columns:24px 1fr;gap:12px;align-items:start;color:var(--text)}
.ticks li::before{content:"";width:22px;height:22px;border-radius:50%;background:var(--info-bg) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%231a6fd1' stroke-width='3' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M5 12.5l4.5 4.5L19 7.5'/%3E%3C/svg%3E") center/12px no-repeat;margin-top:2px}
.ticks b{color:var(--ink);font-weight:700}
@media (max-width:960px){.split{grid-template-columns:1fr;gap:48px}}

/* scene with glass overlay */
.scene{position:relative;border-radius:28px;overflow:hidden;min-height:440px;box-shadow:var(--shadow-lg);background:
 radial-gradient(120% 80% at 80% 0%,rgba(41,171,226,.55),transparent 60%),
 radial-gradient(90% 70% at 0% 100%,rgba(201,162,39,.35),transparent 60%),
 linear-gradient(160deg,#0f2557 0%,#122c66 45%,#0a1838 100%)}
.scene::before{content:"";position:absolute;inset:0;background-image:linear-gradient(rgba(255,255,255,.06) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.06) 1px,transparent 1px);background-size:44px 44px;mask-image:linear-gradient(180deg,#000,transparent 85%);-webkit-mask-image:linear-gradient(180deg,#000,transparent 85%)}
.scene .pyr{position:absolute;right:-40px;top:-10px;width:62%;opacity:.9}
.glass{position:absolute;left:24px;right:24px;bottom:24px;padding:20px 22px;border-radius:20px;background:rgba(255,255,255,.12);border:1px solid rgba(255,255,255,.26);backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px);color:#fff;display:grid;gap:12px}
.glass .label{color:#d6e2f7}
.glass .g-row{display:grid;gap:6px}
.glass .g-row div{display:flex;justify-content:space-between;font-size:.85rem;font-weight:600}
.glass .g-row .mono{font-size:.8rem}
.glass .bar{background:rgba(255,255,255,.18);height:5px}
.glass .bar i{background:linear-gradient(90deg,#29abe2,#a5e3fa)}

/* steps */
.steps{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:22px;counter-reset:st}
.steps.four{grid-template-columns:repeat(4,minmax(0,1fr))}
.steps.five{grid-template-columns:repeat(5,minmax(0,1fr));gap:16px}
.steps.five .card{padding:24px}
.steps.five .card h3{font-size:1.12rem}
@media (max-width:1100px){.steps.five{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media (max-width:1000px){.steps,.steps.four,.steps.five{grid-template-columns:1fr 1fr}}
@media (max-width:640px){.steps,.steps.four,.steps.five{grid-template-columns:1fr}}

/* marquee */
.marquee{overflow:hidden;border-block:1px solid var(--line);background:var(--surface);padding-block:20px;mask-image:linear-gradient(90deg,transparent,#000 8%,#000 92%,transparent);-webkit-mask-image:linear-gradient(90deg,transparent,#000 8%,#000 92%,transparent)}
.marquee-track{display:flex;gap:14px;width:max-content;animation:slide 48s linear infinite}
.marquee:hover .marquee-track{animation-play-state:paused}
@keyframes slide{to{transform:translateX(-50%)}}
.marquee .tag{font-size:.86rem;padding:8px 16px;gap:8px;white-space:nowrap}
.marquee .tag svg{width:15px;height:15px;color:var(--cyan)}
@media (prefers-reduced-motion:reduce){.marquee-track{flex-wrap:wrap;width:auto;justify-content:center}}

/* deploy cards */
.deploy .card h3{font-size:1.2rem}
.deploy .fit{border-top:1px solid var(--line);padding-top:14px;margin-top:auto;font-size:.88rem;color:var(--text)}
.deploy .fit b{color:var(--info);font-weight:700}

/* dark spotlight */
.spot{border-radius:32px;background:radial-gradient(70% 90% at 100% 0%,rgba(41,171,226,.35),transparent 60%),linear-gradient(150deg,#0b1a40,#0f2557 60%,#132f6c);color:#c9d6ef;padding:64px;display:grid;grid-template-columns:minmax(0,1fr) minmax(0,.9fr);gap:56px;align-items:center;position:relative;overflow:hidden;box-shadow:var(--shadow-lg)}
.spot h2{color:#fff;font-size:clamp(2rem,4vw,3rem)}
.spot .serif{background:linear-gradient(95deg,#7fd3f5,#b9e6ff);-webkit-background-clip:text;background-clip:text;color:transparent}
.spot .label{color:#8fa6cf}
.spot p{color:#b5c4e2;font-size:1.06rem}
.spot .copy{display:grid;gap:18px}
.spot .btn-primary{background:#29abe2;color:#04182f}
.spot .btn-ghost{background:transparent;color:#fff;border-color:rgba(255,255,255,.3)}
.orb{width:84px;height:84px;border-radius:50%;margin:0 auto;display:grid;place-items:center;background:radial-gradient(circle at 35% 30%,rgba(127,211,245,.5),rgba(41,171,226,.15));border:1px solid rgba(127,211,245,.45);box-shadow:0 0 60px rgba(41,171,226,.45)}
.orb .wave i{background:#fff}
.chat{background:rgba(255,255,255,.06);border:1px solid rgba(255,255,255,.14);border-radius:24px;padding:26px;display:grid;gap:14px}
.bubble{border-radius:16px;padding:12px 15px;font-size:.92rem;line-height:1.5}
.bubble small{display:block;font-family:var(--f-mono);font-size:.6rem;letter-spacing:.18em;text-transform:uppercase;margin-bottom:4px;opacity:.75}
.bubble.me{background:rgba(255,255,255,.1);color:#e8eefb}
.bubble.ai{background:#fff;color:#14234a}
.bubble.ai small{color:#1a6fd1;opacity:1}
.listen{display:flex;align-items:center;gap:8px;font-family:var(--f-mono);font-size:.64rem;letter-spacing:.18em;text-transform:uppercase;color:#8fe3bd;justify-content:center}
.listen i{width:7px;height:7px;border-radius:50%;background:#43c991}
@media (max-width:960px){.spot{grid-template-columns:1fr;padding:40px 26px;border-radius:24px}}

/* CTA panel */
.cta{border-radius:32px;padding:72px 56px;text-align:center;position:relative;overflow:hidden;background:radial-gradient(60% 90% at 50% 0%,rgba(41,171,226,.45),transparent 70%),linear-gradient(160deg,#0f2557,#0b1c46);color:#c9d6ef;display:grid;justify-items:center;gap:18px;box-shadow:var(--shadow-lg)}
.cta::before{content:"";position:absolute;inset:0;background-image:linear-gradient(rgba(255,255,255,.05) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.05) 1px,transparent 1px);background-size:48px 48px;mask-image:radial-gradient(ellipse at center,#000 30%,transparent 75%);-webkit-mask-image:radial-gradient(ellipse at center,#000 30%,transparent 75%)}
.cta > *{position:relative}
.cta h2{color:#fff;font-size:clamp(2rem,4.4vw,3.4rem);max-width:18ch}
.cta .serif{background:linear-gradient(95deg,#7fd3f5,#d6f1ff);-webkit-background-clip:text;background-clip:text;color:transparent}
.cta p{max-width:52ch;color:#b5c4e2;font-size:1.08rem}
.cta .btn-primary{background:#fff;color:#0f2557}
.cta .btn-ghost{background:transparent;color:#fff;border-color:rgba(255,255,255,.3)}
.cta .actions{justify-content:center;margin-top:8px}
@media (max-width:640px){.cta{padding:48px 22px;border-radius:24px}}

/* FAQ */
.faq{display:grid;gap:12px}
.faq details{background:var(--surface);border:1px solid var(--line);border-radius:var(--r-md);box-shadow:var(--shadow)}
.faq summary{list-style:none;cursor:pointer;padding:20px 56px 20px 24px;font-family:var(--f-display);font-weight:700;color:var(--ink);position:relative;font-size:1.04rem;letter-spacing:-.01em}
.faq summary::-webkit-details-marker{display:none}
.faq summary::after{content:"+";position:absolute;right:20px;top:50%;transform:translateY(-50%);width:28px;height:28px;border-radius:50%;background:var(--sunk);display:grid;place-items:center;font-weight:500;color:var(--ink);transition:transform .2s}
.faq details[open] summary::after{transform:translateY(-50%) rotate(45deg)}
.faq details p{padding:0 24px 22px;color:var(--muted);max-width:70ch}

/* page hero */
.page-hero .wrap{padding-block:52px 92px}
.page-hero.split-hero .wrap{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:56px;align-items:center}
.page-hero h1{font-size:clamp(2.4rem,5vw,4rem);margin:22px 0 22px}
.page-hero .lede{font-size:1.12rem;color:var(--muted);max-width:56ch}
.page-hero .actions{margin-top:32px}
.page-hero.text .wrap{max-width:var(--wrap)}
.page-hero.text h1{max-width:16ch}
.crumbs{display:flex;flex-wrap:wrap;gap:8px;font-size:.84rem;color:var(--muted);list-style:none;padding:0;margin:0 0 22px;grid-column:1/-1}
.crumbs li{display:flex;gap:8px;align-items:center}
.crumbs li+li::before{content:"/";color:var(--faint)}
.crumbs a{color:var(--muted);text-decoration:none}
.crumbs a:hover{color:var(--ink)}
.crumbs [aria-current]{color:var(--ink);font-weight:600}
@media (max-width:1000px){.page-hero.split-hero .wrap{grid-template-columns:1fr;gap:44px}}

/* spec table */
.table-card{background:var(--surface);border:1px solid var(--line);border-radius:var(--r-lg);box-shadow:var(--shadow);overflow:hidden}
.table-scroll{overflow-x:auto}
.tbl{width:100%;border-collapse:collapse;font-size:.95rem}
.tbl th,.tbl td{text-align:left;padding:16px 22px;border-bottom:1px solid var(--line);vertical-align:top}
.tbl thead th{font-family:var(--f-mono);font-size:.66rem;letter-spacing:.16em;text-transform:uppercase;color:var(--muted);font-weight:500;background:var(--surface-2)}
.tbl tbody tr:last-child td,.tbl tbody tr:last-child th{border-bottom:0}
.tbl th[scope="row"]{font-family:var(--f-display);font-weight:700;color:var(--ink);white-space:nowrap}
.tbl td{color:var(--text)}
.tbl a{font-family:var(--f-display);font-weight:700;color:var(--ink);text-decoration:none}
.tbl a:hover{color:var(--info)}

/* people / values */
.person{display:flex;gap:16px;align-items:center}
.person .av{width:56px;height:56px;font-size:1rem}
.person b{display:block;font-family:var(--f-display);color:var(--ink);font-size:1.1rem}
.person span{color:var(--muted);font-size:.92rem}

/* contact */
.contact{display:grid;grid-template-columns:minmax(0,.85fr) minmax(0,1.15fr);gap:56px;align-items:start}
.cinfo{display:grid;gap:12px}
.crow{display:flex;gap:14px;align-items:center;padding:18px 20px;background:var(--surface);border:1px solid var(--line);border-radius:var(--r-md);box-shadow:var(--shadow);flex-wrap:wrap}
.crow .ic{width:40px;height:40px;border-radius:12px;background:var(--info-bg);color:var(--info);display:grid;place-items:center;flex:none}
.crow .ic svg{width:18px;height:18px}
.crow div{min-width:0;flex:1}
.crow small{display:block;font-family:var(--f-mono);font-size:.62rem;letter-spacing:.16em;text-transform:uppercase;color:var(--muted)}
.crow strong{font-family:var(--f-display);font-weight:700;color:var(--ink);user-select:all;word-break:break-word}
.copy-btn{font:inherit;font-size:.8rem;font-weight:700;padding:7px 14px;border-radius:999px;border:1px solid var(--line-2);background:var(--surface);color:var(--ink);cursor:pointer}
.next{margin:28px 0 0;padding:0;list-style:none;display:grid;gap:12px;counter-reset:n}
.next li{display:grid;grid-template-columns:30px 1fr;gap:12px;color:var(--muted);counter-increment:n}
.next li::before{content:counter(n);width:30px;height:30px;border-radius:50%;background:var(--sunk);color:var(--ink);font-family:var(--f-display);font-weight:800;font-size:.8rem;display:grid;place-items:center}
form.lead{background:var(--surface);border:1px solid var(--line);border-radius:26px;box-shadow:var(--shadow-lg);padding:36px;display:grid;gap:18px}
.frm2{display:grid;grid-template-columns:1fr 1fr;gap:18px}
.lead label{display:grid;gap:8px;font-family:var(--f-display);font-size:.86rem;font-weight:700;color:var(--ink)}
.lead input,.lead select,.lead textarea{font:inherit;font-size:.96rem;color:var(--ink);background:var(--bg);border:1px solid var(--line-2);border-radius:12px;padding:13px 15px;width:100%}
.lead input:focus,.lead select:focus,.lead textarea:focus{border-color:var(--cyan);outline:none;box-shadow:0 0 0 4px rgba(41,171,226,.16)}
.lead textarea{min-height:130px;resize:vertical}
.chips-pick{display:flex;flex-wrap:wrap;gap:8px}
.chips-pick input{position:absolute;opacity:0;width:1px;height:1px}
.chips-pick label{display:inline-flex;padding:9px 16px;border-radius:999px;border:1px solid var(--line-2);font-family:var(--f-body);font-weight:600;font-size:.86rem;cursor:pointer;color:var(--text);background:var(--surface)}
.chips-pick input:checked + label{background:var(--btn);color:var(--btn-fg);border-color:var(--btn)}
.chips-pick input:focus-visible + label{outline:2px solid var(--cyan);outline-offset:2px}
.fine{font-size:.84rem;color:var(--muted)}
.form-ok{color:var(--ok);font-weight:600;font-size:.92rem}
.form-err{color:var(--crit);font-weight:600;font-size:.92rem}
@media (max-width:960px){.contact{grid-template-columns:1fr}}
@media (max-width:560px){.frm2{grid-template-columns:1fr}form.lead{padding:22px;border-radius:20px}}

/* footer */
.site-footer{background:#0b1c46;color:#9fb0d2;font-size:.92rem;margin-top:110px}
.rule3{display:flex;height:4px}
.rule3 i:nth-child(1){flex:55;background:#29529f}.rule3 i:nth-child(2){flex:27;background:var(--cyan)}.rule3 i:nth-child(3){flex:18;background:var(--gold)}
.site-footer .wrap{padding-block:64px 30px;display:grid;gap:48px}
.f-grid{display:grid;grid-template-columns:1.6fr 1fr 1fr 1fr 1fr;gap:36px}
.f-grid h2{font-family:var(--f-mono);font-size:.68rem;letter-spacing:.2em;text-transform:uppercase;color:#fff;font-weight:500;margin-bottom:16px}
.f-grid ul{list-style:none;margin:0;padding:0;display:grid;gap:10px}
.f-grid a{color:#9fb0d2;text-decoration:none}
.f-grid a:hover{color:#fff}
.f-brand .brand{color:#fff}
.f-brand .brand .mark{background:#16337a}
.f-brand p{margin-top:18px;max-width:34ch}
.f-values{color:var(--gold);letter-spacing:.22em;font-size:.72rem;font-weight:700;margin-top:20px;font-family:var(--f-display)}
.f-bot{display:flex;flex-wrap:wrap;justify-content:space-between;gap:12px;padding-top:24px;border-top:1px solid rgba(255,255,255,.1);font-size:.8rem}
.f-bot .site{color:var(--cyan)}
@media (max-width:1000px){.f-grid{grid-template-columns:1fr 1fr 1fr}.f-brand{grid-column:1/-1}}
@media (max-width:560px){.f-grid{grid-template-columns:1fr 1fr}}

/* at-a-glance strip on product pages */
.stats.glance .stat b{font-size:1.06rem;letter-spacing:-.01em;line-height:1.35;font-weight:700}
.stats.glance .stat small{display:block;margin-bottom:6px}
.group-h{display:flex;align-items:baseline;justify-content:space-between;gap:16px;flex-wrap:wrap;margin:0 0 22px}
.group-h h3{font-size:1.5rem}
.group-h p{color:var(--muted)}
.group + .group{margin-top:64px}
.quote{font-family:var(--f-display);font-weight:600;font-size:clamp(1.25rem,2.2vw,1.6rem);line-height:1.45;color:#fff;letter-spacing:-.015em}
.mini .mrow span:first-child{flex:1 1 auto}
.mini .mrow .chip,.mini .mrow b{flex:none}
.bento .feature > *{min-width:0}

/* v4: clients, cases, offices */
.clients{background:var(--surface);border-top:1px solid var(--line)}
.clients-h{padding-block:22px 0;text-align:center}
.clients .marquee{border:0;background:transparent;padding-block:16px 24px}
.client{display:inline-flex;align-items:center;gap:10px;padding:10px 20px;border-radius:999px;border:1px solid var(--line);background:var(--bg);white-space:nowrap}
.client svg{width:18px;height:18px;color:var(--cyan)}
.client b{font-family:var(--f-display);font-weight:800;color:var(--ink);font-size:1rem;letter-spacing:-.01em}
.client span{font-size:.82rem;color:var(--muted)}
.case-h{display:flex;justify-content:space-between;align-items:center}
.case .where{display:flex;align-items:center;gap:6px;font-size:.88rem;color:var(--muted);margin-top:-6px}
.case .where svg{width:15px;height:15px;color:var(--cyan)}
.cases .card:nth-child(4),.cases .card:nth-child(5){}
.f-offices h2{margin-bottom:8px}
.f-offices p{font-size:.85rem;line-height:1.5}
.grid3.cases{grid-template-columns:repeat(6,minmax(0,1fr))}
.grid3.cases .card{grid-column:span 2}
.grid3.cases .card:nth-child(-n+2){grid-column:span 3}
@media (max-width:1000px){.grid3.cases{grid-template-columns:1fr 1fr}.grid3.cases .card,.grid3.cases .card:nth-child(-n+2){grid-column:span 1}.grid3.cases .card:nth-child(5){grid-column:1/-1}}
@media (max-width:640px){.grid3.cases{grid-template-columns:1fr}.grid3.cases .card:nth-child(5){grid-column:auto}}
.mini{grid-template-columns:minmax(0,1fr)}
.mini .mrow{min-width:0}

/* ================= v5 home ================= */
.progress{position:fixed;left:0;right:0;top:0;height:3px;z-index:80;pointer-events:none}
.progress i{display:block;height:100%;width:0;background:linear-gradient(90deg,var(--navy),var(--cyan),var(--gold))}
.home-hero h1{font-size:clamp(2.6rem,5.4vw,4.4rem)}
.rot-line{font-family:var(--f-display);font-weight:700;font-size:clamp(1.15rem,2vw,1.45rem);color:var(--ink);margin:-6px 0 18px;letter-spacing:-.015em}
.rot{position:relative;display:inline-grid;vertical-align:bottom}
.rot-word{grid-area:1/1;color:var(--info);opacity:0;transform:translateY(60%);transition:opacity .45s,transform .45s;white-space:nowrap;border-bottom:2px solid color-mix(in srgb,var(--cyan) 50%,transparent)}
.rot-word.on{opacity:1;transform:none}
@media (prefers-reduced-motion:reduce){.rot-word{transition:none}}

.pyr-stage{position:relative;max-width:520px;width:100%;justify-self:center;aspect-ratio:440/420}
.pyr-svg{width:100%;height:auto;display:block;overflow:visible;animation:float 7s ease-in-out infinite}
@keyframes float{50%{transform:translateY(-10px)}}
.pyr-gap{stroke:var(--bg)}
.face polygon{transition:filter .3s,opacity .3s}
.pyr-stage.dim .face polygon{opacity:.45}
.pyr-stage.dim .face.hot polygon{opacity:1;filter:drop-shadow(0 10px 24px rgba(41,171,226,.55))}
.face-tag{position:absolute;display:grid;gap:2px;padding:12px 16px;background:var(--surface);border:1px solid var(--line);border-radius:16px;box-shadow:var(--shadow-lg);text-decoration:none;min-width:0;transition:transform .25s,border-color .25s}
.face-tag i{position:absolute;width:10px;height:10px;border-radius:50%;background:var(--cyan);box-shadow:0 0 0 5px rgba(41,171,226,.18)}
.face-tag b{font-family:var(--f-display);font-weight:800;color:var(--ink);font-size:1rem;letter-spacing:-.01em}
.face-tag span{font-size:.76rem;color:var(--muted);white-space:nowrap}
.face-tag:hover,.face-tag.hot{transform:translateY(-3px);border-color:var(--cyan)}
.t-edu{left:-4%;top:36%}.t-edu i{right:-18px;top:18px}
.t-hc{right:-6%;top:22%}.t-hc i{left:-18px;top:18px}
.t-biz{left:30%;bottom:-2%}.t-biz i{left:50%;top:-18px;margin-left:-5px}
@media (max-width:1180px){.t-edu{left:0}.t-hc{right:0}}
@media (max-width:560px){.face-tag{padding:9px 12px}.face-tag span{display:none}.t-biz{left:28%}}

.chapters{position:sticky;top:calc(env(safe-area-inset-top,0px) + 72px);z-index:40;background:color-mix(in srgb,var(--bg) 88%,transparent);backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);border-bottom:1px solid var(--line)}
.chapters .wrap{display:flex;gap:6px;overflow-x:auto;padding-block:10px;scrollbar-width:none}
.chapters .wrap::-webkit-scrollbar{display:none}
.chapters a{flex:none;font-size:.86rem;font-weight:600;color:var(--muted);text-decoration:none;padding:7px 14px;border-radius:999px;border:1px solid transparent}
.chapters a:hover{color:var(--ink);background:var(--sunk)}
.chapters a.on{color:var(--ink);background:var(--surface);border-color:var(--line-2);box-shadow:var(--shadow)}
@media (max-width:1080px){.chapters{top:calc(env(safe-area-inset-top,0px) + 72px)}}

.yantra-word{display:grid;gap:10px;align-content:center;justify-items:start;padding:40px;border-radius:28px;background:radial-gradient(80% 80% at 20% 10%,rgba(41,171,226,.16),transparent 60%),var(--bg);border:1px solid var(--line);min-height:380px;position:relative;overflow:hidden}
.yantra-word::after{content:"";position:absolute;right:-60px;bottom:-60px;width:260px;height:230px;background:conic-gradient(from 210deg at 50% 60%,#29abe2,#1a7fc0,#8fd8f7,#29abe2);clip-path:polygon(50% 0,100% 100%,0 100%);opacity:.14}
.yantra-word .dev{font-family:"Noto Serif Devanagari",var(--f-serif);font-size:clamp(4.5rem,11vw,8rem);line-height:1;background:var(--accent-grad);-webkit-background-clip:text;background-clip:text;color:transparent;padding-bottom:.08em}
.yantra-word .tr{font-family:var(--f-serif);font-size:2rem;color:var(--ink);font-style:italic}
.yantra-word .gloss{font-family:var(--f-mono);font-size:.74rem;letter-spacing:.14em;text-transform:uppercase;color:var(--muted);max-width:30ch;line-height:1.6}

.day{background:var(--surface);border:1px solid var(--line);border-radius:28px;box-shadow:var(--shadow-lg);padding:28px}
.day-top{display:grid;grid-template-columns:auto auto 1fr;gap:20px;align-items:center}
.day-clock{display:grid;line-height:1.1;min-width:170px}
.day-time{font-family:var(--f-display);font-weight:800;font-size:2.4rem;color:var(--ink);letter-spacing:-.04em;font-variant-numeric:tabular-nums}
.day-label{font-family:var(--f-mono);font-size:.7rem;letter-spacing:.16em;text-transform:uppercase;color:var(--muted)}
.day-range{width:100%;accent-color:var(--cyan);height:28px}
.day-play.playing{background:var(--btn);color:var(--btn-fg);border-color:var(--btn)}
.day-ticks{display:grid;grid-template-columns:repeat(6,1fr);gap:8px;margin:18px 0 22px}
.day-tick{font:inherit;text-align:left;border:1px solid var(--line);background:var(--bg);border-radius:12px;padding:10px 12px;cursor:pointer;display:grid;gap:2px;min-width:0}
.day-tick b{font-family:var(--f-display);font-weight:800;color:var(--ink);font-size:.95rem}
.day-tick span{font-size:.72rem;color:var(--muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.day-tick.on{border-color:var(--cyan);background:var(--info-bg)}
.day-card{transition:transform .3s,opacity .3s}
.day-card.swap{opacity:.25;transform:translateY(6px)}
.day-text{font-family:var(--f-display);font-weight:700;color:var(--ink)!important;font-size:1.12rem!important;line-height:1.4!important;letter-spacing:-.01em}
@media (max-width:900px){.day-ticks{grid-template-columns:repeat(3,1fr)}.day-top{grid-template-columns:auto 1fr}.day-range{grid-column:1/-1}}
@media (max-width:560px){.day{padding:18px;border-radius:22px}.day-tick span{display:none}.day-time{font-size:2rem}}

.fit{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:28px;align-items:start}
.fit-col{display:grid;gap:14px}
.fit-step{font-family:var(--f-mono);font-size:.7rem;letter-spacing:.18em;text-transform:uppercase;color:var(--muted)}
.fit-roles{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin-bottom:12px}
.fit-role{font:inherit;display:grid;gap:10px;justify-items:start;padding:18px;border-radius:18px;border:1px solid var(--line);background:var(--surface);cursor:pointer;text-align:left;box-shadow:var(--shadow)}
.fit-role svg{width:22px;height:22px;color:var(--info)}
.fit-role span{font-family:var(--f-display);font-weight:700;color:var(--ink);font-size:.95rem;line-height:1.25}
.fit-role.on{border-color:var(--btn);background:var(--btn)}
.fit-role.on svg,.fit-role.on span{color:var(--btn-fg)}
.fit-qs{display:grid;gap:8px}
.fit-q{font:inherit;font-weight:600;text-align:left;padding:15px 18px;border-radius:14px;border:1px solid var(--line);background:var(--surface);color:var(--text);cursor:pointer;display:flex;justify-content:space-between;gap:10px;align-items:center}
.fit-q::after{content:"";width:18px;height:18px;border-radius:50%;border:2px solid var(--line-2);flex:none}
.fit-q.on{border-color:var(--cyan);background:var(--info-bg);color:var(--ink)}
.fit-q.on::after{border-color:var(--info);background:radial-gradient(circle,var(--info) 40%,transparent 45%)}
.fit-result{position:sticky;top:150px;padding:34px;gap:16px}
.fit-result h3{font-size:1.9rem}
.fit-result.swap{opacity:.4}
.fit-result{transition:opacity .25s}
@media (max-width:900px){.fit{grid-template-columns:1fr}.fit-result{position:static}}
@media (max-width:560px){.fit-roles{grid-template-columns:1fr}.fit-role{grid-template-columns:auto 1fr;align-items:center}}

.lab-spot{grid-template-columns:minmax(0,.85fr) minmax(0,1.15fr)}
.lab-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px}
.lab-card{background:rgba(255,255,255,.06);border-color:rgba(255,255,255,.14);box-shadow:none;padding:22px}
.lab-card::before{display:none}
.lab-card h3{color:#fff;font-size:1.12rem}
.lab-card p{color:#b5c4e2;font-size:.9rem}
.lab-card .ic{background:rgba(255,255,255,.1);color:#7fd3f5}
@media (max-width:960px){.lab-spot{grid-template-columns:1fr}}
@media (max-width:560px){.lab-grid{grid-template-columns:1fr}}

.proof .card h3{font-size:1.5rem}
.proof-num{display:flex;align-items:baseline;gap:10px;padding:14px 0;border-block:1px solid var(--line)}
.proof-num b{font-family:var(--f-display);font-weight:800;font-size:1.9rem;color:var(--ink);letter-spacing:-.03em}
.proof-num span{color:var(--muted);font-size:.9rem}
.proof-list{list-style:none;margin:0;padding:0;display:grid;gap:10px}
.proof-list li{display:flex;justify-content:space-between;gap:12px;font-size:.92rem}
.proof-list b{color:var(--ink);font-weight:700}
.proof-list span{color:var(--muted);text-align:right}
.proof .more{margin-top:auto}
.stats-inline{display:grid;grid-template-columns:repeat(4,1fr);gap:24px;margin-top:40px;padding-top:32px;border-top:1px solid var(--line)}
@media (max-width:760px){.stats-inline{grid-template-columns:1fr 1fr}}

.calc{gap:22px;padding:32px}
.calc-row{display:grid;grid-template-columns:1fr auto;gap:8px 16px;align-items:center}
.calc-row span{font-weight:600;color:var(--text);font-size:.95rem}
.calc-row b{font-family:var(--f-display);font-weight:800;color:var(--ink);font-variant-numeric:tabular-nums}
.calc-row input{grid-column:1/-1;width:100%;accent-color:var(--cyan)}
.calc-out{display:grid;grid-template-columns:1fr 1fr;gap:14px;padding-top:20px;border-top:1px solid var(--line)}
.calc-out div{background:var(--info-bg);border-radius:16px;padding:18px}
.calc-out b{display:block;font-family:var(--f-display);font-weight:800;font-size:clamp(1.5rem,3vw,2.2rem);color:var(--ink);letter-spacing:-.03em;margin-top:4px;font-variant-numeric:tabular-nums}

.glance-row{display:flex;justify-content:space-between;gap:16px;padding:10px 0;border-bottom:1px solid rgba(255,255,255,.12);font-size:.92rem}
.glance-row span{color:#9fb3da}
.glance-row b{color:#fff;font-family:var(--f-display);text-align:right}
.hp{position:absolute!important;left:-10000px!important;width:1px;height:1px;overflow:hidden}
.lead button[disabled]{opacity:.6;cursor:progress}

/* ===== AI platform builder ===== */
.build-sec{background:radial-gradient(60% 50% at 50% 0%,var(--glow-a),transparent 70%),var(--bg)}
.builder{background:var(--surface);border:1px solid var(--line);border-radius:30px;box-shadow:var(--shadow-lg);padding:30px;position:relative;overflow:hidden}
.builder::before{content:"";position:absolute;left:10%;right:10%;top:0;height:1px;background:linear-gradient(90deg,transparent,var(--cyan),transparent)}
.bchips{display:flex;flex-wrap:wrap;gap:8px;justify-content:center;margin-bottom:26px}
.bchip{font:inherit;font-weight:700;font-size:.88rem;display:inline-flex;align-items:center;gap:8px;padding:9px 16px;border-radius:999px;border:1px solid var(--line-2);background:var(--bg);color:var(--text);cursor:pointer}
.bchip svg{width:16px;height:16px;color:var(--info)}
.bchip.on{background:var(--btn);border-color:var(--btn);color:var(--btn-fg)}
.bchip.on svg{color:var(--btn-fg)}
.bgrid{display:grid;grid-template-columns:minmax(0,1fr) auto minmax(0,1.15fr);gap:20px;align-items:stretch}
.bprompt{background:var(--sunk);border-radius:20px;padding:24px;display:grid;gap:14px;align-content:start;min-width:0}
.bp-h{display:flex;align-items:center;gap:10px}
.bp-text{font-family:var(--f-display);font-weight:700;font-size:clamp(1.1rem,1.8vw,1.35rem);line-height:1.45;color:var(--ink);letter-spacing:-.01em;min-height:6.2em}
.bp-text.typing::after{content:"";display:inline-block;width:2px;height:1.1em;background:var(--cyan);margin-left:2px;vertical-align:-.15em;animation:caret .8s steps(1) infinite}
@keyframes caret{50%{opacity:0}}
.bp-meta{display:flex;flex-wrap:wrap;gap:8px 18px;font-size:.82rem;color:var(--muted)}
.bp-meta span{display:inline-flex;gap:6px;align-items:center}
.bp-meta svg{width:15px;height:15px;color:var(--cyan)}
.barrow{display:grid;place-items:center;align-content:center;gap:8px;color:var(--info)}
.barrow span{font-family:var(--f-mono);font-size:.62rem;letter-spacing:.18em;text-transform:uppercase;color:var(--muted);writing-mode:vertical-rl;transform:rotate(180deg)}
.barrow svg{width:26px;height:26px;padding:6px;border-radius:50%;background:var(--info-bg);box-sizing:content-box}
.bresult{border:1px solid var(--line);border-radius:20px;padding:22px;display:grid;gap:14px;align-content:start;min-width:0}
.br-h{display:flex;justify-content:space-between;align-items:center;gap:10px;flex-wrap:wrap}
.br-h b{color:var(--ink);letter-spacing:.08em}
.b-bar{transition:width .35s ease}
.bouts{list-style:none;margin:0;padding:0;display:grid;gap:8px}
.bout{display:grid;grid-template-columns:120px minmax(0,1fr);gap:12px;align-items:baseline;padding:11px 14px;border-radius:12px;background:var(--bg);border:1px solid var(--line);opacity:.25;transform:translateY(4px);transition:opacity .35s,transform .35s}
.bout.on{opacity:1;transform:none}
.bk{font-family:var(--f-mono);font-size:.66rem;letter-spacing:.14em;text-transform:uppercase;color:var(--info);font-weight:600;display:flex;gap:6px;align-items:center}
.bk::before{content:"";width:14px;height:14px;border-radius:50%;flex:none;background:var(--ok-bg) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%2314915f' stroke-width='3.5' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M5 12.5l4.5 4.5L19 7.5'/%3E%3C/svg%3E") center/9px no-repeat}
.bv{color:var(--ink);font-weight:600;font-size:.92rem;line-height:1.45}
.bsteps{display:grid;grid-template-columns:repeat(4,1fr);gap:14px;margin-top:24px;padding-top:24px;border-top:1px solid var(--line)}
.bsteps div{display:grid;gap:4px}
.bsteps b{font-family:var(--f-display);font-weight:800;color:var(--ink)}
.bsteps span{font-size:.88rem;color:var(--muted);line-height:1.5}
@media (max-width:960px){.bgrid{grid-template-columns:1fr}.barrow{grid-auto-flow:column}.barrow span{writing-mode:horizontal-tb;transform:none}.barrow svg{transform:rotate(90deg)}.bsteps{grid-template-columns:1fr 1fr}}
@media (max-width:560px){.builder{padding:18px;border-radius:22px}.bout{grid-template-columns:1fr;gap:4px}.bsteps{grid-template-columns:1fr}.bp-text{min-height:0}}

/* product use cases */
.ucs .card{gap:12px}
.uc h3{font-size:1.3rem}
.uc-row{display:grid;gap:4px}
.uc-k{font-family:var(--f-mono);font-size:.62rem;letter-spacing:.16em;text-transform:uppercase;color:var(--muted);font-weight:600}
.uc-k2{color:var(--info)}
.uc-row p{font-size:.94rem}
.uc-out{display:flex;gap:10px;align-items:center;margin-top:auto;padding:12px 14px;border-radius:12px;background:var(--ok-bg)}
.uc-out svg{width:18px;height:18px;color:var(--ok);flex:none}
.uc-out b{color:var(--ink);font-family:var(--f-display);font-size:.95rem;letter-spacing:-.01em}
.grid5{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:18px}
.grid5 .card{padding:24px}
.grid5 .card h3{font-size:1.12rem}
@media (max-width:1100px){.grid5{grid-template-columns:1fr 1fr}}
@media (max-width:820px){.grid5{grid-template-columns:1fr 1fr}}
@media (max-width:560px){.grid5{grid-template-columns:1fr}}

/* ===== v7 home: offerings + who we are ===== */
.offers .card{gap:14px}
.offers .card h3{font-size:1.5rem}
.offers .ticks{margin:4px 0 6px;gap:10px}
.offers .ticks li{font-size:.94rem}
.offer-hi{background:linear-gradient(155deg,var(--navy),#16337a 70%,#1f4aa0);border-color:transparent;color:#d6e1f6}
.offer-hi h3{color:#fff}
.offer-hi p,.offer-hi .ticks li{color:#c3d1ec}
.offer-hi .ic{background:rgba(255,255,255,.1);color:#7fd3f5}
.offer-hi .more{color:#7fd3f5}
.offer-hi .ticks li::before{background-color:rgba(127,211,245,.18)}
.about-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.05fr);gap:56px;align-items:center}
.about-grid > .copy{display:grid;gap:18px}
.about-grid > .copy h2{font-size:clamp(2rem,4vw,3rem)}
.about-grid > .copy p{color:var(--muted);font-size:1.04rem}
.about-grid > .copy p b{color:var(--ink)}
.values-row{display:flex;flex-wrap:wrap;gap:8px}
.values-row span{font-size:.86rem;padding:8px 14px;border-radius:999px;background:var(--surface);border:1px solid var(--line);color:var(--muted)}
.values-row b{color:var(--ink)}
.about-spot{grid-template-columns:1fr;padding:40px;gap:28px}
@media (max-width:960px){.about-grid{grid-template-columns:1fr;gap:40px}.about-spot{padding:28px 22px}}
.person .av{color:#fff}.person .av.g{color:#2b2200}

/* ===== Who we are (v8) ===== */
.about-grid{align-items:start}
.vals{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;margin-top:6px}
.val{display:grid;gap:10px;align-content:start;padding:18px;border-radius:18px;background:var(--surface);border:1px solid var(--line);box-shadow:var(--shadow)}
.val .ic{width:38px;height:38px;border-radius:11px;background:var(--info-bg);color:var(--info);display:grid;place-items:center}
.val .ic svg{width:18px;height:18px}
.val b{font-family:var(--f-display);font-weight:800;color:var(--ink);font-size:1.05rem}
.val p{font-size:.86rem!important;line-height:1.5;margin-top:2px}
.about-side{display:grid;gap:16px}
.mark-card{display:grid;grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);gap:24px;align-items:center;padding:30px;border-radius:26px;color:#c9d6ef;
  background:radial-gradient(70% 90% at 100% 0%,rgba(41,171,226,.35),transparent 60%),linear-gradient(150deg,#0b1a40,#0f2557 60%,#132f6c);box-shadow:var(--shadow-lg);overflow:hidden}
.mark-vis{position:relative;padding:18px 6px 26px}
.mark-svg{width:100%;height:auto;display:block;filter:drop-shadow(0 18px 30px rgba(41,171,226,.35))}
.mk{position:absolute;font-family:var(--f-mono);font-size:.6rem;letter-spacing:.12em;text-transform:uppercase;color:#dfe8fb;background:rgba(255,255,255,.1);border:1px solid rgba(255,255,255,.2);padding:4px 8px;border-radius:999px;white-space:nowrap}
.mk-l{left:0;top:34%}.mk-r{right:0;top:22%}.mk-b{left:50%;bottom:0;transform:translateX(-50%)}
.mark-txt{display:grid;gap:10px}
.mark-txt .label{color:#8fa6cf}
.mark-txt h3{color:#fff;font-size:1.5rem}
.mark-txt p{color:#b5c4e2;font-size:.95rem;line-height:1.6}
.mark-txt b{color:#7fd3f5}
.facts{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}
.fact{background:var(--surface);border:1px solid var(--line);border-radius:18px;padding:18px;display:grid;gap:4px;box-shadow:var(--shadow)}
.fact b{font-family:var(--f-display);font-weight:800;font-size:clamp(1.5rem,2.4vw,2rem);color:var(--ink);letter-spacing:-.03em;line-height:1.1}
.fact span{font-size:.82rem;color:var(--muted);line-height:1.4}
.leaders .card p{font-size:.94rem}
.leaders .person b{color:var(--ink)}
@media (max-width:1100px){.vals{grid-template-columns:1fr}.val{grid-template-columns:auto 1fr;align-items:start}}
@media (max-width:640px){.mark-card{grid-template-columns:1fr;padding:24px}.facts{grid-template-columns:1fr 1fr}}

/* ================= v8 infographics ================= */
:root{--navy-seg:#0f2557}
:root[data-yl="dark"]{--navy-seg:#5b86d9}

/* ecosystem */
.eco{display:grid;gap:0}
.eco-cols{display:grid;grid-template-columns:1.25fr 1fr 1fr;gap:18px}
.eco-col{background:var(--surface);border:1px solid var(--line);border-radius:22px;padding:20px;box-shadow:var(--shadow);display:grid;gap:14px;align-content:start;min-width:0}
.eco-h{display:flex;align-items:center;gap:10px}
.eco-h .ic{width:38px;height:38px;border-radius:11px;background:var(--info-bg);color:var(--info);display:grid;place-items:center;flex:none}
.eco-h .ic svg{width:18px;height:18px}
.eco-h b{font-family:var(--f-display);font-weight:800;color:var(--ink);font-size:1.08rem}
.eco-n{margin-left:auto;font-family:var(--f-mono);font-size:.62rem;letter-spacing:.14em;text-transform:uppercase;color:var(--muted);white-space:nowrap}
.eco-pills{display:flex;flex-wrap:wrap;gap:8px}
.eco-pill{display:inline-flex;align-items:center;gap:7px;padding:8px 12px;border-radius:12px;background:var(--bg);border:1px solid var(--line);font-weight:700;font-size:.86rem;color:var(--ink);text-decoration:none;transition:border-color .2s,transform .2s}
.eco-pill svg{width:15px;height:15px;color:var(--info)}
.eco-pill:hover{border-color:var(--cyan);transform:translateY(-2px)}
.eco-wires{display:grid;grid-template-columns:1.25fr 1fr 1fr;gap:18px;height:46px}
.eco-wires i{justify-self:center;width:2px;height:100%;background:repeating-linear-gradient(180deg,var(--cyan) 0 6px,transparent 6px 12px);background-size:2px 12px;animation:wire 1s linear infinite}
@keyframes wire{to{background-position:0 12px}}
.eco-core{border-radius:26px;padding:24px;color:#d6e1f6;background:radial-gradient(60% 120% at 100% 0%,rgba(41,171,226,.35),transparent 60%),linear-gradient(150deg,#0b1a40,#0f2557 60%,#163378);box-shadow:var(--shadow-lg);display:grid;gap:18px}
.eco-core-h{display:flex;align-items:center;gap:14px}
.eco-core-h .mark{width:46px;height:46px;border-radius:50%;background:#16337a;display:grid;place-items:center;flex:none}
.eco-core-h .mark svg{width:26px;height:24px}
.eco-core-h b{display:block;font-family:var(--f-display);font-weight:800;color:#fff;font-size:1.3rem}
.eco-core-h span{font-size:.88rem;color:#9fb3da}
.eco-layers{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:10px}
.eco-layer{display:flex;gap:10px;align-items:flex-start;padding:14px;border-radius:16px;background:rgba(255,255,255,.07);border:1px solid rgba(255,255,255,.14);min-width:0}
.eco-layer .ic{width:32px;height:32px;border-radius:9px;background:rgba(127,211,245,.14);color:#7fd3f5;display:grid;place-items:center;flex:none}
.eco-layer .ic svg{width:16px;height:16px}
.eco-layer b{display:block;color:#fff;font-family:var(--f-display);font-size:.95rem}
.eco-layer span{font-size:.78rem;color:#9fb3da;line-height:1.4}
.eco-base{display:flex;justify-content:center;flex-wrap:wrap;gap:10px 28px;margin-top:16px;padding:14px;border-radius:18px;border:1px dashed var(--line-2);color:var(--text);font-weight:700;font-size:.92rem}
.eco-base span{display:inline-flex;align-items:center;gap:8px}
.eco-base svg{width:17px;height:17px;color:var(--info)}
@media (max-width:1100px){.eco-layers{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media (max-width:860px){.eco-cols{grid-template-columns:1fr}.eco-wires{grid-template-columns:1fr;height:34px}.eco-wires i:nth-child(n+2){display:none}.eco-layers{grid-template-columns:1fr 1fr}}
@media (max-width:480px){.eco-layers{grid-template-columns:1fr}}

/* infographic row */
.ig-row{display:grid;grid-template-columns:1fr 1.15fr 1fr;gap:20px;margin-top:40px}
.ig-two{margin-top:0}
.ig-card{gap:16px}
.ig-h{font-size:1.3rem}
.ig-note{font-size:.84rem;color:var(--muted)}
.donut-wrap{position:relative;width:min(220px,100%);aspect-ratio:1;margin:0 auto}
.donut{width:100%;height:100%;transform:rotate(-90deg)}
.donut circle{fill:none;stroke-width:14}
.dtrack{stroke:var(--sunk)}
.dseg{stroke-linecap:butt;transition:stroke-dasharray 1.2s ease}
.donut-c{position:absolute;inset:0;display:grid;place-content:center;text-align:center}
.donut-c b{font-family:var(--f-display);font-weight:800;font-size:2.6rem;color:var(--ink);line-height:1;letter-spacing:-.04em}
.donut-c > span{font-size:.74rem;color:var(--muted);line-height:1.3;margin-top:4px}
.legend-list{list-style:none;margin:0;padding:0;display:grid;gap:8px}
.legend-list li{display:grid;grid-template-columns:12px 28px 1fr;gap:8px;align-items:center;font-size:.9rem}
.legend-list i{width:12px;height:12px;border-radius:4px}
.legend-list b{font-family:var(--f-display);color:var(--ink)}
.legend-list li > span{color:var(--muted)}
.fp{display:grid;gap:8px}
.fp-svg{width:100%;height:auto;overflow:visible}
.fp-arc{fill:none;stroke:var(--cyan);stroke-width:2;stroke-dasharray:5 6;vector-effect:non-scaling-stroke;animation:dash 1.6s linear infinite}
@keyframes dash{to{stroke-dashoffset:-22}}
.fp-node{fill:var(--surface);stroke:var(--info);stroke-width:3;vector-effect:non-scaling-stroke}
.fp-home{fill:var(--cyan);stroke:var(--navy-seg)}
.fp-labels{display:grid;grid-template-columns:repeat(3,1fr);text-align:center;gap:6px}
.fp-labels b{display:block;font-family:var(--f-display);font-weight:800;color:var(--ink)}
.fp-labels span{font-size:.76rem;color:var(--muted);line-height:1.35}
.cnts{display:grid;gap:16px}
.cnt{display:grid;grid-template-columns:auto 1fr;gap:4px 12px;align-items:baseline}
.cnt b{font-family:var(--f-display);font-weight:800;font-size:1.7rem;color:var(--ink);letter-spacing:-.03em;min-width:3.3ch}
.cnt > span{color:var(--muted);font-size:.9rem}
.cnt-bar{grid-column:1/-1;height:6px;border-radius:6px;background:var(--sunk);overflow:hidden}
.cnt-bar i{display:block;height:100%;width:var(--w);border-radius:6px;background:linear-gradient(90deg,var(--navy-seg),var(--cyan));transition:width 1.2s ease}
@media (max-width:1000px){.ig-row{grid-template-columns:1fr 1fr}.ig-row > :last-child{grid-column:1/-1}}
@media (max-width:640px){.ig-row,.ig-two{grid-template-columns:1fr}.ig-row > :last-child{grid-column:auto}}

/* product flow */
.fl{list-style:none;margin:0;padding:0;display:grid;gap:0;position:relative}
.fl-step{display:grid;grid-template-columns:52px 1fr;gap:16px;position:relative;padding-bottom:22px}
.fl-step:last-child{padding-bottom:0}
.fl-step::before{content:"";position:absolute;left:25px;top:52px;bottom:0;width:2px;background:linear-gradient(180deg,var(--cyan),var(--line-2))}
.fl-step:last-child::before{display:none}
.fl-node{width:52px;height:52px;border-radius:50%;display:grid;place-items:center;font-family:var(--f-display);font-weight:800;color:#fff;background:linear-gradient(150deg,var(--navy-seg),var(--cyan));box-shadow:0 8px 20px -8px rgba(41,171,226,.7);position:relative;z-index:1}
.fl-body{background:var(--surface);border:1px solid var(--line);border-radius:18px;padding:16px 18px;box-shadow:var(--shadow);display:grid;gap:4px}
.fl-body b{font-family:var(--f-display);font-weight:800;color:var(--ink);font-size:1.06rem}
.fl-body p{font-size:.92rem;color:var(--muted)}
.fl-out{justify-self:start;margin-top:6px;font-family:var(--f-mono);font-size:.64rem;letter-spacing:.12em;text-transform:uppercase;font-weight:600;color:var(--ok);background:var(--ok-bg);padding:4px 9px;border-radius:999px}
.fl-out::before{content:"Output · ";color:var(--muted)}

/* orbit */
.orbit-ig{position:relative;aspect-ratio:1;width:100%;max-width:600px;justify-self:center}
.orbit-ig-rings{position:absolute;inset:0;width:100%;height:100%}
.orbit-ig-rings circle{fill:none;stroke:var(--line-2);stroke-width:.3;stroke-dasharray:1 1.2}
.orbit-ig-core{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);width:36%;aspect-ratio:1;border-radius:50%;display:grid;place-content:center;justify-items:center;text-align:center;gap:6px;color:#fff;
  background:radial-gradient(circle at 35% 30%,#2f8fd6,#0f2557 70%);box-shadow:0 0 0 12px rgba(41,171,226,.1),0 0 0 26px rgba(41,171,226,.05),var(--shadow-lg)}
.orbit-ig-core b{font-family:var(--f-display);font-weight:800;font-size:clamp(.9rem,1.6vw,1.15rem);line-height:1.2;max-width:12ch}
.orbit-ig-core span:last-child{font-family:var(--f-mono);font-size:.6rem;color:#9fd8f3}
.orbit-ig-node{position:absolute;transform:translate(-50%,-50%);display:grid;justify-items:center;gap:5px;width:15%;text-align:center}
.orbit-ig-node .ic{width:44px;height:44px;border-radius:14px;background:var(--surface);border:1px solid var(--line);box-shadow:var(--shadow);display:grid;place-items:center;color:var(--info);transition:transform .2s}
.orbit-ig-node .ic svg{width:20px;height:20px}
.orbit-ig-node b{font-size:.7rem;line-height:1.2;color:var(--ink);font-weight:700}
.orbit-ig-node:hover .ic{transform:scale(1.1);border-color:var(--cyan)}
@media (max-width:700px){
  .orbit-ig{aspect-ratio:auto;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px 8px;max-width:none}
  .orbit-ig-rings{display:none}
  .orbit-ig-core{position:relative;left:auto;top:auto;transform:none;grid-column:1/-1;width:180px;justify-self:center;margin-bottom:10px}
  .orbit-ig-node{position:static;transform:none;width:auto}
}

/* comparison bars */
.cmp{gap:22px;padding:30px}
.cmp-row{display:grid;grid-template-columns:220px 1fr;gap:20px;align-items:center}
.cmp-l b{display:block;font-family:var(--f-display);font-weight:800;color:var(--ink)}
.cmp-l span{font-size:.88rem;color:var(--muted)}
.cmp-row.hi .cmp-l b{color:var(--info)}
.cmp-bar{position:relative;display:flex;height:46px;border-radius:12px;background:var(--sunk);overflow:visible}
.seg{display:block;height:100%;width:var(--w);transition:width 1.2s ease;position:relative;overflow:hidden}
.seg:first-child{border-radius:12px 0 0 12px}
.seg:last-of-type{border-radius:0 12px 12px 0}
.seg span{position:absolute;left:10px;top:50%;transform:translateY(-50%);font-size:.74rem;font-weight:700;color:#fff;white-space:nowrap}
.s0{background:#7fd3f5}.s1{background:#29abe2}.s2{background:#1a6fd1}.s3{background:#0f2557}.s4{background:var(--gold)}
.s0 span,.s4 span{color:#0b1a40}
.cmp-tag{position:absolute;left:calc(10% + 14px);top:50%;transform:translateY(-50%);font-style:normal;font-family:var(--f-display);font-weight:800;color:var(--ok);background:var(--ok-bg);padding:6px 12px;border-radius:999px;font-size:.9rem;white-space:nowrap}
.cmp-legend{list-style:none;margin:0;padding:0;display:flex;flex-wrap:wrap;gap:8px 18px;font-size:.84rem;color:var(--muted)}
.cmp-legend li{display:inline-flex;align-items:center;gap:7px}
.seg-dot{width:12px;height:12px;border-radius:4px;display:inline-block}
.cmp-bar.pre .seg{width:0}
@media (max-width:760px){.cmp-row{grid-template-columns:1fr;gap:10px}.seg span{display:none}.cmp{padding:20px}}

/* security rings */
.rings{aspect-ratio:1;width:100%;max-width:520px;justify-self:center;display:grid}
.ring{border-radius:50%;padding:9%;display:grid;position:relative;border:1px solid var(--line-2)}
.ring.r0{background:color-mix(in srgb,var(--cyan) 6%,var(--surface))}
.ring.r1{background:color-mix(in srgb,var(--cyan) 11%,var(--surface))}
.ring.r2{background:color-mix(in srgb,var(--cyan) 18%,var(--surface))}
.ring.r3{background:color-mix(in srgb,var(--cyan) 26%,var(--surface))}
.ring-l{position:absolute;left:50%;top:3.2%;transform:translateX(-50%);font-family:var(--f-mono);font-size:clamp(.52rem,1.1vw,.68rem);letter-spacing:.14em;text-transform:uppercase;font-weight:600;color:var(--ink);white-space:nowrap}
.ring-core{border-radius:50%;display:grid;place-content:center;text-align:center;color:#fff;background:radial-gradient(circle at 35% 30%,#2f8fd6,#0f2557 70%);box-shadow:0 0 30px rgba(41,171,226,.45);aspect-ratio:1}
.ring-core b{font-family:var(--f-display);font-weight:800;font-size:clamp(.8rem,1.6vw,1.1rem)}
.ring-core span{font-family:var(--f-mono);font-size:.6rem;color:#9fd8f3}
.ring-legend{list-style:none;margin:6px 0 0;padding:0;display:grid;gap:12px}
.ring-legend li{display:grid;grid-template-columns:30px 1fr;gap:12px;align-items:start}
.rl-n{width:30px;height:30px;border-radius:50%;background:var(--info-bg);color:var(--info);display:grid;place-items:center;font-family:var(--f-display);font-weight:800;font-size:.85rem}
.ring-legend b{font-family:var(--f-display);color:var(--ink)}
.ring-legend p{font-size:.92rem;color:var(--muted)}

/* gantt */
.gantt{padding:26px}
.g-scroll{overflow-x:auto}
.g-inner{min-width:640px;display:grid;gap:10px}
.g-row{display:grid;grid-template-columns:220px 1fr;gap:16px;align-items:center}
.g-l b{display:block;font-family:var(--f-display);font-weight:800;color:var(--ink)}
.g-l span{font-size:.8rem;color:var(--muted)}
.g-track{display:grid;grid-template-columns:repeat(12,1fr);height:36px;border-radius:10px;background:repeating-linear-gradient(90deg,var(--sunk) 0 calc(100%/12 - 2px),transparent calc(100%/12 - 2px) calc(100%/12))}
.g-weeks{height:auto;background:none}
.g-weeks span{text-align:center;font-family:var(--f-mono);font-size:.62rem;color:var(--muted)}
.g-head .g-l{min-height:1px}
.g-bar{display:block;height:100%;border-radius:10px;box-shadow:0 6px 16px -8px rgba(15,37,87,.5)}
.gb0{background:#7fd3f5}.gb1{background:#29abe2}.gb2{background:#1a6fd1}.gb3{background:#0f2557}.gb4{background:var(--gold)}
.g-open{border-radius:10px 0 0 10px;background:linear-gradient(90deg,var(--gold),transparent)}

/* legal pages */
.lg-hero .wrap{padding-bottom:56px}
.lg-meta{display:flex;flex-wrap:wrap;gap:8px 22px;margin-top:22px;font-size:.88rem;color:var(--muted)}
.lg-meta span{display:inline-flex;align-items:center;gap:7px}
.lg-meta svg{width:16px;height:16px;color:var(--info)}
.lg{display:grid;grid-template-columns:260px minmax(0,1fr);gap:56px;align-items:start}
.lg-side{position:sticky;top:96px;display:grid;gap:22px}
.lg-others{display:grid;gap:6px}
.lg-other{padding:10px 14px;border-radius:12px;border:1px solid var(--line);background:var(--surface);font-weight:700;font-size:.9rem;color:var(--text);text-decoration:none}
.lg-other.on{background:var(--btn);border-color:var(--btn);color:var(--btn-fg)}
.lg-toc ol{margin:10px 0 0;padding-left:18px;display:grid;gap:6px;font-size:.88rem}
.lg-toc a{color:var(--muted);text-decoration:none}
.lg-toc a:hover{color:var(--info)}
.lg-body{display:grid;gap:8px;max-width:760px}
.lg-sec{padding:26px 0;border-bottom:1px solid var(--line);scroll-margin-top:96px}
.lg-sec h2{font-size:1.4rem;letter-spacing:-.02em;margin-bottom:12px}
.lg-sec p{color:var(--text);margin:0 0 10px;line-height:1.75}
.lg-sec ul{margin:6px 0 10px;padding-left:20px;display:grid;gap:8px;color:var(--text);line-height:1.65}
.lg-sec b{color:var(--ink)}
.lg-contact{border-bottom:0;background:var(--surface);border:1px solid var(--line);border-radius:20px;padding:26px;margin-top:20px}
.lg-contact p{margin:0 0 4px}
.f-legal{display:inline-flex;flex-wrap:wrap;gap:6px 18px}
.f-legal a{color:#9fb0d2;text-decoration:none}
.f-legal a:hover{color:#fff}
@media (max-width:900px){.lg{grid-template-columns:1fr;gap:20px}.lg-side{position:static}.lg-toc{display:none}.lg-others{grid-template-columns:repeat(3,auto);overflow-x:auto}}
@media (max-width:560px){.lg-others{grid-template-columns:1fr}}

/* ================= v9 product micropages ================= */
.stats.nums{background:linear-gradient(180deg,var(--surface),var(--bg))}
.stats.nums .stat b{background:var(--accent-grad);-webkit-background-clip:text;background-clip:text;color:transparent}
/* journey track */
.trk{padding:30px}
.tr{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:12px;position:relative}
.tr::before{content:"";position:absolute;left:8%;right:8%;top:28px;height:3px;border-radius:3px;background:linear-gradient(90deg,var(--navy-seg),var(--cyan),var(--gold))}
.tr-step{display:grid;justify-items:center;text-align:center;gap:6px;position:relative}
.tr-node{width:58px;height:58px;border-radius:50%;display:grid;place-items:center;background:var(--surface);border:3px solid var(--cyan);color:var(--info);box-shadow:var(--shadow);position:relative;z-index:1}
.tr-node svg{width:24px;height:24px}
.tr-step b{font-family:var(--f-display);font-weight:800;color:var(--ink);margin-top:6px}
.tr-d{font-size:.84rem;color:var(--muted);line-height:1.45}
.tr-tag{font-style:normal;font-family:var(--f-mono);font-size:.62rem;letter-spacing:.12em;text-transform:uppercase;color:var(--info);background:var(--info-bg);padding:3px 8px;border-radius:999px}
@media (max-width:900px){.tr{grid-template-columns:1fr;gap:0}.tr::before{left:28px;right:auto;top:20px;bottom:20px;width:3px;height:auto;background:linear-gradient(180deg,var(--navy-seg),var(--cyan),var(--gold))}
 .tr-step{grid-template-columns:58px 1fr;justify-items:start;text-align:left;column-gap:16px;padding:8px 0}.tr-node{grid-row:span 3}.tr-step b{margin-top:0}}
/* funnel */
.fnl{padding:30px;gap:14px}
.fn-row{display:grid;grid-template-columns:230px 1fr 56px;gap:16px;align-items:center}
.fn-l b{display:block;font-family:var(--f-display);font-weight:800;color:var(--ink)}
.fn-l span{font-size:.82rem;color:var(--muted)}
.fn-track{height:44px;border-radius:12px;background:var(--sunk);display:flex;justify-content:center}
.fn-bar{display:flex;align-items:center;justify-content:center;height:100%;width:var(--w);border-radius:12px;transition:width 1.2s ease;color:#fff;font-family:var(--f-display);font-weight:800;font-style:normal}
.fnl.pre .fn-bar{width:0}
.fb0{background:#7fd3f5;color:#0b1a40}.fb1{background:#29abe2}.fb2{background:#1a6fd1}.fb3{background:#0f2557}.fb4{background:linear-gradient(90deg,#b88f17,var(--gold));color:#2b2200}
.fn-pct{font-style:normal;font-family:var(--f-mono);font-size:.78rem;color:var(--ok);font-weight:600;text-align:right}
@media (max-width:760px){.fn-row{grid-template-columns:1fr auto;gap:6px 10px}.fn-track{grid-column:1/-1;grid-row:2}.fnl{padding:20px}}
/* fan-out */
.fan{display:grid;grid-template-columns:minmax(0,.8fr) 90px minmax(0,1.6fr);gap:0;align-items:center}
.fan-src{align-items:flex-start;gap:8px;padding:26px;background:linear-gradient(150deg,var(--navy),#163378);border:0;color:#c9d6ef}
.fan-src::before{display:none}
.fan-src .ic{background:rgba(255,255,255,.1);color:#7fd3f5}
.fan-src b{color:#fff;font-family:var(--f-display);font-size:1.2rem}
.fan-src span{font-size:.88rem;color:#9fb3da}
.fan-mid{height:100%;min-height:200px;position:relative;display:grid;place-items:center}
.fan-mid::before{content:"";position:absolute;left:0;right:0;top:50%;height:2px;background:repeating-linear-gradient(90deg,var(--cyan) 0 6px,transparent 6px 12px);animation:wireh 1s linear infinite}
@keyframes wireh{to{background-position:12px 0}}
.fan-ai{position:relative;display:inline-flex;align-items:center;gap:5px;padding:7px 12px;border-radius:999px;background:var(--btn);color:var(--btn-fg);font-family:var(--f-display);font-weight:800;font-size:.82rem;box-shadow:0 0 0 6px var(--info-bg)}
.fan-ai svg{width:14px;height:14px}
.fan-outs{display:grid;grid-template-columns:1fr 1fr;gap:10px}
.fan-out{display:flex;gap:12px;align-items:flex-start;padding:14px 16px;border-radius:16px;background:var(--surface);border:1px solid var(--line);box-shadow:var(--shadow);border-left:3px solid var(--cyan)}
.fan-out .ic{width:34px;height:34px;border-radius:10px;background:var(--info-bg);color:var(--info);display:grid;place-items:center;flex:none}
.fan-out .ic svg{width:17px;height:17px}
.fan-out b{display:block;font-family:var(--f-display);font-weight:800;color:var(--ink)}
.fan-out span{font-size:.84rem;color:var(--muted)}
@media (max-width:900px){.fan{grid-template-columns:1fr}.fan-mid{min-height:70px}.fan-mid::before{left:50%;right:auto;top:0;bottom:0;width:2px;height:auto;background:repeating-linear-gradient(180deg,var(--cyan) 0 6px,transparent 6px 12px)}}
@media (max-width:560px){.fan-outs{grid-template-columns:1fr}}
/* language wall */
.lwall{display:flex;flex-wrap:wrap;gap:10px;align-content:center;justify-content:center;padding:28px;border-radius:26px;background:radial-gradient(70% 70% at 50% 50%,var(--glow-a),transparent 70%),var(--surface);border:1px solid var(--line);box-shadow:var(--shadow-lg)}
.lw{font-size:1.05rem;font-weight:600;padding:10px 16px;border-radius:999px;background:var(--bg);border:1px solid var(--line);color:var(--text)}
.lw-in{border-color:color-mix(in srgb,var(--cyan) 50%,transparent);background:var(--info-bg);color:var(--ink)}
.lw-more{font-family:var(--f-mono);font-size:.74rem;letter-spacing:.14em;text-transform:uppercase;color:var(--muted);background:transparent;border-style:dashed}
/* EMR chart */
.chart-card{padding:24px;gap:10px}
.chart-h{display:flex;justify-content:space-between;align-items:center;gap:10px}
.chart-h b{font-family:var(--f-display);color:var(--ink)}
.chart-scroll{overflow-x:auto}
.lchart{width:100%;min-width:440px;height:auto}
.cg{stroke:var(--line);stroke-width:1}
.ct{fill:var(--muted);font-family:var(--f-mono);font-size:12px}
.ct-t{fill:var(--ok)}
.ctarget{stroke:var(--ok);stroke-width:1.5;stroke-dasharray:6 5}
.cline{fill:none;stroke:var(--info);stroke-width:3;stroke-linejoin:round;stroke-linecap:round}
.cdot{fill:var(--surface);stroke:var(--info);stroke-width:2.5}
.cdot-end{fill:var(--crit);stroke:var(--surface);stroke-width:3}
/* TAT */
.tat{padding:28px;display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:22px;align-items:center}
.tat-ring{position:relative;aspect-ratio:1;width:100%;max-width:240px;justify-self:center}
.tat-ring svg{width:100%;height:100%;transform:rotate(-90deg)}
.tat-ring circle{fill:none;stroke-width:12}
.tat-arc{stroke:url(#none);stroke:var(--cyan);stroke-linecap:round}
.tat-c{position:absolute;inset:0;display:grid;place-content:center;justify-items:center;text-align:center;gap:4px}
.tat-c b{font-family:var(--f-display);font-weight:800;font-size:2rem;color:var(--ink);letter-spacing:-.03em}
.tat-c > span{font-size:.78rem;color:var(--muted)}
.tat-c em{font-style:normal}
.tat-list{list-style:none;margin:0;padding:0;display:grid;gap:0}
.tat-list li{display:grid;grid-template-columns:18px 1fr auto;gap:10px;align-items:center;padding:9px 0;border-bottom:1px dashed var(--line);font-size:.9rem}
.tat-list li:last-child{border-bottom:0}
.tat-list b{color:var(--ink);font-weight:700}
.tat-list .mono{color:var(--muted);font-size:.8rem}
.tt-dot{width:12px;height:12px;border-radius:50%;background:var(--ok);box-shadow:0 0 0 4px var(--ok-bg)}
.tat .ig-note{grid-column:1/-1}
@media (max-width:560px){.tat{grid-template-columns:1fr}}
/* flip cards */
.flip{font:inherit;text-align:left;border:0;padding:0;background:none;cursor:pointer;perspective:1200px;min-height:230px;display:block;width:100%}
.flip-in{position:relative;display:block;width:100%;height:100%;min-height:230px;transition:transform .7s cubic-bezier(.2,.7,.2,1);transform-style:preserve-3d}
.flip[aria-pressed="true"] .flip-in{transform:rotateY(180deg)}
.flip-f,.flip-b{position:absolute;inset:0;display:grid;align-content:start;gap:12px;padding:26px;border-radius:22px;backface-visibility:hidden;-webkit-backface-visibility:hidden;box-shadow:var(--shadow)}
.flip-f{background:var(--surface);border:1px solid var(--line)}
.flip-f b{font-family:var(--f-display);font-weight:800;font-size:1.25rem;line-height:1.3;color:var(--ink);letter-spacing:-.015em}
.flip-f em{margin-top:auto;font-style:normal;display:inline-flex;align-items:center;gap:6px;font-weight:700;font-size:.86rem;color:var(--info);align-self:end}
.flip-f em svg{width:15px;height:15px}
.flip-b{transform:rotateY(180deg);background:linear-gradient(150deg,var(--navy),#16337a 70%,#1f4aa0);color:#fff}
.flip-b .label{color:#8fd8f3}
.flip-b b{font-weight:600;font-size:1rem;line-height:1.6;color:#e7eefb}
.flip:hover .flip-f{border-color:var(--cyan)}
@media (prefers-reduced-motion:reduce){.flip-in{transition:none}}
/* sticky CTA on phones */
.sticky-cta{display:none}
@media (max-width:760px){
  .sticky-cta{display:flex;position:fixed;left:12px;right:12px;bottom:calc(12px + env(safe-area-inset-bottom,0px));z-index:70;align-items:center;justify-content:space-between;gap:10px;padding:10px 10px 10px 16px;border-radius:18px;background:color-mix(in srgb,var(--surface) 92%,transparent);backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);border:1px solid var(--line);box-shadow:var(--shadow-lg);transition:transform .3s}
  .sticky-cta > span{display:grid;line-height:1.25;min-width:0}
  .sticky-cta b{font-family:var(--f-display);color:var(--ink);font-size:.95rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
  .sticky-cta span span{font-size:.76rem;color:var(--muted)}
  .sticky-cta.hide{transform:translateY(140%)}
  .site-footer{padding-bottom:80px}
}
@media (prefers-reduced-motion:reduce){.marquee-track [aria-hidden="true"]{display:none}}
.day-range{-webkit-appearance:none;appearance:none;height:8px;border-radius:8px;background:var(--sunk);outline-offset:6px;cursor:pointer}
.day-range::-webkit-slider-thumb{-webkit-appearance:none;width:22px;height:22px;border-radius:50%;background:var(--cyan);border:4px solid var(--surface);box-shadow:0 2px 8px rgba(15,37,87,.35)}
.day-range::-moz-range-thumb{width:16px;height:16px;border-radius:50%;background:var(--cyan);border:4px solid var(--surface);box-shadow:0 2px 8px rgba(15,37,87,.35)}
.day-range::-moz-range-track{height:8px;border-radius:8px;background:var(--sunk)}

/* product film */
#watch{scroll-margin-top:calc(env(safe-area-inset-top,0px) + 148px)}
.film{margin:0;background:var(--navy);border:1px solid var(--line);border-radius:28px;box-shadow:var(--shadow-lg);overflow:hidden}
.film-frame{position:relative;aspect-ratio:16/9;background:var(--navy)}
.film-frame iframe{position:absolute;inset:0;width:100%;height:100%;border:0}
.film-cap{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:8px 20px;padding:14px 22px;background:var(--surface);border-top:1px solid var(--line)}
.film-cap p{color:var(--ink);font-weight:700;font-family:var(--f-display);letter-spacing:-.01em}
.film-cap a{display:inline-flex;align-items:center;min-height:44px;padding:8px 2px;font-weight:700;text-decoration:underline;text-underline-offset:3px}

/* edSolutions360 places — one quiet row, no scrolling ticker */
.ed-places{background:var(--surface);border-top:1px solid var(--line)}
.ed-places .wrap{display:flex;flex-wrap:wrap;align-items:center;justify-content:center;gap:10px 14px;padding-block:16px}
.ed-places .label{margin:0}
.ed-places ul{display:flex;flex-wrap:wrap;justify-content:center;gap:8px;list-style:none;margin:0;padding:0}
.ed-places li{display:flex;align-items:baseline;gap:8px;padding:8px 14px;border-radius:999px;border:1px solid var(--line);background:var(--bg)}
.ed-places b{font-family:var(--f-display);font-size:.92rem;font-weight:750;color:var(--ink);letter-spacing:-.01em}
.ed-places span{font-size:.8rem;color:var(--muted)}


/* ===== edSolutions360 hero: realistic app dashboard in a laptop (ea-*) ===== */
.page-hero.hero-wide .wrap{display:block}
.hero-wide .hw-copy{display:grid;grid-template-columns:minmax(0,1.05fr) minmax(0,1fr);gap:24px 56px;align-items:end}
.hero-wide .hw-copy h1{margin-bottom:0}
.hero-wide .hw-side .lede{margin-top:0}
@media (max-width:960px){.hero-wide .hw-copy{grid-template-columns:1fr}}
.ea-stage{position:relative;margin-top:56px;padding:40px 4% 0;isolation:isolate}
.ea-stage::before{content:"";position:absolute;z-index:-1;inset:0 0 18%;border-radius:40px;
  background:radial-gradient(60% 70% at 15% 20%,#ffd6ea,transparent 70%),radial-gradient(55% 70% at 85% 10%,#d9d2ff,transparent 70%),radial-gradient(70% 60% at 60% 90%,#cfe8ff,transparent 70%),linear-gradient(160deg,#f7f1ff,#eef5ff)}
.ea-laptop{position:relative;max-width:1180px;margin:0 auto;transform:perspective(2400px) rotateX(5deg);transform-origin:50% 100%}
.ea-lid{position:relative;background:linear-gradient(180deg,#24262c,#0d0e11);border-radius:22px 22px 8px 8px;padding:14px 14px 18px;box-shadow:0 40px 80px -30px rgba(40,30,90,.55),inset 0 0 0 1px rgba(255,255,255,.08)}
.ea-cam{position:absolute;left:50%;top:5px;width:6px;height:6px;margin-left:-3px;border-radius:50%;background:#2c3440;box-shadow:inset 0 0 0 1.5px #111}
.ea-screen{border-radius:8px;overflow:hidden;background:#f6f7fb;aspect-ratio:16/10}
.ea-fit{width:1440px;height:900px;transform-origin:0 0;transform:scale(var(--ea-s,.79))}
.ea-base{position:relative;height:18px;margin:0 -6%;border-radius:2px 2px 18px 18px;background:linear-gradient(180deg,#d9dbe2,#a9adb8 60%,#8a8f9b);box-shadow:0 30px 40px -18px rgba(40,30,90,.45)}
.ea-base span{position:absolute;left:50%;top:0;width:16%;height:7px;margin-left:-8%;border-radius:0 0 10px 10px;background:#b9bcc6}
.ea-float{position:absolute;z-index:3;display:flex;align-items:center;gap:12px;padding:12px 16px;border-radius:16px;background:#fff;box-shadow:0 18px 40px -16px rgba(40,30,90,.45);color:#121a33;animation:eafloat 6s ease-in-out infinite}
.ea-float b{display:block;font-family:var(--f-display);font-size:.92rem}
.ea-float span{font-size:.78rem;color:#5b6684}
.ea-fi{width:34px;height:34px;border-radius:10px;display:grid;place-items:center;background:#dcf5e7;color:#14915f}
.ea-fi2{background:#e6dcff;color:#6a3fd6}
.ea-fi svg{width:18px;height:18px}
.ea-f1{left:0;top:30%}.ea-f2{right:0;top:58%;animation-delay:-3s}
@keyframes eafloat{50%{transform:translateY(-8px)}}
@media (max-width:900px){.ea-float{display:none}.ea-stage{padding:24px 2% 0;margin-top:36px}.ea-lid{padding:8px 8px 10px;border-radius:14px 14px 6px 6px}.ea-base{height:10px}.ea-laptop{transform:none}}

/* app canvas, designed at 1440 x 900 */
.ea-app{display:grid;grid-template-columns:232px 1fr;width:1440px;height:900px;background:#f6f7fb;color:#121a33;font-family:var(--f-body);font-size:14px;line-height:1.4;text-align:left}
.ea-app svg{width:18px;height:18px;flex:none}
.ea-side{display:flex;flex-direction:column;gap:14px;padding:20px 14px;background:#fff;border-right:1px solid #eceef5}
.ea-brand{display:flex;align-items:center;gap:10px;padding:0 6px}
.ea-logo{width:34px;height:34px;border-radius:10px;background:#0f2557;display:grid;place-items:center}
.ea-logo svg{width:20px;height:18px}
.ea-brand b{font-family:var(--f-display);font-size:17px;font-weight:800;letter-spacing:-.02em}
.ea-brand em{font-style:normal;color:#29abe2}
.ea-campus{display:flex;align-items:center;gap:10px;padding:10px;border:1px solid #eceef5;border-radius:12px}
.ea-campus i{width:30px;height:30px;border-radius:8px;display:grid;place-items:center;font-style:normal;font-size:11px;font-weight:800;background:#fff1cc;color:#7a4b00}
.ea-campus b{display:block;font-size:13px}
.ea-campus span{font-size:11px;color:#6b7590}
.ea-campus svg{margin-left:auto;width:14px;color:#6b7590}
.ea-nav{display:grid;gap:2px}
.ea-nav-i{display:flex;align-items:center;gap:12px;padding:10px 12px;border-radius:10px;color:#4a5573;font-weight:600;font-size:14px}
.ea-nav-i.on{background:#ede7ff;color:#3b1d8f}
.ea-nav-i em{margin-left:auto;font-style:normal;font-size:11px;font-weight:800;background:#ff6fa3;color:#fff;border-radius:999px;padding:1px 7px}
.ea-new{margin-top:auto;padding:16px;border-radius:16px;background:linear-gradient(160deg,#fff4c9,#ffe3a0);display:grid;gap:6px}
.ea-new-i{width:30px;height:30px;border-radius:9px;background:#fff;display:grid;place-items:center;color:#b07800}
.ea-new b{font-family:var(--f-display);font-size:15px}
.ea-new p{font-size:12px;color:#5b4a1a;line-height:1.45}
.ea-main{display:flex;flex-direction:column;min-width:0}
.ea-top{display:flex;align-items:center;gap:16px;padding:18px 26px;background:#fff;border-bottom:1px solid #eceef5}
.ea-top h4{margin:0;font-family:var(--f-display);font-size:20px;font-weight:800;letter-spacing:-.02em;color:#121a33}
.ea-top > div:first-child span{font-size:12px;color:#6b7590}
.ea-search{margin-left:auto;display:flex;align-items:center;gap:10px;width:360px;padding:9px 12px;border-radius:12px;background:#f3f4f9;color:#6b7590;font-size:13px}
.ea-search kbd{margin-left:auto;font:600 11px var(--f-mono);background:#fff;border:1px solid #e3e6ef;border-radius:6px;padding:1px 6px}
.ea-sample{font:700 10px var(--f-mono);letter-spacing:.14em;text-transform:uppercase;padding:5px 9px;border-radius:999px;background:#fff1cc;color:#7a4b00}
.ea-bell{position:relative;width:38px;height:38px;border-radius:50%;border:1px solid #eceef5;display:grid;place-items:center;color:#4a5573}
.ea-bell i{position:absolute;top:8px;right:9px;width:8px;height:8px;border-radius:50%;background:#ff4d6d;box-shadow:0 0 0 2px #fff}
.ea-me{width:38px;height:38px;border-radius:50%;display:grid;place-items:center;font-weight:800;font-size:13px;color:#fff;background:linear-gradient(135deg,#7c5cff,#2f9fe0)}
.ea-grid{flex:1;display:grid;grid-template-columns:repeat(12,minmax(0,1fr));grid-template-rows:auto auto 1fr 1fr;gap:16px;padding:20px 26px 22px;min-height:0}
.ea-kpis{grid-column:1/10;display:grid;grid-template-columns:repeat(4,1fr);gap:14px}
.ea-kpi{position:relative;padding:16px 16px 14px;border-radius:18px;display:grid;gap:4px;overflow:hidden}
.ea-kpi.k1{background:#ffd9e8}.ea-kpi.k2{background:#ffeab2}.ea-kpi.k3{background:#d5e8ff}.ea-kpi.k4{background:#e6ddff}
.ea-kpi-h{display:flex;justify-content:space-between;align-items:center;font-size:13px;font-weight:700;color:#3a3150}
.ea-more{width:26px!important;height:26px!important;padding:4px;border-radius:8px;background:rgba(255,255,255,.7)}
.ea-kpi b{font-family:var(--f-display);font-size:32px;font-weight:800;letter-spacing:-.03em;color:#121a33}
.ea-kpi-f{display:flex;align-items:center;gap:8px}
.ea-up{display:inline-flex;align-items:center;gap:3px;font-size:12px;font-weight:800;color:#0e7a4c;background:rgba(255,255,255,.75);padding:2px 8px;border-radius:999px}
.ea-up svg{width:12px;height:12px}
.ea-kpi-f small{font-size:11px;color:#5b5470}
.ea-spark{margin-left:auto;width:90px!important;height:26px!important}
.ea-quick{grid-column:10/13;display:grid;grid-template-columns:1fr 1fr;gap:10px;align-content:stretch}
.ea-btn{display:flex;align-items:center;justify-content:center;gap:8px;padding:12px;border-radius:14px;background:#fff;border:1px solid #e3e6ef;font-weight:700;font-size:13px;color:#121a33}
.ea-btn svg{width:16px;height:16px}
.ea-btn-p{background:#ff6fa3;border-color:#ff6fa3;color:#fff}
.ea-btn-w{grid-column:1/-1}
.ea-card{background:#fff;border:1px solid #eceef5;border-radius:18px;padding:16px;display:flex;flex-direction:column;min-height:0;box-shadow:0 6px 18px -12px rgba(30,40,90,.18)}
.ea-card-h{display:flex;align-items:center;gap:10px;margin-bottom:12px}
.ea-card-h b{font-family:var(--f-display);font-size:16px;font-weight:800;letter-spacing:-.01em}
.ea-pill{display:inline-flex;align-items:center;gap:4px;font-size:12px;font-weight:600;color:#4a5573;padding:4px 10px;border:1px solid #eceef5;border-radius:999px}
.ea-pill svg{width:13px;height:13px}
.ea-tabs{margin-left:auto;display:flex;gap:2px;padding:3px;border-radius:10px;background:#f3f4f9;font-size:12px;font-weight:600;color:#6b7590}
.ea-tabs span{padding:4px 10px;border-radius:8px}.ea-tabs .on{background:#fff;color:#121a33;box-shadow:0 1px 3px rgba(0,0,0,.08)}
.ea-cal{grid-column:1/9;grid-row:3}
.ea-cal-g{flex:1;display:grid;grid-template-columns:52px repeat(6,1fr);grid-template-rows:34px repeat(7,1fr);gap:0;position:relative;min-height:0}
.ea-cal-d{display:flex;align-items:baseline;gap:6px;justify-content:center;font-size:12px;color:#6b7590;font-weight:600;border-bottom:1px solid #eceef5}
.ea-cal-d b{font-size:14px;color:#121a33}
.ea-cal-d.today b{background:#7c5cff;color:#fff;border-radius:8px;padding:0 6px}
.ea-cal-t{font:500 11px var(--f-mono);color:#8a93ab;padding-top:2px}
.ea-cal-c{border-right:1px dashed #eef0f5;border-bottom:1px dashed #eef0f5}
.ea-cal-c.wk{background:repeating-linear-gradient(135deg,#f7f8fb 0 6px,#fff 6px 12px)}
.ea-ev{margin:3px 4px;padding:5px 8px;border-radius:8px;font-size:11.5px;font-weight:700;line-height:1.25;border-left:3px solid;overflow:hidden;z-index:1}
.ev-pink{background:#ffe3ee;border-color:#ff4d8d;color:#8a1c48}.ev-amber{background:#fff1cc;border-color:#f0a000;color:#6b3e00}
.ev-blue{background:#dcecff;border-color:#2f8fe0;color:#14457f}.ev-lilac{background:#ece5ff;border-color:#7c5cff;color:#3b1d8f}
.ev-green{background:#dcf5e7;border-color:#14915f;color:#0b5a38}
.ea-now{position:relative;align-self:start;height:0;border-top:2px solid #ff4d6d;z-index:2;margin-top:12px}
.ea-now i{position:absolute;left:-5px;top:-6px;width:10px;height:10px;border-radius:50%;background:#ff4d6d}
.ea-act{grid-column:9/13;grid-row:2/4}
.ea-live{margin-left:auto;display:inline-flex;align-items:center;gap:6px;font:700 10px var(--f-mono);letter-spacing:.14em;text-transform:uppercase;color:#14915f}
.ea-live i{width:7px;height:7px;border-radius:50%;background:#14915f;animation:blink 1.8s infinite}
.ea-act ul{list-style:none;margin:0;padding:0;display:grid;gap:4px}
.ea-act li{display:grid;grid-template-columns:34px 1fr auto;gap:10px;align-items:center;padding:8px 6px;border-radius:12px}
.ea-act li:first-child{background:#f7f3ff}
.ea-act p{font-size:13px;color:#2b3350;line-height:1.35}
.ea-act p b{color:#121a33}
.ea-act span{font-size:11.5px;color:#6b7590}
.ea-act em{font-style:normal;font-size:11px;color:#8a93ab;align-self:start;margin-top:3px}
.ea-av{width:34px;height:34px;border-radius:50%;display:grid;place-items:center;font-style:normal;font-size:12px;font-weight:800;color:#2b2140}
.ea-av.a1{background:#ffd0e2}.ea-av.a2{background:#ffe3a3}.ea-av.a3{background:#d9ceff}.ea-av.a4{background:#cde6ff}.ea-av.a5{background:#cdeedd}.ea-av.a6{background:#ffd9c7}
.ea-tbl{grid-column:1/7;grid-row:4}
.ea-tbl table{width:100%;border-collapse:collapse;font-size:13px}
.ea-tbl th{text-align:left;font-size:11.5px;font-weight:700;color:#6b7590;padding:6px 8px;background:#f7f8fb}
.ea-tbl th:first-child{border-radius:8px 0 0 8px}.ea-tbl th:last-child{border-radius:0 8px 8px 0}
.ea-tbl td{padding:7px 8px;border-bottom:1px solid #f0f2f7;color:#2b3350;white-space:nowrap}
.ea-chk{display:inline-block;width:15px;height:15px;border-radius:4px;border:1.5px solid #cdd2df;vertical-align:middle}
.ea-who{display:flex;align-items:center;gap:10px}
.ea-who .ea-av{width:30px;height:30px;font-size:11px}
.ea-who b{display:block;font-size:13px;color:#121a33}
.ea-who span{font-size:11px;color:#8a93ab}
.ea-dept{font-size:11.5px;font-weight:700;color:#3b1d8f;background:#efe9ff;padding:3px 9px;border-radius:999px}
.ea-st{display:inline-flex;align-items:center;gap:6px;font-size:12px;font-weight:700;padding:3px 9px;border-radius:999px}
.ea-st i{width:6px;height:6px;border-radius:50%;background:currentColor}
.st-blue{background:#dcecff;color:#14457f}.st-green{background:#dcf5e7;color:#0b5a38}.st-amber{background:#fff1cc;color:#6b3e00}.st-lilac{background:#ece5ff;color:#3b1d8f}
.ea-acts{color:#8a93ab}.ea-acts svg{width:16px;height:16px}
.ea-don{grid-column:7/10;grid-row:4}
.ea-don-b{flex:1;display:grid;grid-template-columns:132px 1fr;gap:12px;align-items:center}
.ea-ring{position:relative;width:132px;height:132px}
.ea-ring svg{width:132px!important;height:132px!important;transform:rotate(-90deg)}
.ea-ring circle{fill:none;stroke-width:16;stroke-linecap:round}
.ea-ring .trk{stroke:#f1f2f7}
.ea-ring div{position:absolute;inset:0;display:grid;place-content:center;text-align:center}
.ea-ring b{font-family:var(--f-display);font-size:24px;font-weight:800;letter-spacing:-.03em}
.ea-ring span{font-size:11px;color:#6b7590}
.ea-leg{list-style:none;margin:0;padding:0;display:grid;gap:8px}
.ea-leg li{display:grid;grid-template-columns:10px 1fr auto auto;gap:8px;align-items:center;font-size:12.5px;color:#4a5573}
.ea-leg i{width:10px;height:10px;border-radius:3px}
.ea-leg b{color:#121a33;font-weight:700}
.ea-leg em{font-style:normal;font-size:11px;font-weight:800;color:#0e7a4c;min-width:30px;text-align:right}
.ea-seats{grid-column:10/13;grid-row:4;gap:0}
.ea-seat{display:grid;grid-template-columns:44px 1fr 38px;gap:8px;align-items:center;padding:5px 0;font-size:12.5px}
.ea-seat span{font-weight:700;color:#4a5573}
.ea-seat > i{height:10px;border-radius:6px;background:#f1f2f7;overflow:hidden;display:block}
.ea-seat > i i{display:block;height:100%;border-radius:6px;background:linear-gradient(90deg,#7c5cff,#2f9fe0)}
.ea-seat b{text-align:right;font-size:12px}
/* ea fit fixes: keep every panel inside the 1440x900 screen */
.ea-app{overflow:hidden}
.ea-grid{grid-template-rows:auto minmax(0,1.25fr) minmax(0,1fr);gap:14px;padding:18px 24px 20px}
.ea-cal{grid-row:2}.ea-act{grid-row:2}.ea-tbl,.ea-don,.ea-seats{grid-row:3}
.ea-card{overflow:hidden}
.ea-kpi-f small{white-space:nowrap}
.ea-campus > div{min-width:0}
.ea-campus span{display:block;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.ea-act p,.ea-act span{white-space:nowrap;overflow:hidden;text-overflow:ellipsis;display:block}
.ea-act li > div{min-width:0}
.ea-f1{top:58%}
.ea-app{grid-template-rows:900px}
.ea-main,.ea-side{min-height:0;overflow:hidden}
.ea-nav-i{padding:9px 12px}
.ea-new{padding:12px 14px}
.ea-pill,.ea-card-h b{white-space:nowrap}
.ea-don-b{grid-template-columns:118px 1fr;min-height:0}
.ea-ring,.ea-ring svg{width:118px!important;height:118px!important}
.ea-tbl{grid-column:1/6}.ea-don{grid-column:6/10}
.ea-ev{padding:3px 7px;font-size:11px;line-height:1.15;margin:2px 4px}
.ea-ring b{font-size:21px}
.ea-ring span{font-size:10px}
.ea-tbl th:last-child,.ea-tbl td:last-child{display:none}

/* ===== v11: eCare360 hero app + edSolutions360 / eCare360 infographics ===== */
.ea-app.hc .ea-nav-i.on{background:#d9f3ee;color:#0b5f55}
.ea-app.hc .ea-nav-i em,.ea-app.hc .ea-btn-p{background:#0e9f8e;border-color:#0e9f8e}
.ea-app.hc .ea-new{background:linear-gradient(160deg,#ddf5ef,#bfe9df)}.ea-app.hc .ea-new p{color:#164a42}.ea-app.hc .ea-new-i{color:#0b8a7a}
.ea-app.hc .ea-kpi.k1{background:#d4f3ec}.ea-app.hc .ea-kpi.k2{background:#d5e8ff}.ea-app.hc .ea-kpi.k3{background:#ffeab2}.ea-app.hc .ea-kpi.k4{background:#e6ddff}
.ea-app.hc .ea-campus i{background:#d4f3ec;color:#0b5f55}
.ea-app.hc .ea-me{background:linear-gradient(135deg,#0e9f8e,#2f9fe0)}
.ea-app.hc .ea-dept{background:#e3f4ff;color:#14457f}
.ea-app.hc .ea-seat > i i{background:linear-gradient(90deg,#0e9f8e,#2f9fe0)}
.hc-stage::before{background:radial-gradient(60% 70% at 15% 20%,#c9f1e6,transparent 70%),radial-gradient(55% 70% at 85% 10%,#d4e6ff,transparent 70%),radial-gradient(70% 60% at 60% 90%,#e4dcff,transparent 70%),linear-gradient(160deg,#f0fbf8,#eef5ff)!important}
.eh-fi-r{background:#ffe1e6!important;color:#d0213f!important}
.eh-beds{grid-column:1/9;grid-row:2}
.eh-leg{margin-left:auto;display:flex;gap:12px;font-size:11.5px;color:#4a5573;font-weight:600;white-space:nowrap}
.eh-leg i{display:inline-block;width:10px;height:10px;border-radius:3px;margin-right:5px;vertical-align:-1px;border:1px solid}
.eh-wards{flex:1;display:grid;grid-template-rows:repeat(4,1fr);gap:10px;min-height:0}
.eh-ward{display:grid;grid-template-columns:118px 1fr;gap:12px;align-items:center;min-height:0}
.eh-ward > div:first-child b{display:block;font-size:13.5px;font-family:var(--f-display);font-weight:800}
.eh-ward > div:first-child span{font-size:11px;color:#6b7590;white-space:nowrap}
.eh-bedrow{display:grid;grid-template-columns:repeat(12,1fr);gap:6px;height:100%}
.eh-bed{border-radius:9px;display:flex;flex-direction:column;justify-content:space-between;padding:6px 7px;font-size:11px;font-weight:800;border:1px solid;min-height:0}
.eh-bed small{font-size:9.5px;font-weight:600;opacity:.85}
.b-o{background:#dcecff;border-color:#a9cdf3;color:#14457f}
.b-a{background:#fff;border-color:#cfd6e4;border-style:dashed;color:#7a849c}
.b-c{background:#fff1cc;border-color:#f2c868;color:#6b3e00}
.b-d{background:#ffe3ee;border-color:#ffa3c4;color:#8a1c48}
.b-r{background:#ece5ff;border-color:#bfadff;color:#3b1d8f}
.eh-bedid{font-size:12.5px}
.ea-tbl.eh-adm th:last-child,.ea-tbl.eh-adm td:last-child{display:table-cell}
.ea-app.hc .ea-ring b{font-size:17px}
.tn-city,.tn-h{paint-order:stroke;stroke:var(--surface);stroke-width:4px;stroke-linejoin:round}
.eh-adm{grid-column:1/6}
.eh-adm td{padding:7px 8px}
.eh-wait{grid-template-columns:92px 1fr 46px!important}
/* hero-wide shared */
.page-hero.hero-wide .crumbs{margin-bottom:6px}
/* network map */
.nw{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:22px;align-items:stretch}
.nw-map{padding:18px;display:grid;place-items:center;background:radial-gradient(80% 60% at 70% 40%,color-mix(in srgb,var(--cyan) 10%,transparent),transparent),var(--surface)}
.tn-map{width:100%;max-width:520px;height:auto}
.tn-dots circle{fill:color-mix(in srgb,var(--blue) 26%,var(--line))}
.tn-dot{fill:var(--cyan);stroke:var(--surface);stroke-width:2.5}
.tn-halo{fill:var(--cyan);opacity:.25;transform-box:fill-box;transform-origin:center;animation:tnp 2.6s var(--d,0s) ease-out infinite}
@keyframes tnp{0%{transform:scale(.4);opacity:.45}100%{transform:scale(1.6);opacity:0}}
.tn-city{font:700 12.5px var(--f-display);fill:var(--ink)}
.tn-h{font:500 10.5px var(--f-body);fill:var(--muted)}
.tn-sea{font:500 10px var(--f-mono);letter-spacing:.2em;text-transform:uppercase;fill:var(--faint)}
.nw-side{display:grid;gap:18px;align-content:start}
.nw-stats{display:grid;grid-template-columns:repeat(2,1fr);gap:14px}
.nw-stats > div,.tz-facts > div,.sk-foot > div{background:var(--surface);border:1px solid var(--line);border-radius:var(--r-md);padding:18px 20px;box-shadow:var(--shadow)}
.nw-stats b,.tz-facts b,.sk-foot b{display:block;font:800 clamp(1.7rem,3vw,2.3rem)/1.05 var(--f-display);letter-spacing:-.03em;background:var(--accent-grad);-webkit-background-clip:text;background-clip:text;color:transparent}
.nw-stats span,.tz-facts span,.sk-foot span{font-size:.9rem;color:var(--muted)}
.nw-list{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:1fr 1fr;gap:10px}
.nw-list li{display:grid;gap:2px;padding:12px 14px;border:1px solid var(--line);border-radius:var(--r-sm);background:var(--surface)}
.nw-city{display:flex;align-items:center;gap:6px;font:600 .7rem var(--f-mono);letter-spacing:.12em;text-transform:uppercase;color:var(--blue)}
.nw-city svg{width:13px;height:13px}
.nw-list b{font-size:.95rem;color:var(--ink)}
.nw-list em{font-style:normal;font-size:.8rem;color:var(--muted)}
/* patient journey */
.jr-card{padding:28px 30px}
.jr-top{display:flex;flex-wrap:wrap;justify-content:space-between;gap:16px;align-items:end;padding-bottom:22px;border-bottom:1px dashed var(--line-2)}
.jr-top b{display:block;margin-top:6px;color:var(--ink);font-size:1.02rem}
.jr-sum{display:flex;flex-wrap:wrap;gap:8px}
.jr-sum span{padding:7px 12px;border-radius:999px;background:var(--surface-2);border:1px solid var(--line);font-size:.86rem;color:var(--muted)}
.jr-sum b{display:inline;margin:0;color:var(--ink)}
.jr{list-style:none;margin:24px 0 0;padding:0;display:flex;flex-wrap:wrap;row-gap:30px;position:relative}
.jr li{flex:none;scroll-snap-align:start}
.jr-day{width:56px;position:relative;display:grid;place-items:start center}
.jr-day span{writing-mode:vertical-rl;transform:rotate(180deg);font:700 .7rem var(--f-mono);letter-spacing:.18em;text-transform:uppercase;color:var(--surface);background:var(--navy);padding:12px 6px;border-radius:999px}
:root[data-yl="dark"] .jr-day span{background:var(--cyan);color:#06122b}
.jr-ev{width:calc((100% - 168px) / 5);padding:0 10px;position:relative}
@media (max-width:1000px) and (min-width:621px){.jr{flex-wrap:nowrap;overflow-x:auto;scroll-snap-type:x proximity;padding-bottom:8px}.jr-ev{width:200px}}
.jr-ev::before{content:"";position:absolute;left:0;right:0;top:21px;height:2px;background:linear-gradient(90deg,var(--cyan),var(--blue))}
.jr-ic{position:relative;z-index:1;width:44px;height:44px;border-radius:14px;display:grid;place-items:center;background:var(--surface);border:2px solid var(--cyan);color:var(--blue);box-shadow:0 0 0 6px var(--surface)}
.jr-ic svg{width:20px;height:20px}
.jr-ev time{display:block;margin-top:14px;font:600 .74rem var(--f-mono);color:var(--blue)}
.jr-ev b{display:block;color:var(--ink);font-size:1rem;margin-top:2px}
.jr-ev p{font-size:.88rem;color:var(--text);line-height:1.45;margin:4px 0 8px}
.jr-ev em{font-style:normal;font-size:.72rem;font-weight:700;padding:3px 9px;border-radius:999px;background:var(--info-bg);color:var(--info)}
.jr.pre .jr-ev{opacity:0;transform:translateY(10px)}
.jr .jr-ev{transition:opacity .5s ease,transform .5s ease}
.jr .jr-ev:nth-child(n){transition-delay:calc(var(--i,0) * 60ms)}
/* sankey */
.sk-card{padding:26px}
.sk-scroll{overflow-x:auto}
.sk{width:100%;min-width:760px;height:auto;display:block}
.sk-f{opacity:.32;transition:opacity .25s ease}
.sk-f:hover{opacity:.62}
.sk-card.pre .sk-f{opacity:0}
.sk-card .sk-f{transition:opacity .9s var(--d,0s) ease}
.sk-l{font:700 13px var(--f-display);fill:var(--ink)}
.sk-v{font:500 11.5px var(--f-mono);fill:var(--muted)}
.sk-h{font:600 10.5px var(--f-mono);letter-spacing:.18em;text-transform:uppercase;fill:var(--faint)}
.sk-mid{fill:var(--navy)}
:root[data-yl="dark"] .sk-mid{fill:var(--cyan)}
.sk-mt{font:800 13px var(--f-display);fill:var(--ink)}
.sk-foot{display:grid;grid-template-columns:repeat(4,1fr);gap:14px;margin-top:18px}
/* time zones */
.tz{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:22px}
.tz-c{gap:18px}
.tz-h{display:flex;gap:12px;align-items:flex-start;min-height:66px}
.tz-h .tz-cc{color:#fff;font-size:.8rem}
.tz-h b{display:block;color:var(--ink);font-size:1.05rem}
.tz-h span{font-size:.85rem;color:var(--muted)}
.tz-cc{flex:none;width:44px;height:44px;border-radius:14px;display:grid;place-items:center;font:700 .8rem var(--f-mono);letter-spacing:.06em;color:#fff;background:var(--accent-grad)}
.tz-t{display:flex;align-items:baseline;gap:12px}
.tz-t b{font:800 clamp(2.2rem,4vw,3rem)/1 var(--f-display);letter-spacing:-.03em;color:var(--ink);font-variant-numeric:tabular-nums}
.tz-st{font-size:.85rem;color:var(--muted);font-weight:600}
.tz-st.on{color:var(--ok)}
.tz-strip{position:relative;height:14px;border-radius:999px;background:linear-gradient(90deg,#1b2a55 0%,#3b4f8f 18%,#9fd3f5 30%,#dff2ff 50%,#9fd3f5 70%,#3b4f8f 82%,#1b2a55 100%)}
.tz-work{position:absolute;left:33.3%;width:37.5%;top:-4px;bottom:-4px;border-radius:999px;border:2px solid color-mix(in srgb,var(--ok) 70%,transparent)}
.tz-now{position:absolute;top:-6px;width:4px;height:26px;margin-left:-2px;border-radius:2px;background:#ff4d6d;box-shadow:0 0 0 3px color-mix(in srgb,#ff4d6d 25%,transparent);left:var(--x,50%);transition:left .6s ease}
.tz-ax{display:flex;justify-content:space-between;font:500 .68rem var(--f-mono);color:var(--faint);margin-top:-8px}
.tz-facts{display:grid;grid-template-columns:repeat(4,1fr);gap:14px;margin-top:22px}
/* accreditation */
.acc{display:grid;grid-template-columns:minmax(0,1.25fr) minmax(0,1fr);gap:22px}
.acc-hd{display:flex;justify-content:space-between;align-items:center;gap:10px}
.acc-hd .chip{font-size:.7rem}
.acc-body{display:grid;grid-template-columns:240px 1fr;gap:22px;align-items:center}
.nc-wheel{width:100%;max-width:260px;height:auto}
.nc-core{fill:var(--surface);stroke:var(--line);stroke-width:1}
.nc-big{font:800 34px var(--f-display);fill:var(--ink);letter-spacing:-.03em}
.nc-sm{font:500 11px var(--f-body);fill:var(--muted)}
.nc-l{font:700 11px var(--f-mono);fill:#fff;pointer-events:none}
.nw-seg{transform-origin:130px 130px;transition:transform .8s cubic-bezier(.2,.8,.2,1) var(--d,0s),opacity .8s var(--d,0s)}
.acc-naac.pre .nw-seg{transform:scale(.6);opacity:0}
.nc-list{list-style:none;margin:0;padding:0;display:grid;gap:9px}
.nc-list li{display:grid;grid-template-columns:30px 1fr auto;gap:2px 10px;align-items:center}
.nc-list i{grid-row:span 2;width:30px;height:30px;border-radius:9px;display:grid;place-items:center;font:700 .66rem var(--f-mono);font-style:normal;color:#fff}
.nc-list b{display:block;font-size:.86rem;color:var(--ink);line-height:1.3}
.nc-list span{display:block;font-size:.76rem;color:var(--muted)}
.nc-list em{font-style:normal;font:700 .82rem var(--f-mono);color:var(--ink)}
.nc-list u{grid-column:2/4;height:5px;border-radius:9px;background:var(--sunk);overflow:hidden;text-decoration:none}
.nc-list s{display:block;height:100%;border-radius:9px;transition:width 1s ease .2s}
.acc-naac.pre .nc-list s,.gm.pre s{width:0!important}
.acc-sub{font-size:.92rem;color:var(--muted);margin:0}.acc-sub b{color:var(--ink)}
.hm{display:grid;grid-template-columns:44px repeat(6,1fr);gap:5px}
.hm-h{font:600 .68rem var(--f-mono);color:var(--muted);display:grid;place-items:center;padding:4px 0}
.hm-c{height:38px;border-radius:8px;display:grid;place-items:center;font:700 .82rem var(--f-mono)}
.hm-c.l0{background:var(--sunk);color:var(--faint)}
.hm-c.l1,.hm-leg .l1{background:#d8efff;color:#1a5a92}
.hm-c.l2,.hm-leg .l2{background:#7fc8f0;color:#0b3a64}
.hm-c.l3,.hm-leg .l3{background:#1a6fd1;color:#fff}
.hm-leg{display:flex;gap:14px;font-size:.78rem;color:var(--muted)}
.hm-leg i{display:inline-block;width:12px;height:12px;border-radius:4px;margin-right:6px;vertical-align:-2px}
.acc-g{display:grid;grid-template-columns:170px 1fr;gap:16px;align-items:center;padding-top:14px;border-top:1px dashed var(--line-2)}
.acc-g b{color:var(--ink)}.acc-g p{font-size:.86rem;color:var(--muted);margin:4px 0 0}
.gauge{width:100%;height:auto}
.g-trk,.g-val{fill:none;stroke-width:16;stroke-linecap:round}
.g-trk{stroke:var(--sunk)}.g-val{stroke:url(#none);stroke:var(--blue)}
.g-tg{stroke:var(--ink);stroke-width:3}
.g-big{font:800 30px var(--f-display);fill:var(--ink)}
.g-sm{font:500 10.5px var(--f-body);fill:var(--muted)}
/* academic year */
.yr-card{padding:24px 26px 34px}
.yr-scroll{overflow-x:auto}
.yr{position:relative;min-width:820px;display:grid;gap:8px;--lab:200px}
.yr-r{display:grid;grid-template-columns:var(--lab) 1fr;gap:14px;align-items:center}
.yr-r > b{font-size:.88rem;color:var(--ink);font-weight:700}
.yr-t{display:grid;grid-template-columns:repeat(12,1fr);gap:0;min-height:34px;border-radius:10px;background:repeating-linear-gradient(90deg,transparent 0 calc(100%/12 - 1px),var(--line) calc(100%/12 - 1px) calc(100%/12))}
.yr-hdr .yr-t{background:none;min-height:0}
.yr-hdr span{font:600 .7rem var(--f-mono);letter-spacing:.1em;text-transform:uppercase;color:var(--muted);text-align:center}
.yb{grid-row:1;margin:3px 2px;border-radius:8px;display:flex;align-items:center;padding:0 10px;overflow:hidden;font-style:normal}
.yb span{font-size:.74rem;font-weight:700;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.y-pink{background:#ffe3ee;color:#8a1c48}.y-blue{background:#dcecff;color:#14457f}.y-amber{background:#fff1cc;color:#6b3e00}
.y-lilac{background:#ece5ff;color:#3b1d8f}.y-green{background:#dcf5e7;color:#0b5a38}.y-teal{background:#d4f3ec;color:#0b5f55}
.y-navy{background:repeating-linear-gradient(135deg,#0f2557 0 10px,#1b3a80 10px 20px);color:#fff}
.yr-today{position:absolute;top:26px;bottom:-4px;left:calc(var(--lab) + 14px + (100% - var(--lab) - 14px) * var(--m,0) / 12);width:2px;background:#ff4d6d;display:none}
.yr-today.on{display:block}
.yr-today span{position:absolute;bottom:-22px;left:50%;transform:translateX(-50%);font:700 .64rem var(--f-mono);letter-spacing:.12em;text-transform:uppercase;color:#fff;background:#ff4d6d;padding:2px 7px;border-radius:999px}
/* group dashboard */
.gms{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:18px}
.gm{padding:22px}
.gm-h{display:grid;gap:2px}
.gm-h b{font:800 2.2rem/1 var(--f-display);color:var(--ink);letter-spacing:-.03em;margin-top:8px}
.gm-h > span:last-child{font-size:.8rem;color:var(--muted)}
.gm ul{list-style:none;margin:6px 0 0;padding:0;display:grid;gap:12px}
.gm li{display:grid;grid-template-columns:1fr auto;gap:5px 10px;font-size:.86rem;color:var(--text)}
.gm li b{font:700 .82rem var(--f-mono);color:var(--ink)}
.gm u{grid-column:1/-1;position:relative;height:8px;border-radius:9px;background:var(--sunk);text-decoration:none}
.gm s{display:block;height:100%;border-radius:9px;transition:width 1s ease .15s}
.gm u i{position:absolute;top:-4px;bottom:-4px;width:2px;background:var(--ink);opacity:.55}
@media (max-width:1080px){.gms{grid-template-columns:repeat(2,minmax(0,1fr))}.acc{grid-template-columns:1fr}.nw{grid-template-columns:1fr}}
@media (max-width:860px){.tz{grid-template-columns:1fr}.tz-facts,.sk-foot{grid-template-columns:repeat(2,1fr)}.acc-body{grid-template-columns:1fr;justify-items:center}.nc-list{width:100%}}
@media (max-width:620px){.gms{grid-template-columns:1fr}.nw-list{grid-template-columns:1fr}.acc-g{grid-template-columns:1fr;justify-items:center;text-align:center}.acc-g .gauge{max-width:200px}
 .jr{flex-direction:column;overflow:visible}.jr-day{width:auto;place-items:start}.jr-day span{writing-mode:horizontal-tb;transform:none;padding:5px 12px}
 .jr-ev{width:auto;padding:0 0 18px 60px;min-height:70px}.jr-ev::before{left:21px;right:auto;top:0;bottom:0;width:2px;height:auto;background:linear-gradient(180deg,var(--cyan),var(--blue))}
 .jr-ic{position:absolute;left:0;top:0}.jr-ev time{margin-top:0}.jr-card,.sk-card,.yr-card{padding:20px}.hm-c{height:32px}}
@media (prefers-reduced-motion:reduce){.tn-halo{animation:none}}
@media (max-width:620px){.yr{--lab:118px;min-width:760px}.yr-r > b{font-size:.76rem}.tn-city{font-size:21px}.tn-h,.tn-sea{display:none}.nw-map{padding:10px}}

/* ===== v12: edSolutions360 footprint — dotted world map with live campus clocks ===== */
.wm{position:relative;overflow:hidden;padding-block:110px;color:#e9eefb;background:radial-gradient(70% 60% at 70% 30%,rgba(41,171,226,.22),transparent 70%),radial-gradient(50% 50% at 10% 90%,rgba(124,92,255,.22),transparent 70%),linear-gradient(160deg,#081433,#0f2557 60%,#0a1a44)}
.wm .label{color:#8fd3f4}
.wm-head{display:grid;grid-template-columns:minmax(0,1.2fr) minmax(0,1fr);gap:20px 60px;align-items:end;margin-bottom:34px}
.wm-head h2{font-size:clamp(2.1rem,4.4vw,3.4rem);color:#fff;margin-top:18px}
.wm-head .serif{background:linear-gradient(95deg,#6fd0f5,#9b8cff);-webkit-background-clip:text;background-clip:text;color:transparent}
.wm-head p{font-size:1.08rem;color:#b9c5e2;max-width:60ch}
.wm-stage{position:relative}
.wm-map{width:100%;height:auto;display:block}
.wm-dots circle{fill:rgba(170,195,255,.22)}
.wm-arc{fill:none;stroke:url(#fpg);stroke-width:2.5;stroke-dasharray:6 8;animation:fpdash 1.2s linear infinite;opacity:.9}
@keyframes fpdash{to{stroke-dashoffset:-28}}
.wm-mv{fill:#fff;filter:drop-shadow(0 0 6px #6fd0f5)}
.wm-core{fill:#29abe2;stroke:#fff;stroke-width:3}
.p-in .wm-core{fill:#ffb020}
.wm-r1,.wm-r2{fill:none;stroke:#6fd0f5;stroke-width:2;transform-box:fill-box;transform-origin:center;animation:fpring 2.4s ease-out infinite}
.wm-r2{animation-delay:1.2s}.p-in .wm-r1,.p-in .wm-r2{stroke:#ffb020}
@keyframes fpring{0%{transform:scale(.8);opacity:.9}100%{transform:scale(4);opacity:0}}
.wm-card{position:absolute;width:300px;padding:16px 18px;border-radius:18px;background:rgba(255,255,255,.08);border:1px solid rgba(255,255,255,.16);backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px);box-shadow:0 24px 50px -24px rgba(0,0,0,.6)}
.wm-ch{display:flex;align-items:center;gap:10px}
.wm-ch b{color:#fff;font-size:.98rem}
.wm-tr{display:flex;align-items:center;gap:10px;margin-top:10px}.wm-tr .wm-time{margin-top:0}.wm-ch b{white-space:nowrap}
.wm-cc{flex:none;width:30px;height:30px;border-radius:9px;display:grid;place-items:center;font:700 .7rem var(--f-mono);color:#fff;background:linear-gradient(135deg,#29abe2,#1a6fd1)}
.c-in .wm-cc{background:linear-gradient(135deg,#ffb020,#ff6f3c)}
.wm-st{font:600 .66rem var(--f-mono);letter-spacing:.06em;text-transform:uppercase;padding:4px 8px;border-radius:999px;background:rgba(255,255,255,.1);color:#b9c5e2;white-space:nowrap}
.wm-st.on{background:rgba(20,185,120,.2);color:#6ff0b4}
.wm-time{display:block;margin-top:10px;font:800 2.6rem/1 var(--f-display);letter-spacing:-.03em;color:#fff;font-variant-numeric:tabular-nums}
.wm-card p{margin:8px 0 0;font-size:.84rem;color:#b9c5e2;line-height:1.45}
.c-uk{left:calc(10.1% + 30px);top:calc(20.9% - 40px)}
.c-in{right:calc(33.6% + 34px);top:calc(72.7% - 150px)}
.c-sg{left:calc(82.9% - 125px);top:calc(85.0% - 230px)}
.wm-facts{display:grid;grid-template-columns:repeat(4,1fr);margin-top:40px;border-top:1px solid rgba(255,255,255,.14)}
.wm-facts > div{padding:26px 22px 0;border-left:1px solid rgba(255,255,255,.12)}
.wm-facts > div:first-child{border-left:0;padding-left:0}
.wm-facts b{display:block;font:800 clamp(2.4rem,4vw,3.4rem)/1 var(--f-display);letter-spacing:-.03em;background:linear-gradient(95deg,#6fd0f5,#9b8cff);-webkit-background-clip:text;background-clip:text;color:transparent}
.wm-facts span{display:block;margin-top:8px;color:#b9c5e2;font-size:.95rem}
@media (max-width:1100px){.wm-card{width:250px}.wm-time{font-size:2.1rem}}
@media (max-width:900px){.wm{padding-block:80px}.wm-head{grid-template-columns:1fr}.wm-stage{display:grid;gap:12px}.wm-card{position:static;width:auto}.wm-facts{grid-template-columns:repeat(2,1fr)}.wm-facts > div{padding:22px 16px 0}.wm-facts > div:nth-child(3){border-left:0;padding-left:0}}
@media (prefers-reduced-motion:reduce){.wm-arc,.wm-r1,.wm-r2{animation:none}.wm-mv{display:none}}

/* ===== v13: home "in production" showcase cards ===== */
.pf{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:22px;align-items:stretch}
.pf-card{position:relative;display:flex;flex-direction:column;border-radius:26px;background:var(--surface);border:1px solid var(--line);box-shadow:var(--shadow);overflow:hidden;transition:transform .35s cubic-bezier(.2,.8,.2,1),box-shadow .35s}
.pf-card:hover{transform:translateY(-6px);box-shadow:var(--shadow-lg)}
.pf-band{position:relative;padding:26px 26px 22px;color:#fff;isolation:isolate;overflow:hidden}
.pf-band::before{content:"";position:absolute;inset:0;z-index:-1;background:var(--g)}
.pf-band::after{content:"";position:absolute;z-index:-1;right:-60px;top:-60px;width:220px;height:220px;border-radius:50%;background:radial-gradient(circle,rgba(255,255,255,.28),transparent 65%)}
.pf-hc{--g:linear-gradient(145deg,#0b7f73,#0e9f8e 45%,#29abe2);--t:#0e9f8e;--tb:#ddf5ef}
.pf-ed{--g:linear-gradient(145deg,#3b1d8f,#6a3fd6 50%,#2f9fe0);--t:#6a3fd6;--tb:#ede7ff}
.pf-bz{--g:linear-gradient(145deg,#0f2557,#1a6fd1 55%,#f0a000 140%);--t:#1a6fd1;--tb:#e3efff}
.pf-top{display:flex;justify-content:space-between;align-items:center}
.pf-ic{width:46px;height:46px;border-radius:14px;display:grid;place-items:center;background:rgba(255,255,255,.18);border:1px solid rgba(255,255,255,.3)}
.pf-ic svg{width:22px;height:22px;color:#fff}
.pf-live{display:inline-flex;align-items:center;gap:7px;font:700 .68rem var(--f-mono);letter-spacing:.16em;text-transform:uppercase;padding:6px 11px;border-radius:999px;background:rgba(255,255,255,.16)}
.pf-live i{width:7px;height:7px;border-radius:50%;background:#6ff0b4;box-shadow:0 0 0 0 rgba(111,240,180,.7);animation:pflive 1.8s infinite}
@keyframes pflive{70%{box-shadow:0 0 0 8px rgba(111,240,180,0)}100%{box-shadow:0 0 0 0 rgba(111,240,180,0)}}
.pf-band h3{margin:22px 0 4px;color:#fff;font-size:1.5rem}
.pf-band > p{margin:0;color:rgba(255,255,255,.8);font-size:.92rem}
.pf-big{display:flex;align-items:baseline;gap:10px;margin-top:22px}
.pf-big b{font:800 clamp(3rem,5vw,4.2rem)/.9 var(--f-display);letter-spacing:-.04em;color:#fff}
.pf-big span{font-size:.95rem;color:rgba(255,255,255,.85);max-width:10ch;line-height:1.3}
.pf-minis{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-top:20px}
.pf-minis div{padding:10px 12px;border-radius:14px;background:rgba(255,255,255,.13);border:1px solid rgba(255,255,255,.2)}
.pf-minis b{display:block;font:800 1.15rem var(--f-display);color:#fff}
.pf-minis span{font-size:.78rem;color:rgba(255,255,255,.8)}
.pf-body{flex:1;display:flex;flex-direction:column;gap:14px;padding:22px 26px 24px}
.pf-lbl{font:600 .68rem var(--f-mono);letter-spacing:.18em;text-transform:uppercase;color:var(--muted)}
.pf-tiles{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:1fr 1fr;gap:10px}
.pf-tiles li{display:flex;gap:10px;align-items:center;padding:9px 10px;border-radius:14px;border:1px solid var(--line);background:var(--surface-2);min-width:0;transition:border-color .2s,background .2s}
.pf-tiles li:hover{border-color:var(--t);background:var(--surface)}
.pf-tiles i{flex:none;width:34px;height:34px;border-radius:10px;display:grid;place-items:center;font:800 .74rem var(--f-display);font-style:normal;color:var(--t);background:var(--tb)}
:root[data-yl="dark"] .pf-tiles i{background:color-mix(in srgb,var(--t) 22%,transparent);color:#fff}
.pf-tiles div{min-width:0}
.pf-tiles b{display:block;font-size:.84rem;color:var(--ink);line-height:1.25}
.pf-tiles span{font-size:.74rem;color:var(--muted)}
.pf-bz .pf-tiles,.pf-ed .pf-tiles{grid-template-columns:1fr}
.pf-ed .pf-tiles{grid-template-columns:1fr 1fr}
.pf-chips{list-style:none;margin:0;padding:0;display:grid;gap:8px}
.pf-chips li{position:relative;padding:9px 12px 9px 30px;border-radius:12px;background:var(--surface-2);border:1px solid var(--line);font-size:.84rem;color:var(--text)}
.pf-chips li::before{content:"";position:absolute;left:12px;top:50%;width:8px;height:8px;margin-top:-4px;border-radius:3px;background:var(--t)}
.pf-cta{margin-top:auto;display:inline-flex;align-items:center;gap:8px;font-weight:700;color:var(--t);padding-top:6px}
.pf-cta svg{width:16px;height:16px;transition:transform .2s}
.pf-card:hover .pf-cta svg{transform:translateX(4px)}
:root[data-yl="dark"] .pf-cta{color:#8fd3f4}
@media (max-width:1080px){.pf{grid-template-columns:1fr 1fr}.pf-bz{grid-column:1/-1}}
@media (max-width:720px){.pf{grid-template-columns:1fr}.pf-tiles,.pf-ed .pf-tiles{grid-template-columns:1fr}}
@media (prefers-reduced-motion:reduce){.pf-live i{animation:none}}
.pf-big b span{font:inherit;color:inherit;letter-spacing:inherit}

.wm-run{list-style:none;margin:12px 0 0;padding:0;display:flex;flex-wrap:wrap;gap:6px}
.wm-run li{font-size:.76rem;font-weight:600;color:#dce6fb;padding:4px 10px;border-radius:999px;background:rgba(255,255,255,.1);border:1px solid rgba(255,255,255,.14)}
.wm-lbl{font:800 22px var(--f-display);fill:#fff;letter-spacing:-.01em;paint-order:stroke;stroke:#0b1a44;stroke-width:6px;stroke-linejoin:round}
@media (max-width:900px){.wm-lbl{font-size:34px}}
.wm-card.c-uk{left:calc(10.1% + 130px)}

.fp-labels.fp-4{grid-template-columns:repeat(4,1fr)}
@media (max-width:1000px){.page-hero.split-hero .wrap{grid-template-columns:minmax(0,1fr)}}
.nw-mix{padding:22px 24px;gap:10px}
.nw-mix ul{list-style:none;margin:0;padding:0;display:grid;gap:10px}
.nw-mix li{display:grid;grid-template-columns:64px 1fr;gap:12px;align-items:center;padding-top:10px;border-top:1px dashed var(--line-2)}
.nw-mix li:first-child{border-top:0;padding-top:0}
.nw-mix b{font:800 1.3rem var(--f-display);color:var(--blue)}
.nw-mix span{font-size:.9rem;color:var(--text)}

/* v14: footprint with Texas — wide map, cards in a row */
.wm-stage{margin-top:6px}
.wm-cards{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px;margin-top:22px}
.wm-cards .wm-card{position:static;width:auto;left:auto;right:auto;top:auto}
.wm-card.c-tx .wm-cc{background:linear-gradient(135deg,#9b8cff,#6a3fd6)}
.wm-card.c-tx .wm-st.on{background:rgba(155,140,255,.22);color:#cfc6ff}
.p-tx .wm-core{fill:#9b8cff}.p-tx .wm-r1,.p-tx .wm-r2{stroke:#9b8cff}
.wm-lbl{font-size:19px}
@media (max-width:1100px){.wm-cards{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media (max-width:620px){.wm-cards{grid-template-columns:1fr}.wm-lbl{font-size:30px}}

/* ===== v15: About leadership ===== */
.ld-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:22px}
.ld{position:relative;display:flex;flex-direction:column;padding:28px;border-radius:24px;background:var(--surface);border:1px solid var(--line);box-shadow:var(--shadow);overflow:hidden;transition:transform .3s cubic-bezier(.2,.8,.2,1),box-shadow .3s}
.ld:hover{transform:translateY(-5px);box-shadow:var(--shadow-lg)}
.ld::before{content:"";position:absolute;inset:0 0 auto;height:96px;background:var(--g);opacity:.14}
.ld-ceo{--g:linear-gradient(120deg,#29abe2,#1a6fd1);--t:#1a6fd1}
.ld-cto{--g:linear-gradient(120deg,#7c5cff,#2f9fe0);--t:#6a3fd6}
.ld-coo{--g:linear-gradient(120deg,#f0a000,#c9a227);--t:#a87a00}
.ld-top{position:relative;display:flex;justify-content:space-between;align-items:flex-start}
.ld-av{width:72px;height:72px;border-radius:22px;display:grid;place-items:center;font:800 1.5rem var(--f-display);color:#fff;background:var(--g);box-shadow:0 14px 30px -14px var(--t)}
.ld-own{font:600 .66rem var(--f-mono);letter-spacing:.14em;text-transform:uppercase;padding:6px 10px;border-radius:999px;background:var(--surface);border:1px solid var(--line);color:var(--t)}
.ld h3{margin:22px 0 2px;font-size:1.45rem}
.ld-role{margin:0;color:var(--t);font-weight:700;font-size:.95rem}
:root[data-yl="dark"] .ld-role,:root[data-yl="dark"] .ld-own,:root[data-yl="dark"] .ld-in{color:#8fd3f4}
.ld-bio{margin:14px 0 0;color:var(--text);font-size:.97rem;line-height:1.6}
.ld-chips{list-style:none;margin:18px 0 0;padding:0;display:flex;flex-wrap:wrap;gap:6px}
.ld-chips li{font-size:.78rem;font-weight:600;padding:5px 11px;border-radius:999px;background:var(--surface-2);border:1px solid var(--line);color:var(--text)}
.ld-in{margin-top:auto;padding-top:22px;display:inline-flex;align-items:center;gap:8px;font-weight:700;color:var(--t)}
.ld-in svg{width:16px;height:16px;transition:transform .2s}.ld-in:hover svg{transform:translate(2px,-2px)}
.ld-flow{display:grid;grid-template-columns:repeat(3,1fr);margin-top:26px;border-radius:22px;overflow:hidden;background:linear-gradient(120deg,#0f2557,#1a3f8f);color:#e9eefb}
.ld-flow > div{position:relative;padding:24px 26px;border-left:1px solid rgba(255,255,255,.12)}
.ld-flow > div:first-child{border-left:0}
.ld-flow > div:not(:last-child)::after{content:"";position:absolute;right:-9px;top:50%;width:16px;height:16px;margin-top:-8px;transform:rotate(45deg);background:#163577;border-top:1px solid rgba(255,255,255,.12);border-right:1px solid rgba(255,255,255,.12);z-index:1}
.ld-flow span{font:600 .7rem var(--f-mono);letter-spacing:.16em;color:#8fd3f4}
.ld-flow b{display:block;margin-top:8px;font:800 1.08rem var(--f-display);color:#fff}
.ld-flow p{margin:6px 0 10px;font-size:.88rem;color:#b9c5e2}
.ld-flow em{font-style:normal;font-size:.8rem;font-weight:700;padding:4px 10px;border-radius:999px;background:rgba(255,255,255,.12)}
@media (max-width:980px){.ld-grid{grid-template-columns:1fr 1fr}.ld-flow{grid-template-columns:1fr}.ld-flow > div{border-left:0;border-top:1px solid rgba(255,255,255,.12)}.ld-flow > div:first-child{border-top:0}.ld-flow > div::after{display:none}}
@media (max-width:640px){.ld-grid{grid-template-columns:1fr}}

/* ===== v16: About — hero, mission and vision, at a glance ===== */
.ah{position:relative;overflow:hidden;color:#e9eefb;background:radial-gradient(60% 70% at 80% 30%,rgba(41,171,226,.28),transparent 70%),radial-gradient(50% 60% at 0% 100%,rgba(124,92,255,.25),transparent 70%),linear-gradient(160deg,#071230,#0f2557 55%,#0b1d4c)}
.ah::before{content:"";position:absolute;inset:0;background-image:linear-gradient(rgba(255,255,255,.045) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.045) 1px,transparent 1px);background-size:56px 56px;mask-image:radial-gradient(80% 80% at 60% 40%,#000,transparent)}
.ah .wrap{position:relative;padding-block:40px 70px}
.ah .crumbs a,.ah .crumbs span{color:#b9c5e2}
.ah-grid{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(0,.9fr);gap:40px;align-items:center;margin-top:24px}
.ah-badge{display:inline-flex;align-items:center;gap:8px;padding:8px 14px;border-radius:999px;background:rgba(255,255,255,.08);border:1px solid rgba(255,255,255,.16);font:600 .72rem var(--f-mono);letter-spacing:.16em;text-transform:uppercase;color:#cfe6ff}
.ah-badge svg{width:15px;height:15px}
.ah h1{margin:24px 0 20px;font-size:clamp(2.6rem,5.6vw,4.6rem);line-height:1.02;color:#fff}
.ah h1 .serif{background:linear-gradient(95deg,#6fd0f5,#9b8cff);-webkit-background-clip:text;background-clip:text;color:transparent}
.ah-lede{font-size:1.15rem;color:#c3cee8;max-width:56ch}
.ah-actions{display:flex;flex-wrap:wrap;gap:12px;margin-top:30px}
.ah .btn-primary{background:#fff;color:#0f2557}.ah .btn-primary svg{width:18px;height:18px}
.ah-ghost{background:transparent;border:1px solid rgba(255,255,255,.3);color:#fff}
.ah-art{position:relative;max-width:480px;justify-self:center;width:100%}
.ah-pyr{width:100%;height:auto;filter:drop-shadow(0 40px 60px rgba(0,0,0,.45));animation:ahfloat 7s ease-in-out infinite}
@keyframes ahfloat{50%{transform:translateY(-12px)}}
.ah-ping{transform-box:fill-box;transform-origin:center;animation:fpring 2.4s ease-out infinite}
.ah-tag{position:absolute;padding:10px 14px;border-radius:14px;background:rgba(255,255,255,.1);border:1px solid rgba(255,255,255,.2);backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);font:800 .92rem var(--f-display);color:#fff;white-space:nowrap}
.ah-tag small{display:block;font:500 .72rem var(--f-body);color:#b9c5e2;margin-top:2px}
.ah-tag.t1{right:-4%;top:12%}.ah-tag.t2{left:-6%;top:30%}.ah-tag.t3{left:28%;bottom:-2%}
.ah-facts{display:grid;grid-template-columns:repeat(5,1fr);margin-top:56px;border-top:1px solid rgba(255,255,255,.14)}
.ah-facts > div{padding:24px 18px 0;border-left:1px solid rgba(255,255,255,.12)}
.ah-facts > div:first-child{border-left:0;padding-left:0}
.ah-facts b{display:block;font:800 clamp(2rem,3.4vw,2.8rem)/1 var(--f-display);letter-spacing:-.03em;background:linear-gradient(95deg,#6fd0f5,#9b8cff);-webkit-background-clip:text;background-clip:text;color:transparent}
.ah-facts b span{font:inherit;color:inherit}
.ah-facts > div > span{display:block;margin-top:8px;font-size:.9rem;color:#b9c5e2}
/* mission & vision */
.mv{padding-block:110px;background:var(--bg)}
.mv-head{text-align:center;max-width:760px;margin:0 auto 48px;display:grid;gap:14px;justify-items:center}
.mv-head h2{font-size:clamp(2.2rem,4.6vw,3.6rem)}
.mv-grid{display:grid;grid-template-columns:1fr 1fr;gap:24px}
.mv-card{position:relative;border-radius:30px;padding:40px 40px 34px;overflow:hidden;isolation:isolate}
.mv-m{color:#e9eefb;background:linear-gradient(150deg,#0f2557,#1a4fae 70%,#29abe2 140%)}
.mv-m::after{content:"";position:absolute;z-index:-1;right:-120px;top:-120px;width:360px;height:360px;border-radius:50%;background:radial-gradient(circle,rgba(111,208,245,.35),transparent 65%)}
.mv-v{background:var(--surface);border:1px solid var(--line);box-shadow:var(--shadow-lg)}
.mv-v::before{content:"";position:absolute;z-index:-1;inset:0;background:radial-gradient(60% 60% at 100% 0%,rgba(155,140,255,.18),transparent 70%),radial-gradient(50% 50% at 0% 100%,rgba(41,171,226,.14),transparent 70%)}
.mv-k{display:flex;align-items:center;gap:14px}
.mv-ix{font:800 .9rem var(--f-mono);width:42px;height:42px;border-radius:12px;display:grid;place-items:center;background:rgba(255,255,255,.14);color:#fff}
.mv-v .mv-ix{background:linear-gradient(135deg,#7c5cff,#29abe2)}
.mv-m .label{color:#8fd3f4}
.mv-stmt{margin:26px 0 30px;font:400 clamp(1.7rem,2.9vw,2.45rem)/1.18 var(--f-serif);letter-spacing:-.01em}
.mv-m .mv-stmt{color:#fff}.mv-v .mv-stmt{color:var(--ink)}
.mv-stmt em{font-style:normal;background:linear-gradient(95deg,#6fd0f5,#b4a8ff);-webkit-background-clip:text;background-clip:text;color:transparent}
.mv-v .mv-stmt em{background:linear-gradient(95deg,#1a6fd1,#7c5cff);-webkit-background-clip:text;background-clip:text}
.mv-list{list-style:none;margin:0;padding:0;display:grid;gap:12px}
.mv-list li{display:grid;gap:3px;padding:14px 16px 14px 46px;border-radius:16px;position:relative}
.mv-m .mv-list li{background:rgba(255,255,255,.08);border:1px solid rgba(255,255,255,.14)}
.mv-v .mv-list li{background:var(--surface-2);border:1px solid var(--line)}
.mv-list li::before{content:"";position:absolute;left:16px;top:18px;width:16px;height:16px;border-radius:5px;background:linear-gradient(135deg,#6fd0f5,#9b8cff)}
.mv-list b{font-size:1rem}.mv-m .mv-list b{color:#fff}.mv-v .mv-list b{color:var(--ink)}
.mv-list span{font-size:.9rem}.mv-m .mv-list span{color:#c3cee8}.mv-v .mv-list span{color:var(--muted)}
.mv-star{display:flex;gap:16px;align-items:center;max-width:880px;margin:30px auto 0;padding:20px 26px;border-radius:999px;background:var(--surface);border:1px solid var(--line);box-shadow:var(--shadow)}
.mv-star p{margin:0;color:var(--text);font-size:1rem}.mv-star b{color:var(--ink)}
.mv-dot{flex:none;width:14px;height:14px;border-radius:50%;background:#f0a000;box-shadow:0 0 0 6px rgba(240,160,0,.18)}
/* at a glance */
.gl{padding-block:100px;color:#e9eefb;background:radial-gradient(60% 80% at 100% 0%,rgba(41,171,226,.22),transparent 70%),linear-gradient(160deg,#0a1838,#0f2557)}
.gl-head{display:grid;grid-template-columns:minmax(0,1.2fr) minmax(0,1fr);gap:20px 60px;align-items:end;margin-bottom:46px}
.gl-head .label{color:#8fd3f4}
.gl-head h2{margin-top:16px;font-size:clamp(2.1rem,4.4vw,3.4rem);color:#fff}
.gl-head .serif{background:linear-gradient(95deg,#6fd0f5,#9b8cff);-webkit-background-clip:text;background-clip:text;color:transparent}
.gl-head p{color:#b9c5e2;font-size:1.06rem}
.gl-nums{display:grid;grid-template-columns:repeat(4,1fr);gap:16px}
.gl-nums > div{padding:26px 24px;border-radius:22px;background:rgba(255,255,255,.06);border:1px solid rgba(255,255,255,.12)}
.gl-nums b{display:block;font:800 clamp(2.4rem,4vw,3.4rem)/1 var(--f-display);letter-spacing:-.03em;background:linear-gradient(95deg,#6fd0f5,#9b8cff);-webkit-background-clip:text;background-clip:text;color:transparent}
.gl-nums b span{font:inherit;color:inherit}
.gl-nums > div > span{display:block;margin-top:10px;color:#fff;font-weight:700}
.gl-nums small{display:block;margin-top:2px;color:#9fb0d4;font-size:.82rem}
.gl-route{position:relative;margin-top:40px;padding:10px 0 0}
.gl-route svg{display:block;width:100%;height:110px}
.gl-arc{fill:none;stroke:#6fd0f5;stroke-width:2;stroke-dasharray:6 8;vector-effect:non-scaling-stroke;animation:fpdash 1.4s linear infinite}
.gl-stops{display:grid;grid-template-columns:repeat(4,1fr);margin-top:-30px}
.gl-stops > div{display:grid;justify-items:center;text-align:center;gap:4px}
.gl-stops > div:first-child{justify-items:start;text-align:left}.gl-stops > div:last-child{justify-items:end;text-align:right}
.gl-stops i{width:18px;height:18px;border-radius:50%;background:#0f2557;border:3px solid #6fd0f5}
.gl-stops i.hq{background:#f0a000;border-color:#fff;box-shadow:0 0 0 6px rgba(240,160,0,.25)}
.gl-stops b{color:#fff;font-size:1.05rem;margin-top:6px}.gl-stops span{color:#9fb0d4;font-size:.84rem}
@media (max-width:1000px){.ah-grid,.mv-grid,.gl-head{grid-template-columns:1fr}.ah-art{max-width:400px}.ah-facts{grid-template-columns:repeat(3,1fr)}.ah-facts > div:nth-child(4){border-left:0;padding-left:0}.gl-nums{grid-template-columns:1fr 1fr}}
@media (max-width:620px){.ah-facts{grid-template-columns:1fr 1fr}.ah-facts > div{border-left:0!important;padding-left:0}.ah-tag small{display:none}.ah-tag{font-size:.8rem;padding:8px 10px}.mv-card{padding:28px 22px}.mv-star{border-radius:22px;align-items:flex-start}.gl-route svg{display:none}.gl-stops{grid-template-columns:1fr 1fr;gap:18px;margin-top:0}.gl-stops > div{justify-items:start!important;text-align:left!important}}
@media (prefers-reduced-motion:reduce){.ah-pyr,.ah-ping,.gl-arc{animation:none}}
@media (max-width:620px){.ah-tag.t2{left:0}.ah-tag.t1{right:0}}

/* ===== v17: About global presence map ===== */
.gm{margin-top:46px;padding:28px;border-radius:28px;background:rgba(255,255,255,.04);border:1px solid rgba(255,255,255,.1)}
.gm-top{display:flex;justify-content:space-between;align-items:center;gap:16px;flex-wrap:wrap}
.gm-top .label{color:#8fd3f4}
.gm-leg{display:flex;gap:18px;font-size:.84rem;color:#c3cee8}
.gm-leg i{display:inline-block;width:11px;height:11px;border-radius:50%;margin-right:7px;vertical-align:-1px}
.l-hq{background:#f0a000}.l-of{background:#9b8cff}.l-cu{background:#29abe2}
.gm-map{margin-top:14px}
.gm-svg{width:100%;height:auto;display:block}
.gm-dots circle{fill:rgba(170,195,255,.2)}
.gm-arc{fill:none;stroke:url(#none);stroke:#6fd0f5;stroke-width:2;stroke-dasharray:6 8;opacity:.8;animation:fpdash 1.3s linear infinite}
.gm-mv{fill:#fff;filter:drop-shadow(0 0 6px #6fd0f5)}
.gm-c{stroke:#fff;stroke-width:3}
.p-hq .gm-c{fill:#f0a000}.p-of .gm-c{fill:#9b8cff}.p-cu .gm-c{fill:#29abe2}
.gm-r{fill:none;stroke-width:2;transform-box:fill-box;transform-origin:center;animation:fpring 2.6s ease-out infinite}
.gm-r2{animation-delay:1.3s}
.p-hq .gm-r{stroke:#f0a000}.p-of .gm-r{stroke:#9b8cff}.p-cu .gm-r{stroke:#29abe2}
.gm-t{font:800 20px var(--f-display);fill:#fff;paint-order:stroke;stroke:#0d1d47;stroke-width:6px;stroke-linejoin:round}
.gm-s{font:600 14px var(--f-body);fill:#b9c5e2;paint-order:stroke;stroke:#0d1d47;stroke-width:5px;stroke-linejoin:round}
.gm-cards{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;margin-top:18px}
.gm-card{padding:18px;border-radius:18px;background:rgba(255,255,255,.06);border:1px solid rgba(255,255,255,.12);border-top:3px solid var(--c)}
.g-hq{--c:#f0a000}.g-of{--c:#9b8cff}.g-cu{--c:#29abe2}
.gm-ch{display:flex;gap:10px;align-items:center}
.gm-cc{flex:none;width:34px;height:34px;border-radius:10px;display:grid;place-items:center;font:700 .72rem var(--f-mono);color:#0b1a44;background:var(--c)}
.gm-ch b{display:block;color:#fff}.gm-ch span{font-size:.8rem;color:#b9c5e2}
.gm-card p{margin:12px 0 10px;font-size:.86rem;color:#c3cee8;line-height:1.5}
.gm-card ul{list-style:none;margin:0;padding:0;display:flex;flex-wrap:wrap;gap:6px}
.gm-card li{font-size:.74rem;font-weight:600;color:#dce6fb;padding:3px 9px;border-radius:999px;background:rgba(255,255,255,.1)}
@media (max-width:1000px){.gm-cards{grid-template-columns:1fr 1fr}}
@media (max-width:620px){.gm{padding:18px}.gm-cards{grid-template-columns:1fr}.gm-t{font-size:30px}.gm-s{display:none}}
@media (prefers-reduced-motion:reduce){.gm-arc,.gm-r{animation:none}.gm-mv{display:none}}
