/* MERIDIAN — dark, curved & sleek. Straight gradient dividers.
   No boxes, no monospace, no serif. Blue-gradient brand; orange
   used only as an OUTLINE on the primary CTA pill. */
:root{
  --brand-a:#00A8E8; --brand-b:#3080D0; --brand-c:#283890;
  --grad:linear-gradient(100deg,#00A8E8 0%,#3080D0 50%,#2E56C4 100%);
  --acc:#3DBEF0;
  --base:#0A1130; --base-2:#0D1740; --panel:#132152;
  --ink:#EEF3FC; --ink-2:#BAC6DE; --muted:#8493B2;
  /* orange retired — single cyan accent */
  --max:1440px;
  --display:"Avenir Next","Avenir","IntelSans",system-ui,-apple-system,"Segoe UI",Roboto,"Helvetica Neue",Arial,sans-serif;
  --body:"Avenir Next","Avenir","IntelSans",system-ui,-apple-system,"Segoe UI",Roboto,"Helvetica Neue",Arial,sans-serif;

  /* ---- motion system ----------------------------------------------------
     Personality: premium. Unhurried and graceful, still no overshoot and no
     bounce. Curves decelerate with a long tail so things settle rather than
     stop. One signature curve carries ~80% of the site; three durations only.
     Rule of thumb: the more often a thing animates, the shorter it is. */
  --ease:cubic-bezier(.22,.61,.36,1);   /* signature — enter + state change  */
  --ease-exit:cubic-bezier(.4,0,1,1);   /* exit — accelerates away, softly   */
  --ease-soft:cubic-bezier(.16,1,.3,1); /* long reveals — long graceful tail */
  --t-quick:180ms;                      /* hover, focus, press               */
  --t-base:340ms;                       /* menus, cards, state changes       */
  --t-slow:900ms;                       /* scroll reveals, entrances         */
  --t-exit:240ms;                       /* exits stay shorter than entrances */
}
@font-face{font-family:"IntelSans";src:url(data:font/woff2;base64,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) format("woff2");font-weight:300 900;font-style:normal;font-display:swap}
*{box-sizing:border-box;margin:0;padding:0}
html{scroll-behavior:smooth;-webkit-text-size-adjust:100%}
body{font-family:var(--body);background:var(--base);color:var(--ink);line-height:1.6;-webkit-font-smoothing:antialiased;overflow-x:hidden;font-size:16px}
a{color:inherit;text-decoration:none}
img{max-width:100%;display:block}
::selection{background:var(--brand-a);color:#04122a}
.wrap{max-width:var(--max);margin:0 auto;padding:0 32px}
/* page enter — 14 separate HTML pages, one continuous product. Opacity only,
   300ms, header excluded so the nav stays put between pages. */
main.main{animation:pageIn 460ms var(--ease-soft) both}
@keyframes pageIn{from{opacity:0}to{opacity:1}}
@media print{main.main{animation:none}.rv{opacity:1;transform:none}}
h1,h2,h3{font-family:var(--display);font-weight:680;letter-spacing:-.03em;line-height:1.04;text-wrap:balance}
.eyebrow{font-family:var(--display);font-weight:600;font-size:12.5px;letter-spacing:.18em;text-transform:uppercase;color:var(--acc);display:inline-flex;align-items:center;gap:10px}

.grad-text{background:var(--grad);-webkit-background-clip:text;background-clip:text;color:transparent}

/* primary CTA = filled cyan pill */
.btn{font-family:var(--display);font-weight:560;font-size:15px;padding:14px 30px;border-radius:999px;background:var(--grad);box-shadow:0 16px 38px -14px rgba(0,168,232,.6);
  color:#fff;border:0;cursor:pointer;display:inline-flex;align-items:center;gap:10px;white-space:nowrap;
  transition:transform var(--t-quick) var(--ease),box-shadow var(--t-base) var(--ease),background var(--t-base) var(--ease),border-color var(--t-quick) var(--ease),color var(--t-quick) var(--ease)}
.btn:hover{transform:translateY(-2px);box-shadow:0 22px 46px -14px rgba(0,168,232,.74)}
/* press: the button gives, then settles. Kept short even in the slower
   system, because a press has to answer the finger immediately. */
.btn:active{transform:translateY(0) scale(.985);transition-duration:140ms}
.btn.ghost{background:transparent;box-shadow:none;color:var(--ink);border:1.6px solid rgba(255,255,255,.28)}
.btn.ghost:hover{border-color:var(--acc);color:var(--acc);background:rgba(61,190,240,.08)}
.btn svg{width:16px;height:16px}
.textlink{display:inline-flex;align-items:center;gap:9px;font-family:var(--display);font-weight:560;color:var(--ink);cursor:pointer;transition:color var(--t-quick) var(--ease)}
.textlink .a{width:34px;height:34px;border-radius:50%;display:grid;place-items:center;background:rgba(255,255,255,.07);transition:transform var(--t-quick) var(--ease),background var(--t-base) var(--ease),color var(--t-quick) var(--ease)}
.textlink:hover{color:var(--acc)}.textlink:hover .a{background:var(--grad);color:#fff;transform:translateX(3px)}

/* straight gradient divider line between bands */
.divide::before{content:"";position:absolute;top:0;left:0;right:0;height:2px;background:var(--grad);opacity:.6;
  -webkit-mask-image:linear-gradient(90deg,transparent,#000 12%,#000 88%,transparent);mask-image:linear-gradient(90deg,transparent,#000 12%,#000 88%,transparent)}

.logo{display:inline-flex;align-items:center;flex:none}.logo-img{height:64px;width:auto;flex:none;object-fit:contain}

/* nav */
header.nav{position:sticky;top:0;z-index:60;background:rgba(10,17,48,.55);backdrop-filter:blur(16px);transition:.3s;border-bottom:1px solid transparent}
header.nav.scrolled{background:rgba(10,17,48,.9);border-bottom-color:rgba(255,255,255,.08)}
.nav-in{max-width:none;margin:0;padding:0 40px;height:98px;display:flex;align-items:center;gap:26px}
nav.main{display:flex;gap:2px;margin-left:14px}
.nav-item{position:relative}
.nav-link{display:flex;align-items:center;gap:7px;padding:10px 13px;border-radius:999px;font-size:12.5px;font-weight:600;letter-spacing:.08em;text-transform:uppercase;white-space:nowrap;color:var(--ink-2);cursor:pointer;transition:color var(--t-quick) var(--ease),background var(--t-quick) var(--ease)}
.nav-item:hover .nav-link,.nav-link:hover{color:var(--ink);background:rgba(255,255,255,.06)}
.nav-link .car{width:7px;height:7px;border-right:1.5px solid currentColor;border-bottom:1.5px solid currentColor;transform:rotate(45deg) translateY(-2px);opacity:.55;transition:transform var(--t-base) var(--ease),opacity var(--t-quick) var(--ease)}
.nav-item:hover .nav-link .car,.nav-item:focus-within .nav-link .car{transform:rotate(225deg) translateY(-1px)}
.spacer{flex:1}.nav-act{display:flex;align-items:center;gap:12px}
.nav-act .btn{padding:11px 22px;font-size:14px}

/* soft rounded mega with staggered item animation */
.mega{position:absolute;top:calc(100% + 8px);left:-10px;width:640px;background:rgba(19,33,82,.96);backdrop-filter:blur(20px);
  border-radius:22px;padding:14px;box-shadow:0 40px 90px -30px rgba(0,0,0,.7),0 0 0 1px rgba(255,255,255,.06);
  opacity:0;visibility:hidden;transform:translateY(10px) scale(.99);display:grid;grid-template-columns:1fr 1fr;gap:6px;
  /* closed = exit: shorter, gets out of the way */
  transition:opacity var(--t-exit) var(--ease-exit),transform var(--t-exit) var(--ease-exit),visibility var(--t-exit)}
.nav-item:hover .mega,.nav-item:focus-within .mega{opacity:1;visibility:visible;transform:none;
  transition:opacity var(--t-base) var(--ease),transform var(--t-base) var(--ease),visibility 0s}
.mega a{display:block;padding:14px 16px;border-radius:16px;opacity:0;transform:translateY(8px);
  transition:opacity var(--t-exit) var(--ease-exit),transform var(--t-exit) var(--ease-exit),background var(--t-quick) var(--ease)}
.nav-item:hover .mega a,.nav-item:focus-within .mega a{opacity:1;transform:none;
  transition:opacity var(--t-base) var(--ease),transform var(--t-base) var(--ease),background var(--t-quick) var(--ease)}
/* cascade: 34ms apart, whole menu settled in just under 600ms. The menu is
   the one place restraint still applies — it opens many times a day, so the
   stagger stays the most reined-in in the system. */
.nav-item:hover .mega a:nth-child(1),.nav-item:focus-within .mega a:nth-child(1){transition-delay:0ms}
.nav-item:hover .mega a:nth-child(2),.nav-item:focus-within .mega a:nth-child(2){transition-delay:34ms}
.nav-item:hover .mega a:nth-child(3),.nav-item:focus-within .mega a:nth-child(3){transition-delay:68ms}
.nav-item:hover .mega a:nth-child(4),.nav-item:focus-within .mega a:nth-child(4){transition-delay:102ms}
.nav-item:hover .mega a:nth-child(5),.nav-item:focus-within .mega a:nth-child(5){transition-delay:136ms}
.nav-item:hover .mega a:nth-child(6),.nav-item:focus-within .mega a:nth-child(6){transition-delay:170ms}
.nav-item:hover .mega a:nth-child(7),.nav-item:focus-within .mega a:nth-child(7){transition-delay:204ms}
.nav-item:hover .mega a:nth-child(8),.nav-item:focus-within .mega a:nth-child(8){transition-delay:238ms}
.mega a:hover{background:rgba(61,190,240,.1)}
.mega a .t{display:block;font-family:var(--display);font-weight:600;font-size:14.5px}
.mega a:hover .t{color:var(--acc)}
.mega a .d{display:block;font-size:12.5px;color:var(--muted);margin-top:2px}
.burger{display:none;flex-direction:column;gap:5px;background:0;border:0;cursor:pointer;padding:8px;margin-left:auto}
.burger span{width:22px;height:2px;border-radius:2px;background:var(--ink)}

/* hero */
.hero{position:relative;min-height:90dvh;display:flex;align-items:center;overflow:hidden;padding:150px 0 90px;background:linear-gradient(135deg,#0a1130,#0d1740,#0a1130);background-size:180% 180%;animation:bgshift 22s ease-in-out infinite}
.hero-bg{position:absolute;inset:0;background-size:cover;background-position:center;transform:scale(1.06);animation:kenburns 28s ease-in-out infinite alternate;opacity:0}
#ai{display:none}
.hero-net{position:absolute;inset:0;width:100%;height:100%;z-index:1;pointer-events:none}
/* Weighted to the left, because that is where the copy sits. Reaches slightly
   further across than it used to (65% rather than 50%), since the headline is
   larger now and runs further right before it wraps. The second gradient is a
   top band for the navigation, which floats over this. */
.hero-scrim{position:absolute;inset:0;z-index:1;pointer-events:none;
  background:linear-gradient(100deg,rgba(10,17,48,.95),rgba(10,17,48,.62) 45%,rgba(10,17,48,.12) 75%,rgba(10,17,48,0) 88%),
             linear-gradient(180deg,rgba(10,17,48,.55),rgba(10,17,48,0) 22%)}
@keyframes bgshift{0%{background-position:0% 50%}50%{background-position:100% 50%}100%{background-position:0% 50%}}@keyframes heroFade{from{opacity:0}to{opacity:.9}}
@keyframes kenburns{from{transform:scale(1.06) translate(0,0)}to{transform:scale(1.2) translate(-2.5%,-2%)}}
.hero-bg::after{content:"";position:absolute;inset:0;
  background:linear-gradient(100deg,var(--base) 18%,rgba(10,17,48,.82) 50%,rgba(10,17,48,.5) 100%),radial-gradient(120% 90% at 85% 20%,rgba(0,168,232,.14),transparent 55%)}
/* pulsing signal glow + faint scan sweep for IT feel */
.hero::before{content:"";position:absolute;inset:0;z-index:1;pointer-events:none;
  background:radial-gradient(44% 50% at 80% 28%,rgba(0,168,232,.13),transparent 60%);animation:heroglow 9s ease-in-out infinite}
@keyframes heroglow{0%,100%{opacity:.3}50%{opacity:.62}}
/* Copy is left-aligned, sitting vertically centred in the hero. */
.hero-in{position:relative;z-index:2;max-width:1040px}
/* animated sheen across the gradient headline word */
.hero .grad-text{background:linear-gradient(100deg,#00A8E8 0%,#3080D0 34%,#9fe0ff 50%,#3080D0 66%,#2E56C4 100%);
  background-size:220% 100%;-webkit-background-clip:text;background-clip:text;color:transparent;animation:sheen 5.5s linear infinite}
@keyframes sheen{0%{background-position:120% 0}100%{background-position:-120% 0}}
/* Bigger at desktop as asked, but the lower bound of the clamp is what a phone
   actually gets (4.9vw of 375px is only 18px, so the floor always wins there).
   Left at 33px: raising the floor with the ceiling would push the headline to
   six or seven lines on a phone and swallow the whole first screen. */
.hero h1{font-size:clamp(33px,4.9vw,68px);line-height:1.08;letter-spacing:-.03em;font-weight:700}
.hero p{font-size:clamp(17px,1.35vw,20px);color:var(--ink-2);max-width:540px;margin:26px 0 38px;line-height:1.6}
.hero-cta{display:flex;gap:16px;align-items:center;flex-wrap:wrap;margin-bottom:0}
.mask{display:block;overflow:hidden;padding-bottom:.14em;margin-bottom:-.14em}
.mask>span{display:block;transform:translateY(105%);transition:.95s cubic-bezier(.2,.75,.2,1)}
.mask.in>span{transform:none}

/* metrics — clean, no underline strokes */
.metrics{display:flex;gap:40px;flex-wrap:wrap}.metric{flex:0 1 200px}
.metric .n{font-family:var(--display);font-size:clamp(34px,3.6vw,50px);font-weight:680;line-height:1;font-variant-numeric:tabular-nums}
.metric .n b{color:var(--brand-a)}
.metric .l{color:var(--muted);font-size:13.5px;letter-spacing:.03em;margin-top:10px}

.band{position:relative;padding:110px 0}
.band.base{background:var(--base)}.band.base2{background:var(--base-2)}.band.pnl{background:var(--panel)}
/* light bands (Industries, Resources) — deliberate white breaks in the dark page */
.band.light{background:#F5F8FC}
.band.light h2,.band.light h3,.band.light h4{color:#0B1533}
.band.light .sec-head p{color:#48566F}
.band.light .ind-flow a{color:#26344F;background:#fff;box-shadow:inset 0 0 0 1px rgba(11,21,51,.12)}
.band.light .ind-flow a:hover{color:#0B1533;background:rgba(0,168,232,.08);box-shadow:inset 0 0 0 1px var(--brand-a)}
.band.light .res-row:hover{background:rgba(11,21,51,.045)}
.band.light .res-row .kind{color:#2452C4}
.band.light .res-row .go{background:rgba(11,21,51,.06);color:#48566F}
.sec-head{max-width:660px;margin-bottom:56px}
.sec-head.center{margin-inline:auto;text-align:center}
.sec-head h2{font-size:clamp(30px,4.4vw,52px);letter-spacing:-.035em;margin:16px 0 14px}
.sec-head p{color:var(--ink-2);font-size:17.5px}

/* partner marquee */
.eco-row{overflow:hidden;position:relative;-webkit-mask-image:linear-gradient(90deg,transparent,#000 8%,#000 92%,transparent);mask-image:linear-gradient(90deg,transparent,#000 8%,#000 92%,transparent)}
.eco-track{display:flex;width:max-content;animation:flow 46s linear infinite;padding:6px 0}
.eco-track .logo-chip{margin-right:16px}
.eco-row:hover .eco-track{animation-play-state:paused}
.eco-row.rev .eco-track{animation-direction:reverse;animation-duration:56s}
@keyframes flow{to{transform:translateX(-50%)}}
.chip{display:inline-flex;align-items:center;gap:11px;padding:15px 28px;border-radius:999px;white-space:nowrap;font-family:var(--display);font-weight:560;font-size:15.5px;color:var(--ink);background:rgba(255,255,255,.05);box-shadow:inset 0 0 0 1px rgba(255,255,255,.07);transition:color var(--t-quick) var(--ease),box-shadow var(--t-base) var(--ease)}
.chip:hover{color:var(--acc);box-shadow:inset 0 0 0 1px rgba(61,190,240,.5)}
/* Every logo gets the SAME optical box, so the strip keeps an even rhythm.
   Sizing by max-height alone let a square mark (Dell) render 32px wide and a
   wide wordmark 120px wide inside identical pills, which left white voids of
   68px next to voids of 126px — that unevenness is what reads as gaps in the
   strip. Fixed box + object-fit:contain makes every chip 188px wide. */
.logo-chip{display:inline-flex;align-items:center;justify-content:center;height:66px;width:188px;flex:none;padding:0 34px;border-radius:16px;background:#fff;box-shadow:0 10px 30px -18px rgba(0,0,0,.5)}
.logo-chip img{width:120px;height:34px;object-fit:contain;display:block}
.chip .d{width:8px;height:8px;border-radius:50%;background:var(--grad)}

/* capability bands */
.cap{display:grid;grid-template-columns:1fr 1fr;gap:56px;align-items:center}
.cap + .cap{margin-top:96px}
.cap.rev .cap-media{order:2}
.cap-media{position:relative;border-radius:34px;overflow:hidden;aspect-ratio:4/3;box-shadow:0 40px 80px -40px rgba(0,0,0,.7)}
.cap-media img{width:100%;height:100%;object-fit:cover}
.cap-media::after{content:"";position:absolute;inset:0;background:linear-gradient(140deg,rgba(0,168,232,.14),transparent 55%,rgba(40,56,144,.3))}
.cap-body .eyebrow{margin-bottom:14px}
.cap-body h3{font-size:clamp(26px,3vw,38px);letter-spacing:-.03em;margin-bottom:14px}
.cap-body p{color:var(--ink-2);font-size:16.5px;margin-bottom:22px;max-width:460px}
.cap-tags{display:flex;flex-wrap:wrap;gap:10px;margin-bottom:24px}
.cap-tags span{font-size:13.5px;color:var(--ink-2);padding:8px 16px;border-radius:999px;background:rgba(255,255,255,.05)}
/* full-width feature row, breaks the zig-zag rhythm */
.cap.wide{display:block}
.cap.wide .cap-body{max-width:660px;margin:0 auto 46px;display:flex;flex-direction:column;align-items:center;text-align:center}
.cap.wide .cap-body p{max-width:560px;margin-inline:auto}
.cap.wide .cap-tags{justify-content:center}
.cap.wide .cap-media{aspect-ratio:24/9;max-height:520px}
@media(max-width:768px){.cap.wide .cap-media{aspect-ratio:16/10}}

.also{display:flex;flex-wrap:wrap;gap:14px 40px;margin-top:80px;align-items:center;justify-content:center;text-align:center}
.also .lab{color:var(--muted);font-weight:600;font-family:var(--display);letter-spacing:.04em}
.also a{font-family:var(--display);font-weight:560;font-size:18px;color:var(--ink)}
.also a:hover{color:var(--acc)}
.also .sep{width:6px;height:6px;border-radius:50%;background:var(--brand-b);opacity:.6}

.ind-flow{display:flex;flex-wrap:wrap;gap:14px}
.ind-flow a{font-family:var(--display);font-weight:560;font-size:16px;color:var(--ink-2);padding:15px 26px;border-radius:999px;background:rgba(255,255,255,.04);box-shadow:inset 0 0 0 1px rgba(255,255,255,.08);transition:color var(--t-quick) var(--ease),background var(--t-base) var(--ease),box-shadow var(--t-base) var(--ease)}
.ind-flow a:hover{color:#fff;box-shadow:inset 0 0 0 1px var(--brand-a);background:rgba(0,168,232,.1);transform:translateY(-3px)}

/* case studies — higher-contrast captions */
.cases{display:grid;grid-template-columns:1.35fr 1fr;grid-auto-rows:1fr;gap:22px}.cases .case:first-child{grid-row:1 / span 2}.cases .case:first-child h3{font-size:clamp(22px,2.4vw,28px)}.cases .case:first-child .cm .n{font-size:34px}
.case{position:relative;border-radius:30px;overflow:hidden;min-height:360px;display:flex;flex-direction:column;justify-content:flex-end;padding:30px;transition:.35s;box-shadow:0 40px 80px -44px rgba(0,0,0,.7)}
.case .cbg{position:absolute;inset:0;background-size:cover;background-position:center;transition:.6s}
.case::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(5,9,26,.25) 0%,rgba(5,9,26,.68) 42%,rgba(5,9,26,.97) 100%)}
.case:hover{transform:translateY(-6px)}.case:hover .cbg{transform:scale(1.06)}
.case>*{position:relative;z-index:2}
.case .sec{font-family:var(--display);font-weight:700;font-size:12.5px;letter-spacing:.12em;text-transform:uppercase;color:#66D2FA;text-shadow:0 1px 8px rgba(0,0,0,.5)}
.case h3{color:#fff;font-size:21px;margin:12px 0 16px;letter-spacing:-.02em;text-shadow:0 2px 14px rgba(0,0,0,.55)}
.case .cm{display:flex;gap:26px}
.case .cm .n{font-family:var(--display);font-size:30px;font-weight:700;color:#fff;text-shadow:0 2px 12px rgba(0,0,0,.5)}
.case .cm .n b{color:#66D2FA}
.case .cm .l{font-size:12px;color:#D5E0F2}

/* AI advisor */
.ai-grid{display:grid;grid-template-columns:1fr 430px;gap:60px;align-items:center}
.ai-copy h2{font-size:clamp(28px,3.8vw,46px);letter-spacing:-.035em;margin:16px 0 16px}
.ai-copy p{color:var(--ink-2);font-size:17px;max-width:470px;margin-bottom:26px}
.ai-steps{list-style:none;display:grid;gap:14px;margin-bottom:30px}
.ai-steps li{display:flex;align-items:center;gap:16px;font-size:15.5px}
.ai-steps li .k{width:40px;height:40px;flex:none;border-radius:50%;display:grid;place-items:center;font-family:var(--display);font-weight:700;color:#fff;background:var(--grad);box-shadow:0 10px 24px -10px rgba(0,168,232,.7)}
.ai-mock{border-radius:28px;overflow:hidden;background:var(--base);box-shadow:0 50px 100px -40px #000,0 0 0 1px rgba(255,255,255,.06)}
.aim-head{display:flex;align-items:center;gap:12px;padding:18px 20px;background:rgba(255,255,255,.03)}
.aim-head .av{width:40px;height:40px;border-radius:50%;background:var(--grad);display:grid;place-items:center;font-family:var(--display);font-weight:700;color:#fff}
.aim-head .nm{font-family:var(--display);font-weight:600;font-size:14.5px}
.aim-head .st{font-size:12px;color:var(--muted);display:flex;align-items:center;gap:6px}
.aim-head .st::before{content:"";width:7px;height:7px;border-radius:50%;background:#4ade80}
.aim-body{padding:20px;display:flex;flex-direction:column;gap:12px;min-height:210px}
.mb{max-width:82%;padding:12px 16px;font-size:13.5px;line-height:1.5}
.mb.bot{background:rgba(255,255,255,.06);align-self:flex-start;border-radius:20px 20px 20px 6px}
.mb.usr{background:var(--brand-b);color:#fff;align-self:flex-end;border-radius:20px 20px 6px 20px}
.aim-chips{display:flex;gap:9px;flex-wrap:wrap}
.aim-chips button{font-family:var(--display);font-size:12.5px;font-weight:500;padding:9px 16px;border-radius:999px;border:1px solid rgba(255,255,255,.2);background:transparent;color:var(--ink);cursor:pointer;transition:.2s}
.aim-chips button:hover{border-color:var(--acc);color:var(--acc)}

/* resources */
.res-list{display:flex;flex-direction:column;gap:8px}
.res-row{display:grid;grid-template-columns:150px 1fr auto;gap:24px;align-items:center;padding:26px 24px;border-radius:22px;cursor:pointer;transition:background var(--t-base) var(--ease),color var(--t-quick) var(--ease)}
.res-row:hover{background:rgba(255,255,255,.04)}
.res-row .kind{font-family:var(--display);font-weight:600;font-size:12.5px;letter-spacing:.12em;text-transform:uppercase;color:var(--acc)}
.res-row h3{font-family:var(--display);font-size:clamp(19px,2vw,24px);font-weight:600;letter-spacing:-.02em;max-width:600px}
.res-row .go{width:44px;height:44px;border-radius:50%;display:grid;place-items:center;background:rgba(255,255,255,.05);color:var(--ink-2);transition:transform var(--t-quick) var(--ease),background var(--t-base) var(--ease),color var(--t-quick) var(--ease)}
.res-row:hover .go{background:var(--grad);color:#fff;transform:translateX(4px)}

/* CTA */
.cta{position:relative;overflow:hidden;background:var(--grad);color:#fff;text-align:center;padding:120px 0}
.cta::after{content:"";position:absolute;inset:0;background:radial-gradient(80% 120% at 50% 0,rgba(255,255,255,.12),transparent 60%)}
.cta-in{position:relative;z-index:2;max-width:820px;margin:0 auto}
.cta h2{color:#fff;font-size:clamp(34px,5.4vw,72px);letter-spacing:-.04em;margin-bottom:22px}
.cta p{color:rgba(255,255,255,.86);font-size:19px;margin-bottom:34px}
.cta .hero-cta{justify-content:center;margin:0}
.cta .btn{background:#fff;color:var(--brand-c);border:0;box-shadow:0 16px 38px -16px rgba(0,0,0,.5)}
.cta .btn:hover{background:#04122a;color:#fff;border-color:#04122a}
.cta .btn.ghost{background:transparent;color:#fff;border-color:rgba(255,255,255,.6)}
.cta .btn.ghost:hover{background:rgba(255,255,255,.12);color:#fff}

footer{background:var(--base);padding:70px 0 34px}
.foot-grid{display:grid;grid-template-columns:2fr 1fr 1fr 1fr;gap:40px;padding-bottom:44px}
.foot-brand .logo-img{height:82px;margin-bottom:16px}
.foot-brand p{color:var(--ink-2);max-width:280px;font-size:14.5px}
.foot-col h6{font-family:var(--display);font-weight:600;font-size:13px;letter-spacing:.08em;text-transform:uppercase;color:var(--muted);margin-bottom:16px}
.foot-col a{display:block;color:var(--ink-2);padding:6px 0;font-size:14.5px;transition:color var(--t-quick) var(--ease)}
.foot-col a:hover{color:var(--acc)}
/* social links carry their mark; the SVG uses currentColor so it picks up the
   hover colour with the label instead of sitting there in a fixed brand blue */
/* .foot-col a is more specific than a bare .li-link, so it has to be named
   here or the footer link stays display:block and the mark loses its alignment */
.li-link,.foot-col a.li-link,.contact-list a.li-link{display:inline-flex;align-items:center;gap:9px}
.li-link svg{width:15px;height:15px;flex:none}
.contact-list .li-link svg{width:17px;height:17px}
.foot-bot{display:flex;justify-content:space-between;flex-wrap:wrap;gap:12px;padding-top:26px;color:var(--muted);font-size:13.5px;border-top:1px solid rgba(255,255,255,.07)}

/* scroll reveal — one shared entrance. 18px of travel, not 26: short trips
   read as composed, long ones read as a slideshow. --rvd is set per element
   by main.js so items in the same row cascade instead of popping together. */
.rv{opacity:0;transform:translateY(24px);transition:opacity var(--t-slow) var(--ease-soft),transform var(--t-slow) var(--ease-soft);transition-delay:var(--rvd,0ms)}
.rv.in{opacity:1;transform:none}
:focus-visible{outline:2px solid var(--acc);outline-offset:3px;border-radius:6px}

.fab{position:fixed;right:26px;bottom:26px;z-index:80;display:flex;align-items:center;gap:11px;background:var(--grad);color:#fff;border:0;cursor:pointer;padding:14px 24px 14px 16px;border-radius:999px;box-shadow:0 20px 44px -14px rgba(0,168,232,.6);font-family:var(--display);font-weight:560;font-size:14.5px;transition:transform var(--t-quick) var(--ease),box-shadow var(--t-base) var(--ease)}
.fab:hover{transform:translateY(-3px)}
.fab .av{width:32px;height:32px;border-radius:50%;background:#fff;color:var(--brand-c);display:grid;place-items:center;font-family:var(--display);font-weight:800;flex:none}
.av img{width:82%;height:82%;object-fit:contain;display:block;animation:spin 7s linear infinite;transform-origin:50% 50%}
@keyframes spin{to{transform:rotate(360deg)}}
.fab:hover .av img{animation-duration:1.4s}
.panel{position:fixed;right:26px;bottom:96px;z-index:81;width:380px;max-width:calc(100vw - 36px);height:560px;max-height:calc(100vh - 130px);background:var(--base-2);border-radius:26px;overflow:hidden;display:flex;flex-direction:column;box-shadow:0 50px 100px -30px #000,0 0 0 1px rgba(255,255,255,.07);opacity:0;visibility:hidden;transform:translateY(18px) scale(.98);transition:.3s cubic-bezier(.2,.7,.2,1);transform-origin:bottom right}
.panel.open{opacity:1;visibility:visible;transform:none}
.p-head{padding:18px 20px;background:var(--grad);display:flex;align-items:center;gap:12px}
.p-head .av{width:40px;height:40px;border-radius:50%;background:rgba(255,255,255,.16);display:grid;place-items:center;color:#fff;font-family:var(--display);font-weight:700}
.p-head .nm{font-family:var(--display);font-weight:600;font-size:15px;color:#fff}
.p-head .st{font-size:11.5px;color:rgba(255,255,255,.85);display:flex;align-items:center;gap:6px}
.p-head .st::before{content:"";width:7px;height:7px;border-radius:50%;background:#c9ffe0}
.p-head .x{margin-left:auto;background:rgba(255,255,255,.15);border:0;color:#fff;width:32px;height:32px;border-radius:50%;font-size:18px;cursor:pointer}
.p-body{flex:1;overflow-y:auto;padding:18px;display:flex;flex-direction:column;gap:11px;background:var(--base)}
.p-body::-webkit-scrollbar{width:5px}.p-body::-webkit-scrollbar-thumb{background:rgba(255,255,255,.15);border-radius:3px}
.p-msg{max-width:86%;padding:12px 16px;font-size:14px;line-height:1.5;animation:pp .3s ease}
@keyframes pp{from{opacity:0;transform:translateY(6px)}}
.p-msg.bot{background:rgba(255,255,255,.06);align-self:flex-start;border-radius:20px 20px 20px 6px}
.p-msg.usr{background:var(--brand-b);color:#fff;align-self:flex-end;border-radius:20px 20px 6px 20px}
.p-quick{display:flex;flex-wrap:wrap;gap:8px;padding:0 18px 12px;background:var(--base)}
.p-quick button{font-family:var(--display);font-size:12.5px;font-weight:500;padding:10px 15px;border-radius:999px;border:1px solid rgba(255,255,255,.2);background:transparent;color:var(--ink);cursor:pointer;transition:.2s}
.p-quick button:hover{border-color:var(--acc);color:var(--acc)}
.p-in{display:flex;gap:8px;padding:14px 16px;background:var(--base-2)}
.p-in input{flex:1;background:var(--base);border:1px solid rgba(255,255,255,.14);border-radius:999px;padding:12px 18px;color:var(--ink);font-family:inherit;font-size:14px;outline:none}
.p-in input:focus{border-color:var(--acc)}.p-in input::placeholder{color:var(--muted)}
.p-in button{background:var(--grad);border:0;border-radius:50%;width:46px;height:46px;flex:none;cursor:pointer;color:#fff;display:grid;place-items:center}
.typing{display:flex;gap:4px;padding:14px 16px;background:rgba(255,255,255,.06);align-self:flex-start;border-radius:20px 20px 20px 6px}
.typing span{width:7px;height:7px;border-radius:50%;background:var(--muted);animation:bl 1.2s infinite}
.typing span:nth-child(2){animation-delay:.2s}.typing span:nth-child(3){animation-delay:.4s}
@keyframes bl{0%,60%,100%{opacity:.3}30%{opacity:1}}
.drawer{position:fixed;inset:0;z-index:70;background:var(--base);padding:90px 32px 32px;opacity:0;visibility:hidden;pointer-events:none;transform:translateY(-8px);transition:opacity .3s ease,transform .3s ease,visibility .3s;overflow-y:auto}
.drawer.open{opacity:1;visibility:visible;pointer-events:auto;transform:none}
.drawer a{display:block;font-family:var(--display);font-size:25px;font-weight:560;letter-spacing:-.02em;padding:18px 0;border-bottom:1px solid rgba(255,255,255,.08)}
.drawer .btn{margin-top:26px;width:100%;justify-content:center}

@media(max-width:1080px){
  nav.main{display:none}.burger{display:flex}.nav-act .btn.ghost{display:none}
  .cap,.ai-grid{grid-template-columns:1fr;gap:32px}.cap.rev .cap-media{order:0}
  .cases{grid-template-columns:1fr}.cases .case:first-child{grid-row:auto}.res-row{grid-template-columns:1fr auto}.res-row .kind{display:none}
  .foot-grid{grid-template-columns:1fr 1fr}.band{padding:80px 0}
}
@media(max-width:560px){.foot-grid{grid-template-columns:1fr}.metrics{gap:32px}.hero{min-height:auto}}
@media(prefers-reduced-motion:reduce){*{animation-duration:.001ms!important;transition-duration:.001ms!important;transition-delay:0ms!important;animation-delay:0ms!important}.rv,.mask>span{opacity:1;transform:none}.mega a{opacity:1;transform:none}main.main{animation:none}.impact .impact-metric,.impact .impact-content>h2,.impact .impact-content>h3,.impact .fstage,.impact .impact-row,.impact .istory,.statement.rv .eyebrow,.statement.rv .bigtype .sol,.statement.rv .bigtype .gho,.statement.rv .statement-lead{opacity:1;transform:none}.impact .impact-flow::before{transform:scaleY(1)}.vhero-bg{display:none}}

/* ===== shared inner-page components (added for multi-page build) ===== */
.nav-link.active{color:var(--ink)}
.crumb{display:flex;flex-wrap:wrap;align-items:center;gap:9px;font-family:var(--display);font-size:13px;color:var(--muted);margin-bottom:22px}
.crumb a{color:var(--ink-2)}
.crumb a:hover{color:var(--acc)}
.crumb .sep{width:5px;height:5px;border-radius:50%;background:var(--brand-b);opacity:.5}
.crumb [aria-current]{color:var(--ink)}
.phero{position:relative;overflow:hidden;padding:148px 0 44px;background:linear-gradient(135deg,#0a1130,#0d1740,#0a1130)}
.phero .eyebrow{margin-bottom:14px}
.phero h1{font-size:clamp(32px,4.4vw,52px);letter-spacing:-.035em;margin:0 0 16px;line-height:1.06}
.phero .lead{color:var(--ink-2);font-size:18px;max-width:660px;line-height:1.6}
.svc-grid{display:grid;grid-template-columns:1fr 1fr;gap:24px}
.svc-card{position:relative;border-radius:24px;padding:32px 30px;background:rgba(255,255,255,.035);box-shadow:inset 0 0 0 1px rgba(255,255,255,.08);transition:transform var(--t-base) var(--ease),background var(--t-base) var(--ease),box-shadow var(--t-base) var(--ease);scroll-margin-top:120px}
.svc-card:hover{background:rgba(255,255,255,.055);box-shadow:inset 0 0 0 1px rgba(61,190,240,.34);transform:translateY(-3px)}
.svc-card h3{font-size:clamp(20px,2.1vw,25px);letter-spacing:-.02em;margin-bottom:8px}
.svc-card .sum{color:var(--acc);font-family:var(--display);font-weight:560;font-size:14.5px;margin-bottom:12px}
.svc-card p{color:var(--ink-2);font-size:15.5px;margin-bottom:18px;max-width:none}
.svc-card .cap-tags{margin-bottom:0}
.mcta{display:none}
@media(max-width:760px){
  .svc-grid{grid-template-columns:1fr}
  .phero{padding:118px 0 32px}
  .mcta{display:flex;position:fixed;left:14px;right:14px;bottom:14px;z-index:75;justify-content:center;align-items:center;gap:10px;padding:15px 20px;border-radius:999px;background:var(--grad);color:#fff;font-family:var(--display);font-weight:600;font-size:15px;box-shadow:0 16px 40px -12px rgba(0,168,232,.6)}
  body{padding-bottom:78px}.fab{display:none}
}

/* light-band eyebrow + engagement steps (reusable) */
.band.light .eyebrow{color:#2452C4}
.steps{display:grid;grid-template-columns:repeat(4,1fr);gap:30px}
.step .num{width:42px;height:42px;border-radius:50%;display:grid;place-items:center;font-family:var(--display);font-weight:700;color:#fff;background:var(--grad);box-shadow:0 10px 24px -12px rgba(0,168,232,.7);margin-bottom:16px}
.step h3{font-size:18px;letter-spacing:-.01em;margin-bottom:8px}
.step p{font-size:14.5px;line-height:1.55;color:var(--ink-2)}
.band.light .step p{color:#48566F}
@media(max-width:900px){.steps{grid-template-columns:1fr 1fr;gap:24px}}
@media(max-width:560px){.steps{grid-template-columns:1fr}}

/* ===== contact page ===== */
.contact-grid{display:grid;grid-template-columns:1.05fr .95fr;gap:48px;align-items:start}
.contact-col h3{font-size:clamp(20px,2.2vw,26px);letter-spacing:-.02em;margin-bottom:8px}
.contact-col .sub{color:var(--ink-2);font-size:15.5px;margin-bottom:24px;max-width:420px}
/* the sticky header would otherwise sit on top of the scheduler when a
   "Book a consultation" link jumps to it */
#book{scroll-margin-top:120px}
/* the scheduler is a live Microsoft Bookings page embedded here, so the box
   just frames it — no padding, or the white scheduler floats in a dark border */
/* Capped at 1040px rather than the full 1440 grid. Wide enough to keep the
   scheduler in its side-by-side desktop layout (it flips to the very tall
   stacked one below ~900px), narrow enough that it reads as a panel on the
   page instead of swallowing it. Height is still deliberate guesswork: a
   cross-origin frame cannot report its own content height, so it gets a little
   more room than it needs to avoid a scrollbar inside a scrollbar. */
.booking-embed{max-width:1040px;margin:0 auto;border-radius:22px;overflow:hidden;background:#fff;box-shadow:0 30px 70px -45px rgba(0,0,0,.65);display:block}
.booking-embed iframe{width:100%;height:720px;border:0;display:block}
.booking-fallback{max-width:1040px;margin:14px auto 0;text-align:center}
@media(max-width:1100px){.booking-embed iframe{height:960px}}
@media(max-width:700px){.booking-embed{border-radius:16px}.booking-embed iframe{height:1080px}}
.booking-note{max-width:360px}
.booking-note p{color:var(--ink-2);font-size:15.5px;margin:14px 0 22px}
.contact-list{list-style:none;display:grid;gap:20px;margin:0 0 28px}
.contact-list li{display:grid;gap:3px}
.contact-list .k{font-family:var(--display);font-weight:600;font-size:12px;letter-spacing:.14em;text-transform:uppercase;color:var(--acc)}
.contact-list .v{color:var(--ink);font-size:16px}
.contact-list a.v:hover{color:var(--acc)}
.form{display:grid;gap:15px}
.field{display:grid;gap:6px}
.field label{font-family:var(--display);font-weight:560;font-size:13.5px;color:var(--ink-2)}
.field input,.field textarea{background:var(--base);border:1px solid rgba(255,255,255,.14);border-radius:14px;padding:13px 16px;color:var(--ink);font-family:inherit;font-size:15px;outline:none;transition:border-color var(--t-quick) var(--ease),background var(--t-quick) var(--ease)}
.field input::placeholder,.field textarea::placeholder{color:var(--muted)}
.field input:focus,.field textarea:focus{border-color:var(--acc)}
.field textarea{min-height:130px;resize:vertical}
/* invalid fields only flag themselves once the user has tried to submit, so
   the form is not shouting at someone who is still filling it in */
.form.tried .field input:invalid,.form.tried .field textarea:invalid{border-color:rgba(255,140,140,.75)}
/* honeypot: off-screen rather than display:none, which bots skip */
.hp{position:absolute!important;left:-9999px!important;top:auto;width:1px;height:1px;overflow:hidden}
.form-msg{display:none;margin:0;padding:12px 15px;border-radius:12px;font-size:14.5px;line-height:1.5}
.form-msg.show{display:block}
.form-msg.err{background:rgba(255,120,120,.1);box-shadow:inset 0 0 0 1px rgba(255,140,140,.38);color:#ffdcdc}
.form-msg.ok{background:rgba(61,190,240,.1);box-shadow:inset 0 0 0 1px rgba(61,190,240,.38);color:#dcf1ff}
/* the newsletter sits in a white band, so it needs its own contrast */
.band.light .field label{color:#48566F}
.band.light .field input,.band.light .field textarea{background:#fff;border-color:rgba(11,21,51,.18);color:#0B1533}
.band.light .form-msg.err{background:rgba(176,32,32,.07);box-shadow:inset 0 0 0 1px rgba(176,32,32,.3);color:#8C1D1D}
.band.light .form-msg.ok{background:rgba(36,82,196,.07);box-shadow:inset 0 0 0 1px rgba(36,82,196,.3);color:#123A86}
.btn[aria-busy="true"]{opacity:.72;cursor:progress}
/* holder for the human check above the submit button. Empty and invisible
   until a Turnstile key is set, so it costs nothing while the check is off. */
.turnstile:not(:empty){margin:2px 0 4px}
.form .btn{justify-self:start;margin-top:4px}
.form .note{color:var(--muted);font-size:12.5px}
@media(max-width:900px){.contact-grid{grid-template-columns:1fr;gap:38px}}

/* ===== more shared components (industries / cases / resources / about / faq / legal / utility) ===== */
.prose{max-width:760px}
.prose h2{font-size:clamp(21px,2.5vw,29px);letter-spacing:-.02em;margin:38px 0 12px}
.prose h2:first-child{margin-top:0}
.prose h3{font-size:18px;margin:26px 0 8px}
.prose p,.prose li{color:var(--ink-2);font-size:16px;line-height:1.7}
.prose ul{padding-left:20px;margin:10px 0}
.prose li{margin:6px 0}
.prose a{color:var(--acc)}
.prose .muted{color:var(--muted);font-size:14px}
.band.light .prose p,.band.light .prose li{color:#48566F}

.case-list{display:grid;gap:22px}
.case-card{position:relative;border-radius:24px;padding:34px 32px;background:rgba(255,255,255,.035);box-shadow:inset 0 0 0 1px rgba(255,255,255,.08);transition:transform var(--t-base) var(--ease),background var(--t-base) var(--ease),box-shadow var(--t-base) var(--ease)}
.case-card:hover{background:rgba(255,255,255,.055);box-shadow:inset 0 0 0 1px rgba(61,190,240,.34)}
.case-card .sec{font-family:var(--display);font-weight:700;font-size:12.5px;letter-spacing:.12em;text-transform:uppercase;color:var(--acc);margin-bottom:10px;display:block}
.case-card h3{font-size:clamp(20px,2.3vw,26px);letter-spacing:-.02em;margin-bottom:12px}
.case-card p{color:var(--ink-2);font-size:15.5px;max-width:660px;margin-bottom:22px}
.case-metrics{display:flex;gap:46px;flex-wrap:wrap}
.case-metrics .n{font-family:var(--display);font-size:32px;font-weight:700;line-height:1}
.case-metrics .n b{color:var(--acc)}
.case-metrics .l{color:var(--muted);font-size:13px;margin-top:6px}

.faq{max-width:820px;display:grid;gap:12px}
.faq details{border-radius:16px;background:rgba(255,255,255,.035);box-shadow:inset 0 0 0 1px rgba(255,255,255,.08);overflow:hidden}
.faq summary{list-style:none;cursor:pointer;padding:20px 24px;font-family:var(--display);font-weight:600;font-size:16.5px;display:flex;justify-content:space-between;align-items:center;gap:16px}
.faq summary::-webkit-details-marker{display:none}
.faq summary::after{content:"";width:9px;height:9px;border-right:2px solid var(--acc);border-bottom:2px solid var(--acc);transform:rotate(45deg);transition:transform var(--t-base) var(--ease);flex:none;margin-top:-3px}
.faq details[open] summary::after{transform:rotate(225deg)}
.faq .a{padding:0 24px 22px;color:var(--ink-2);font-size:15.5px;line-height:1.65;max-width:700px}
/* An accordion that snaps open is the most obviously unfinished motion on a
   site. Two layers here: the answer always fades and settles into place (works
   everywhere), and where the browser supports it the panel also slides its
   height open. Closing stays immediate on purpose — an exit the reader has
   asked for should get out of the way. */
.faq details[open] .a{animation:faqOpen 420ms var(--ease-soft)}
@keyframes faqOpen{from{opacity:0;transform:translateY(-8px)}to{opacity:1;transform:none}}
@supports (interpolate-size:allow-keywords) and selector(::details-content){
  .faq{interpolate-size:allow-keywords}
  .faq details::details-content{block-size:0;overflow:hidden;transition:block-size 420ms var(--ease-soft),content-visibility 420ms allow-discrete}
  .faq details[open]::details-content{block-size:auto}
}
@media(prefers-reduced-motion:reduce){.faq details[open] .a{animation:none}}

.utility{min-height:60vh;display:grid;place-items:center;text-align:center;padding:150px 0 80px}
.utility .big{font-family:var(--display);font-weight:700;font-size:clamp(66px,13vw,150px);line-height:.9;letter-spacing:-.04em;background:var(--grad);-webkit-background-clip:text;background-clip:text;color:transparent;margin-bottom:6px}
.utility h1{font-size:clamp(28px,4vw,42px);letter-spacing:-.03em;margin-bottom:14px}
.utility p{color:var(--ink-2);font-size:18px;max-width:540px;margin:0 auto 28px}
.utility .hero-cta{justify-content:center}

.points{display:grid;grid-template-columns:repeat(3,1fr);gap:30px}
.point h3{font-size:18px;letter-spacing:-.01em;margin-bottom:8px}
.point p{font-size:14.5px;line-height:1.55;color:var(--ink-2)}
.band.light .point p{color:#48566F}
.linklist{display:flex;flex-wrap:wrap;gap:12px 34px;justify-content:center}
.linklist a{font-family:var(--display);font-weight:560;font-size:17px}
.band.light .linklist a{color:#0B1533}
.band.light .linklist a:hover{color:var(--brand-b)}
@media(max-width:820px){.points{grid-template-columns:1fr;gap:22px}}

/* hero captions: slow, staggered reveal to match the unhurried network build */
.hero .mask>span{transition:1.3s cubic-bezier(.2,.75,.2,1)}
.hero p.rv{transition:opacity 1.2s ease .7s,transform 1.2s cubic-bezier(.2,.7,.2,1) .7s}
.hero .hero-cta.rv{transition:opacity 1.2s ease 1.15s,transform 1.2s cubic-bezier(.2,.7,.2,1) 1.15s}
.hero .metrics.rv{transition:opacity 1.2s ease 1.6s,transform 1.2s cubic-bezier(.2,.7,.2,1) 1.6s}

/* About — video hero (fully isolated to .vhero; homepage hero and all other pages untouched) */
.vhero{position:relative;overflow:hidden;min-height:60vh;display:flex;align-items:center;padding:150px 0 60px;background:linear-gradient(135deg,#0a1130,#0d1740,#0a1130)}
.vhero::before{content:"";position:absolute;inset:0;background:url(../img/network-hero-poster.jpg) center 74%/cover no-repeat;opacity:.7;z-index:0}
.vhero-bg{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center 74%;opacity:0;z-index:0;transition:opacity 1.4s ease}
.vhero-bg.ready{opacity:.82}
.vhero-scrim{position:absolute;inset:0;z-index:1;background:linear-gradient(180deg,rgba(10,17,48,.5),rgba(10,17,48,.16) 45%,rgba(10,17,48,.82)),linear-gradient(100deg,rgba(10,17,48,.85),rgba(10,17,48,.45) 52%,rgba(10,17,48,0) 85%)}
.vhero-in{position:relative;z-index:2}
.vhero .crumb{margin-bottom:18px}
.vhero .eyebrow{margin-bottom:14px}
.vhero h1{font-size:clamp(32px,4.4vw,52px);letter-spacing:-.035em;margin:0 0 16px;line-height:1.06}
.vhero .lead{color:var(--ink-2);font-size:18px;max-width:640px;line-height:1.6}
@media(max-width:760px){.vhero{min-height:auto;padding:120px 0 46px}}

/* hero network sound toggle (opt-in, default off; desktop only — interaction is cursor-based) */
/* minimal, icon-only sound toggle — recedes until hovered, brand accent when on */
.sound-toggle{position:absolute;left:30px;bottom:28px;z-index:3;width:38px;height:38px;display:inline-flex;align-items:center;justify-content:center;padding:0;border:0;border-radius:50%;background:transparent;color:rgba(228,236,248,.34);cursor:pointer;transition:color .3s ease,background .3s ease;-webkit-tap-highlight-color:transparent}
.sound-toggle:hover{color:rgba(228,236,248,.9);background:rgba(255,255,255,.05)}
.sound-toggle:focus-visible{outline:2px solid var(--brand-a);outline-offset:3px}
.sound-toggle svg{width:20px;height:20px;flex:none}
.sound-toggle .ic-on{display:none}
.sound-toggle[aria-pressed="true"]{color:var(--brand-a)}
.sound-toggle[aria-pressed="true"] .ic-off{display:none}
.sound-toggle[aria-pressed="true"] .ic-on{display:block}
@media(max-width:900px){.sound-toggle{display:none}}

/* contextual per-service / per-industry CTA — subtle text link, deep-links to Contact carrying the topic */
.svc-cta{display:inline-flex;align-items:center;gap:7px;margin-top:20px;font-size:14px;font-weight:600;color:var(--brand-a);text-decoration:none;transition:color var(--t-quick) var(--ease)}
/* the arrow moves, not the gap — animating gap relayouts the link every frame */
.svc-cta svg{width:15px;height:15px;flex:none;transition:transform var(--t-quick) var(--ease)}
.svc-cta:hover{color:var(--ink)}
.svc-cta:hover svg{transform:translateX(4px)}

/* phones: the header CTA overflowed and pushed the burger off-screen — hide it (CTA still on the sticky bar, FAB and drawer) */
@media(max-width:600px){.nav-act{display:none}}


/* Industries — "sector briefing" list (distinct from the Solutions card grid) */
.sector-list{border-top:1px solid rgba(255,255,255,.1)}
.sector{display:grid;grid-template-columns:.92fr 1.08fr;gap:44px;padding:34px 0;border-bottom:1px solid rgba(255,255,255,.1);align-items:start}
.sector-h h3{font-size:clamp(21px,2.3vw,27px);letter-spacing:-.02em;margin-bottom:11px}
.sector-h .stake{color:var(--ink-2);font-size:15.5px;line-height:1.62;max-width:430px}
.sector-meta{display:flex;flex-direction:column;gap:15px;padding-top:5px}
.sector-meta .mrow{display:flex;flex-direction:column;gap:7px}
.sector-meta .lbl{font-size:11px;font-weight:600;letter-spacing:.16em;text-transform:uppercase;color:var(--acc)}
.sector-meta .val{color:var(--ink-2);font-size:14.5px}
.sector-meta .caps{display:flex;flex-wrap:wrap;gap:8px}
.sector-meta .caps a{font-size:13px;font-weight:600;color:var(--ink);background:rgba(255,255,255,.05);border:1px solid rgba(255,255,255,.09);padding:7px 13px;border-radius:999px;transition:color var(--t-quick) var(--ease),border-color var(--t-quick) var(--ease)}
.sector-meta .caps a:hover{color:var(--brand-a);border-color:rgba(0,168,232,.5)}
.sector-meta .svc-cta{margin-top:3px}
@media(max-width:760px){.sector{grid-template-columns:1fr;gap:18px;padding:28px 0}.sector-h .stake{max-width:none}}

/* Case Studies — narrative "challenge / what we did / outcome" (replaces the generic metric-card grid) */
.case-study{padding:46px 0;border-bottom:1px solid rgba(255,255,255,.1)}
.case-study:first-child{border-top:1px solid rgba(255,255,255,.1)}
.cs-sector{font-size:11px;font-weight:600;letter-spacing:.16em;text-transform:uppercase;color:var(--acc)}
.case-study h3{font-size:clamp(23px,2.7vw,33px);letter-spacing:-.025em;line-height:1.14;margin:12px 0 28px;max-width:780px}
.cs-grid{display:grid;grid-template-columns:1.55fr 1fr;gap:50px;align-items:start}
.cs-narr{display:flex;flex-direction:column;gap:22px}
.cs-block .lbl{font-size:11px;font-weight:600;letter-spacing:.16em;text-transform:uppercase;color:var(--ink-2);display:block;margin-bottom:8px}
.cs-block p{color:var(--ink);font-size:15.5px;line-height:1.66;max-width:580px}
.cs-outcome{background:rgba(255,255,255,.035);border:1px solid rgba(255,255,255,.08);border-radius:20px;padding:30px 28px;display:flex;flex-direction:column;gap:24px}
.cs-fig b{display:block;font-family:var(--display);font-size:clamp(24px,2.7vw,31px);font-weight:640;letter-spacing:-.02em;line-height:1.1;color:#4fbdf0}
.cs-fig span{display:block;margin-top:6px;color:var(--ink-2);font-size:13.5px;line-height:1.45}
.cs-outcome .svc-cta{margin-top:4px}
@media(max-width:820px){.cs-grid{grid-template-columns:1fr;gap:26px}.cs-block p{max-width:none}}

/* About — stat strip, credibility grid, partner chips */
.stat-strip{display:flex;flex-wrap:wrap;margin-top:52px;border:1px solid rgba(255,255,255,.09);border-radius:16px;overflow:hidden}
.stat-strip .stat{flex:1 1 200px;padding:26px 30px;border-right:1px solid rgba(255,255,255,.09)}
.stat-strip .stat:last-child{border-right:0}
.stat-strip .stat b{display:block;font-family:var(--display);font-size:clamp(23px,2.5vw,29px);font-weight:640;letter-spacing:-.02em;color:#4fbdf0}
.stat-strip .stat span{display:block;margin-top:8px;color:var(--ink-2);font-size:14px;line-height:1.45}
@media(max-width:680px){.stat-strip .stat{flex-basis:100%;border-right:0;border-bottom:1px solid rgba(255,255,255,.09)}.stat-strip .stat:last-child{border-bottom:0}}
.cred-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:30px;margin-bottom:46px}
.cred .lbl{display:block;font-size:11px;font-weight:600;letter-spacing:.16em;text-transform:uppercase;color:#2452C4;margin-bottom:11px}
.cred p{color:#48566F;font-size:15px;line-height:1.62}
.partners{border-top:1px solid rgba(11,21,51,.12);padding-top:28px}
.partners .lbl{display:block;font-size:11px;font-weight:600;letter-spacing:.16em;text-transform:uppercase;color:#2452C4;margin-bottom:16px}
.partner-names{display:flex;flex-wrap:wrap;gap:10px 12px}
.partner-names span{font-family:var(--display);font-weight:560;font-size:15px;color:#26344F;padding:9px 17px;border-radius:999px;background:#fff;box-shadow:inset 0 0 0 1px rgba(11,21,51,.13)}
@media(max-width:760px){.cred-grid{grid-template-columns:1fr;gap:22px}}

/* Industries v2 — POV thesis + sticky sector navigator */
.ind-thesis{font-family:var(--display);font-size:clamp(22px,2.9vw,34px);font-weight:560;line-height:1.34;letter-spacing:-.02em;max-width:920px;color:var(--ink)}
.ind-layout{display:grid;grid-template-columns:230px 1fr;gap:64px;align-items:start}
.ind-nav{position:sticky;top:118px;display:flex;flex-direction:column;gap:1px}
.ind-nav-lbl{font-size:11px;font-weight:600;letter-spacing:.16em;text-transform:uppercase;color:var(--acc);margin-bottom:15px}
.ind-nav-a{display:block;padding:9px 0 9px 16px;margin-left:-18px;font-size:15px;font-weight:560;color:var(--ink-2);border-left:2px solid transparent;transition:color var(--t-base) var(--ease)}
.ind-nav-a:hover{color:var(--ink)}
.ind-nav-a.active{color:var(--ink)}
/* one marker that travels between sectors instead of six that blink on and
   off — the movement is what tells you where you are. Built by main.js. */
.ind-nav-mark{position:absolute;left:-18px;top:0;width:2px;height:1px;background:var(--brand-a);border-radius:2px;
  transform-origin:top left;transform:translateY(0) scaleY(0);opacity:0;pointer-events:none;
  transition:transform var(--t-base) var(--ease),opacity var(--t-quick) var(--ease)}
.ind-panels{display:flex;flex-direction:column}
.ind-panel{padding:46px 0;border-bottom:1px solid rgba(255,255,255,.1);scroll-margin-top:118px}
.ind-panel:first-child{padding-top:0}
.ind-panel:last-child{border-bottom:0}
.ind-idx{font-size:11px;font-weight:600;letter-spacing:.16em;text-transform:uppercase;color:var(--acc)}
.ind-pov{font-family:var(--display);font-size:clamp(21px,2.4vw,29px);font-weight:560;line-height:1.26;letter-spacing:-.02em;margin:13px 0 18px;max-width:640px;color:var(--ink)}
.ind-stake{color:var(--ink-2);font-size:15.5px;line-height:1.66;max-width:640px;margin-bottom:24px}
.ind-facts{display:flex;flex-direction:column;gap:15px;margin-bottom:24px}
.ind-facts .mrow{display:flex;flex-direction:column;gap:7px}
.ind-facts .lbl{font-size:11px;font-weight:600;letter-spacing:.16em;text-transform:uppercase;color:var(--ink-2)}
.ind-facts .val{color:var(--ink);font-size:14.5px}
.ind-facts .caps{display:flex;flex-wrap:wrap;gap:8px}
.ind-facts .caps a{font-size:13px;font-weight:600;color:var(--ink);background:rgba(255,255,255,.05);border:1px solid rgba(255,255,255,.09);padding:7px 13px;border-radius:999px;transition:color var(--t-quick) var(--ease),border-color var(--t-quick) var(--ease)}
.ind-facts .caps a:hover{color:var(--brand-a);border-color:rgba(0,168,232,.5)}
@media(max-width:860px){.ind-layout{grid-template-columns:1fr;gap:8px}.ind-nav{display:none}.ind-panel{padding:32px 0}.ind-panel:first-child{padding-top:8px}.ind-pov,.ind-stake{max-width:none}}

/* Case Studies v2 — featured flagship + index + commitments */
.cs-hero .cs-sector{font-size:11px;font-weight:600;letter-spacing:.16em;text-transform:uppercase;color:var(--acc)}
.cs-hero h2{font-size:clamp(26px,3.3vw,42px);letter-spacing:-.03em;line-height:1.1;margin:14px 0 36px;max-width:920px}
.cs-hero-grid{display:grid;grid-template-columns:1.5fr 1fr;gap:54px;align-items:start}
.cs-story{display:flex;flex-direction:column;gap:24px}
.cs-side{background:rgba(255,255,255,.035);border:1px solid rgba(255,255,255,.08);border-radius:22px;padding:32px 30px;display:flex;flex-direction:column;gap:24px}
.cs-figs{display:flex;flex-direction:column;gap:22px}
.cs-ref{color:var(--muted);font-size:13px;line-height:1.55;border-top:1px solid rgba(255,255,255,.09);padding-top:20px;margin:0}
.cs-side .btn{width:100%;justify-content:center}
.cs-index{display:grid;grid-template-columns:1fr 1fr;gap:22px}
.cs-item{display:block;padding:30px 30px 26px;border-radius:20px;background:rgba(255,255,255,.035);box-shadow:inset 0 0 0 1px rgba(255,255,255,.08);transition:transform var(--t-base) var(--ease),background var(--t-base) var(--ease),box-shadow var(--t-base) var(--ease)}
.cs-item:hover{background:rgba(255,255,255,.055);box-shadow:inset 0 0 0 1px rgba(61,190,240,.34);transform:translateY(-3px)}
.cs-item .cs-sector{font-size:11px;font-weight:600;letter-spacing:.16em;text-transform:uppercase;color:var(--acc)}
.cs-item h3{font-family:var(--display);font-size:clamp(18px,2vw,22px);font-weight:600;letter-spacing:-.02em;line-height:1.25;margin:14px 0 14px}
.cs-result{color:#4fbdf0;font-size:14px;font-weight:560;margin-bottom:18px}
.cs-more{display:inline-flex;align-items:center;gap:7px;font-size:13.5px;font-weight:600;color:var(--ink-2)}
.cs-more svg{width:15px;height:15px;transition:transform var(--t-quick) var(--ease)}
.cs-item:hover .cs-more{color:var(--brand-a)}.cs-item:hover .cs-more svg{transform:translateX(4px)}
.sec-head-sm{margin-bottom:26px}.sec-head-sm h3{font-family:var(--display);font-size:clamp(19px,2vw,24px);font-weight:600;letter-spacing:-.02em;color:var(--ink-2)}
@media(max-width:860px){.cs-hero-grid{grid-template-columns:1fr;gap:28px}.cs-index{grid-template-columns:1fr}}

/* About — editorial "principles" list (replaces the generic values card grid) */
.beliefs{display:grid;grid-template-columns:1fr 1fr;gap:0 64px;border-top:1px solid rgba(255,255,255,.1);margin-top:6px}
.belief{padding:28px 0;border-bottom:1px solid rgba(255,255,255,.1)}
.belief h3{font-family:var(--display);font-size:20px;font-weight:600;letter-spacing:-.01em;margin-bottom:9px}
.belief p{color:var(--ink-2);font-size:15px;line-height:1.6;max-width:450px}
@media(max-width:760px){.beliefs{grid-template-columns:1fr}}

/* Resources — Insights hub */
.ins-kind{font-size:11px;font-weight:600;letter-spacing:.16em;text-transform:uppercase;color:var(--acc)}
.ins-feature{display:block;padding:40px 42px;border-radius:24px;background:rgba(255,255,255,.04);box-shadow:inset 0 0 0 1px rgba(255,255,255,.09);transition:transform var(--t-base) var(--ease),background var(--t-base) var(--ease),box-shadow var(--t-base) var(--ease)}
.ins-feature:hover{background:rgba(255,255,255,.06);box-shadow:inset 0 0 0 1px rgba(61,190,240,.34);transform:translateY(-3px)}
.ins-feature h2{font-size:clamp(24px,3vw,36px);letter-spacing:-.025em;line-height:1.12;margin:14px 0 14px;max-width:760px}
.ins-feature p{color:var(--ink-2);font-size:16px;line-height:1.6;max-width:640px;margin-bottom:22px}
.ins-read{display:inline-flex;align-items:center;gap:8px;font-size:14px;font-weight:600;color:var(--brand-a)}
.ins-read svg{width:16px;height:16px;transition:transform .2s}
.ins-feature:hover .ins-read svg,.ins-card:hover .ins-read svg{transform:translateX(4px)}
.ins-grid{display:grid;grid-template-columns:1fr 1fr;gap:22px}
.ins-card{display:flex;flex-direction:column;padding:30px 30px 26px;border-radius:20px;background:rgba(255,255,255,.035);box-shadow:inset 0 0 0 1px rgba(255,255,255,.08);transition:transform var(--t-base) var(--ease),background var(--t-base) var(--ease),box-shadow var(--t-base) var(--ease)}
.ins-card:hover{background:rgba(255,255,255,.055);box-shadow:inset 0 0 0 1px rgba(61,190,240,.34);transform:translateY(-3px)}
.ins-card h3{font-family:var(--display);font-size:clamp(18px,2vw,22px);font-weight:600;letter-spacing:-.02em;line-height:1.24;margin:11px 0 12px}
.ins-card p{color:var(--ink-2);font-size:14.5px;line-height:1.55;margin-bottom:20px;flex:1}
.news-list{display:flex;flex-direction:column;border-top:1px solid rgba(255,255,255,.1)}
.news-item{display:grid;grid-template-columns:150px 1fr;gap:30px;padding:24px 0;border-bottom:1px solid rgba(255,255,255,.1);align-items:start}
.news-tag{font-size:11px;font-weight:600;letter-spacing:.16em;text-transform:uppercase;color:var(--acc);padding-top:2px}
.news-item p{color:var(--ink);font-size:15.5px;line-height:1.6;max-width:640px;margin:0}
/* "Read on LinkedIn" — same arrow-link language as .svc-cta elsewhere */
.news-more{display:inline-flex;align-items:center;gap:7px;margin-top:10px;font-size:14px;font-weight:600;color:var(--brand-a);transition:color var(--t-quick) var(--ease)}
.news-more::after{content:"";width:7px;height:7px;border-top:1.6px solid currentColor;border-right:1.6px solid currentColor;transform:rotate(45deg);transition:transform var(--t-quick) var(--ease)}
.news-more:hover{color:var(--ink)}
.news-more:hover::after{transform:rotate(45deg) translate(2px,-2px)}
@media(max-width:760px){.ins-grid{grid-template-columns:1fr}.news-item{grid-template-columns:1fr;gap:8px}}
/* Insight article pages */
.article-head{max-width:760px}
.article-meta{display:inline-block;margin-top:18px;font-size:13px;font-weight:600;letter-spacing:.05em;text-transform:uppercase;color:var(--muted)}
.article{max-width:720px}
.article p{color:var(--ink);font-size:16.5px;line-height:1.72;margin-bottom:20px}
.article h2{font-size:clamp(21px,2.3vw,27px);letter-spacing:-.02em;margin:38px 0 14px}
.article ul,.article ol{margin:0 0 20px;padding-left:22px;color:var(--ink);font-size:16.5px;line-height:1.7}
.article li{margin-bottom:9px}
.article li strong{color:var(--ink)}
.article-note{margin-top:34px;padding-top:20px;border-top:1px solid rgba(255,255,255,.1);color:var(--muted);font-size:13.5px;line-height:1.6}

/* refined credibility line (replaces the AI-tell big-number metric strips) */
.credline{display:flex;flex-wrap:wrap;align-items:center;row-gap:11px;margin-top:48px}
.credline span{font-size:14px;font-weight:560;color:var(--ink-2);white-space:nowrap}
.credline span:not(:first-child){margin-left:22px;padding-left:22px;border-left:1px solid rgba(255,255,255,.16)}
.hero .credline.rv{transition:opacity 1.2s ease 1.6s,transform 1.2s cubic-bezier(.2,.7,.2,1) 1.6s}
@media(max-width:600px){.credline span:not(:first-child){margin-left:0;padding-left:0;border-left:0;flex-basis:100%}}

/* homepage industries — divider directory (replaces pills) + section footer link */
.ind-links{display:grid;grid-template-columns:1fr;border-top:1px solid rgba(11,21,51,.12);margin-top:6px}
.ind-links a{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:22px 2px;border-bottom:1px solid rgba(11,21,51,.12);font-family:var(--display);font-weight:560;font-size:clamp(18px,1.9vw,22px);letter-spacing:-.01em;color:#0B1533;transition:color var(--t-quick) var(--ease)}
/* the row used to indent on hover, which relaid out the whole list on every
   pass of the mouse. Colour plus the arrow nudge says the same thing. */
.ind-links a:hover{color:var(--brand-a)}
.ind-links a svg{width:17px;height:17px;flex:none;opacity:.45;transition:transform var(--t-quick) var(--ease),opacity var(--t-quick) var(--ease)}
.ind-links a:hover svg{opacity:1;transform:translateX(4px)}
@media(max-width:700px){.ind-links{grid-template-columns:1fr}}
.section-more{display:inline-flex;align-items:center;gap:9px;margin-top:38px;font-family:var(--display);font-weight:600;font-size:16px;letter-spacing:-.01em;color:var(--brand-a)}
.section-more svg{width:17px;height:17px;transition:transform var(--t-quick) var(--ease)}
.section-more:hover svg{transform:translateX(5px)}
.band.light .section-more{color:#2452C4}
/* cookie consent */
.cookie-bar{position:fixed;left:16px;right:16px;bottom:16px;z-index:90;display:flex;flex-wrap:wrap;align-items:center;gap:12px 22px;max-width:720px;margin:0 auto;padding:16px 20px;border-radius:16px;background:rgba(13,23,64,.97);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);box-shadow:0 20px 50px -18px rgba(0,0,0,.7);border:1px solid rgba(255,255,255,.1)}
/* the bar is injected by JS after load, so it arrives rather than appears */
.cookie-bar{animation:barIn 520ms var(--ease-soft) 700ms both}
@keyframes barIn{from{opacity:0;transform:translateY(14px)}to{opacity:1;transform:none}}
.cookie-bar p{flex:1;min-width:220px;color:var(--ink-2);font-size:13.5px;line-height:1.5;margin:0}
.cookie-bar a{color:var(--brand-a)}
.cookie-bar .btn{padding:10px 20px;font-size:13.5px}
/* Decline sits beside Accept and is a real choice, so it gets equal room.
   Both stay on one line on a phone rather than stacking into a wall. */
.cookie-acts{display:flex;gap:10px;flex:none}
.cookie-acts .btn{white-space:nowrap}
@media(max-width:520px){.cookie-acts{width:100%}.cookie-acts .btn{flex:1;padding:10px 12px}}
@media(max-width:520px){.cookie-bar{left:10px;right:10px;bottom:10px}}

/* homepage 3-up previews (cases + insights) mirroring the redesigned pages */
.cs-index.home3,.ins-grid.home3{grid-template-columns:repeat(3,1fr)}
@media(max-width:900px){.cs-index.home3,.ins-grid.home3{grid-template-columns:1fr 1fr}}
@media(max-width:620px){.cs-index.home3,.ins-grid.home3{grid-template-columns:1fr}}
/* insight cards adapted for the white homepage resources band */
.band.light .ins-card{background:#fff;box-shadow:inset 0 0 0 1px rgba(11,21,51,.1)}
.band.light .ins-card:hover{background:#fff;box-shadow:inset 0 0 0 1px var(--brand-a)}
.band.light .ins-card h3{color:#0B1533}
.band.light .ins-card p{color:#48566F}
.band.light .ins-kind,.band.light .ins-read{color:#2452C4}

/* Case Studies — cinematic "impact" blocks (imagery + big glowing metric + Before→After) */
.impact-list{display:flex;flex-direction:column;gap:36px}
.impact{display:grid;grid-template-columns:1fr 1fr;border-radius:26px;overflow:hidden;box-shadow:inset 0 0 0 1px rgba(255,255,255,.09),0 50px 100px -60px rgba(0,0,0,.85);min-height:500px}
.impact:nth-child(even) .impact-visual{order:2}
.impact-visual{position:relative;overflow:hidden;min-height:320px;background:#0a1130}
.impact-visual::before{content:"";position:absolute;inset:0;background:url(../img/network-hero-poster.jpg) center/cover;opacity:.55;animation:kenburns 30s ease-in-out infinite alternate}
.impact-visual::after{content:"";position:absolute;inset:0}
.impact-1 .impact-visual::after{background:radial-gradient(120% 100% at 20% 90%,rgba(0,168,232,.5),transparent 60%),linear-gradient(140deg,rgba(10,17,48,.35),rgba(10,17,48,.88))}
.impact-2 .impact-visual::after{background:radial-gradient(120% 100% at 20% 90%,rgba(124,77,255,.52),transparent 60%),linear-gradient(140deg,rgba(10,17,48,.35),rgba(10,17,48,.88))}
.impact-3 .impact-visual::after{background:radial-gradient(120% 100% at 20% 90%,rgba(0,201,167,.48),transparent 60%),linear-gradient(140deg,rgba(10,17,48,.35),rgba(10,17,48,.88))}
.impact-4 .impact-visual::after{background:radial-gradient(120% 100% at 20% 90%,rgba(245,158,66,.42),transparent 60%),linear-gradient(140deg,rgba(10,17,48,.35),rgba(10,17,48,.9))}
.impact-word{display:block;font-family:var(--display);font-size:12px;font-weight:600;letter-spacing:.18em;text-transform:uppercase;color:var(--acc);margin-bottom:9px}
.impact-tag{position:absolute;top:30px;left:32px;z-index:2;font-size:11px;font-weight:600;letter-spacing:.18em;text-transform:uppercase;color:rgba(255,255,255,.88)}
.impact-metric{position:absolute;bottom:38px;left:32px;right:32px;z-index:2}
/* tabular figures so the number holds its width while it counts up */
.impact-metric b{display:block;font-family:var(--display);font-weight:680;font-size:clamp(58px,7.5vw,108px);line-height:.86;letter-spacing:-.045em;color:#fff;font-variant-numeric:tabular-nums;text-shadow:0 2px 50px rgba(120,214,255,.55)}
.impact-metric em{display:block;margin-top:12px;font-style:normal;font-size:15px;letter-spacing:.01em;color:rgba(230,240,255,.82)}
.impact-content{background:rgba(255,255,255,.022);padding:clamp(30px,3.4vw,52px);display:flex;flex-direction:column;justify-content:center}
.impact-content h2,.impact-content h3{font-size:clamp(23px,2.5vw,33px);letter-spacing:-.03em;line-height:1.12;margin-bottom:26px;max-width:460px}
.impact-flow{position:relative;margin:8px 0 4px;padding-left:28px}
.impact-flow::before{content:"";position:absolute;left:5px;top:9px;bottom:11px;width:1.5px;background:linear-gradient(180deg,rgba(255,255,255,.16),rgba(0,168,232,.55) 52%,rgba(120,214,255,.85))}
.fstage{position:relative;padding-bottom:20px}
.fstage:last-child{padding-bottom:0}
.fstage::before{content:"";position:absolute;left:-28px;top:4px;width:12px;height:12px;border-radius:50%;box-sizing:border-box}
.fstage-before::before{background:#141f42;box-shadow:inset 0 0 0 1.5px rgba(255,255,255,.32)}
.fstage-eng::before{background:var(--brand-a);box-shadow:0 0 0 4px rgba(0,168,232,.18)}
.fstage-after::before{background:#cfeeff;box-shadow:0 0 14px 2px rgba(120,214,255,.65)}
.fstage-lbl{display:block;font-size:10.5px;font-weight:600;letter-spacing:.2em;text-transform:uppercase;margin-bottom:5px}
.fstage-before .fstage-lbl{color:var(--muted)}
.fstage-eng .fstage-lbl{color:var(--brand-a)}
.fstage-after .fstage-lbl{color:#bfe9ff}
.fstage p{font-size:14.5px;line-height:1.5;margin:0}
.fstage-before p{color:var(--muted)}
.fstage-eng p{color:var(--ink)}
.fstage-after p{color:var(--ink-2)}
.impact-row{display:flex;gap:44px;margin:24px 0 30px;padding-top:22px;border-top:1px solid rgba(255,255,255,.1)}
.impact-stat b{font-family:var(--display);font-size:clamp(23px,2.3vw,30px);font-weight:640;letter-spacing:-.02em;color:#4fbdf0}
.impact-stat span{display:block;margin-top:5px;color:var(--ink-2);font-size:13px}
.istory{align-self:flex-start;display:inline-flex;align-items:center;gap:9px;padding:14px 26px;border-radius:999px;background:var(--grad);color:#fff;font-family:var(--display);font-weight:600;font-size:14.5px;box-shadow:0 18px 42px -14px rgba(0,168,232,.6);transition:transform var(--t-quick) var(--ease),box-shadow var(--t-base) var(--ease)}
.istory:hover{transform:translateY(-2px);box-shadow:0 24px 50px -14px rgba(0,168,232,.7)}
.istory svg{width:16px;height:16px}
@media(max-width:860px){.impact{grid-template-columns:1fr}.impact:nth-child(even) .impact-visual{order:0}.impact-visual{min-height:260px}.impact-metric b{font-size:clamp(52px,16vw,80px)}}

/* subtle staggered caption reveals (impact blocks + statements) */
/* The block tells a story, so it is choreographed in story order:
   headline, then the line draws down, then Before → Engineered → After,
   then the number that proves it, then the supporting stats and the CTA.
   The build is unhurried on purpose: this is the one place on the site the
   viewer is meant to watch rather than skim. */
.impact .impact-metric,.impact .impact-content>h2,.impact .impact-content>h3,.impact .fstage,.impact .impact-row,.impact .istory{opacity:0;transform:translateY(16px);transition:opacity 850ms var(--ease-soft),transform 850ms var(--ease-soft)}
.impact.in .impact-metric,.impact.in .impact-content>h2,.impact.in .impact-content>h3,.impact.in .fstage,.impact.in .impact-row,.impact.in .istory{opacity:1;transform:none}
.impact.in .impact-content>h2,.impact.in .impact-content>h3{transition-delay:0ms}
.impact.in .fstage-before{transition-delay:200ms}
.impact.in .fstage-eng{transition-delay:360ms}
.impact.in .fstage-after{transition-delay:520ms}
.impact.in .impact-metric{transition-delay:470ms}
.impact.in .impact-row{transition-delay:660ms}
.impact.in .istory{transition-delay:760ms}
/* secondary layer: the connector draws itself downward ahead of the stages,
   so the eye is led through the sequence rather than dropped into it */
.impact .impact-flow::before{transform-origin:top;transform:scaleY(0);transition:transform 1150ms var(--ease-soft) 90ms}
.impact.in .impact-flow::before{transform:scaleY(1)}
.statement.rv .eyebrow,.statement.rv .bigtype .sol,.statement.rv .bigtype .gho,.statement.rv .statement-lead{opacity:0;transform:translateY(20px);transition:opacity 1000ms var(--ease-soft),transform 1000ms var(--ease-soft)}
.statement.rv.in .eyebrow,.statement.rv.in .bigtype .sol,.statement.rv.in .bigtype .gho,.statement.rv.in .statement-lead{opacity:1;transform:none}
.statement.rv.in .bigtype .sol{transition-delay:.13s}
.statement.rv.in .bigtype .gho{transition-delay:.32s}
.statement.rv.in .statement-lead{transition-delay:.54s}

/* Case Studies — oversized two-tone statement moments */
.statement{max-width:1100px}
.statement .eyebrow{display:block;margin-bottom:24px}
.bigtype{font-family:var(--display);font-weight:680;font-size:clamp(46px,8.6vw,124px);line-height:.9;letter-spacing:-.045em;margin:0}
.bigtype .sol{display:block;color:#fff}
.bigtype .gho{display:block;background:linear-gradient(180deg,#8a99c2,#6274a2);-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent;color:transparent}
.statement-lead{margin-top:32px;max-width:640px;font-size:clamp(16px,1.35vw,19px);line-height:1.62;color:var(--ink-2)}
.band.light .bigtype .sol{color:#0B1533}
.band.light .bigtype .gho{background:linear-gradient(180deg,#cfd8e6,#9fb0c8);-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent}
.band.light .statement-lead{color:#48566F}
@media(max-width:600px){.bigtype{font-size:clamp(40px,13.5vw,66px)}}
.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
