/* =====================================================================
   ABOUT PAGE (prefix ab-)  v2 creative   colours = Ninja Coding Pro logo
   ===================================================================== */
.ab-page{--blue:#0ABAEA;--blue-l:#38D4FF;--blue-d:#0691B8;--ink:#0B1A26;--text:#556172;--soft:#F0FAFE;--navy:#000612;
  font-family:"Nunito",sans-serif;color:var(--ink);overflow-x:clip;position:relative;background:#fff;}
.ab-page *{box-sizing:border-box;}
.ab-page h1,.ab-page h2,.ab-page h3,.ab-page p,.ab-page figure,.ab-page pre{font-family:inherit;margin:0;}
.ab-page a{text-decoration:none;}
.ab-page button{font-family:inherit;}
.ab-wrap{max-width:1240px;margin:0 auto;padding:0 24px;position:relative;z-index:2;}

.ab-progress{position:fixed;left:0;top:0;right:0;height:3px;z-index:9999;pointer-events:none;}
.ab-progress i{display:block;height:100%;background:linear-gradient(90deg,#0ABAEA,#8EEAFF);transform:scaleX(0);transform-origin:left;box-shadow:0 0 12px rgba(10,186,234,.8);}

/* type */
.ab-eyebrow{display:inline-flex;align-items:center;gap:8px;padding:7px 16px;border-radius:40px;background:rgba(10,186,234,.12);color:var(--blue-d);font-weight:800;font-size:13px;letter-spacing:.09em;text-transform:uppercase;}
.ab-eyebrow::before{content:"";width:7px;height:7px;border-radius:50%;background:var(--blue);box-shadow:0 0 0 4px rgba(10,186,234,.2);}
.ab-head{text-align:center;max-width:820px;margin:0 auto 64px;}
.ab-title{margin-top:16px !important;font-size:46px;line-height:1.1;font-weight:900;color:var(--ink);letter-spacing:-.01em;}
.ab-title span{background:linear-gradient(90deg,var(--blue),var(--blue-d));-webkit-background-clip:text;background-clip:text;color:transparent;}
.ab-sub{margin-top:18px !important;color:var(--text);font-size:17px;line-height:1.8;}
.ab-process .ab-title,.ab-eco .ab-title{color:#fff;}
.ab-process .ab-title span,.ab-eco .ab-title span{background:linear-gradient(90deg,#12C6F5,#8EEAFF);-webkit-background-clip:text;background-clip:text;color:transparent;}
.ab-process .ab-sub,.ab-eco .ab-sub{color:rgba(255,255,255,.72);}
.ab-process .ab-eyebrow,.ab-eco .ab-eyebrow{background:rgba(10,186,234,.16);color:var(--blue-l);}

.ab-btn{display:inline-flex;align-items:center;gap:10px;padding:15px 30px;border-radius:50px;font-weight:800;font-size:16px;transition:.3s;border:2px solid transparent;cursor:pointer;}
.ab-btn-p{background:linear-gradient(135deg,#12C6F5,#0691B8);color:#fff;box-shadow:0 12px 28px rgba(10,186,234,.4);}
.ab-btn-p:hover{transform:translateY(-3px);box-shadow:0 18px 36px rgba(10,186,234,.55);color:#fff;}
.ab-btn-o{background:#fff;border-color:rgba(11,26,38,.15);color:var(--ink);}
.ab-btn-o:hover{border-color:var(--blue);color:var(--blue-d);transform:translateY(-3px);}
.ab-btn-w{background:#fff;color:var(--blue-d);box-shadow:0 14px 30px rgba(0,0,0,.2);}
.ab-btn-w:hover{transform:translateY(-3px);color:var(--ink);}
.ab-btn-ow{border-color:rgba(255,255,255,.7);color:#fff;}
.ab-btn-ow:hover{background:rgba(255,255,255,.15);color:#fff;transform:translateY(-3px);}
.ab-btn i{transition:transform .3s;}
.ab-btn:hover i{transform:translateX(4px);}
.ab-cta-row{display:flex;gap:16px;flex-wrap:wrap;}
.ab-center{text-align:center;margin-top:50px;}

.ab-rv{opacity:0;transform:translateY(38px);transition:opacity .8s cubic-bezier(.2,.7,.2,1) var(--d,0s),transform .8s cubic-bezier(.2,.7,.2,1) var(--d,0s);}
.ab-rv.in{opacity:1;transform:none;}

.ab-live{display:inline-block;width:9px;height:9px;border-radius:50%;background:#22d48a;box-shadow:0 0 0 0 rgba(34,212,138,.6);animation:abLive 1.8s infinite;}
@keyframes abLive{0%{box-shadow:0 0 0 0 rgba(34,212,138,.6);}70%{box-shadow:0 0 0 9px rgba(34,212,138,0);}100%{box-shadow:0 0 0 0 rgba(34,212,138,0);}}

.ab-grid{position:absolute;inset:0;z-index:0;pointer-events:none;background-image:linear-gradient(rgba(10,186,234,.09) 1px,transparent 1px),linear-gradient(90deg,rgba(10,186,234,.09) 1px,transparent 1px);background-size:64px 64px;-webkit-mask-image:radial-gradient(ellipse 80% 75% at 50% 45%,#000 15%,transparent 78%);mask-image:radial-gradient(ellipse 80% 75% at 50% 45%,#000 15%,transparent 78%);animation:abGrid 24s linear infinite;}
@keyframes abGrid{to{background-position:64px 64px,64px 64px;}}
.ab-glow{position:absolute;z-index:0;border-radius:50%;pointer-events:none;filter:blur(20px);animation:abPulse 8s ease-in-out infinite;}
.ab-glow.g1{width:560px;height:560px;right:-150px;top:-180px;background:radial-gradient(circle,rgba(10,186,234,.4),rgba(10,186,234,0) 68%);}
@keyframes abPulse{0%,100%{transform:scale(1);opacity:.9;}50%{transform:scale(1.16);opacity:.55;}}

/* ================= HERO (light) ================= */
.ab-hero{position:relative;overflow:hidden;padding:150px 0 0;background:linear-gradient(180deg,#F4FCFF 0%,#fff 70%);}
.ab-dots{position:absolute;inset:0;z-index:0;pointer-events:none;background-image:radial-gradient(rgba(10,186,234,.28) 1.4px,transparent 1.6px);background-size:28px 28px;-webkit-mask-image:radial-gradient(ellipse 70% 70% at 60% 35%,#000 5%,transparent 70%);mask-image:radial-gradient(ellipse 70% 70% at 60% 35%,#000 5%,transparent 70%);}
.ab-blob{position:absolute;z-index:0;border-radius:50%;filter:blur(60px);pointer-events:none;animation:abBlob 14s ease-in-out infinite;}
.ab-blob.b1{width:520px;height:520px;right:-120px;top:-60px;background:rgba(10,186,234,.35);}
.ab-blob.b2{width:380px;height:380px;left:-120px;top:280px;background:rgba(56,212,255,.22);animation-delay:-5s;}
.ab-blob.b3{width:300px;height:300px;right:30%;bottom:40px;background:rgba(6,145,184,.14);animation-delay:-9s;}
@keyframes abBlob{0%,100%{transform:translate(0,0) scale(1);}50%{transform:translate(30px,-30px) scale(1.12);}}
.ab-hero-grid{display:grid;grid-template-columns:1.05fr .95fr;gap:40px;align-items:center;padding-bottom:110px;}
.ab-crumb{display:flex;gap:10px;align-items:center;font-size:14px;font-weight:700;color:var(--text);margin-bottom:22px;}
.ab-crumb a{color:var(--blue-d);}
.ab-crumb b{color:var(--ink);font-weight:800;}
.ab-tag{display:inline-flex;align-items:center;gap:10px;padding:8px 18px;border-radius:40px;background:#fff;border:1px solid rgba(10,186,234,.35);box-shadow:0 8px 24px rgba(10,186,234,.15);font-size:13.5px;font-weight:800;color:var(--ink);}
.ab-h1{margin:24px 0 0 !important;font-size:58px;line-height:1.08;font-weight:900;color:var(--ink);letter-spacing:-.02em;}
.ab-rot{position:relative;display:inline-block;vertical-align:bottom;height:1.12em;min-width:5.6em;overflow:hidden;}
.ab-rot b{position:absolute;left:0;top:0;white-space:nowrap;background:linear-gradient(90deg,#0ABAEA,#0691B8);-webkit-background-clip:text;background-clip:text;color:transparent;transform:translateY(105%);opacity:0;transition:transform .6s cubic-bezier(.2,.7,.2,1),opacity .6s;}
.ab-rot b.on{transform:none;opacity:1;}
.ab-rot b.out{transform:translateY(-105%);opacity:0;}
.ab-lead{margin-top:24px !important;font-size:18.5px;line-height:1.8;color:var(--text);max-width:600px;}
.ab-hero .ab-cta-row{margin-top:34px;}
.ab-trust{list-style:none;margin:40px 0 0;padding:0;display:flex;gap:34px;flex-wrap:wrap;}
.ab-trust li{font-size:14.5px;font-weight:700;color:var(--text);position:relative;padding-left:0;}
.ab-trust li+li::before{content:"";position:absolute;left:-18px;top:6px;bottom:6px;width:1px;background:rgba(11,26,38,.18);}
.ab-trust b{display:block;font-size:30px;font-weight:900;line-height:1.1;color:var(--ink);}

/* hero UI composition */
.ab-hero-vis{position:relative;height:540px;}
.ab-win{position:absolute;border-radius:20px;background:#fff;border:1px solid rgba(10,186,234,.25);box-shadow:0 26px 60px rgba(6,40,60,.18);transition:transform .25s ease-out;overflow:hidden;}
.ab-win-bar{display:flex;align-items:center;gap:7px;padding:12px 16px;background:#04182a;}
.ab-win-bar i{width:10px;height:10px;border-radius:50%;background:#ff5f57;}
.ab-win-bar i:nth-child(2){background:#febc2e;}.ab-win-bar i:nth-child(3){background:#28c840;}
.ab-win-bar span{margin-left:10px;font-size:12px;font-weight:700;color:rgba(255,255,255,.6);font-family:Consolas,monospace;}
.ab-code{left:0;top:10px;width:330px;background:#061a2b;border-color:rgba(10,186,234,.4);animation:abFl 7s ease-in-out infinite;}
@keyframes abFl{0%,100%{margin-top:0;}50%{margin-top:-14px;}}
.ab-code pre,.ab-code2 pre{padding:18px 20px 22px;font-family:Consolas,"Courier New",monospace;font-size:13.5px;line-height:1.85;color:#cfe9f5;white-space:pre;}
.ab-code .l,.ab-code2 .l{display:block;opacity:0;transform:translateX(-8px);animation:abLine .5s ease forwards;animation-delay:calc(.6s + var(--i)*.35s);}
@keyframes abLine{to{opacity:1;transform:none;}}
.ab-code em,.ab-code2 em{font-style:normal;color:#38D4FF;}
.ab-code s,.ab-code2 s{text-decoration:none;color:#8EEAFF;}
.ab-code u,.ab-code2 u{display:inline-block;width:8px;height:15px;background:#38D4FF;vertical-align:middle;margin-left:4px;animation:abBlink 1s steps(1) infinite;}
@keyframes abBlink{50%{opacity:0;}}
.ab-chat{right:0;top:120px;width:290px;padding:0 0 16px;animation:abFl 8s ease-in-out infinite -2s;}
.ab-chat-h{display:flex;align-items:center;gap:12px;padding:14px 16px;background:linear-gradient(135deg,#12C6F5,#0691B8);color:#fff;}
.ab-chat-h .av{width:38px;height:38px;border-radius:12px;display:grid;place-items:center;background:rgba(255,255,255,.22);}
.ab-chat-h b{font-size:15px;line-height:1.2;}
.ab-chat-h small{display:flex;align-items:center;gap:6px;font-size:11.5px;font-weight:700;opacity:.9;}
.ab-chat .m{margin:12px 14px 0 !important;padding:10px 14px;border-radius:16px;font-size:13.5px;line-height:1.45;max-width:85%;opacity:0;transform:translateY(10px);animation:abLine .5s ease forwards;}
.ab-chat .bot{background:var(--soft);color:var(--ink);border-bottom-left-radius:4px;animation-delay:1.2s;}
.ab-chat .me{margin-left:auto !important;background:var(--ink);color:#fff;border-bottom-right-radius:4px;animation-delay:2.4s;}
.ab-chat .dots{display:flex;gap:5px;width:62px;animation-delay:3.4s;}
.ab-chat .dots i{width:7px;height:7px;border-radius:50%;background:var(--blue);animation:abDot 1.2s infinite;}
.ab-chat .dots i:nth-child(2){animation-delay:.2s;}.ab-chat .dots i:nth-child(3){animation-delay:.4s;}
@keyframes abDot{0%,60%,100%{transform:translateY(0);opacity:.4;}30%{transform:translateY(-5px);opacity:1;}}
.ab-flow{left:60px;bottom:30px;display:flex;align-items:center;gap:0;padding:18px 22px;animation:abFl 6.5s ease-in-out infinite -4s;}
.ab-flow .nd{width:48px;height:48px;border-radius:15px;display:grid;place-items:center;background:var(--soft);border:2px solid rgba(10,186,234,.45);color:var(--blue-d);font-size:19px;}
.ab-flow .nd.ok{background:linear-gradient(135deg,#12C6F5,#0691B8);color:#fff;border-color:transparent;}
.ab-flow .ln{position:relative;width:46px;height:3px;background:rgba(10,186,234,.25);overflow:hidden;}
.ab-flow .ln::after{content:"";position:absolute;left:-40%;top:0;width:40%;height:100%;background:var(--blue);animation:abTravel 1.6s linear infinite;}
@keyframes abTravel{to{left:100%;}}
.ab-fb{position:absolute;width:56px;height:56px;border-radius:18px;display:grid;place-items:center;font-size:24px;background:#fff;color:var(--blue-d);border:1px solid rgba(10,186,234,.3);box-shadow:0 14px 30px rgba(10,186,234,.25);transition:transform .25s ease-out;}
.ab-fb.f1{right:34%;top:0;}.ab-fb.f2{right:6%;bottom:70px;}.ab-fb.f3{right:40%;bottom:0;background:linear-gradient(135deg,#12C6F5,#0691B8);color:#fff;}

.ab-marquee{position:relative;z-index:3;overflow:hidden;background:var(--navy);padding:22px 0;transform:rotate(-1.2deg);margin:0 -20px;}
.ab-track{display:flex;align-items:center;gap:34px;width:max-content;animation:abMarq 30s linear infinite;}
.ab-track span{font-size:22px;font-weight:900;color:#fff;white-space:nowrap;letter-spacing:.01em;}
.ab-track i{font-size:14px;color:var(--blue);}
@keyframes abMarq{to{transform:translateX(-50%);}}

/* ================= STORY ================= */
.ab-story{position:relative;padding:150px 0 120px;background:#fff;}
.ab-story-grid{display:grid;grid-template-columns:.9fr 1.1fr;gap:80px;align-items:start;}
.ab-story-l{position:sticky;top:130px;}
.ab-story-l .ab-title{font-size:48px;}
.ab-bigyr{display:flex;align-items:center;gap:20px;margin-top:38px;padding:24px 28px;border-radius:24px;background:linear-gradient(135deg,#12C6F5,#0691B8);color:#fff;box-shadow:0 22px 50px rgba(10,186,234,.4);}
.ab-bigyr b{font-size:68px;font-weight:900;line-height:1;}
.ab-bigyr span{font-weight:800;font-size:16px;line-height:1.4;opacity:.95;}
.ab-tl{list-style:none;margin:0;padding:0;position:relative;--p:0;}
.ab-tlline{position:absolute;left:31px;top:20px;bottom:20px;width:3px;background:rgba(10,186,234,.18);border-radius:3px;}
.ab-tlline span{display:block;width:100%;height:100%;background:linear-gradient(180deg,#0ABAEA,#8EEAFF);transform-origin:top;transform:scaleY(var(--p));box-shadow:0 0 12px rgba(10,186,234,.6);}
.ab-ms{position:relative;display:grid;grid-template-columns:64px 1fr;gap:26px;align-items:start;padding:0 0 46px;}
.ab-msn{position:absolute;right:0;top:-18px;font-size:92px;font-weight:900;line-height:1;color:rgba(10,186,234,.09);pointer-events:none;}
.ab-msi{width:64px;height:64px;border-radius:20px;display:grid;place-items:center;background:#fff;border:2px solid rgba(10,186,234,.35);color:var(--blue-d);font-size:23px;z-index:2;transition:.5s;}
.ab-ms.in .ab-msi{background:linear-gradient(135deg,#12C6F5,#0691B8);color:#fff;border-color:#fff;box-shadow:0 0 0 6px rgba(10,186,234,.18),0 14px 28px rgba(10,186,234,.45);}
.ab-ms h3{font-size:25px;font-weight:800;padding-top:8px;}
.ab-ms p{margin-top:8px !important;font-size:16.5px;line-height:1.7;color:var(--text);max-width:440px;}

/* ================= BENTO ================= */
.ab-bento-s{padding:110px 0 130px;background:var(--soft);}
.ab-bento{display:grid;grid-template-columns:repeat(4,1fr);grid-auto-rows:190px;gap:20px;}
.bt{position:relative;overflow:hidden;border-radius:28px;padding:28px 30px;background:#fff;border:1px solid rgba(10,186,234,.2);box-shadow:0 14px 40px rgba(6,40,60,.06);transition:transform .4s cubic-bezier(.2,.7,.2,1),box-shadow .4s;display:flex;flex-direction:column;justify-content:space-between;}
.bt:hover{transform:translateY(-8px);box-shadow:0 28px 60px rgba(10,186,234,.25);}
.bt-k{font-size:14.5px;font-weight:800;letter-spacing:.04em;text-transform:uppercase;color:var(--text);}
.bt b{font-size:64px;font-weight:900;line-height:1;color:var(--ink);}
.bt b .ab-count{font-variant-numeric:tabular-nums;}
.bt-i{position:absolute;right:26px;top:24px;font-size:28px;opacity:.5;}
.bt-a{grid-column:span 2;grid-row:span 2;background:radial-gradient(ellipse 90% 80% at 0% 0%,#04324d,#000612 72%);border-color:rgba(10,186,234,.5);}
.bt-a .bt-k{color:rgba(255,255,255,.7);}
.bt-a b{font-size:120px;color:#fff;}
.bt-a .spark{position:absolute;left:0;right:0;bottom:0;width:100%;height:55%;}
.bt-a .sl{stroke-dasharray:700;stroke-dashoffset:700;}
.bt-a.in .sl{animation:abDraw 2.4s .4s ease forwards;}
@keyframes abDraw{to{stroke-dashoffset:0;}}
.bt-b{background:linear-gradient(135deg,#12C6F5,#0691B8);border-color:transparent;}
.bt-b .bt-k{color:rgba(255,255,255,.85);}.bt-b b{color:#fff;}.bt-b .bt-i{color:#fff;}
.bt-c .bt-i{color:var(--blue-d);}
.bt-c::after{content:"";position:absolute;right:-30px;bottom:-30px;width:170px;height:170px;background-image:radial-gradient(rgba(10,186,234,.45) 2px,transparent 2.4px);background-size:14px 14px;border-radius:50%;}
.bt-d{align-items:center;justify-content:center;gap:14px;text-align:center;}
.bt-d .ring{--v:98;width:118px;height:118px;border-radius:50%;display:grid;place-items:center;background:conic-gradient(#0ABAEA calc(var(--v)*1%),rgba(10,186,234,.15) 0);position:relative;}
.bt-d .ring::before{content:"";position:absolute;inset:11px;border-radius:50%;background:#fff;}
.bt-d .ring b{position:relative;font-size:30px;}
.bt-e{background:var(--ink);border-color:rgba(10,186,234,.4);}
.bt-e .bt-k{color:rgba(255,255,255,.7);}.bt-e b{color:#fff;font-size:56px;}
.crowd{display:flex;gap:6px;flex-wrap:wrap;}
.crowd i{width:26px;height:26px;border-radius:50%;display:grid;place-items:center;font-size:11px;background:rgba(10,186,234,.2);color:var(--blue-l);border:1px solid rgba(10,186,234,.4);animation:abPop 2.4s ease-in-out infinite;animation-delay:calc(var(--i)*.15s);}
@keyframes abPop{0%,100%{transform:scale(1);}50%{transform:scale(1.18);background:rgba(10,186,234,.5);color:#fff;}}
.bt-f{grid-column:span 4;flex-direction:row;align-items:center;background:linear-gradient(135deg,#fff,#E6F8FE);}
.stars{display:flex;gap:6px;font-size:26px;color:#FFB400;}
.stars i{animation:abPop 2s ease-in-out infinite;}
.stars i:nth-child(2){animation-delay:.15s;}.stars i:nth-child(3){animation-delay:.3s;}.stars i:nth-child(4){animation-delay:.45s;}.stars i:nth-child(5){animation-delay:.6s;}
.bt-f>div:first-child{display:flex;flex-direction:column;gap:10px;}
.bt-f{justify-content:space-between;}

/* ================= PHILOSOPHY ================= */
.ab-phil{padding:130px 0;background:#fff;}
.ab-phil-grid{display:grid;grid-template-columns:.85fr 1.15fr;gap:70px;align-items:center;}
.ab-phil-l .ab-title{font-size:42px;}
.ab-rows{display:flex;flex-direction:column;border-top:1px solid rgba(11,26,38,.12);}
.ab-row{position:relative;display:grid;grid-template-columns:70px 1fr 56px;gap:18px;align-items:center;padding:28px 10px;border-bottom:1px solid rgba(11,26,38,.12);cursor:pointer;transition:.4s;outline:none;}
.ab-row::before{content:"";position:absolute;left:0;top:0;bottom:0;width:0;background:linear-gradient(90deg,rgba(10,186,234,.12),transparent);transition:width .5s;}
.ab-row .rn{position:relative;font-size:38px;font-weight:900;color:transparent;-webkit-text-stroke:1.5px rgba(11,26,38,.3);transition:.4s;}
.ab-row h3{position:relative;font-size:26px;font-weight:800;transition:.3s;}
.ab-row p{position:relative;max-height:0;opacity:0;overflow:hidden;margin-top:0 !important;font-size:16.5px;line-height:1.7;color:var(--text);transition:max-height .5s ease,opacity .4s,margin .4s;}
.ab-row .ri{position:relative;width:54px;height:54px;border-radius:18px;display:grid;place-items:center;font-size:21px;background:var(--soft);color:var(--blue-d);border:1px solid rgba(10,186,234,.3);transition:.4s;}
.ab-row.on::before,.ab-row:hover::before{width:100%;}
.ab-row.on p{max-height:120px;opacity:1;margin-top:10px !important;}
.ab-row.on .rn{-webkit-text-stroke-color:var(--blue);color:rgba(10,186,234,.12);}
.ab-row.on h3{color:var(--blue-d);}
.ab-row.on .ri{background:linear-gradient(135deg,#12C6F5,#0691B8);color:#fff;border-color:transparent;transform:rotate(-8deg);box-shadow:0 12px 26px rgba(10,186,234,.4);}

/* ================= PROCESS ================= */
.ab-process{position:relative;overflow:hidden;padding:130px 0 140px;color:#fff;background:radial-gradient(ellipse 70% 90% at 15% 0%,#03293f 0%,#000612 62%);}
.ab-pgrid{display:grid;grid-template-columns:.95fr 1.05fr;gap:40px;align-items:stretch;}
.ab-plist{display:flex;flex-direction:column;gap:12px;}
.ab-pi{position:relative;display:grid;grid-template-columns:44px 1fr 26px;gap:16px;align-items:center;text-align:left;padding:18px 22px;border-radius:20px;background:rgba(255,255,255,.04);border:1px solid rgba(10,186,234,.22);color:#fff;cursor:pointer;overflow:hidden;transition:.35s;}
.ab-pi .pn{font-size:20px;font-weight:900;color:rgba(10,186,234,.6);transition:.3s;}
.ab-pi .pt b{display:block;font-size:19px;font-weight:800;}
.ab-pi .pt em{display:block;font-style:normal;font-size:14px;line-height:1.5;color:rgba(255,255,255,.6);max-height:0;opacity:0;overflow:hidden;transition:max-height .4s,opacity .4s,margin .4s;}
.ab-pi>i{color:var(--blue-l);font-size:18px;opacity:.6;}
.ab-pi .pbar{position:absolute;left:0;bottom:0;height:3px;width:100%;}
.ab-pi .pbar span{display:block;height:100%;width:0;background:linear-gradient(90deg,#0ABAEA,#8EEAFF);}
.ab-pi:hover{border-color:rgba(10,186,234,.6);transform:translateX(6px);}
.ab-pi.on{background:rgba(10,186,234,.14);border-color:rgba(10,186,234,.7);}
.ab-pi.on .pn{color:var(--blue-l);}
.ab-pi.on .pt em{max-height:70px;opacity:1;margin-top:4px;}
.ab-pi.on .pbar span{animation:abBar 5.5s linear forwards;}
.ab-process.paused .ab-pi.on .pbar span{animation:none;width:100%;}
@keyframes abBar{to{width:100%;}}
.ab-stage{position:relative;min-height:440px;border-radius:30px;background:radial-gradient(ellipse 90% 80% at 100% 0%,#05405f,#020b16 72%);border:1px solid rgba(10,186,234,.5);box-shadow:0 26px 60px rgba(10,186,234,.22);padding:40px;display:grid;place-items:center;overflow:hidden;}
.ab-stage::before{content:"";position:absolute;inset:0;background-image:linear-gradient(rgba(10,186,234,.07) 1px,transparent 1px),linear-gradient(90deg,rgba(10,186,234,.07) 1px,transparent 1px);background-size:36px 36px;}
.stage-tag{position:absolute;left:24px;top:22px;display:flex;align-items:center;gap:10px;font-size:13px;font-weight:800;letter-spacing:.08em;text-transform:uppercase;color:rgba(255,255,255,.8);}
.stage-tag span{color:var(--blue-l);}
.sg{display:none;width:100%;position:relative;z-index:2;}
.sg.show{display:block;animation:abSwap .5s ease;}
@keyframes abSwap{from{opacity:0;transform:translateY(16px);}to{opacity:1;transform:none;}}
/* step visuals */
.cl p{display:flex;align-items:center;gap:14px;margin:0 0 14px !important;padding:16px 20px;border-radius:16px;background:rgba(255,255,255,.06);border:1px solid rgba(10,186,234,.3);font-weight:700;font-size:16.5px;color:#fff;opacity:0;animation:abLine .5s ease forwards;animation-delay:calc(.2s + var(--i)*.35s);}
.cl p i{color:#22d48a;font-size:20px;}
.rd>div,.ts>div{margin-bottom:22px;}
.rd span,.ts span{display:block;font-size:14.5px;font-weight:700;color:rgba(255,255,255,.8);margin-bottom:8px;}
.rd i,.ts i{display:block;height:16px;border-radius:10px;width:0;background:linear-gradient(90deg,#0ABAEA,#8EEAFF);box-shadow:0 0 14px rgba(10,186,234,.5);animation:abGrow 1.3s cubic-bezier(.2,.7,.2,1) forwards;animation-delay:.3s;}
@keyframes abGrow{to{width:var(--w);}}
.ts i{animation-duration:1.8s;}
.ts .pass{display:inline-flex;align-items:center;gap:10px;margin-top:6px !important;padding:12px 20px;border-radius:40px;background:rgba(34,212,138,.15);border:1px solid rgba(34,212,138,.6);color:#6ff0b8;font-weight:800;opacity:0;animation:abLine .5s ease 2s forwards;}
.wf{width:100%;max-width:400px;margin:0 auto;padding:16px;border-radius:18px;background:#fff;}
.wf-bar{display:flex;gap:6px;margin-bottom:12px;}.wf-bar i{width:9px;height:9px;border-radius:50%;background:#d6e4ea;}
.wf-hero{height:110px;border-radius:12px;background:linear-gradient(135deg,#BDEFFC,#0ABAEA);animation:abShim 2.4s ease-in-out infinite;}
@keyframes abShim{50%{filter:brightness(1.12);}}
.wf-row{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;margin-top:12px;}
.wf-row span{height:64px;border-radius:10px;background:#E6F3F8;animation:abPop 2.4s ease-in-out infinite;}
.wf-row span:nth-child(2){animation-delay:.3s;}.wf-row span:nth-child(3){animation-delay:.6s;}
.wf-sw{display:flex;gap:10px;margin-top:14px;}.wf-sw em{width:34px;height:34px;border-radius:50%;box-shadow:0 4px 10px rgba(0,0,0,.2);}
.ab-code2{position:relative;width:100%;max-width:420px;margin:0 auto;background:#061a2b;}
.ln2{text-align:center;}
.bars{display:flex;align-items:flex-end;justify-content:center;gap:18px;height:200px;}
.bars i{display:block;width:44px;border-radius:12px 12px 4px 4px;background:linear-gradient(180deg,#8EEAFF,#0ABAEA);height:0;animation:abUp 1.2s cubic-bezier(.2,.7,.2,1) forwards;box-shadow:0 0 20px rgba(10,186,234,.45);}
.bars i:nth-child(2){animation-delay:.12s;}.bars i:nth-child(3){animation-delay:.24s;}.bars i:nth-child(4){animation-delay:.36s;}.bars i:nth-child(5){animation-delay:.48s;}
@keyframes abUp{to{height:var(--h);}}
.ln2 .live{display:inline-flex;align-items:center;gap:10px;margin-top:26px !important;padding:12px 22px;border-radius:40px;background:rgba(34,212,138,.15);border:1px solid rgba(34,212,138,.6);color:#6ff0b8;font-weight:800;}

/* ================= ECOSYSTEM ================= */
.ab-eco{position:relative;padding:130px 0;color:#fff;background:#000612;background-image:radial-gradient(ellipse 60% 70% at 50% 50%,rgba(10,186,234,.16),transparent 70%);}
.ab-ecogrid{display:grid;grid-template-columns:1.05fr .95fr;gap:50px;align-items:center;}
.ab-orbit{position:relative;width:100%;max-width:560px;aspect-ratio:1;margin:0 auto;}
.ab-orbit-spin{position:absolute;inset:8%;}
.ab-orbit-spin i{position:absolute;inset:0;border-radius:50%;border:1.5px dashed rgba(10,186,234,.45);animation:abSpin 50s linear infinite;}
.ab-orbit-spin i:nth-child(2){inset:22%;animation-direction:reverse;animation-duration:34s;border-color:rgba(10,186,234,.28);}
@keyframes abSpin{to{transform:rotate(360deg);}}
.ab-orbit svg{position:absolute;inset:0;width:100%;height:100%;}
.ab-orbit line{stroke:rgba(10,186,234,.35);stroke-width:2;stroke-dasharray:5 6;transition:.4s;}
.ab-orbit line.on{stroke:#38D4FF;stroke-width:3;stroke-dasharray:none;filter:drop-shadow(0 0 6px rgba(10,186,234,.9));}
.ab-hub{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);width:140px;height:140px;border-radius:50%;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;font-weight:900;font-size:14px;line-height:1.2;letter-spacing:.06em;color:#fff;background:radial-gradient(circle at 30% 25%,#0a4d73,#000612);border:2px solid var(--blue);animation:abHub 4s ease-in-out infinite;}
.ab-hub i{font-size:22px;color:var(--blue-l);margin-bottom:6px;}
@keyframes abHub{0%,100%{box-shadow:0 0 0 12px rgba(10,186,234,.12),0 0 50px rgba(10,186,234,.45);}50%{box-shadow:0 0 0 22px rgba(10,186,234,.06),0 0 70px rgba(10,186,234,.7);}}
.ab-node{position:absolute;transform:translate(-50%,-50%);display:flex;flex-direction:column;align-items:center;gap:8px;background:none;border:0;cursor:pointer;padding:0;z-index:3;}
.ab-node .ni{width:70px;height:70px;border-radius:22px;display:grid;place-items:center;font-size:26px;background:#061a2b;border:2px solid rgba(10,186,234,.45);color:var(--blue-l);transition:.4s;}
.ab-node .nl{font-size:13.5px;font-weight:800;color:#fff;background:rgba(255,255,255,.08);padding:4px 12px;border-radius:20px;border:1px solid rgba(10,186,234,.3);white-space:nowrap;}
.ab-node:hover .ni{transform:translateY(-4px) scale(1.06);border-color:var(--blue);}
.ab-node.on .ni{background:linear-gradient(135deg,#12C6F5,#0691B8);color:#fff;border-color:#fff;box-shadow:0 0 0 7px rgba(10,186,234,.22),0 14px 32px rgba(10,186,234,.55);transform:scale(1.1);}
.ab-node.on .nl{background:var(--blue-d);border-color:transparent;}
.ab-ecopanel{position:relative;min-height:340px;padding:40px;border-radius:28px;background:#fff;color:var(--ink);box-shadow:0 30px 70px rgba(10,186,234,.3);}
.ab-ecod{display:none;}
.ab-ecod.show{display:block;animation:abSwap .5s ease;}
.ab-ecod .k{display:inline-block;font-size:12.5px;font-weight:800;letter-spacing:.09em;text-transform:uppercase;color:var(--blue-d);padding:6px 14px;border-radius:30px;background:rgba(10,186,234,.12);}
.ab-ecod h3{margin:18px 0 12px !important;font-size:30px;font-weight:900;}
.ab-ecod p{font-size:16.5px;line-height:1.75;color:var(--text);}
.ab-ecotags{list-style:none;margin:22px 0 0;padding:0;display:flex;flex-wrap:wrap;gap:10px;}
.ab-ecotags li{padding:8px 16px;border-radius:30px;background:var(--soft);border:1px solid rgba(10,186,234,.3);font-size:13.5px;font-weight:700;color:var(--blue-d);}

/* ================= LEADERSHIP ================= */
.ab-lead-s{padding:130px 0;background:linear-gradient(180deg,#fff,var(--soft));}
.ab-founders{display:grid;grid-template-columns:1fr 1fr;gap:34px;max-width:1040px;margin:0 auto;}
.ab-fd{position:relative;display:flex;flex-direction:column;border-radius:30px;background:#fff;border:1px solid rgba(10,186,234,.25);box-shadow:0 20px 50px rgba(6,40,60,.1);overflow:hidden;transition:.45s cubic-bezier(.2,.7,.2,1);}
.ab-fd:hover{transform:translateY(-10px);box-shadow:0 34px 70px rgba(10,186,234,.3);border-color:rgba(10,186,234,.6);}
.ab-fd .ph{position:relative;height:380px;overflow:hidden;background:#04182a;}
.ab-fd .ph::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,transparent 55%,rgba(0,6,18,.55));}
.ab-fd .ph img{display:block;width:100%;height:100%;object-fit:cover;object-position:top center;transition:transform .8s;}
.ab-fd:hover .ph img{transform:scale(1.06);}
.ab-fd .tx{padding:28px 32px 34px;}
.ab-fd .rl{display:inline-block;font-size:12.5px;font-weight:800;letter-spacing:.08em;text-transform:uppercase;color:var(--blue-d);padding:5px 14px;border-radius:30px;background:rgba(10,186,234,.12);}
.ab-fd h3{margin:14px 0 10px !important;font-size:28px;font-weight:900;}
.ab-fd p{font-size:16px;line-height:1.7;color:var(--text);}
.ab-fd ul{list-style:none;margin:18px 0 0;padding:0;display:flex;gap:8px;flex-wrap:wrap;}
.ab-fd li{font-size:12.5px;font-weight:700;padding:5px 13px;border-radius:30px;background:var(--soft);border:1px solid rgba(10,186,234,.3);color:var(--blue-d);}
.ab-btn-o.dark{background:var(--ink);color:#fff;border-color:var(--ink);}
.ab-btn-o.dark:hover{background:var(--blue-d);border-color:var(--blue-d);color:#fff;}

/* ================= WHY ================= */
.ab-why{padding:130px 0;background:var(--soft);}
.ab-whygrid{display:grid;grid-template-columns:repeat(3,1fr);gap:24px;}
.ab-wc{position:relative;padding:38px 32px 34px;border-radius:28px;background:#fff;border:1px solid rgba(10,186,234,.2);overflow:hidden;transition:.45s cubic-bezier(.2,.7,.2,1);}
.ab-wc::after{content:"";position:absolute;inset:0;background:linear-gradient(135deg,#12C6F5,#0691B8);opacity:0;transition:opacity .45s;}
.ab-wc>*{position:relative;z-index:1;transition:color .3s;}
.ab-wc:hover{transform:translateY(-10px) rotate(-.6deg);box-shadow:0 30px 60px rgba(10,186,234,.35);}
.ab-wc:hover::after{opacity:1;}
.ab-wc:hover h3,.ab-wc:hover p,.ab-wc:hover .wn{color:#fff;}
.wn{position:absolute !important;right:24px;top:16px;font-size:60px;font-weight:900;line-height:1;color:rgba(10,186,234,.12);}
.wi{display:grid;place-items:center;width:64px;height:64px;border-radius:20px;font-size:26px;background:var(--soft);color:var(--blue-d);border:1px solid rgba(10,186,234,.3);transition:.4s;}
.ab-wc:hover .wi{background:#fff;transform:rotate(-8deg) scale(1.08);}
.ab-wc h3{margin:26px 0 10px !important;font-size:23px;font-weight:800;}
.ab-wc p{font-size:16px;line-height:1.7;color:var(--text);}

/* ================= CTA ================= */
.ab-final{position:relative;overflow:hidden;padding:130px 0 120px;color:#fff;text-align:center;background:linear-gradient(135deg,#0ABAEA 0%,#0691B8 55%,#04587a 100%);}
.ab-final-bg span{position:absolute;border-radius:50%;border:2px solid rgba(255,255,255,.22);animation:abRipple 7s linear infinite;left:50%;top:50%;width:300px;height:300px;margin:-150px 0 0 -150px;}
.ab-final-bg span:nth-child(2){animation-delay:-2.3s;}.ab-final-bg span:nth-child(3){animation-delay:-4.6s;}
@keyframes abRipple{0%{transform:scale(.4);opacity:.9;}100%{transform:scale(4.2);opacity:0;}}
.ab-final-in{max-width:900px;}
.ab-final .ab-eyebrow{background:rgba(255,255,255,.2);color:#fff;}
.ab-final .ab-eyebrow::before{background:#fff;}
.ab-final h2{margin-top:20px !important;font-size:62px;line-height:1.08;font-weight:900;color:#fff;letter-spacing:-.02em;}
.ab-final p{max-width:720px;margin:22px auto 36px !important;font-size:18.5px;line-height:1.75;color:rgba(255,255,255,.9);}
.ab-final .ab-cta-row{justify-content:center;}
.ab-final-meta{display:flex;flex-wrap:wrap;gap:12px 30px;justify-content:center;margin-top:44px;padding-top:30px;border-top:1px solid rgba(255,255,255,.3);}
.ab-final-meta a,.ab-final-meta span{display:inline-flex;align-items:center;gap:10px;color:#fff;font-weight:700;font-size:15.5px;}
.ab-final-meta a:hover{opacity:.8;}

/* ================= responsive ================= */
@media(max-width:1100px){
  .ab-h1{font-size:46px;}
  .ab-hero-grid,.ab-story-grid,.ab-phil-grid,.ab-pgrid,.ab-ecogrid{grid-template-columns:1fr;}
  .ab-hero-vis{height:520px;max-width:560px;width:100%;margin:0 auto;}
  .ab-story-l{position:static;}
  .ab-bento{grid-template-columns:repeat(2,1fr);}
  .ab-whygrid{grid-template-columns:repeat(2,1fr);}
  .ab-title,.ab-story-l .ab-title,.ab-phil-l .ab-title{font-size:38px;}
  .ab-final h2{font-size:48px;}
}
@media(max-width:700px){
  .ab-hero{padding-top:115px;}
  .ab-hero-grid{padding-bottom:70px;}
  .ab-h1{font-size:36px;}
  .ab-lead{font-size:16.5px;}
  .ab-hero-vis{height:480px;}
  .ab-code{width:280px;}.ab-code pre{font-size:12px;}
  .ab-chat{width:250px;top:190px;}
  .ab-flow{left:0;bottom:10px;transform:scale(.88);transform-origin:left bottom;}
  .ab-fb.f1{display:none;}
  .ab-marquee{margin:0 -30px;}
  .ab-track span{font-size:17px;}
  .ab-story,.ab-phil,.ab-lead-s,.ab-why,.ab-eco,.ab-process{padding:80px 0;}
  .ab-story-grid{gap:50px;}
  .ab-bigyr b{font-size:52px;}
  .ab-ms{grid-template-columns:54px 1fr;gap:18px;}.ab-msi{width:54px;height:54px;font-size:20px;}
  .ab-tlline{left:26px;}.ab-msn{font-size:64px;}
  .ab-bento-s{padding:80px 0;}
  .ab-bento{grid-template-columns:1fr 1fr;grid-auto-rows:170px;gap:14px;}
  .bt{padding:20px;}.bt b{font-size:44px;}
  .bt-a{grid-column:span 2;grid-row:span 2;}.bt-a b{font-size:84px;}
  .bt-f{grid-column:span 2;}
  .bt-d .ring{width:96px;height:96px;}.bt-d .ring::before{inset:9px;}.bt-d .ring b{font-size:24px;}
  .ab-row{grid-template-columns:48px 1fr 46px;padding:22px 4px;}
  .ab-row .rn{font-size:28px;}.ab-row h3{font-size:21px;}.ab-row .ri{width:44px;height:44px;font-size:17px;}
  .ab-stage{padding:24px;min-height:380px;}
  .ab-node .ni{width:52px;height:52px;font-size:19px;border-radius:16px;}
  .ab-node .nl{font-size:11px;padding:3px 8px;}
  .ab-hub{width:96px;height:96px;font-size:10px;}.ab-hub i{font-size:16px;}
  .ab-ecopanel{padding:28px 22px;}
  .ab-founders{grid-template-columns:1fr;}
  .ab-fd .ph{height:340px;}
  .ab-whygrid{grid-template-columns:1fr;}
  .ab-final{padding:90px 0 80px;}
  .ab-final h2{font-size:34px;}
  .ab-title,.ab-story-l .ab-title,.ab-phil-l .ab-title{font-size:30px;}
}
@media(prefers-reduced-motion:reduce){
  .ab-grid,.ab-blob,.ab-glow,.ab-track,.ab-code,.ab-chat,.ab-flow,.ab-hub,.ab-orbit-spin i,.ab-final-bg span,.crowd i,.stars i{animation:none !important;}
  .ab-rv{opacity:1;transform:none;transition:none;}
  .ab-code .l,.ab-chat .m,.cl p{opacity:1;transform:none;animation:none;}
}

/* =====================================================================
   v3 overrides — story (pinned horizontal), tiles, smooth process,
   arch leadership, stacking why-us
   ===================================================================== */

/* ---------- STORY: pinned horizontal scroll ---------- */
.ab-story{padding:0;background:linear-gradient(180deg,#fff,var(--soft));}
.ab-pin{position:relative;}
.ab-pin-in{position:sticky;top:0;height:100vh;min-height:620px;display:flex;flex-direction:column;justify-content:center;overflow:hidden;padding-top:110px;}
.ab-hscroll{overflow:hidden;}
.ab-track2{display:flex;align-items:stretch;gap:26px;width:max-content;padding:0 max(24px,calc((100vw - 1240px)/2 + 24px));will-change:transform;}
.ab-pan{flex:0 0 auto;}
.ab-pan-intro{width:540px;display:flex;flex-direction:column;justify-content:center;padding-right:30px;}
.ab-pan-intro .ab-title{font-size:46px;}
.ab-swipe{display:inline-flex;align-items:center;gap:12px;margin-top:30px;font-weight:800;font-size:14px;letter-spacing:.1em;text-transform:uppercase;color:var(--blue-d);}
.ab-swipe i{animation:abNudge 1.4s ease-in-out infinite;}
@keyframes abNudge{50%{transform:translateX(9px);}}
.ab-mc{position:relative;width:320px;min-height:400px;padding:34px 30px;border-radius:30px;background:#fff;border:1px solid rgba(10,186,234,.25);box-shadow:0 20px 50px rgba(6,40,60,.08);overflow:hidden;display:flex;flex-direction:column;transition:.45s cubic-bezier(.2,.7,.2,1);}
.ab-mc:hover{transform:translateY(-10px);box-shadow:0 32px 64px rgba(10,186,234,.3);border-color:rgba(10,186,234,.6);}
.ab-mc .mn{position:absolute;right:20px;top:6px;font-size:120px;font-weight:900;line-height:1;color:transparent;-webkit-text-stroke:1.5px rgba(10,186,234,.3);}
.ab-mc .mi{display:grid;place-items:center;width:68px;height:68px;border-radius:22px;background:linear-gradient(135deg,#12C6F5,#0691B8);color:#fff;font-size:26px;box-shadow:0 14px 30px rgba(10,186,234,.45);margin-top:30px;}
.ab-mc h3{margin:auto 0 10px !important;padding-top:40px;font-size:27px;font-weight:900;line-height:1.15;}
.ab-mc p{font-size:16.5px;line-height:1.7;color:var(--text);}
.ab-mc .md{position:absolute;left:30px;right:30px;bottom:0;height:4px;border-radius:4px 4px 0 0;background:linear-gradient(90deg,var(--blue),#8EEAFF);transform:scaleX(.25);transform-origin:left;transition:transform .5s;}
.ab-mc:hover .md{transform:scaleX(1);}
.ab-mc:nth-of-type(even){margin-top:34px;margin-bottom:-34px;}
.ab-pan-end{width:320px;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;border-radius:30px;background:radial-gradient(ellipse 90% 80% at 0% 0%,#04324d,#000612 72%);color:#fff;padding:30px;}
.ab-pan-end b{font-size:108px;font-weight:900;line-height:1;background:linear-gradient(90deg,#12C6F5,#8EEAFF);-webkit-background-clip:text;background-clip:text;color:transparent;}
.ab-pan-end span:last-child{font-size:17px;font-weight:800;line-height:1.4;margin-top:10px;color:rgba(255,255,255,.85);}
.ab-hline{width:min(1192px,calc(100% - 48px));height:5px;border-radius:5px;background:rgba(10,186,234,.18);margin:44px auto 0;overflow:hidden;flex:0 0 auto;}
.ab-hline span{display:block;height:100%;width:100%;transform-origin:left;transform:scaleX(0);background:linear-gradient(90deg,#0ABAEA,#8EEAFF);box-shadow:0 0 12px rgba(10,186,234,.7);}

/* ---------- PHILOSOPHY: spotlight tiles ---------- */
.ab-phil{padding:130px 0;background:#fff;}
.ab-phil .ab-head{max-width:860px;}
.ab-tiles{display:grid;grid-template-columns:1fr 1fr;gap:24px;}
.ab-tile{position:relative;min-height:300px;padding:42px 44px;border-radius:32px;overflow:hidden;display:flex;flex-direction:column;justify-content:flex-end;isolation:isolate;transition:transform .45s cubic-bezier(.2,.7,.2,1),box-shadow .45s;--mx:50%;--my:50%;}
.ab-tile::before{content:"";position:absolute;inset:0;z-index:-1;background:radial-gradient(420px circle at var(--mx) var(--my),rgba(255,255,255,.32),transparent 60%);opacity:0;transition:opacity .4s;}
.ab-tile:hover{transform:translateY(-8px);}
.ab-tile:hover::before{opacity:1;}
.ab-tile .tn{position:absolute;right:30px;top:10px;font-size:150px;font-weight:900;line-height:1;color:transparent;}
.ab-tile .ti{position:absolute;left:44px;top:40px;width:66px;height:66px;border-radius:22px;display:grid;place-items:center;font-size:27px;transition:.5s;}
.ab-tile:hover .ti{transform:rotate(-10deg) scale(1.1);}
.ab-tile h3{font-size:30px;font-weight:900;margin-bottom:12px !important;}
.ab-tile p{font-size:17px;line-height:1.7;max-width:480px;}
.ab-tile.t0,.ab-tile.t3{background:radial-gradient(ellipse 90% 90% at 0% 0%,#04324d,#000612 75%);color:#fff;box-shadow:0 26px 60px rgba(0,6,18,.3);}
.ab-tile.t0 p,.ab-tile.t3 p{color:rgba(255,255,255,.78);}
.ab-tile.t0 .tn,.ab-tile.t3 .tn{-webkit-text-stroke:1.5px rgba(10,186,234,.4);}
.ab-tile.t0 .ti,.ab-tile.t3 .ti{background:linear-gradient(135deg,#12C6F5,#0691B8);color:#fff;box-shadow:0 14px 30px rgba(10,186,234,.45);}
.ab-tile.t1{background:var(--soft);border:1px solid rgba(10,186,234,.3);color:var(--ink);}
.ab-tile.t1 p{color:var(--text);}
.ab-tile.t1 .tn{-webkit-text-stroke:1.5px rgba(10,186,234,.4);}
.ab-tile.t1 .ti{background:#fff;color:var(--blue-d);border:1px solid rgba(10,186,234,.4);}
.ab-tile.t2{background:linear-gradient(135deg,#12C6F5,#0691B8);color:#fff;box-shadow:0 26px 60px rgba(10,186,234,.4);}
.ab-tile.t2 p{color:rgba(255,255,255,.92);}
.ab-tile.t2 .tn{-webkit-text-stroke:1.5px rgba(255,255,255,.5);}
.ab-tile.t2 .ti{background:#fff;color:var(--blue-d);}

/* ---------- PROCESS: no layout jumps ---------- */
.ab-pgrid{align-items:start;}
.ab-plist{gap:12px;}
.ab-pi{height:78px;grid-template-columns:44px 1fr 28px;align-items:center;}
.ab-pi b{font-size:19px;font-weight:800;}
.ab-pi:hover{transform:none;border-color:rgba(10,186,234,.6);background:rgba(10,186,234,.08);}
.ab-pi.on{transform:none;}
.ab-stage{display:block;height:486px;min-height:0;padding:0;}
.stage-tag{z-index:3;}
.stage-views{position:absolute;left:40px;right:40px;top:70px;bottom:118px;z-index:2;}
.ab-stage .sg{display:grid !important;place-items:center;position:absolute;inset:0;width:auto;opacity:0;visibility:hidden;transform:translateY(16px);transition:opacity .5s ease,transform .5s ease,visibility 0s .5s;animation:none !important;}
.ab-stage .sg.show{opacity:1;visibility:visible;transform:none;transition:opacity .5s ease,transform .5s ease,visibility 0s;}
.ab-stage .sg>*{width:100%;}
.ab-stage .sg .cl p,.ab-stage .sg .rd i,.ab-stage .sg .ts i,.ab-stage .sg .ts .pass,.ab-stage .sg .ab-code2 .l,.ab-stage .sg .bars i{animation:none;}
.ab-stage .sg.show .cl p,.ab-stage .sg.leave .cl p{animation:abLine .5s ease forwards;animation-delay:calc(.2s + var(--i)*.3s);}
.ab-stage .sg.show .rd i,.ab-stage .sg.leave .rd i{animation:abGrow 1.3s cubic-bezier(.2,.7,.2,1) forwards;animation-delay:.25s;}
.ab-stage .sg.show .ts i,.ab-stage .sg.leave .ts i{animation:abGrow 1.6s cubic-bezier(.2,.7,.2,1) forwards;animation-delay:.25s;}
.ab-stage .sg.show .ts .pass,.ab-stage .sg.leave .ts .pass{animation:abLine .5s ease 1.7s forwards;}
.ab-stage .sg.show .ab-code2 .l,.ab-stage .sg.leave .ab-code2 .l{animation:abLine .5s ease forwards;animation-delay:calc(.2s + var(--i)*.3s);}
.ab-stage .sg.show .bars i,.ab-stage .sg.leave .bars i{animation:abUp 1.1s cubic-bezier(.2,.7,.2,1) forwards;}
.ab-stage .sg.show .bars i:nth-child(2){animation-delay:.1s;}.ab-stage .sg.show .bars i:nth-child(3){animation-delay:.2s;}.ab-stage .sg.show .bars i:nth-child(4){animation-delay:.3s;}.ab-stage .sg.show .bars i:nth-child(5){animation-delay:.4s;}
.ab-stage .cl p{margin-bottom:12px !important;padding:14px 20px;}
.ab-stage .rd>div,.ab-stage .ts>div{margin-bottom:18px;}
.ab-stage .bars{height:190px;}
.stage-cap{position:absolute;left:0;right:0;bottom:0;height:104px;padding:0 40px;display:flex;align-items:center;z-index:3;border-top:1px solid rgba(10,186,234,.25);background:linear-gradient(180deg,rgba(0,6,18,.3),rgba(0,6,18,.75));}
.stage-cap p{font-size:18px;line-height:1.6;font-weight:700;color:#fff;transition:opacity .25s;}
.stage-cap p.fade{opacity:0;}

/* ---------- LEADERSHIP: arch portraits ---------- */
.ab-lead-s{padding:130px 0;background:#fff;}
.ab-founders{gap:50px;max-width:980px;}
.ab-fd{background:none;border:0;box-shadow:none;overflow:visible;text-align:center;align-items:center;}
.ab-fd:hover{transform:none;box-shadow:none;border:0;}
.ab-fd .arch{position:relative;width:min(330px,82%);aspect-ratio:3/4;margin:0 auto 46px;}
.ab-fd .arch .ph{position:absolute;inset:0;height:auto;border-radius:999px 999px 30px 30px;border:5px solid #fff;box-shadow:0 26px 60px rgba(6,40,60,.25);z-index:2;}
.ab-fd .arch .ph::after{display:none;}
.ab-fd .ring{position:absolute;inset:16px -18px -18px 18px;border-radius:999px 999px 34px 34px;background:linear-gradient(160deg,#12C6F5,#0691B8);z-index:1;transition:transform .6s cubic-bezier(.2,.7,.2,1);}
.ab-fd:nth-child(even) .ring{inset:16px 18px -18px -18px;background:linear-gradient(200deg,#0B1A26,#04587a);}
.ab-fd:hover .ring{transform:translate(8px,8px);}
.ab-fd:nth-child(even):hover .ring{transform:translate(-8px,8px);}
.ab-fd .arch .rl{position:absolute;left:50%;bottom:-18px;transform:translateX(-50%);z-index:3;white-space:nowrap;padding:9px 20px;border-radius:40px;background:var(--ink);color:#fff;font-size:13px;box-shadow:0 12px 26px rgba(0,0,0,.3);}
.ab-fd h3{margin:0 0 10px !important;font-size:30px;}
.ab-fd p{max-width:420px;}
.ab-fd ul{justify-content:center;}

/* ---------- WHY: stacking cards ---------- */
.ab-why{padding:130px 0 150px;background:var(--soft);}
.ab-why-grid{display:grid;grid-template-columns:.8fr 1.2fr;gap:70px;align-items:start;}
.ab-why-l{position:sticky;top:140px;}
.ab-why-l .ab-title{font-size:46px;}
.ab-stack{display:flex;flex-direction:column;}
.ab-sc{position:sticky;top:calc(130px + var(--k)*24px);height:220px;margin-bottom:28px;padding:32px 38px;border-radius:30px;display:grid;grid-template-columns:84px 1fr 76px;align-items:center;gap:22px;box-shadow:0 22px 50px rgba(6,40,60,.14);}
.ab-sc:last-child{margin-bottom:0;}
.ab-sc .sn{font-size:62px;font-weight:900;line-height:1;color:transparent;}
.ab-sc h3{font-size:28px;font-weight:900;line-height:1.2;margin-bottom:10px !important;}
.ab-sc p{font-size:17px;line-height:1.65;}
.ab-sc .si{display:grid;place-items:center;width:72px;height:72px;border-radius:24px;font-size:28px;}
.ab-sc.c0{background:#fff;border:1px solid rgba(10,186,234,.3);}
.ab-sc.c0 .sn{-webkit-text-stroke:1.5px rgba(10,186,234,.6);}
.ab-sc.c0 p{color:var(--text);}
.ab-sc.c0 .si{background:linear-gradient(135deg,#12C6F5,#0691B8);color:#fff;}
.ab-sc.c1{background:radial-gradient(ellipse 90% 90% at 0% 0%,#04324d,#000612 75%);color:#fff;}
.ab-sc.c1 .sn{-webkit-text-stroke:1.5px rgba(56,212,255,.6);}
.ab-sc.c1 p{color:rgba(255,255,255,.78);}
.ab-sc.c1 .si{background:rgba(10,186,234,.18);border:1px solid rgba(10,186,234,.5);color:var(--blue-l);}
.ab-sc.c2{background:linear-gradient(135deg,#12C6F5,#0691B8);color:#fff;}
.ab-sc.c2 .sn{-webkit-text-stroke:1.5px rgba(255,255,255,.7);}
.ab-sc.c2 p{color:rgba(255,255,255,.92);}
.ab-sc.c2 .si{background:#fff;color:var(--blue-d);}

@media(max-width:1100px){
  .ab-tiles{grid-template-columns:1fr;}
  .ab-why-grid{grid-template-columns:1fr;gap:40px;}
  .ab-why-l{position:static;}
  .ab-stage{height:auto;min-height:0;}
  .ab-pgrid{gap:26px;}
}
@media(max-width:900px){
  .ab-pin-in{position:static;height:auto;min-height:0;padding:80px 0 60px;}
  .ab-hscroll{overflow-x:auto;scroll-snap-type:x mandatory;-webkit-overflow-scrolling:touch;padding-bottom:20px;}
  .ab-track2{padding:0 24px;gap:18px;}
  .ab-pan{scroll-snap-align:start;}
  .ab-pan-intro{width:86vw;padding-right:0;}
  .ab-pan-intro .ab-title{font-size:32px;}
  .ab-mc{width:78vw;min-height:360px;}
  .ab-mc:nth-of-type(even){margin:0;}
  .ab-pan-end{width:70vw;}
  .ab-hline{display:none;}
}
@media(max-width:700px){
  .ab-tile{min-height:260px;padding:32px 26px;}
  .ab-tile .ti{left:26px;top:28px;width:56px;height:56px;font-size:22px;}
  .ab-tile .tn{font-size:100px;}
  .ab-tile h3{font-size:25px;}
  .stage-views{position:relative;left:0;right:0;top:0;bottom:0;height:300px;margin:64px 20px 0;}
  .stage-cap{position:relative;height:auto;padding:18px 20px;margin-top:10px;}
  .stage-cap p{font-size:16px;}
  .ab-pi{height:66px;padding:12px 16px;}
  .ab-lead-s{padding:80px 0;}
  .ab-founders{gap:70px;}
  .ab-why{padding:80px 0 90px;}
  .ab-sc{top:calc(92px + var(--k)*12px);height:auto;min-height:180px;padding:24px 22px;grid-template-columns:48px 1fr;gap:14px;}
  .ab-sc .si{display:none;}
  .ab-sc .sn{font-size:42px;}
  .ab-sc h3{font-size:21px;}
  .ab-sc p{font-size:15px;}
  .ab-why-l .ab-title{font-size:30px;}
}

.ab-pan-intro .ab-eyebrow{align-self:flex-start;}
.ab-track2{padding-bottom:50px;}
.ab-pin-in{padding-bottom:10px;}
