:root{
 --bg:#000000;--bg-deep:#000000;--surf:#101010;--surf2:#181818;--surf3:#202020;
 --line:rgba(255,255,255,.08);--line2:rgba(255,255,255,.06);
 --glass:rgba(16,16,16,.6);--glass2:rgba(255,255,255,.06);--glassblur:blur(14px);
 --white:#F5F5F5;--muted:#8E8E8E;--muted2:#8E8E8E;--muted3:#7A7A7A;
 --lime:#B4E90A;--lime-bright:#C6FF1A;--lime-tintbg:rgba(180,233,10,.08);--blue:#F5F5F5;--green:#B4E90A;
 --violet:#7C2FE0;--fuchsia:#B4E90A;--accent:#B4E90A;
 --gx:max(10%,calc(50% - 720px));
 --grad:linear-gradient(0deg,#B4E90A,#B4E90A);
 --grad-blue:linear-gradient(0deg,#181818,#181818);
 --grad-f:linear-gradient(0deg,#181818,#181818);
 --fd:'Onest',sans-serif;--fb:'Onest',sans-serif;--fm:'Onest',sans-serif;
}
*{box-sizing:border-box;margin:0;padding:0;}
html{scroll-behavior:smooth;}
body{background:var(--bg);color:var(--white);font-family:var(--fb);-webkit-font-smoothing:antialiased;line-height:1.5;overflow-x:hidden;}
a{color:inherit;text-decoration:none;}
button{font-family:inherit;cursor:pointer;background:none;border:none;color:inherit;}
::selection{background:var(--accent);color:#0a1400;}
section[id]{scroll-margin-top:84px;}
.wrap{width:80%;max-width:1440px;margin:0 auto;}
@media(max-width:1024px){.wrap{width:90%;}}

.grain{position:fixed;inset:-50%;width:200%;height:200%;pointer-events:none;z-index:80;opacity:.04;mix-blend-mode:soft-light;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='200' height='200'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.85' numOctaves='2' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)'/%3E%3C/svg%3E");background-size:200px;animation:grain 8s steps(6) infinite;}
@keyframes grain{0%{transform:translate(0,0)}20%{transform:translate(-4%,-3%)}40%{transform:translate(-2%,4%)}60%{transform:translate(3%,-2%)}80%{transform:translate(-3%,3%)}100%{transform:translate(0,0)}}

.hdr{position:fixed;top:0;left:0;right:0;z-index:70;display:flex;align-items:center;justify-content:space-between;gap:24px;padding:18px 5vw;backdrop-filter:blur(14px);background:linear-gradient(180deg,rgba(8,8,10,.72),rgba(8,8,10,0));border-bottom:1px solid transparent;transition:border-color .4s,background .4s;}
.hdr.scrolled{background:rgba(8,8,10,.78);border-bottom:1px solid var(--line);}
.wordmark{font-family:var(--fd);font-weight:300;font-size:19px;letter-spacing:.16em;text-transform:uppercase;}
.wordmark b{color:var(--lime);font-weight:300;}
.nav{display:flex;gap:24px;font-size:14px;font-weight:500;}
.nav a{position:relative;color:var(--muted2);transition:color .25s;}
.nav a::after{content:'';position:absolute;left:0;bottom:-5px;width:0;height:1.5px;background:var(--accent);transition:width .3s;}
.nav a:hover{color:#fff;}
.nav a:hover::after{width:100%;}
.hdr-right{display:flex;align-items:center;gap:22px;}
.lang{display:flex;align-items:center;gap:8px;font-family:var(--fm);font-size:13px;font-weight:600;}
.lang-btn{color:var(--muted3);padding:6px 4px;margin:-6px -4px;transition:color .25s;}
.lang-btn.active{color:var(--accent);}
.lang-sep{color:var(--muted3);}
.tg-link{font-size:14px;font-weight:600;border-bottom:1.5px solid var(--accent);padding-bottom:1px;transition:color .25s;}
.tg-link:hover{color:var(--accent);}
@media(max-width:1080px){.nav{display:none;}}
@media(max-width:520px){.tg-link{display:none;}.hdr{padding:14px 5vw;}}
.mnav-burger{display:none;width:30px;height:24px;flex-direction:column;justify-content:space-between;background:none;border:none;cursor:pointer;padding:0;}
.mnav-burger span{display:block;height:2px;width:100%;background:#F5F5F5;transition:transform .3s,opacity .2s;}
@media(max-width:1080px){.mnav-burger{display:flex;}}
.mnav{position:fixed;inset:0;z-index:120;background:rgba(4,4,4,.97);-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);display:flex;flex-direction:column;align-items:center;justify-content:center;gap:26px;opacity:0;pointer-events:none;transition:opacity .35s;}
.mnav.open{opacity:1;pointer-events:auto;}
.mnav-close{position:absolute;top:20px;right:6vw;background:none;border:none;color:#8E8E8E;font-size:26px;line-height:1;cursor:pointer;}
.mnav-links{display:flex;flex-direction:column;align-items:center;gap:22px;}
.mnav-links a{font-family:var(--fd);font-weight:300;font-size:clamp(28px,8vw,40px);letter-spacing:.02em;text-transform:uppercase;color:#F5F5F5;transition:color .2s;}
.mnav-links a:hover{color:var(--lime);}
.mnav-tg{margin-top:16px;font-family:var(--fm);font-size:14px;font-weight:600;letter-spacing:.1em;text-transform:uppercase;color:var(--lime);border:1px solid rgba(180,233,10,.5);padding:14px 30px;}

.sec{position:relative;padding:130px 0;overflow-x:clip;}
.sec>.wrap{position:relative;z-index:1;}
@media(max-width:640px){.sec{padding:84px 0;}}
.slabel{display:inline-flex;align-items:center;gap:10px;font-family:var(--fm);font-size:14px;font-weight:600;letter-spacing:.06em;color:var(--accent);margin-bottom:24px;}
.slabel span{color:var(--muted3);}
.h2{font-family:var(--fd);font-weight:300;font-size:clamp(38px,5.6vw,80px);line-height:.94;letter-spacing:.01em;text-transform:uppercase;color:#fff;}
.h2 .tt{color:var(--muted3);}
.lead{color:var(--muted);font-size:clamp(16px,1.9vw,21px);max-width:820px;line-height:1.6;}

.reveal{opacity:0;transform:translateY(26px);transition:opacity .8s cubic-bezier(.16,1,.3,1),transform .8s cubic-bezier(.16,1,.3,1);}
.reveal.in{opacity:1;transform:none;}

/* ── HERO 3A ── */
@keyframes blink{0%,60%{opacity:1}61%,100%{opacity:.25}}
.hero3a{position:relative;min-height:clamp(820px,100vh,1080px);background:#000;color:#fff;padding:0;display:block;overflow:hidden;}
.hero-vid{background:#000000;position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:50% 44%;transform:translateX(100px);z-index:0;-webkit-mask-image:linear-gradient(to bottom,transparent 0%,#000 7%,#000 82%,transparent 100%);mask-image:linear-gradient(to bottom,transparent 0%,#000 7%,#000 82%,transparent 100%);}
#hero-loop{opacity:0;}
.hero3a::after{content:'';position:absolute;left:0;right:0;bottom:0;height:26vh;background:linear-gradient(to top,#000000 0%,rgba(0,0,0,.55) 55%,transparent 100%);z-index:6;pointer-events:none;}
.hero-scrim-1{position:absolute;inset:0;z-index:1;pointer-events:none;background:linear-gradient(90deg,rgba(0,0,0,.97) 0%,rgba(0,0,0,.84) 24%,rgba(0,0,0,.38) 52%,rgba(0,0,0,.06) 78%);}
.hero-scrim-2{position:absolute;inset:0;z-index:1;pointer-events:none;background:linear-gradient(to top,rgba(0,0,0,.92) 0%,rgba(0,0,0,.4) 16%,transparent 40%),linear-gradient(to bottom,rgba(0,0,0,.8) 0%,transparent 20%);}
.hero-kicker-row{position:absolute;z-index:2;left:var(--gx);top:clamp(130px,16vh,190px);}
.hero-kick{display:flex;align-items:center;gap:12px;margin-bottom:clamp(18px,2.6vh,30px);opacity:0;}
.hero3a.hero-live .hero-kick{animation:flickIn .5s steps(7) .04s both;}
@keyframes flickIn{0%{opacity:0}18%{opacity:.7}30%{opacity:.1}44%{opacity:.9}62%{opacity:.35}100%{opacity:1}}
.hero-kick-dot{color:#B4E90A;font-size:9px;line-height:1;}
.hero-kick-txt{font-family:var(--fm);font-size:13px;font-weight:500;letter-spacing:.14em;color:#8E8E8E;text-transform:uppercase;}
.h3a-name{margin:0;font-weight:300;font-size:clamp(56px,10.5vw,148px);line-height:.84;letter-spacing:.005em;text-transform:uppercase;white-space:pre-line;opacity:0;position:relative;}
.hero3a.hero-live .h3a-name{animation:glitchName .64s linear .08s both;}
.h3a-name::before,.h3a-name::after{content:attr(data-text);position:absolute;left:0;top:0;white-space:pre;pointer-events:none;opacity:0;}
.hero3a.hero-live .h3a-name::before{color:#00e5ff;animation:glitchSliceA .5s steps(2) .1s 2 both;}
.hero3a.hero-live .h3a-name::after{color:#ff003c;animation:glitchSliceB .5s steps(2) .1s 2 both;}
@keyframes glitchName{
 0%{opacity:0;transform:translateX(-10px);clip-path:inset(44% 0 42% 0);text-shadow:none;}
 8%{opacity:1;transform:translateX(7px);clip-path:inset(0 0 62% 0);text-shadow:-3px 0 #ff003c,3px 0 #00e5ff;}
 16%{transform:translateX(-6px);clip-path:inset(58% 0 6% 0);text-shadow:3px 0 #ff003c,-3px 0 #B4E90A;}
 26%{transform:translateX(5px);clip-path:inset(14% 0 44% 0);text-shadow:-2px 0 #00e5ff,2px 0 #ff003c;}
 38%{transform:translateX(-3px);clip-path:inset(-25% 0 -15% 0);text-shadow:2px 0 #B4E90A,-2px 0 #ff003c;}
 55%{transform:translateX(2px);text-shadow:-1px 0 #00e5ff,1px 0 #B4E90A;}
 72%{transform:translateX(-1px);text-shadow:1px 0 #ff003c;}
 100%{opacity:1;transform:none;clip-path:none;text-shadow:none;}
}
@keyframes glitchSliceA{0%{opacity:0;transform:translate(0,0)}20%{opacity:.85;transform:translate(-6px,-3px);clip-path:inset(20% 0 55% 0)}50%{opacity:.6;transform:translate(5px,2px);clip-path:inset(60% 0 12% 0)}80%{opacity:.4;transform:translate(-3px,0);clip-path:inset(35% 0 38% 0)}100%{opacity:0;transform:none}}
@keyframes glitchSliceB{0%{opacity:0;transform:translate(0,0)}25%{opacity:.85;transform:translate(6px,3px);clip-path:inset(50% 0 20% 0)}55%{opacity:.6;transform:translate(-5px,-2px);clip-path:inset(10% 0 60% 0)}85%{opacity:.4;transform:translate(3px,0);clip-path:inset(40% 0 33% 0)}100%{opacity:0;transform:none}}
.hero-bottom{position:absolute;z-index:8;left:var(--gx);bottom:clamp(74px,12vh,152px);display:flex;flex-direction:column;align-items:flex-start;gap:clamp(26px,4.5vh,54px);width:min(1100px,90vw);}
.fade-up{opacity:0;}
.fade-up.d3{display:flex;flex-direction:column;align-items:flex-start;gap:22px;max-width:100%;}
.hero3a.hero-live .fade-up.d2{animation:fadeUp .55s cubic-bezier(.16,1,.3,1) .5s both;}
.hero3a.hero-live .fade-up.d3{animation:scanIn .6s cubic-bezier(.16,1,.3,1) .34s both;}
@keyframes fadeUp{from{opacity:0;transform:translateY(22px)}to{opacity:1;transform:none}}
@keyframes scanIn{0%{opacity:0;clip-path:inset(0 100% 0 0);}55%{opacity:1;}100%{opacity:1;clip-path:inset(0 0 0 0);}}
.hero-type-row{display:flex;align-items:flex-start;gap:14px;min-height:clamp(78px,11vh,100px);}
.hero-type-arrow{font-family:var(--fm);font-size:clamp(20px,2.4vw,30px);line-height:1.3;color:#B4E90A;flex:none;}
.hero-type-text{font-family:var(--fm);font-weight:300;font-size:clamp(15px,1.9vw,26px);line-height:1.3;letter-spacing:-.005em;color:#B4E90A;white-space:nowrap;}
.hero-type-cursor{display:inline-block;color:#B4E90A;font-weight:400;animation:blink 1.05s steps(1) infinite;}
.h3a-btnrow{display:flex;align-items:center;gap:16px;flex-wrap:wrap;}
.hero-btn-primary{display:inline-flex;align-items:center;gap:12px;height:68px;padding:0 38px;background:#B4E90A;color:#0a1400;font-family:var(--fm);font-weight:700;font-size:16px;letter-spacing:.005em;box-sizing:border-box;transition:background .2s;}
.hero-btn-primary:hover{background:var(--lime-bright);}
.hero-btn-secondary{display:inline-flex;align-items:center;gap:9px;height:68px;border:1px solid rgba(255,255,255,.22);color:#fff;font-family:var(--fm);font-weight:600;font-size:13px;letter-spacing:.08em;text-transform:uppercase;padding:0 32px;box-sizing:border-box;transition:border-color .2s;}
.hero-btn-secondary:hover{border-color:rgba(255,255,255,.5);}
.h3a-role{display:flex;align-items:center;gap:10px 20px;flex-wrap:wrap;font-family:var(--fm);font-size:13px;font-weight:500;letter-spacing:.07em;text-transform:uppercase;color:#8E8E8E;}
.h3a-role-sep{width:1px;height:12px;background:rgba(255,255,255,.18);}
.h3a-deadline{color:#B4E90A;}
.hero-thoughts{position:absolute;z-index:7;right:clamp(24px,5vw,88px);top:clamp(150px,26vh,300px);width:min(340px,30vw);opacity:0;pointer-events:none;}
.hero3a.hero-live .hero-thoughts{opacity:1;transition:opacity .7s ease;}
.ht-line{display:flex;align-items:flex-start;gap:12px;opacity:0;transform:translateY(10px);}
.ht-line.in{animation:htIn .6s cubic-bezier(.16,1,.3,1) forwards;}
.ht-line.out{animation:htOut .5s ease forwards;}
@keyframes htIn{to{opacity:1;transform:none;}}
@keyframes htOut{to{opacity:0;transform:translateY(-8px);}}
.ht-dots{display:inline-flex;gap:4px;margin-top:10px;flex:none;}
.ht-dots i{width:5px;height:5px;border-radius:50%;background:var(--lime);animation:htPulse 1.4s ease-in-out infinite;}
.ht-dots i:nth-child(2){animation-delay:.2s;}.ht-dots i:nth-child(3){animation-delay:.4s;}
@keyframes htPulse{0%,100%{opacity:.25;transform:scale(.8)}50%{opacity:.9;transform:scale(1)}}
.ht-text{font-family:'Onest',sans-serif;font-size:clamp(14px,1.15vw,17px);line-height:1.55;font-style:italic;color:#CACACA;text-shadow:0 2px 16px rgba(0,0,0,.85);}
@media(max-width:900px){
  .hero-thoughts{display:none;}
  .hero3a{display:flex!important;flex-direction:column;justify-content:flex-end;padding:0 0 clamp(64px,10vh,96px)!important;}
  .hero-vid{transform:none!important;object-position:50% 28%!important;height:52%!important;bottom:auto!important;top:0!important;}
  .hero-bottom{position:static!important;width:auto!important;gap:0!important;max-width:100%!important;}
  .fade-up,.hero-kicker-row{position:static!important;left:auto!important;right:auto!important;top:auto!important;bottom:auto!important;width:auto!important;max-width:100%!important;padding:0 6vw!important;z-index:6!important;}
  .fade-up.d2{margin-top:clamp(16px,3vh,26px)!important;}
  .fade-up.d3{margin-top:clamp(18px,3vh,28px)!important;flex-wrap:wrap;gap:14px!important;}
  .h3a-name{font-size:clamp(44px,14vw,104px)!important;white-space:normal!important;line-height:.9!important;}
  .fade-up.d3 .h3a-btnrow{width:100%;flex-direction:column;align-items:stretch;}
  .fade-up.d3 .h3a-btnrow>a{width:100%!important;justify-content:center!important;}
  .hero-type-text{white-space:normal!important;}
}

/* ── NUMBERS / ABOUT ── */
.about-grid{display:grid;grid-template-columns:1.05fr 1fr;gap:clamp(44px,6vw,110px);align-items:start;}
@media(max-width:900px){.about-grid{grid-template-columns:1fr;gap:64px;}}
.num-grid{display:grid;grid-template-columns:1fr;gap:34px;margin-top:2px;}
.num-cell{position:relative;border-top:1px solid var(--line);padding-top:26px;}
.num-cell::before{content:'';position:absolute;top:-1px;left:0;width:62px;height:2px;background:var(--lime);}
.num-big{font-family:var(--fd);font-weight:300;font-size:clamp(40px,4vw,66px);line-height:.95;letter-spacing:-.02em;color:#fff;}
.num-lab{color:var(--muted);margin-top:14px;max-width:330px;font-size:15px;}
@media(max-width:600px){.num-grid{grid-template-columns:1fr 1fr;gap:22px 24px;}}

/* ── BRANDS / SERVICES CAROUSEL ── */
.brands{margin-top:78px;}
.brands-lab{font-family:var(--fm);font-size:13px;letter-spacing:.1em;color:var(--muted3);text-transform:uppercase;margin-bottom:22px;}
@keyframes marquee{from{transform:translateX(0)}to{transform:translateX(-50%)}}
.brands-carousel{overflow:hidden;padding:6px 0;-webkit-mask-image:linear-gradient(to right,transparent 0%,black 7%,black 93%,transparent 100%);mask-image:linear-gradient(to right,transparent 0%,black 7%,black 93%,transparent 100%);}
.brands-track{display:flex;width:max-content;animation:marquee 40s linear infinite;}
.brands-track:hover{animation-play-state:paused;}
.brand-item{display:inline-flex;align-items:center;justify-content:center;padding:0 clamp(26px,3vw,48px);height:76px;white-space:nowrap;}
.brand-item img{width:auto;max-width:150px;object-fit:contain;opacity:.5;transition:opacity .3s;}
.brand-item:hover img{opacity:1;}
.svc-track{animation-duration:52s;}
.svc-item{height:60px;padding:0 clamp(22px,2.6vw,42px);}
.svc-item img{max-width:112px;opacity:.42;}
@media(max-width:660px){.svc-item{height:50px;padding:0 16px;}.svc-item img{max-width:88px;}.brand-item{height:60px;padding:0 20px;}.brand-item img{max-width:104px;}}

/* ── PRODUCTS ── */
.prod-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:24px;margin-top:8px;}
.prod-ready{display:inline-flex;align-items:center;gap:9px;font-family:var(--fm);font-size:14px;font-weight:600;color:var(--lime);padding:0;margin-bottom:44px;}
.card{position:relative;background:var(--surf);border:1px solid var(--line);padding:28px;transition:transform .4s cubic-bezier(.16,1,.3,1),box-shadow .4s,border-color .4s;}
.card:hover{transform:translateY(-5px);border-color:rgba(180,233,10,.42);box-shadow:0 24px 60px -30px rgba(0,0,0,.6);}
.prod-head{display:flex;align-items:center;justify-content:space-between;gap:14px;margin-bottom:20px;}
.prod-idx{font-family:var(--fm);font-size:13px;color:var(--muted3);font-weight:600;}
.prod-tags{display:flex;align-items:center;gap:10px;flex-wrap:wrap;}
.tagp{font-family:var(--fm);font-size:13px;font-weight:600;letter-spacing:.02em;padding:7px 12px;color:#fff;}
.tagp.v,.tagp.b,.tagp.f{background:var(--surf2);border:1px solid var(--line);color:var(--muted);font-weight:500;}
.mock{position:relative;overflow:hidden;border:1px solid var(--line);aspect-ratio:16/10;margin-bottom:22px;background:#000000;}
.mock img{width:100%;height:100%;object-fit:cover;object-position:top center;display:block;}
.prod-title{font-family:var(--fd);font-weight:500;font-size:clamp(21px,2.3vw,28px);letter-spacing:-.01em;line-height:1.05;margin-bottom:12px;}
.prod-body{color:var(--muted);font-size:15px;line-height:1.6;max-width:560px;}
.prod-feat{grid-column:1/-1;display:grid;grid-template-columns:.82fr 1fr;background:var(--surf);border:1px solid var(--line);overflow:hidden;transition:transform .4s cubic-bezier(.16,1,.3,1),box-shadow .4s,border-color .4s;}
.prod-feat:hover{transform:translateY(-5px);border-color:rgba(180,233,10,.42);box-shadow:0 30px 70px -34px rgba(0,0,0,.6);}
.feat-media{position:relative;display:block;padding:0;background:#000000;min-height:460px;}
.feat-frame{position:absolute;inset:0;width:100%;height:100%;overflow:hidden;}
.feat-frame img{width:100%;height:100%;object-fit:cover;object-position:top center;display:block;}
.feat-body{padding:clamp(28px,3vw,46px);display:flex;flex-direction:column;justify-content:flex-start;gap:14px;}
.feat-title{font-family:var(--fd);font-weight:500;font-size:clamp(21px,2.3vw,28px);letter-spacing:-.01em;line-height:1.05;}
.feat-desc{color:var(--muted);font-size:clamp(15px,1.5vw,17px);line-height:1.65;max-width:520px;}
.feat-desc b{color:#F5F5F5;font-weight:500;}
@media(max-width:820px){.prod-feat{grid-template-columns:1fr;}.feat-media{min-height:0;aspect-ratio:16/10;}}
@media(max-width:760px){.prod-grid{grid-template-columns:1fr;}}

/* ── EXPERIENCE / PATH ── */
.pathfull{position:relative;width:100%;margin-top:10px;}
.pgraph{position:relative;width:100%;height:clamp(200px,24vw,320px);}
.pgraph svg{position:absolute;inset:0;width:100%;height:100%;display:block;}
.pdot{position:absolute;width:13px;height:13px;margin:-6.5px 0 0 -6.5px;border-radius:50%;background:#000;border:2px solid var(--lime);z-index:3;transition:transform .3s cubic-bezier(.16,1,.3,1),box-shadow .3s;}
.pdot.on{transform:scale(1.4);box-shadow:0 0 0 7px rgba(180,233,10,.12),0 0 22px rgba(180,233,10,.6);}
.pgrid{display:grid;grid-template-columns:repeat(5,1fr);border-top:1px solid var(--line);}
.pcol{position:relative;padding:24px clamp(12px,1.5vw,26px) 30px;border-left:1px solid var(--line);transition:background .35s;}
.pcol:first-child{border-left:none;}
.pcol::before{content:'';position:absolute;top:-1px;left:0;width:0;height:2px;background:var(--lime);transition:width .5s cubic-bezier(.16,1,.3,1);}
.pcol.on::before{width:100%;}
.pcol.on{background:linear-gradient(180deg,rgba(180,233,10,.05),transparent 72%);}
.pyear{font-family:var(--fm);font-size:13px;font-weight:600;letter-spacing:.08em;color:var(--lime);}
.prole{font-family:var(--fd);font-weight:400;font-size:clamp(16px,1.3vw,20px);line-height:1.16;margin-top:14px;color:#fff;}
.pco{font-family:var(--fm);font-size:13px;color:var(--muted3);margin-top:8px;}
.ptag{font-family:var(--fm);font-size:13.5px;line-height:1.45;color:var(--muted);margin-top:16px;}
.ppop{position:absolute;left:50%;bottom:calc(100% + 20px);transform:translate(-50%,10px);width:min(340px,72vw);background:#0b0b0b;border:1px solid rgba(180,233,10,.26);padding:20px 22px;font-size:14px;line-height:1.6;color:var(--muted);opacity:0;pointer-events:none;transition:opacity .3s,transform .3s cubic-bezier(.16,1,.3,1);z-index:6;}
.pcol.on .ppop{opacity:1;transform:translate(-50%,0);}
.ppop b{display:block;font-family:var(--fm);font-size:12px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--lime);margin-bottom:10px;}
.pcol:first-child .ppop{left:0;transform:translate(0,10px);}
.pcol:first-child.on .ppop{transform:translate(0,0);}
.pcol:last-child .ppop{left:auto;right:0;transform:translate(0,10px);}
.pcol:last-child.on .ppop{transform:translate(0,0);}
@media(max-width:900px){
 .pgraph{height:130px;}
 .pgrid{grid-template-columns:1fr;}
 .pcol{border-left:none;border-top:1px solid var(--line);}
 .pcol:first-child{border-top:none;}
 .ppop{position:static;opacity:1;transform:none!important;width:auto;background:none;border:none;border-left:1px solid rgba(180,233,10,.3);padding:2px 0 2px 16px;margin-top:14px;}
 .pdot.on{transform:none;}
}

/* ── CASES: horizontal ── */
.case-filters{display:flex;flex-wrap:wrap;gap:10px;margin-bottom:38px;}
.cfilter{font-family:var(--fm);font-size:13px;font-weight:600;letter-spacing:.03em;padding:12px 19px;border:1px solid var(--line);background:transparent;color:var(--muted);transition:color .2s,border-color .2s,background .2s;}
.cfilter:hover{color:#fff;border-color:rgba(255,255,255,.3);}
.cfilter.on{background:var(--lime);border-color:var(--lime);color:#0a1400;}
.hcases{display:flex;flex-direction:column;gap:20px;}
.hcase{display:grid;grid-template-columns:1.4fr 1fr;background:var(--surf);border:1px solid var(--line);transition:border-color .4s,transform .4s cubic-bezier(.16,1,.3,1),box-shadow .4s;}
.hcase:hover{border-color:rgba(180,233,10,.42);transform:translateY(-4px);box-shadow:0 30px 70px -34px rgba(0,0,0,.7);}
.hcase.hide{display:none;}
.hc-text{padding:clamp(28px,3vw,46px);display:flex;flex-direction:column;gap:0;}
.hc-id{display:flex;align-items:center;gap:16px;padding-bottom:20px;border-bottom:1px solid var(--line);}
.hc-logo{height:30px;width:120px;flex:none;display:block;}
.hc-logo img{max-height:30px;max-width:120px;width:auto;height:auto;object-fit:contain;display:block;}
.hc-about{font-family:var(--fm);font-size:13.5px;line-height:1.4;color:var(--muted2);}
.hc-hook{font-family:var(--fd);font-weight:300;font-size:clamp(24px,2.5vw,36px);line-height:1.08;letter-spacing:.005em;color:#fff;margin-top:26px;text-wrap:pretty;}
.hc-desc{font-size:15.5px;line-height:1.6;color:var(--muted);margin-top:18px;max-width:52ch;}
.hc-metrics{display:flex;gap:14px;margin-top:auto;padding-top:30px;flex-wrap:wrap;}
.hc-m{flex:1;min-width:150px;border-top:1px solid var(--line);padding-top:16px;}
.hc-m .v[data-nda]{font-size:clamp(15px,1.5vw,19px);letter-spacing:0;white-space:nowrap;}
.hc-m .v{font-family:var(--fd);font-weight:300;font-size:clamp(30px,2.8vw,42px);line-height:1;letter-spacing:-.02em;color:var(--lime);}
.hc-m .l{font-family:var(--fm);font-size:12.5px;letter-spacing:.04em;color:var(--muted3);margin-top:10px;}
.hc-link{display:inline-flex;align-items:center;gap:9px;margin-top:28px;font-family:var(--fm);font-size:13px;font-weight:600;letter-spacing:.08em;text-transform:uppercase;color:#fff;border-bottom:1px solid rgba(180,233,10,.5);padding-bottom:7px;align-self:flex-start;transition:color .2s,border-color .2s;}
.hc-link:hover{color:var(--lime);border-color:var(--lime);}
.hc-media{position:relative;background:var(--surf2);border-left:1px solid var(--line);min-height:400px;overflow:hidden;}
.hc-media-img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center center;display:block;}
.media-ph{position:absolute;inset:0;width:100%;height:100%;display:flex;align-items:center;justify-content:center;background:repeating-linear-gradient(135deg,var(--surf2),var(--surf2) 14px,var(--surf3) 14px,var(--surf3) 15px);}
.media-ph span{font-family:var(--fm);font-size:11px;font-weight:600;letter-spacing:.1em;text-transform:uppercase;color:var(--muted3);background:rgba(0,0,0,.55);padding:8px 14px;}
@media(max-width:900px){
 .hcase{grid-template-columns:1fr;}
 .hc-media{order:-1;min-height:0;aspect-ratio:4/3;border-left:none;border-bottom:1px solid var(--line);}
 .hc-m{min-width:120px;}
}
@media(max-width:520px){.hc-id{flex-direction:column;align-items:flex-start;gap:12px;}}
.cases-more{display:flex;justify-content:center;margin-top:36px;}
.cmore-btn{font-family:var(--fm);font-size:13.5px;font-weight:600;letter-spacing:.1em;text-transform:uppercase;color:#fff;border:1px solid var(--line);padding:19px 46px;transition:border-color .2s,color .2s;}
.cmore-btn:hover{border-color:var(--lime);color:var(--lime);}

/* ── DRAWER ── */
#drawer-overlay{position:fixed;inset:0;background:rgba(0,0,0,.65);z-index:990;opacity:0;pointer-events:none;transition:opacity .35s;backdrop-filter:blur(5px);-webkit-backdrop-filter:blur(5px);}
#drawer-overlay.open{opacity:1;pointer-events:auto;}
#case-drawer{position:fixed;top:0;right:0;bottom:0;width:min(700px,100vw);background:#101010;border-left:1px solid rgba(255,255,255,.08);z-index:991;transform:translateX(102%);transition:transform .48s cubic-bezier(.16,1,.3,1);overflow-y:auto;display:flex;flex-direction:column;}
#case-drawer.open{transform:translateX(0);}
.drawer-hd{position:sticky;top:0;z-index:2;display:flex;justify-content:flex-end;padding:20px clamp(22px,4vw,46px) 12px;background:linear-gradient(180deg,#101010 65%,transparent);}
.drawer-hd button{width:38px;height:38px;border-radius:50%;background:var(--surf2);border:1px solid var(--line);font-size:18px;color:var(--muted);display:flex;align-items:center;justify-content:center;cursor:pointer;transition:color .2s,background .2s;}
.drawer-hd button:hover{color:#fff;background:var(--surf3);}
.drawer-body{padding:0 clamp(22px,4vw,46px) 60px;flex:1;}
.drawer-hero{margin:0 calc(-1 * clamp(22px,4vw,46px)) 24px;aspect-ratio:16/10;overflow:hidden;background:var(--surf2);position:relative;}
.drawer-hero-img{width:100%;height:100%;object-fit:cover;object-position:center center;display:block;}
@media(max-width:900px){.drawer-hero{aspect-ratio:4/3;}}
.drawer-id{margin-bottom:22px;}
.drawer-h2{font-family:var(--fd);font-weight:300;font-size:clamp(26px,4vw,44px);letter-spacing:.01em;line-height:1.06;text-transform:uppercase;color:#fff;}
.drawer-hook{font-family:var(--fd);font-weight:300;font-size:clamp(18px,2vw,24px);line-height:1.25;color:var(--muted);margin-top:14px;}
.drawer-tags{display:flex;flex-wrap:wrap;gap:8px;margin-top:22px;}
.case-pill{font-family:var(--fm);font-size:13px;font-weight:600;letter-spacing:.03em;padding:8px 14px;border:1px solid var(--line);background:var(--surf2);color:var(--muted);}
.drawer-metrics{margin-top:26px;padding-top:24px;}
.drawer-sep{height:1px;background:var(--line);margin:26px 0;}
.drawer-s{margin-bottom:22px;}
.drawer-sl{font-family:var(--fm);font-size:12.5px;font-weight:700;letter-spacing:.07em;color:var(--accent);margin-bottom:9px;text-transform:uppercase;}
.drawer-st{color:var(--muted);font-size:15px;line-height:1.65;}
.drawer-cta{padding:17px 40px;background:var(--lime);color:#050505;font-family:var(--fm);font-weight:600;font-size:14px;letter-spacing:.08em;text-transform:uppercase;display:inline-flex;align-items:center;gap:8px;text-decoration:none;box-shadow:0 12px 36px -10px rgba(180,233,10,.4);transition:filter .25s,transform .2s;}
.drawer-cta:hover{background:var(--lime-bright);}
.drawer-cta-final{width:100%;justify-content:center;margin-top:10px;}

/* ── SKILLS / HUB (contact) ── */
.hub{position:relative;background:#000000;padding:130px 0 120px;}
@media(max-width:640px){.hub{padding:84px 0 76px;}}
.hub-intro{margin-bottom:clamp(34px,4vw,58px);}
.hub-h2{font-family:var(--fd);font-weight:300;font-size:clamp(30px,4vw,58px);line-height:1.0;letter-spacing:.01em;text-transform:uppercase;color:#fff;margin:0;max-width:24ch;text-wrap:pretty;}
.hub-h2 .tt{color:var(--muted3);}
.hub-intro .slabel{margin-bottom:18px;}
.hub-layout{display:grid;grid-template-columns:clamp(180px,16vw,220px) minmax(0,1fr) clamp(220px,20vw,260px);gap:clamp(24px,3vw,48px);align-items:center;}
.hub-stage{position:relative;aspect-ratio:3/2;min-height:440px;overflow:hidden;}
.hub-bg{position:absolute;left:50%;bottom:0;transform:translateX(-50%);width:100%;height:100%;z-index:0;pointer-events:none;background:url("../assets/Contact_back.png") center 42%/contain no-repeat;filter:brightness(.95);-webkit-mask-image:radial-gradient(ellipse 60% 66% at 50% 46%,#000 0%,#000 48%,rgba(0,0,0,.7) 74%,transparent 97%);mask-image:radial-gradient(ellipse 60% 66% at 50% 46%,#000 0%,#000 48%,rgba(0,0,0,.7) 74%,transparent 97%);}
.orb{position:absolute;inset:0;width:100%;height:100%;pointer-events:none;overflow:visible;}
.orb-back{z-index:1;}
.orb-front{z-index:3;}
.ob-line{fill:none;stroke:rgba(180,233,10,.28);stroke-width:1;vector-effect:non-scaling-stroke;}
.ob-line-d{stroke:rgba(255,255,255,.12);}
.ob-line-f{stroke:rgba(180,233,10,.14);}
.hub-man{position:absolute;left:50%;bottom:0;transform:translateX(-50%);width:100%;height:100%;max-width:100%;object-fit:contain;object-position:bottom center;z-index:2;pointer-events:none;-webkit-mask-image:linear-gradient(to bottom,#000 88%,transparent 100%);mask-image:linear-gradient(to bottom,#000 88%,transparent 100%);}
.dtag{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);display:inline-flex;align-items:center;white-space:pre-line;line-height:1.35;font-family:var(--fm);font-size:11px;font-weight:600;letter-spacing:.13em;text-transform:uppercase;color:var(--muted);text-shadow:0 2px 12px #000,0 0 6px #000;will-change:left,top,transform,opacity;z-index:4;}
.dtag.on{color:#fff;}
.hub-status-col{display:flex;flex-direction:column;justify-content:center;}
.hub-links-col{display:flex;flex-direction:column;justify-content:center;}
.hub-status{display:flex;flex-direction:column;gap:16px;}
.hsdot{display:inline-block;width:8px;height:8px;border-radius:50%;background:var(--green);box-shadow:0 0 10px var(--green);margin-right:9px;vertical-align:middle;}
.hsa{font-family:var(--fm);font-size:12px;font-weight:600;letter-spacing:.16em;text-transform:uppercase;color:var(--muted3);line-height:1.6;}
.hsa:not(.hsa-status) span+span{display:block;color:var(--white);}
.hsa-status{display:flex;align-items:center;flex-wrap:wrap;}
.hsa-status span{color:var(--muted3);}
.hsa-status span:last-child{color:var(--lime);margin-left:4px;}
.hs-sep{width:100%;height:1px;background:rgba(255,255,255,.08);}
.hub-links{display:flex;flex-direction:column;border-top:1px solid var(--line);}
.crow{display:flex;align-items:center;gap:14px;padding:14px 0;border-bottom:1px solid var(--line);color:var(--white);transition:color .18s;}
.crow:last-child{border-bottom:none;}
.cico{width:40px;height:40px;border-radius:50%;border:1px solid rgba(255,255,255,.16);display:flex;align-items:center;justify-content:center;color:var(--white);flex:none;transition:border-color .18s,color .18s,box-shadow .18s;}
.clab{font-family:var(--fm);font-size:12.5px;font-weight:600;letter-spacing:.16em;text-transform:uppercase;}
.carr{margin-left:auto;color:var(--muted3);transition:transform .18s,color .18s;}
.crow:hover{color:var(--lime);}
.crow:hover .cico{border-color:var(--lime);color:var(--lime);box-shadow:0 0 14px rgba(180,233,10,.3);}
.crow:hover .carr{color:var(--lime);transform:translateX(4px);}
@media(max-width:940px){
  .hub-h2{font-size:clamp(28px,7vw,40px);max-width:18ch;}
  .hub-layout{grid-template-columns:1fr;gap:34px;}
  .hub-stage{aspect-ratio:auto;min-height:0;display:flex;flex-wrap:wrap;justify-content:center;align-items:center;gap:12px 22px;}
  .orb{display:none;}
  .hub-man{position:relative;z-index:2;left:auto;bottom:auto;transform:none;flex:0 0 100%;width:100%;height:auto;max-height:44vh;margin:0 auto 20px;object-fit:contain;}
  .hub-bg{height:auto;top:0;bottom:auto;aspect-ratio:1/1;max-height:52vh;background-size:contain;background-position:center 40%;}
  .dtag{position:relative!important;left:auto!important;top:auto!important;transform:none!important;opacity:1!important;font-size:10.5px;line-height:1.4;white-space:normal;text-align:center;text-shadow:none;}
  .hub-status-col,.hub-links-col{justify-content:flex-start;}
}

/* services strip */
.svcstrip{position:relative;z-index:6;background:#000;border-top:1px solid var(--line);padding:clamp(30px,3.4vw,46px) 0;}
.svcstrip .svc-lab{padding:0 max(5vw,calc(50% - 720px));}
.svc-lab{font-family:var(--fm);font-size:11.5px;font-weight:600;letter-spacing:.16em;text-transform:uppercase;color:var(--muted3);margin-bottom:clamp(20px,2.2vw,30px);}

/* ── FOOTER / METABAR ── */
.metabar{position:relative;z-index:2;display:flex;align-items:center;justify-content:space-between;gap:20px 40px;padding:26px var(--gx);font-family:var(--fm);font-size:12px;font-weight:500;letter-spacing:.04em;color:var(--muted2);background:#000000;border-top:1px solid var(--line);flex-wrap:wrap;}
.metabar b{color:var(--white);font-weight:600;}
.metabar a{transition:color .18s;}
.metabar a:hover{color:var(--white);}
.mb-r{display:flex;align-items:center;gap:38px;}
.mb-ph{color:var(--lime)!important;}
@media(max-width:940px){.metabar{padding:22px 5vw 26px;gap:12px 28px;}.mb-r{flex-wrap:wrap;gap:12px 28px;}}

/* ── shard decoration lines ── */
.shard{position:absolute;pointer-events:none;z-index:0;mix-blend-mode:screen;background-repeat:no-repeat;background-size:contain;background-position:center;}
.shard-1{background-image:url("data:image/svg+xml,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 200 420' fill='none'><path d='M104 6 L166 148 L128 414 L44 268 L82 156 Z' stroke='%23B4E90A' stroke-opacity='0.45' stroke-width='1'/><path d='M104 6 L82 156 L128 414' stroke='%23FFFFFF' stroke-opacity='0.12' stroke-width='1'/><path d='M82 156 L166 148' stroke='%23B4E90A' stroke-opacity='0.2' stroke-width='1'/></svg>");}
.shard-2{background-image:url("data:image/svg+xml,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 220 460' fill='none'><defs><radialGradient id='v' cx='50%25' cy='50%25' r='50%25'><stop offset='0' stop-color='%237C2FE0' stop-opacity='0.45'/><stop offset='1' stop-color='%237C2FE0' stop-opacity='0'/></radialGradient></defs><ellipse cx='112' cy='232' rx='70' ry='168' fill='url(%23v)'/><path d='M96 10 L188 176 L138 450 L36 300 L76 168 Z' stroke='%23B4E90A' stroke-opacity='0.36' stroke-width='1'/><path d='M76 168 L188 176' stroke='%23FFFFFF' stroke-opacity='0.1' stroke-width='1'/></svg>");}
.shard-3{background-image:url("data:image/svg+xml,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 180 400' fill='none'><path d='M88 4 L150 130 L112 396 L30 246 L70 140 Z' stroke='%23B4E90A' stroke-opacity='0.32' stroke-width='1'/><path d='M70 140 L150 130' stroke='%23FFFFFF' stroke-opacity='0.1' stroke-width='1'/><path d='M70 140 L30 246' stroke='%23FFFFFF' stroke-opacity='0.08' stroke-width='1'/></svg>");}
@media(max-width:760px){.shard{opacity:.26!important;}}

/* ── poster index numerals ── */
.sec-idx{position:absolute;top:clamp(46px,6vw,92px);right:clamp(10px,4vw,56px);font-family:var(--fd);font-weight:300;font-size:clamp(120px,18vw,270px);line-height:.76;letter-spacing:-.03em;color:transparent;-webkit-text-stroke:1px rgba(255,255,255,.07);z-index:0;pointer-events:none;user-select:none;}
@media(max-width:760px){.sec-idx{font-size:clamp(88px,24vw,150px);top:30px;opacity:.75;}}

.skip-link{position:absolute;left:-9999px;top:auto;background:var(--lime);color:#050505;padding:12px 20px;font-family:var(--fm);font-weight:700;z-index:200;}
.skip-link:focus{left:16px;top:16px;}

@media(prefers-reduced-motion:reduce){
  .reveal{transition-duration:.01ms!important;}
  *{animation-duration:.01ms!important;animation-iteration-count:1!important;}
}
