/* A.A & ASSOCIATES - enhancement layer (loads after style.css / pages.css) */
:root{--grad:linear-gradient(110deg,#1a47a8,#3b8fd9);--gradl:linear-gradient(110deg,#7cc0ff,#fff);--ez:cubic-bezier(.16,.8,.2,1)}
/* page transition + progress */
.pt{position:fixed;inset:0;z-index:999;pointer-events:none;background:linear-gradient(120deg,#030b1c,#0a2a5e 60%,#1a47a8);clip-path:polygon(0 0,100% 0,100% 100%,0 100%);transition:clip-path 1.36s cubic-bezier(.77,0,.18,1)}
.pt:after{content:"";position:absolute;inset:0;background:repeating-linear-gradient(115deg,transparent 0 120px,rgba(124,192,255,.07) 120px 200px)}
body.rdy .pt{clip-path:polygon(100% 0,100% 0,100% 100%,100% 100%)}
.prog{position:fixed;top:0;left:0;height:3px;width:100%;background:var(--grad);transform:scaleX(0);transform-origin:0 50%;z-index:998}
/* reveal */
[data-r]{opacity:0;transform:translateY(48px) scale(.985);filter:blur(7px);transition:opacity 1.76s var(--ez),transform 1.76s var(--ez),filter 1.76s var(--ez)}
[data-r].in{opacity:1;transform:none;filter:none}
[data-d="1"]{transition-delay:0.16s}[data-d="2"]{transition-delay:0.35s}[data-d="3"]{transition-delay:0.54s}[data-d="4"]{transition-delay:0.74s}
/* headings */
h1 em,h2 em{font-style:normal;background:var(--grad);-webkit-background-clip:text;background-clip:text;color:transparent}
.hero em,.cta em,.inner-hero em,.band em,.dark em{background:var(--gradl);-webkit-background-clip:text;background-clip:text;color:transparent}
.eyebrow{position:relative}
/* nav */
.nav{backdrop-filter:blur(18px) saturate(1.4);background:rgba(255,255,255,.88)}
.nav-links a{position:relative;overflow:hidden;transition:color 0.48s,background 0.48s}
.nav-links a:after{content:"";position:absolute;left:50%;bottom:6px;width:0;height:2px;background:var(--grad);transition:0.64s var(--ez);transform:translateX(-50%)}
.nav-links a:hover:after,.nav-links a.on:after{width:46%}
/* buttons */
.btn{position:relative;overflow:hidden;isolation:isolate;transition:transform 0.8s var(--ez),box-shadow 0.8s var(--ez),background 0.64s,color 0.64s}
.btn:after{content:"";position:absolute;top:0;left:-80%;width:50%;height:100%;background:linear-gradient(100deg,transparent,rgba(255,255,255,.45),transparent);transform:skewX(-20deg);transition:left 1.28s var(--ez);z-index:-1}
.btn:hover:after{left:140%}.btn:hover{transform:translateY(-4px)}
.btn .arr{display:inline-block;transition:transform 0.72s var(--ez)}.btn:hover .arr{transform:translateX(7px)}
/* hero */
.hero{position:relative;overflow:hidden;isolation:isolate}
.hero:before{content:"";position:absolute;inset:0;z-index:0;background:radial-gradient(520px circle at var(--mx,70%) var(--my,30%),rgba(59,143,217,.28),transparent 70%);pointer-events:none}
.hero .wrap{position:relative;z-index:2}
.sl{position:absolute;z-index:0;width:170px;height:620px;transform:skewX(-20deg);background:linear-gradient(180deg,rgba(59,143,217,.4),rgba(26,71,168,0));animation:drift 11s ease-in-out infinite;pointer-events:none}
.s1{right:30%;top:-120px}.s2{right:19%;top:-40px;width:80px;animation-delay:-4s}.s3{left:-60px;bottom:-260px;animation-delay:-7s}
.dotf{position:absolute;z-index:1;border-radius:50%;background:var(--grad);animation:bob 8s ease-in-out infinite;pointer-events:none;box-shadow:0 20px 50px -10px rgba(59,143,217,.7)}
.d1{width:64px;height:64px;left:46%;top:24%}.d2{width:26px;height:26px;right:8%;bottom:16%;animation-delay:-3s}
@keyframes drift{50%{transform:skewX(-20deg) translateY(50px)}}@keyframes bob{50%{transform:translateY(-30px)}}
.portrait-wrap{position:relative;perspective:1200px}
.portrait-frame{transform:rotateY(var(--ry,0deg)) rotateX(var(--rx,0deg));transition:transform 0.8s var(--ez);transform-style:preserve-3d}
.portrait-frame:before{content:"";position:absolute;inset:-14px;border:1px solid rgba(124,192,255,.35);border-radius:inherit;transform:translate(18px,18px);z-index:-1;transition:0.96s var(--ez)}
.portrait-wrap:hover .portrait-frame:before{transform:translate(28px,28px)}
.name-tag,.stat-card{animation:bob 7s ease-in-out infinite;backdrop-filter:blur(10px)}.stat-card{animation-delay:-3s}
.fc{position:absolute;z-index:4;display:flex;align-items:center;gap:12px;background:#fff;color:var(--navy);border-radius:18px;padding:14px 20px 14px 14px;box-shadow:0 26px 50px -16px rgba(0,0,0,.55);animation:bob 6s ease-in-out infinite;font:600 13px/1.25 var(--s)}
.fc b{width:42px;height:42px;border-radius:13px;background:var(--grad);color:#fff;display:grid;place-items:center;font-size:19px}
.fc1{left:-40px;top:16%}.fc2{right:-30px;bottom:28%;animation-delay:-2.5s}
/* spotlight cards */
.pcard,.service-tile,.person-card,.membership-card,.step,.m,.value-grid>*,.insight-grid>*,.aside-card,.related-card,.contact-item,.mission,.note-box{position:relative;overflow:hidden;transition:transform 0.96s var(--ez),box-shadow 0.96s var(--ez),background 0.8s,border-color 0.8s,color 0.64s}
.pcard:after,.service-tile:after,.person-card:after,.membership-card:after,.step:after,.m:after,.value-grid>*:after,.insight-grid>*:after,.contact-item:after{content:"";position:absolute;inset:0;pointer-events:none;opacity:0;transition:opacity 0.8s;background:radial-gradient(380px circle at var(--mx,50%) var(--my,50%),rgba(59,143,217,.2),transparent 65%)}
.pcard:hover:after,.service-tile:hover:after,.person-card:hover:after,.membership-card:hover:after,.step:hover:after,.m:hover:after,.value-grid>*:hover:after,.insight-grid>*:hover:after,.contact-item:hover:after{opacity:1}
.pcard:hover,.service-tile:hover,.insight-grid>*:hover,.value-grid>*:hover{transform:translateY(-12px);background:linear-gradient(155deg,#1a47a8,#061a3a);border-color:transparent;box-shadow:0 44px 80px -30px rgba(6,26,58,.8)}
.pcard:hover h3,.service-tile:hover h3,.insight-grid>*:hover h3,.value-grid>*:hover h3,.pcard:hover .pgo,.service-tile:hover .tile-link{color:#fff}
.pcard:hover p,.service-tile:hover p,.insight-grid>*:hover p,.value-grid>*:hover p{color:#c4d6f1}
.pcard:hover .pnum,.service-tile:hover .tile-num{color:rgba(255,255,255,.22)}
.pcard .pic,.tile-icon{transition:transform 1.12s var(--ez),background 0.8s,color 0.8s}
.pcard:hover .pic,.service-tile:hover .tile-icon{transform:rotate(-8deg) scale(1.12);background:#fff;color:var(--blue)}
.pnum,.tile-num{transition:color 0.8s,transform 1.12s var(--ez)}.pcard:hover .pnum{transform:scale(1.25) translate(-6px,6px)}
.step:hover,.m:hover,.person-card:hover,.membership-card:hover{transform:translateY(-10px);box-shadow:0 36px 70px -30px rgba(6,26,58,.5)}
.step{border-top:3px solid transparent}.step:hover{border-top-color:var(--sky)}
.step b{display:inline-block;padding:4px 12px;border-radius:30px;background:var(--ice);color:var(--blue);letter-spacing:.14em;font-size:11px}
.steps{position:relative}
/* images */
.person-photo,.shot,.big,.small,.about-photo,.portrait-frame{overflow:hidden}
.person-photo img,.shot img,.big img,.small img,.about-photo img{transition:transform 2.24s var(--ez),filter 1.28s}
.person-card:hover .person-photo img,.shot:hover img,.big:hover img,.small:hover img,.about-photo:hover img{transform:scale(1.07)}
.stack .big,.stack .small{box-shadow:0 40px 80px -30px rgba(6,26,58,.55)}.badge{animation:bob 6s ease-in-out infinite}
/* lists */
.check-list li,.ticks li{transition:transform 0.64s var(--ez),color 0.48s}.check-list li:hover,.ticks li:hover{transform:translateX(10px);color:var(--navy)}
.related-card a{transition:padding 0.64s var(--ez),background 0.48s,color 0.48s}.related-card a:hover{padding-left:20px;color:var(--blue)}.related-card a span{transition:transform 0.64s var(--ez)}.related-card a:hover span{transform:translateX(8px)}
.detail-aside{position:sticky;top:110px;align-self:start}
.aside-card{background:linear-gradient(160deg,#0a2a5e,#061a3a);color:#c4d6f1}.aside-card h3,.aside-card .phone{color:#fff}.aside-card .eyebrow{color:var(--sky-l)}
.note-box{border-left:4px solid var(--sky);background:linear-gradient(90deg,var(--ice),#fff)}
.detail-main h3{position:relative;padding-left:18px}.detail-main h3:before{content:"";position:absolute;left:0;top:.28em;width:5px;height:.9em;border-radius:3px;background:var(--grad)}
/* inner hero */
.inner-hero{position:relative;overflow:hidden;isolation:isolate;background:radial-gradient(circle at 82% 10%,#12408f,#061a3a 62%)}
.inner-hero:before,.inner-hero:after{content:"";position:absolute;z-index:-1;transform:skewX(-20deg);background:linear-gradient(180deg,rgba(59,143,217,.4),transparent);animation:drift 12s ease-in-out infinite}
.inner-hero:before{width:150px;height:520px;right:24%;top:-120px}.inner-hero:after{width:60px;height:420px;right:14%;top:-60px;animation-delay:-5s}
.crumb a{transition:color 0.48s}.crumb a:hover{color:var(--sky-l)}
/* marquee, band, cta, footer */
.marquee{-webkit-mask:linear-gradient(90deg,transparent,#000 10%,#000 90%,transparent);mask:linear-gradient(90deg,transparent,#000 10%,#000 90%,transparent)}.marquee:hover .marquee-run{animation-play-state:paused}
.figures>div{transition:transform 0.96s var(--ez)}.figures>div:hover{transform:translateY(-8px)}.figures b{background:var(--gradl);-webkit-background-clip:text;background-clip:text;color:transparent}
.cta .bub{animation:bob 9s ease-in-out infinite}.cta{background-size:200% 200%;animation:shift 14s ease-in-out infinite}@keyframes shift{50%{background-position:100% 50%}}
.foot a{transition:color 0.48s,padding 0.64s var(--ez)}.foot a:hover{color:var(--sky-l);padding-left:8px}
.contact-item:hover .contact-icon{transform:scale(1.12) rotate(-6deg)}.contact-icon{transition:transform 0.8s var(--ez)}
.contact-form input,.contact-form textarea,.contact-form select{transition:border-color 0.48s,box-shadow 0.48s,transform 0.48s}.contact-form input:focus,.contact-form textarea:focus,.contact-form select:focus{box-shadow:0 0 0 5px rgba(59,143,217,.18);transform:translateY(-2px)}
@media(max-width:900px){.fc,.d1,.s2{display:none}.detail-aside{position:static}}
@media(hover:none){.pcard:hover,.service-tile:hover{transform:none}}
@media(prefers-reduced-motion:reduce){*{animation:none!important;transition:none!important}[data-r]{opacity:1;transform:none;filter:none}.pt{display:none}}
/* ---- v3 additions ---- */
.hero:before,.portrait-frame:before{display:none}.portrait-frame{transform:none!important}
.hero .proof{display:flex;align-items:center;gap:14px;flex-wrap:wrap;margin-top:56px;padding-top:26px;border-top:1px solid rgba(255,255,255,.14)}
.hero .proof .lbl{font:600 11px var(--s);letter-spacing:.18em;text-transform:uppercase;color:var(--inv-d);margin-right:8px}.hero .proof b{color:#fff;font:600 13px var(--s);letter-spacing:.08em}.hero .proof i{color:var(--sky);font-style:normal}
/* image cards */
.pimg{display:block;position:relative;height:190px;overflow:hidden;background:linear-gradient(135deg,#1a47a8,#061a3a)}
.pimg:after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,transparent 40%,rgba(6,26,58,.55))}
.pimg img{width:100%;height:100%;object-fit:cover;transform:scale(1.02);transition:transform 2s var(--ez)}
.pcard:hover .pimg img,.service-tile:hover .pimg img,.ic:hover .pimg img,.insight-grid article:hover .pimg img{transform:scale(1.12)}
.pcard,.service-tile,.insight-grid article,.ic{padding:0!important;display:flex;flex-direction:column;border-radius:var(--r-lg);background:#fff;border:1px solid var(--ice-d)}
.pcard>:not(.pimg),.service-tile>:not(.pimg),.insight-grid article>:not(.pimg),.ic>:not(.pimg){margin-left:32px;margin-right:32px}
.pcard .pic,.tile-icon{position:relative;z-index:3;margin-top:-30px!important;border:5px solid #fff;box-shadow:0 14px 30px -10px rgba(26,71,168,.6)}
.pcard .pnum,.tile-num{position:absolute!important;top:16px!important;right:20px!important;left:auto!important;z-index:3;color:rgba(255,255,255,.85)!important;font-weight:600}
.pcard h3,.service-tile h3,.insight-grid article h3,.ic h3{margin-top:18px}.pcard .pgo,.service-tile .tile-link,.ic .pgo{margin-bottom:30px;margin-top:20px}
.insight-grid article>span:not(.pimg),.ic small{margin-top:22px;display:block;color:var(--sky);font:700 11px var(--s);letter-spacing:.16em}.insight-grid article p{margin-bottom:30px}
.itz{display:grid;grid-template-columns:repeat(3,1fr);gap:26px;margin-top:56px}.ic:hover{transform:translateY(-12px);box-shadow:var(--lift)}
.more{text-align:center;margin-top:50px}
/* bento */
.bento{display:grid;grid-template-columns:1.3fr 1fr 1fr;grid-template-rows:270px 270px;gap:22px;margin-top:56px}
.bt{position:relative;border-radius:28px;overflow:hidden;color:#fff;padding:30px;display:flex;flex-direction:column;justify-content:flex-end;background:linear-gradient(135deg,#1a47a8,#061a3a);isolation:isolate}
.bt:first-child{grid-row:span 2}.bt:nth-child(4){grid-column:span 2}
.bt img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;z-index:-2;transition:transform 2.2s var(--ez)}.bt:after{content:"";position:absolute;inset:0;z-index:-1;background:linear-gradient(0deg,rgba(4,15,38,.92),rgba(4,15,38,.15) 70%);transition:opacity 1s}
.bt:hover img{transform:scale(1.1)}.bt h3{color:#fff;font-size:26px;margin-bottom:8px}.bt p{color:#c4d6f1;font-size:14.5px;line-height:1.6;max-width:44ch;max-height:0;opacity:0;overflow:hidden;transition:max-height 1.1s var(--ez),opacity 1s}
.bt:hover p,.bt:first-child p{max-height:120px;opacity:1}.bn{position:absolute;top:22px;left:28px;font:600 13px var(--s);letter-spacing:.2em;color:rgba(255,255,255,.8)}
.bgo{position:absolute;top:18px;right:22px;width:46px;height:46px;border-radius:50%;background:rgba(255,255,255,.14);backdrop-filter:blur(8px);display:grid;place-items:center;transition:transform 1s var(--ez),background .8s}.bt:hover .bgo{background:var(--sky);transform:rotate(-45deg) scale(1.1)}
/* quote band */
.qband{position:relative;padding:150px 0;text-align:center;color:#fff;background:linear-gradient(rgba(4,15,38,.8),rgba(4,15,38,.86)),url('https://images.unsplash.com/photo-1589829545856-d10d557cf95f?auto=format&fit=crop&w=1600&q=70') center/cover fixed,#061a3a}
.qband blockquote{font:500 clamp(32px,5vw,66px)/1.12 var(--f);max-width:18ch;margin:10px auto 40px;letter-spacing:-.02em}
/* network */
.net{background:radial-gradient(circle at 80% 50%,#0f3a85,#061a3a 60%);color:var(--inv)}.net h2{color:#fff}.net .lead{color:var(--inv)}.net .eyebrow{color:var(--sky-l)}
.netg{display:grid;grid-template-columns:1fr 1fr;gap:70px;align-items:center}
.nstats{display:flex;gap:44px;margin-top:40px}.nstats b{display:block;font:500 54px/1 var(--f);color:#fff}.nstats span{font-size:12px;letter-spacing:.14em;text-transform:uppercase;color:var(--inv-d)}
.orb{position:relative;max-width:520px;margin:auto}.orb svg{width:100%;overflow:visible}
.rg circle{fill:none;stroke:rgba(124,192,255,.3);stroke-dasharray:4 9}.rg{transform-origin:250px 250px;animation:spin 70s linear infinite}.r2{animation-direction:reverse;animation-duration:100s}.r3{animation-duration:140s}
.orb line{stroke:rgba(124,192,255,.22)}.nd{fill:#7cc0ff;animation:pulse 4.5s ease-in-out infinite;transform-origin:center;transform-box:fill-box}.ct{fill:url(#none);fill:#1a47a8;stroke:#7cc0ff;stroke-width:2}
@keyframes spin{to{transform:rotate(360deg)}}@keyframes pulse{50%{opacity:.25;transform:scale(2.4)}}
.orb-c{position:absolute;inset:0;display:grid;place-content:center;text-align:center;color:#fff;font:600 17px var(--f)}.orb-c small{font:600 9px var(--s);letter-spacing:.14em;text-transform:uppercase;color:var(--sky-l)}
/* faq */
.faqg{display:grid;grid-template-columns:.8fr 1.2fr;gap:70px;align-items:start}
.faq details{background:#fff;border:1px solid var(--ice-d);border-radius:20px;margin-bottom:14px;transition:box-shadow 1s var(--ez),border-color .8s}.faq details[open]{box-shadow:var(--lift);border-color:var(--sky)}
.faq summary{list-style:none;cursor:pointer;padding:24px 70px 24px 28px;font:600 19px var(--f);color:var(--navy);position:relative}.faq summary::-webkit-details-marker{display:none}
.faq summary:after{content:"+";position:absolute;right:24px;top:50%;width:34px;height:34px;margin-top:-17px;border-radius:50%;background:var(--ice);color:var(--blue);display:grid;place-items:center;font:400 22px var(--s);transition:transform 1s var(--ez),background .8s,color .8s}
.faq details[open] summary:after{transform:rotate(135deg);background:var(--blue);color:#fff}.faq details p{padding:0 28px 26px;animation:fin 1.1s var(--ez)}@keyframes fin{from{opacity:0;transform:translateY(-10px)}}
/* visit */
.visit{display:grid;grid-template-columns:1fr 1fr;gap:80px;align-items:center}.vimg{position:relative;border-radius:200px 200px 28px 28px;overflow:hidden;height:480px;background:linear-gradient(135deg,#1a47a8,#061a3a)}.vimg img{width:100%;height:100%;object-fit:cover;transition:transform 2s var(--ez)}.vimg:hover img{transform:scale(1.07)}
.vimg span{position:absolute;left:50%;bottom:26px;transform:translateX(-50%);background:#fff;color:var(--navy);padding:10px 22px;border-radius:40px;font:600 14px var(--s);white-space:nowrap}
.vrow{padding:18px 0;border-bottom:1px solid var(--ice-d);transition:padding 1s var(--ez)}.vrow:hover{padding-left:16px}.vrow b{display:block;font:700 11px var(--s);letter-spacing:.18em;text-transform:uppercase;color:var(--sky)}.visit .btn{margin-top:30px}
/* membership logos */
.m img{height:62px;width:auto;background:#fff;border-radius:14px;padding:6px;margin-bottom:16px;box-shadow:0 10px 24px -12px rgba(6,26,58,.4)}
.membership-card img{width:96px;height:auto;background:#fff;border-radius:16px;padding:8px;box-shadow:0 14px 30px -14px rgba(6,26,58,.45)}
/* detail figure */
.dfig{position:relative;margin:0 0 44px;border-radius:28px;overflow:hidden;height:340px;background:linear-gradient(135deg,#1a47a8,#061a3a);box-shadow:var(--lift)}
.dfig img{width:100%;height:100%;object-fit:cover;transition:transform 2.2s var(--ez)}.dfig:hover img{transform:scale(1.06)}
.dfig figcaption{position:absolute;left:22px;bottom:22px;background:rgba(255,255,255,.92);backdrop-filter:blur(8px);padding:9px 20px;border-radius:30px;font:600 13px var(--s);color:var(--navy)}
@media(max-width:900px){.bento,.itz,.netg,.faqg,.visit{grid-template-columns:1fr}.bento{grid-template-rows:none;grid-auto-rows:260px}.bt:first-child,.bt:nth-child(4){grid-row:auto;grid-column:auto}.qband{background-attachment:scroll}.nstats{gap:26px}.vimg{height:380px}.dfig{height:240px}}
.nav .btn{white-space:nowrap;padding:13px 22px;font-size:13.5px}.nav .btn span{white-space:nowrap}
.nav-links{gap:0}.nav-links a{padding:10px 13px;font-size:14px}
@media(max-width:1180px){.nav-links a{padding:10px 9px;font-size:13px}.nav .btn{display:none}}
@media(max-width:1020px){.nav-links{display:none}}
.net em{background:var(--gradl);-webkit-background-clip:text;background-clip:text;color:transparent}
.orb{width:100%}.orb svg{width:100%;height:auto}.rg circle{stroke:rgba(124,192,255,.4)}
/* ---- v4 final ---- */
.nav .logo img{height:58px!important;width:auto!important;mix-blend-mode:normal!important}.nav.stuck .logo img{height:50px!important}
.fl img{height:92px;width:auto}
html{scrollbar-width:thin;scrollbar-color:#2a63d4 #061a3a}::-webkit-scrollbar{width:10px}::-webkit-scrollbar-track{background:#061a3a}::-webkit-scrollbar-thumb{background:linear-gradient(#3b8fd9,#1a47a8);border-radius:8px}
/* band */
.band .figures b{font-size:clamp(46px,6vw,84px);line-height:1;padding-bottom:26px;border-bottom:1px solid rgba(255,255,255,.14);display:block;background:none;-webkit-text-fill-color:#fff;color:#fff}
.band .figures>div+div{border-left:1px solid rgba(255,255,255,.14)}
@media(max-width:900px){.band .figures{grid-template-columns:repeat(2,1fr)!important;row-gap:40px}.band .figures>div{padding:0 20px!important}.band .figures>div+div{border-left:0!important}.band .figures>div:nth-child(even){border-left:1px solid rgba(255,255,255,.14)!important}.band .figures span{max-width:none;font-size:14px}.band .figures b{font-size:clamp(40px,10vw,58px);padding-bottom:18px}}
/* whatsapp */
.wa{position:fixed;right:24px;bottom:24px;z-index:90;display:flex;align-items:center;gap:0;height:62px;min-width:62px;border-radius:40px;background:linear-gradient(135deg,#2fe074,#0fa84a);box-shadow:0 18px 40px -10px rgba(15,168,74,.7);overflow:hidden;transition:gap 1s var(--ez),padding 1s var(--ez),transform 1s var(--ez),box-shadow 1s}
.wa svg{width:34px;height:34px;flex:none;margin:0 14px}.wa-t{max-width:0;overflow:hidden;white-space:nowrap;color:#fff;font:700 14px var(--s);transition:max-width 1.1s var(--ez)}
.wa:hover{transform:translateY(-5px);padding-left:20px}.wa:hover .wa-t{max-width:130px}.wa:before{content:"";position:absolute;inset:0;border-radius:inherit;box-shadow:0 0 0 0 rgba(47,224,116,.55);animation:wap 3.2s infinite}
@keyframes wap{70%{box-shadow:0 0 0 22px rgba(47,224,116,0)}100%{box-shadow:0 0 0 0 rgba(47,224,116,0)}}
@media(max-width:600px){.wa{right:16px;bottom:16px;height:56px;min-width:56px}.wa svg{width:30px;height:30px;margin:0 13px}}
/* team */
.tl{padding-bottom:40px}.lp{display:flex;flex-direction:column;align-items:center;text-align:center}
.arch{position:relative;width:min(360px,100%);aspect-ratio:4/5;border-radius:999px 999px 28px 28px;overflow:hidden;background:linear-gradient(160deg,#3b8fd9,#061a3a);box-shadow:0 50px 90px -40px rgba(6,26,58,.7)}
.arch.big{width:min(440px,86vw)}.arch img{width:100%;height:100%;object-fit:cover;object-position:top;transition:transform 2.2s var(--ez)}.arch:hover img{transform:scale(1.06)}
.arch b{position:absolute;inset:0;display:grid;place-items:center;font:500 90px var(--f);color:rgba(255,255,255,.3);z-index:-0;pointer-events:none}.arch img+b{display:none}
.lpt{max-width:620px;margin-top:-4px;padding-top:34px}.lpt h2{margin:6px 0 14px}.lpt p{font:400 19px/1.65 var(--f)}
.tr-s{padding-top:30px}.tr{display:grid;grid-template-columns:1fr 1fr;gap:clamp(40px,8vw,120px);align-items:center;padding:clamp(40px,6vw,80px) 0;border-top:1px solid var(--ice-d)}
.tr .tp{order:1}.tr .ti{order:2;display:flex;justify-content:flex-end}.tr.rev .ti{order:1;justify-content:flex-start}.tr.rev .tp{order:2}
.tn{display:block;font:italic 500 90px/1 var(--f);color:var(--ice-d);margin-bottom:6px}.tr h2{margin:8px 0 14px}.tr p{font-size:18px;max-width:44ch}
.tlink{display:inline-flex;gap:10px;margin-top:24px;font-weight:700;color:var(--blue);transition:gap 1s var(--ez)}.tlink:hover{gap:18px}
.crew{display:grid;grid-template-columns:repeat(4,1fr);gap:26px;margin-top:56px}
.cm{text-align:center;background:#fff;border:1px solid var(--ice-d);border-radius:26px;padding:22px 22px 30px;transition:transform 1s var(--ez),box-shadow 1s var(--ez)}.cm:hover{transform:translateY(-12px);box-shadow:var(--lift)}
.cph{position:relative;aspect-ratio:1;border-radius:20px;overflow:hidden;background:linear-gradient(160deg,#3b8fd9,#061a3a);margin-bottom:20px}.cph img{width:100%;height:100%;object-fit:cover;transition:transform 2s var(--ez)}.cm:hover .cph img{transform:scale(1.08)}
.cph b{position:absolute;inset:0;display:grid;place-items:center;font:500 64px var(--f);color:rgba(255,255,255,.35)}.cph img+b{display:none}
.cm h3{font-size:22px}.cm span{font:700 11px var(--s);letter-spacing:.14em;text-transform:uppercase;color:var(--sky)}
.cm.join{background:linear-gradient(155deg,#1a47a8,#061a3a);border:0;display:flex;flex-direction:column;justify-content:center}.cm.join h3{color:#fff}.cm.join span{color:var(--sky-l)}.cph.plus{display:grid;place-items:center;background:rgba(255,255,255,.08);font:300 72px var(--f);color:#fff}
@media(max-width:900px){.tr{grid-template-columns:1fr;text-align:center;gap:34px}.tr .ti,.tr.rev .ti{order:1;justify-content:center}.tr .tp,.tr.rev .tp{order:2}.tr p{margin-inline:auto}.crew{grid-template-columns:1fr 1fr;gap:16px}.tn{font-size:64px}}
@media(max-width:480px){.cm{padding:14px 14px 22px}.cm h3{font-size:18px}.arch{width:86vw}}
.fl img{background:none!important;padding:0!important;border-radius:0!important;filter:none!important;mix-blend-mode:normal!important;box-shadow:none!important}
@media(max-width:600px){.name-tag{left:auto!important;right:6px!important;top:-16px!important;max-width:calc(100% - 12px);padding:12px 16px!important}.name-tag span{font-size:10px!important;letter-spacing:.08em!important;white-space:normal}.stack .small{right:0!important;width:44%!important}.stack .badge{left:8px!important}.hero .proof{margin-top:36px;gap:10px}.hero .eyebrow{font-size:11px}.stat-card{left:6px!important}}
html,body{overflow-x:hidden}
/* ---- team timeline ---- */
.tl{padding-bottom:0!important}.tr-s{padding-top:0!important}
.lp .arch.big{width:min(420px,88vw);overflow:hidden}
.lp .lpt{position:absolute;left:14px;right:14px;bottom:14px;z-index:3;margin:0;padding:22px 22px 20px;border-radius:22px;background:rgba(4,15,38,.7);backdrop-filter:blur(14px);border:1px solid rgba(255,255,255,.14);text-align:center;color:#fff}
.lp .lpt h2{color:#fff;font-size:clamp(24px,3vw,32px);margin:4px 0 8px}.lp .lpt p{font:400 14.5px/1.55 var(--s);color:#c4d6f1;margin:0}.lp .lpt .eyebrow{color:var(--sky-l);justify-content:center;margin-bottom:6px}.lp .lpt .eyebrow:before{display:none}
.tline{position:relative}
.tline:before,.tline .fill{content:"";position:absolute;left:50%;top:0;bottom:0;width:2px;margin-left:-1px;background:linear-gradient(180deg,rgba(59,143,217,.45),rgba(59,143,217,.12))}
.tline .fill{background:linear-gradient(180deg,#7cc0ff,#1a47a8);transform-origin:top;transform:scaleY(0);z-index:1;box-shadow:0 0 14px rgba(59,143,217,.8);transition:transform .25s linear}
.tline:after{content:"";position:absolute;left:50%;top:0;width:14px;height:14px;margin:-7px 0 0 -7px;border-radius:50%;background:var(--sky);box-shadow:0 0 0 6px rgba(59,143,217,.2);z-index:2}
.tr{position:relative;grid-template-columns:1fr 1fr!important;column-gap:clamp(70px,10vw,150px)!important;border-top:0!important;padding:clamp(60px,8vw,110px) 0!important}
.tr[data-r]{opacity:1!important;transform:none!important;filter:none!important}
.tr:after{content:"";position:absolute;left:50%;top:50%;width:18px;height:18px;margin:-9px 0 0 -9px;border-radius:50%;background:#fff;border:3px solid var(--ice-d);z-index:2;transition:background 1.2s var(--ez),border-color 1.2s,box-shadow 1.2s}
.tr.in:after{background:var(--sky);border-color:#fff;box-shadow:0 0 0 7px rgba(59,143,217,.25)}
.tr .tp{position:relative;text-align:left}.tr .tp>*:not(.tn){position:relative;z-index:1}
.tr .tn{position:absolute;top:-62px;left:-8px;margin:0;font:700 clamp(110px,13vw,170px)/1 var(--s);letter-spacing:-.06em;font-style:normal;color:rgba(26,71,168,.07);z-index:0;pointer-events:none}
.tr .ti,.tr.rev .ti{display:flex}.tr .ti{justify-content:flex-start}.tr.rev .ti{justify-content:flex-end}
.tr .arch{width:min(340px,100%)}
.tr .tp,.tr .ti{opacity:0;transition:opacity 1.5s var(--ez),transform 1.6s var(--ez)}
.tr .tp{transform:translateX(-90px)}.tr .ti{transform:translateX(90px);transition-delay:.2s}
.tr.rev .tp{transform:translateX(90px)}.tr.rev .ti{transform:translateX(-90px)}
.tr.in .tp,.tr.in .ti{opacity:1;transform:none}
@media(max-width:900px){
 .tline:before,.tline .fill{left:16px}.tline:after{left:16px}.tr:after{left:16px;top:70px}
 .tr{grid-template-columns:1fr!important;padding:60px 0 60px 46px!important;gap:30px!important;text-align:left}
 .tr .ti,.tr.rev .ti{order:1;justify-content:flex-start}.tr .tp,.tr.rev .tp{order:2;text-align:left}.tr p{margin-inline:0}
 .tr .tp,.tr.rev .tp,.tr .ti,.tr.rev .ti{transform:translateX(50px)}.tr .tn{font-size:100px;top:-40px}
 .tr .arch{width:min(300px,100%)}}
@media(prefers-reduced-motion:reduce){.tr .tp,.tr .ti{opacity:1!important;transform:none!important}}
/* no page-to-page wipe */
.pt{display:none!important}
/* compact mobile menu */
.drawer{padding-top:104px!important;overflow-y:auto}
.drawer a:not(.btn){font-size:20px!important;padding:14px 4px!important;font-weight:500}
.drawer a.btn{font-family:var(--s)!important;font-weight:700!important;font-size:15px!important;padding:16px 24px!important;margin-top:26px!important;border:0!important;display:flex!important;align-items:center;justify-content:center;gap:10px;text-align:center;width:100%}
.drawer a.btn span{display:inline}
/* ---- team: simple list on mobile/tablet (no timeline) ---- */
@media(max-width:900px){
 .tline:before,.tline:after,.tline .fill,.tr:after,.tr .tn{display:none!important}
 .tr-s{padding-top:50px!important}
 .tr,.tr.rev{display:block!important;padding:0 0 46px!important;margin-bottom:46px;border-bottom:1px solid var(--ice-d)!important}
 .tr:last-child{border-bottom:0;margin-bottom:0;padding-bottom:0!important}
 .tr .ti,.tr.rev .ti{display:block;margin-bottom:24px}
 .tr .arch{width:100%!important;max-width:none;aspect-ratio:1/1;border-radius:22px;box-shadow:0 26px 50px -30px rgba(6,26,58,.55)}
 .tr .arch img{object-position:top center}
 .tr .tp,.tr.rev .tp{text-align:left}.tr h2{font-size:30px;margin:6px 0 10px}.tr p{font-size:16.5px;max-width:none}
 .tr .tp,.tr .ti,.tr.rev .tp,.tr.rev .ti{opacity:0;transform:translateY(34px);transition:opacity 1.3s var(--ez),transform 1.4s var(--ez)}
 .tr.in .tp,.tr.in .ti{opacity:1;transform:none}
}
@media(max-width:900px){.tr,.tr.rev{display:flex!important;flex-direction:column}.tr .ti,.tr.rev .ti{order:1}.tr .tp,.tr.rev .tp{order:2}}
@media(max-width:900px){.tr,.tr.rev{align-items:stretch!important}.tr .ti,.tr.rev .ti,.tr .tp,.tr.rev .tp{width:100%}}
