@import url(https://fonts.googleapis.com/css2?family=DM+Mono:wght@400;500&family=Inter:wght@300;400;500;600&display=swap);
@import url(https://fonts.googleapis.com/css2?family=Space+Grotesk:wght@300;400;500;600&display=swap);
html,body,#root{min-height:100%}::selection{background:#00d4ff;color:#030306}

:root{--bg:#050508;--panel:#0b0c12;--ink:#f3f5f7;--muted:#9196a5;--cyan:#00d4ff;--indigo:#6366f1;--line:rgba(255,255,255,.1);--pad:clamp(22px,5vw,76px)}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:#050508;background:var(--bg);color:#f3f5f7;color:var(--ink);font-family:Inter,Arial,sans-serif;overflow-x:hidden}button,a{font:inherit}.App{min-height:100vh}.interactive-bg{position:fixed;inset:0;z-index:0;background:radial-gradient(ellipse at 55% 35%,rgba(45,34,92,.12),transparent 55%),#050508;pointer-events:none}main{position:relative;z-index:1}.section-shell{padding:clamp(90px,12vw,190px) clamp(22px,5vw,76px);padding:clamp(90px,12vw,190px) var(--pad);max-width:1600px;margin:auto}.kicker{font:500 11px/1.5 "DM Mono",monospace;text-transform:uppercase;letter-spacing:.15em;color:#9ca2b5}
.boot{position:fixed;z-index:999;inset:0;background:#030305;display:grid;place-items:center;animation:bootAway 1.35s .1s forwards;pointer-events:none}.boot:after{content:"";position:absolute;inset:0;background:repeating-linear-gradient(0deg,transparent 0 3px,rgba(255,255,255,.025) 3px 4px)}.boot span{font:10px "DM Mono";letter-spacing:.22em;color:#00d4ff;color:var(--cyan);animation:blink .35s 2}
@keyframes bootAway{0%,66%{opacity:1}100%{opacity:0;visibility:hidden}}@keyframes blink{50%{opacity:.2}}
.nav{position:fixed;z-index:50;top:16px;left:clamp(22px,5vw,76px);left:var(--pad);right:clamp(22px,5vw,76px);right:var(--pad);height:62px;padding:8px 10px 8px 20px;display:flex;align-items:center;justify-content:space-between;border:1px solid transparent;border-radius:18px;opacity:0;transform:translateY(-18px);pointer-events:none;transition:.45s ease}.nav-visible{opacity:1;transform:none;pointer-events:auto;background:rgba(8,9,14,.7);border-color:rgba(255,255,255,.1);border-color:var(--line);-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px)}.brand{color:white;border:0;background:none;font:600 13px "DM Mono";letter-spacing:.12em;cursor:pointer}.brand span{color:#00d4ff;color:var(--cyan)}.navlinks{display:flex;align-items:center;gap:28px}.navlinks button{position:relative;border:0;background:none;color:#c6cad4;text-transform:capitalize;font-size:13px;cursor:pointer;padding:12px 2px}.navlinks i{position:absolute;bottom:3px;left:50%;width:4px;height:4px;border-radius:50%;background:#00d4ff;background:var(--cyan);opacity:0;transform:scale(0);transition:.2s}.navlinks button:hover{color:#fff}.navlinks button:hover i{opacity:1;transform:scale(1)}.menu{display:none;background:none;color:white;border:0}
.hero{height:100svh;min-height:700px;display:flex;align-items:center;padding:8vh clamp(22px,5vw,76px);padding:8vh var(--pad);position:relative}.hero:after{content:"";position:absolute;inset:auto 0 0;height:30%;background:linear-gradient(transparent,#050508);background:linear-gradient(transparent,var(--bg));pointer-events:none}.hero-copy{width:min(1100px,90%);position:relative;z-index:2}.hero h1{font-size:clamp(44px,6.4vw,96px);font-weight:300;line-height:1.02;letter-spacing:-.065em;margin:22px 0 42px;max-width:1050px}.hero h1 em{font-style:normal;color:transparent;-webkit-text-stroke:1px rgba(135,225,255,.78)}.hero-line{opacity:0;animation:heroIn .8s 1.05s cubic-bezier(.2,.8,.2,1) forwards}.hero h1{animation-delay:1.13s}.hero .pill{animation-delay:1.21s}@keyframes heroIn{from{opacity:0;transform:translateY(30px)}to{opacity:1;transform:none}}.pill{border:1px solid rgba(96,219,255,.45);background:rgba(6,12,20,.55);color:white;padding:15px 21px;border-radius:100px;cursor:pointer;box-shadow:inset 0 0 22px rgba(0,212,255,.06);transition:.25s}.pill:hover{border-color:#00d4ff;border-color:var(--cyan);box-shadow:inset 0 0 28px rgba(0,212,255,.13),0 0 24px rgba(0,212,255,.08)}.pill span{margin-left:18px;color:#00d4ff;color:var(--cyan)}.scroll-cue{position:absolute;z-index:3;bottom:36px;right:clamp(22px,5vw,76px);right:var(--pad);font:10px "DM Mono";color:#7d8291;text-transform:uppercase;letter-spacing:.12em;display:flex;gap:11px;align-items:center}.scroll-cue i{height:35px;width:1px;background:linear-gradient(#00d4ff,transparent);background:linear-gradient(var(--cyan),transparent);animation:scroll 1.8s infinite}@keyframes scroll{50%{transform:scaleY(.45);transform-origin:bottom}}
.services{min-height:100vh;display:grid;grid-template-columns:.85fr 1.15fr;grid-gap:8vw;gap:8vw;align-items:center;perspective:1200px}.services h2,.section-heading h2,.contact h2{font-size:clamp(42px,6vw,88px);font-weight:300;line-height:1;letter-spacing:-.06em;margin:20px 0}.services-copy{max-width:560px}.service-stack{display:grid;grid-gap:15px;gap:15px}.service-card{min-height:170px;padding:28px;display:grid;grid-template-columns:45px 1fr auto;grid-gap:22px;gap:22px;align-items:start;background:rgba(255,255,255,.035);border:1px solid rgba(255,255,255,.1);border:1px solid var(--line);border-radius:22px;-webkit-backdrop-filter:blur(15px);backdrop-filter:blur(15px);transform-style:preserve-3d;transition:border-color .25s,box-shadow .25s}.service-card:hover{border-color:rgba(0,212,255,.55);box-shadow:inset 0 0 30px rgba(0,212,255,.05)}.service-card>span{font:11px "DM Mono";color:#00d4ff;color:var(--cyan)}.service-card h3{font-size:clamp(23px,2.6vw,38px);font-weight:400;margin:0 0 15px;letter-spacing:-.035em}.service-card p{color:#9196a5;color:var(--muted);line-height:1.6;margin:0;max-width:480px}.service-card b{font-weight:400;color:#6e7485}
.work{padding-top:100px}.section-heading{display:grid;grid-template-columns:1fr 2fr 1fr;grid-gap:4vw;gap:4vw;align-items:end;margin-bottom:90px}.section-heading h2{margin:0}.section-heading>p:last-child{color:#9196a5;color:var(--muted);line-height:1.6;margin:0}.projects{display:grid;grid-gap:15vh;gap:15vh}.project-card{--rx:0deg;--ry:0deg;min-height:min(72vh,780px);display:grid;grid-template-columns:1.5fr 1fr;background:rgba(11,12,18,.92);border:1px solid rgba(255,255,255,.1);border:1px solid var(--line);border-radius:30px;overflow:hidden;transform:perspective(1400px) rotateX(var(--rx)) rotateY(var(--ry));transition:transform .18s,border-color .3s,box-shadow .3s}.project-card:hover{border-color:rgba(0,212,255,.28);box-shadow:0 40px 100px rgba(0,0,0,.45)}.project-visual{padding:clamp(22px,4vw,60px);background:radial-gradient(circle at 60% 20%,rgba(99,102,241,.12),transparent 45%),#08090e;display:grid;place-items:center;overflow:hidden}.ui{width:100%;aspect-ratio:1.4;border:1px solid rgba(255,255,255,.14);border-radius:15px;background:#0c1018;box-shadow:0 35px 80px #000;overflow:hidden;transition:transform .5s}.project-card:hover .ui{transform:scale(1.02)}.ui-bar{height:36px;border-bottom:1px solid #202733;display:flex;align-items:center;gap:6px;padding:0 12px}.ui-bar i{width:5px;height:5px;border-radius:50%;background:#38404e}.ui-bar i:first-child{background:#00d4ff;background:var(--cyan)}.ui-bar span{margin-left:auto;font:7px "DM Mono";color:#566071}.ui-layout{display:grid;grid-template-columns:50px 1fr;height:calc(100% - 36px)}.ui aside{border-right:1px solid #202733;padding:16px;display:grid;align-content:start;grid-gap:17px;gap:17px}.ui aside i{width:16px;height:3px;border-radius:2px;background:#343e4d}.ui aside i:first-child{background:#00d4ff;background:var(--cyan)}.ui-main{padding:6%;display:flex;flex-direction:column}.ui-title{width:28%;height:8px;background:#d8e4ef;border-radius:2px;margin-bottom:5%}.ui-metrics{display:grid;grid-template-columns:repeat(3,1fr);grid-gap:3%;gap:3%}.ui-metrics i{height:46px;border:1px solid #252e3d;border-radius:5px;background:linear-gradient(120deg,rgba(0,212,255,.08),transparent)}.ui-content{flex:1 1;margin-top:4%;border:1px solid #202938;border-radius:5px;position:relative;overflow:hidden}.chart{height:100%;display:flex;gap:4%;align-items:end;padding:8%}.chart i{flex:1 1;background:linear-gradient(#00d4ff,#6366f1);background:linear-gradient(var(--cyan),var(--indigo));border-radius:2px 2px 0 0}.tables{display:grid;grid-template-columns:repeat(3,1fr);grid-gap:8%;gap:8%;padding:7%;height:100%}.tables b{display:grid;place-items:center;border:1px solid #2c394b;border-radius:7px;color:#67758a;font:8px "DM Mono"}.tables b:nth-child(2),.tables b:nth-child(5){border-color:#00d4ff;border-color:var(--cyan);color:#00d4ff;color:var(--cyan);box-shadow:inset 0 0 15px rgba(0,212,255,.1)}.map-lines{position:absolute;inset:0;background:linear-gradient(25deg,transparent 48%,rgba(0,212,255,.6) 49% 50%,transparent 51%),linear-gradient(-15deg,transparent 45%,rgba(99,102,241,.55) 46% 47%,transparent 48%),repeating-linear-gradient(35deg,transparent 0 25px,#171e29 26px 27px)}.project-info{padding:clamp(35px,5vw,75px);display:flex;flex-direction:column;justify-content:center}.project-info h3{font-size:clamp(38px,4.3vw,66px);font-weight:300;letter-spacing:-.055em;line-height:.95;margin:22px 0}.project-info>p:not(.kicker){color:#a4a9b6;line-height:1.7;font-size:17px}.tags{display:flex;flex-wrap:wrap;gap:8px;margin:25px 0 50px}.tags span{font:10px "DM Mono";border:1px solid #313643;border-radius:100px;padding:8px 11px;color:#aeb4c2}.project-info button{align-self:flex-start;border:0;border-bottom:1px solid #4a5262;background:none;color:#fff;padding:12px 0;cursor:pointer}.project-info button b{color:#00d4ff;color:var(--cyan);margin-left:12px}
.team{padding-top:160px}.team .section-heading{grid-template-columns:1fr 3fr}.team-grid{display:grid;grid-template-columns:repeat(4,1fr);grid-gap:14px;gap:14px}.person{border-top:1px solid rgba(255,255,255,.1);border-top:1px solid var(--line);padding-top:14px}.portrait{height:clamp(250px,28vw,440px);border-radius:18px;overflow:hidden;position:relative;background:radial-gradient(circle at 50% 30%,#283144 0,#11151f 45%,#090a0e 75%);filter:grayscale(.65);transition:.4s}.portrait:before{content:"";position:absolute;width:46%;aspect-ratio:.82;border-radius:48% 48% 42% 42%;background:linear-gradient(135deg,#8c919d,#343945 70%);left:27%;top:15%;box-shadow:0 0 0 13px #171b24}.portrait:after{content:"";position:absolute;width:85%;height:47%;border-radius:48% 48% 0 0;background:#1b202a;left:7.5%;bottom:-10%}.portrait-1:before,.portrait-3:before{border-radius:50% 50% 45% 45%;box-shadow:0 -18px 0 4px #10131a}.portrait-2{background:radial-gradient(circle at 50% 25%,#26383e,#10161c 50%,#080a0d)}.portrait span{position:absolute;z-index:2;right:16px;bottom:14px;font:11px "DM Mono";color:#00d4ff;color:var(--cyan)}.person:hover .portrait{filter:none;box-shadow:inset -2px 0 #00d4ff,0 20px 40px #000;box-shadow:inset -2px 0 var(--cyan),0 20px 40px #000}.person h3{font-size:26px;font-weight:400;letter-spacing:-.04em;margin:25px 0 2px}.person>p{color:#858b99;font-size:13px;line-height:1.5}.person .role{color:#d7d9df;margin-top:5px}.stats{display:grid;grid-template-columns:repeat(3,1fr);padding-top:80px;padding-bottom:120px}.stats div{border-left:1px solid rgba(255,255,255,.1);border-left:1px solid var(--line);padding-left:30px;display:flex;flex-direction:column}.stats strong{font-size:clamp(70px,10vw,150px);font-weight:300;letter-spacing:-.08em;background:linear-gradient(135deg,#fff 20%,#697082);-webkit-background-clip:text;color:transparent}.stats span{font:11px "DM Mono";text-transform:uppercase;letter-spacing:.12em;color:#8b91a0}
.contact{padding-top:14vh;text-align:center;max-width:none;background:linear-gradient(transparent,rgba(8,16,27,.92));min-height:80vh;display:flex;flex-direction:column;justify-content:center}.contact h2{font-size:clamp(58px,10vw,155px)}.contact>a{font-size:clamp(20px,2.5vw,36px);color:#fff;text-decoration:none}.contact>a span{display:inline-block;color:#00d4ff;color:var(--cyan);margin-left:13px;transition:.3s}.contact>a:hover span{transform:translateX(10px)}.contact footer{border-top:1px solid rgba(255,255,255,.1);border-top:1px solid var(--line);margin-top:16vh;padding-top:24px;display:grid;grid-template-columns:1fr 1fr 1fr;text-align:left;color:#727887;font:10px "DM Mono";letter-spacing:.08em}.contact footer p:last-child{text-align:right}.contact footer b{color:white}
@media(max-width:850px){.nav{left:12px;right:12px}.menu{display:block}.navlinks{display:none;position:absolute;top:70px;left:0;right:0;padding:20px;background:#0a0c12;border:1px solid rgba(255,255,255,.1);border:1px solid var(--line);border-radius:16px;flex-direction:column}.navlinks.open{display:flex}.hero{min-height:650px}.hero-copy{width:100%}.scroll-cue{display:none}.services{display:block;min-height:auto}.services-copy{margin-bottom:55px}.service-card{min-height:auto}.section-heading,.team .section-heading{grid-template-columns:1fr}.section-heading h2{margin:10px 0 20px}.project-card{grid-template-columns:1fr;min-height:auto}.project-visual{min-height:390px}.project-info{min-height:390px}.team-grid{grid-template-columns:repeat(2,1fr)}.stats{gap:45px}.stats strong{font-size:70px}}
@media(max-width:560px){.hero{align-items:flex-end;padding-bottom:105px}.hero h1{font-size:48px}.section-shell{padding-inline:20px}.services{padding-top:110px}.service-card{grid-template-columns:30px 1fr}.service-card b{display:none}.work{padding-top:80px}.projects{gap:70px}.project-visual{padding:14px;min-height:250px}.ui{aspect-ratio:1.2}.project-info{min-height:350px}.team-grid{grid-template-columns:1fr 1fr;gap:10px}.portrait{height:250px}.person h3{font-size:21px}.stats{grid-template-columns:1fr;padding-top:40px}.stats div{flex-direction:row;align-items:baseline;gap:20px}.contact footer{grid-template-columns:1fr;gap:8px;text-align:center}.contact footer p:last-child{text-align:center}}
@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important;animation-duration:.01ms!important;animation-iteration-count:1!important;transition:none!important}.boot{display:none}.hero-line{opacity:1}.interactive-bg{opacity:.7}}

.brand{text-decoration:none}.navlinks a{position:relative;color:#c6cad4;text-decoration:none;font-size:13px;padding:12px 2px}.navlinks a:hover,.navlinks a.active{color:#fff}.navlinks a:hover i,.navlinks a.active i{opacity:1;transform:scale(1)}
.wrap{width:min(1500px,100%);margin:auto;padding-inline:clamp(22px,5vw,76px);padding-inline:var(--pad)}.page{position:relative;z-index:1;min-height:100vh}.inner-page{padding-top:100px;background:linear-gradient(180deg,rgba(5,5,8,.2),rgba(5,5,8,.95) 36%)}.page-intro{min-height:76vh;padding-top:clamp(90px,12vw,170px);padding-bottom:90px;display:flex;flex-direction:column;justify-content:center;border-bottom:1px solid rgba(255,255,255,.1);border-bottom:1px solid var(--line)}.display{font-size:clamp(58px,9vw,142px);font-weight:300;line-height:.87;letter-spacing:-.075em;margin:25px 0 45px}.lead{font-size:clamp(18px,2vw,27px);line-height:1.5;color:#a1a7b4;max-width:800px}.inner-section{padding-top:clamp(90px,11vw,170px);padding-bottom:clamp(90px,11vw,170px)}.inner-heading{display:grid;grid-template-columns:1fr 2fr;grid-gap:5vw;gap:5vw;margin-bottom:70px}.inner-heading h2,.inner-section>h2,.inner-cta h2{font-size:clamp(42px,6vw,86px);font-weight:300;line-height:1;letter-spacing:-.055em;margin:0}.service-list{border-top:1px solid rgba(255,255,255,.1);border-top:1px solid var(--line)}.service-row{display:grid;grid-template-columns:60px 1fr 1.1fr 25px;grid-gap:35px;gap:35px;padding:38px 15px;border-bottom:1px solid rgba(255,255,255,.1);border-bottom:1px solid var(--line);align-items:start;transition:.25s}.service-row:hover{background:rgba(0,212,255,.035);padding-left:30px}.service-row>span{font:11px "DM Mono";color:#00d4ff;color:var(--cyan)}.service-row h3{font-size:clamp(25px,3vw,43px);font-weight:300;letter-spacing:-.04em;margin:0}.service-row p{color:#969ca9;line-height:1.6;margin:0}.inner-cta{padding:120px 0;background:rgba(9,14,24,.9);border-block:1px solid rgba(255,255,255,.1);border-block:1px solid var(--line)}.inner-cta a{display:inline-block;margin-top:42px;color:white;text-decoration:none;border-bottom:1px solid #4d5668;padding:12px 0}.inner-cta a span{color:#00d4ff;color:var(--cyan);margin-left:15px}.split{display:grid;grid-template-columns:1fr 1fr;grid-gap:10vw;gap:10vw}.prose{font-size:19px;line-height:1.8;color:#a0a6b3}.values{display:grid;grid-template-columns:repeat(3,1fr);padding-bottom:140px}.values div{border-left:1px solid rgba(255,255,255,.1);border-left:1px solid var(--line);padding:28px;display:flex;flex-direction:column;gap:55px}.values strong{font:12px "DM Mono";color:#00d4ff;color:var(--cyan)}.values span{font-size:clamp(22px,2.5vw,37px);font-weight:300}
.staff-list{border-top:1px solid rgba(255,255,255,.1);border-top:1px solid var(--line)}.staff-row{width:100%;display:grid;grid-template-columns:45px 60px 1.2fr 1fr 25px;grid-gap:25px;gap:25px;align-items:center;text-align:left;padding:26px 10px;background:none;color:white;border:0;border-bottom:1px solid rgba(255,255,255,.1);border-bottom:1px solid var(--line);cursor:pointer;transition:.25s}.staff-row:hover{background:rgba(0,212,255,.04);padding-inline:22px}.staff-no{font:10px "DM Mono";color:#707888}.staff-avatar{width:48px;height:48px;display:grid;place-items:center;border-radius:50%;border:1px solid #3b5367;background:#111a24;color:#00d4ff;color:var(--cyan);font:11px "DM Mono"}.staff-row strong{display:block;font-size:clamp(20px,2.2vw,32px);font-weight:400}.staff-row small{display:block;color:#7f8795;margin-top:6px}.staff-bio{color:#969dab;line-height:1.55}.staff-row>b{color:#00d4ff;color:var(--cyan)}.portfolio{position:fixed;z-index:100;inset:0;padding:30px;background:rgba(2,3,6,.88);-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);overflow:auto}.portfolio-card{position:relative;min-height:calc(100vh - 60px);margin:auto;padding:clamp(35px,6vw,80px);border:1px solid rgba(255,255,255,.1);border:1px solid var(--line);border-radius:28px;background:#0a0c12}.close{position:absolute;right:25px;top:25px;width:45px;height:45px;border-radius:50%;border:1px solid rgba(255,255,255,.1);border:1px solid var(--line);background:#111722;color:white;font-size:25px;cursor:pointer}.staff-avatar.large{width:80px;height:80px}.portfolio-title h2{font-size:clamp(50px,8vw,110px);font-weight:300;letter-spacing:-.07em;margin:25px 0 20px}.portfolio-title>p:last-child{color:#a0a7b5;font-size:20px}.portfolio-grid{display:grid;grid-template-columns:1fr 2fr;grid-gap:7vw;gap:7vw;margin-top:90px}.timeline-item{padding:30px 0;border-top:1px solid rgba(255,255,255,.1);border-top:1px solid var(--line)}.timeline-item small{color:#00d4ff;color:var(--cyan);font:10px "DM Mono"}.timeline-item h3{font-size:27px;font-weight:400;margin:12px 0 5px}.timeline-item p{color:#9098a7;line-height:1.6}.form{display:grid;grid-gap:24px;gap:24px}.form label{display:block;font:10px "DM Mono";text-transform:uppercase;letter-spacing:.12em;color:#8e96a5}.form input,.form textarea{width:100%;padding:15px 2px;color:white;background:transparent;border:0;border-bottom:1px solid #3c4554;outline:none}.form input:focus,.form textarea:focus{border-color:#00d4ff;border-color:var(--cyan)}.form textarea{min-height:130px}.button{justify-self:start;padding:15px 22px;border:1px solid rgba(0,212,255,.5);border-radius:100px;background:rgba(0,212,255,.08);color:white;cursor:pointer}
@media(max-width:850px){.inner-heading,.split{grid-template-columns:1fr}.service-row{grid-template-columns:40px 1fr 20px}.service-row p{grid-column:2/3}.staff-row{grid-template-columns:36px 48px 1fr 20px}.staff-bio{grid-column:3/5}.portfolio-grid{grid-template-columns:1fr}.values{grid-template-columns:1fr}.page-intro{min-height:68vh}}@media(max-width:560px){.staff-row{grid-template-columns:42px 1fr 20px}.staff-no{display:none}.staff-bio{grid-column:2/4}.values{padding-inline:20px}.portfolio{padding:8px}.portfolio-card{min-height:calc(100vh - 16px)}}

.team-slider{width:100%;overflow:hidden;-webkit-mask-image:linear-gradient(90deg,transparent,#000 6%,#000 94%,transparent);mask-image:linear-gradient(90deg,transparent,#000 6%,#000 94%,transparent)}.team-track{display:flex;width:-webkit-max-content;width:max-content;gap:14px;animation:teamSlide 34s linear infinite;transform:translateX(calc(-50% - 7px))}.team-slider:hover .team-track{animation-play-state:paused}.team-track .person{width:clamp(210px,19vw,280px);flex:0 0 auto}.team-track .portrait{height:clamp(180px,18vw,265px)}.team-track .person h3{font-size:23px;margin-top:18px}@keyframes teamSlide{from{transform:translateX(calc(-50% - 7px))}to{transform:translateX(0)}}@media(prefers-reduced-motion:reduce){.team-track{animation:none;transform:none}}

/* ===== Premium 3D layer — overrides App.css ===== */
:root{--violet:#8b5cf6;--glass:rgba(14,16,26,.55);--glass-line:rgba(255,255,255,.09);--ease:cubic-bezier(.76,0,.24,1)}
body{background:#050508;font-family:"Space Grotesk",Inter,Arial,sans-serif}
html.lenis,html.lenis body{height:auto}.lenis.lenis-smooth{scroll-behavior:auto!important}
h1,h2,h3{font-family:"Space Grotesk",Inter,sans-serif}

/* 3D canvas + atmosphere */
.scene3d{position:fixed;inset:0;z-index:0;pointer-events:none}
.scene3d canvas{display:block}
.interactive-bg{display:none}
.grain{position:fixed;inset:-50%;z-index:2;pointer-events:none;opacity:.06;background-image:url("data:image/svg+xml,%3Csvg xmlns=%27http://www.w3.org/2000/svg%27 width=%27160%27 height=%27160%27%3E%3Cfilter id=%27n%27%3E%3CfeTurbulence type=%27fractalNoise%27 baseFrequency=%27.85%27 numOctaves=%273%27/%3E%3C/filter%3E%3Crect width=%27100%25%27 height=%27100%25%27 filter=%27url%28%23n%29%27/%3E%3C/svg%3E");animation:grain 1.2s steps(6) infinite}
@keyframes grain{0%{transform:translate(0)}20%{transform:translate(-4%,3%)}40%{transform:translate(3%,-5%)}60%{transform:translate(-6%,2%)}80%{transform:translate(5%,4%)}}
main{position:relative;z-index:3}
.inner-page{background:linear-gradient(180deg,transparent,rgba(5,5,8,.55) 40%,rgba(5,5,8,.75))}

/* progress + cursor */
.progress{position:fixed;z-index:60;top:0;left:0;right:0;height:2px;background:linear-gradient(90deg,var(--cyan),#8b5cf6);background:linear-gradient(90deg,var(--cyan),var(--violet));transform-origin:0 50%;transform:scaleX(0)}
.has-cursor,.has-cursor *{cursor:none!important}
.cursor-dot,.cursor-ring{position:fixed;z-index:9999;top:0;left:0;pointer-events:none;border-radius:50%}
.cursor-dot{width:6px;height:6px;margin:-3px 0 0 -3px;background:#fff;mix-blend-mode:difference}
.cursor-ring{width:38px;height:38px;margin:-19px 0 0 -19px;border:1px solid rgba(0,212,255,.6)}
.cursor-ring::after{content:"";position:absolute;inset:0;border-radius:50%;background:rgba(0,212,255,.12);transform:scale(0);transition:transform .35s cubic-bezier(.76,0,.24,1);transition:transform .35s var(--ease)}
.cursor-ring.hover::after{transform:scale(1.9)}
.cursor-ring.hover{border-color:transparent}

/* page curtain */
.curtain{position:fixed;inset:0;z-index:200;background:linear-gradient(160deg,#07080f,#0d1024 60%,#120c2a);display:grid;place-items:center;pointer-events:none}
.curtain span{font:600 14px "DM Mono",monospace;letter-spacing:.35em;color:#fff}.curtain b{color:var(--cyan);font-weight:600}
.boot{display:none}

/* nav */
.nav{opacity:1;transform:none;pointer-events:auto;top:18px;transition:background .4s,border-color .4s,top .4s,-webkit-backdrop-filter .4s;transition:background .4s,border-color .4s,top .4s,backdrop-filter .4s;transition:background .4s,border-color .4s,top .4s,backdrop-filter .4s,-webkit-backdrop-filter .4s;background:transparent;border-color:transparent}
.nav-scrolled{top:10px;background:rgba(8,9,16,.6);border-color:rgba(255,255,255,.09);border-color:var(--glass-line);-webkit-backdrop-filter:blur(22px) saturate(1.4);backdrop-filter:blur(22px) saturate(1.4)}
.brand{display:flex;align-items:center;gap:10px}
.brand-mark{width:14px;height:14px;border-radius:4px;background:conic-gradient(from 0deg,var(--cyan),#8b5cf6,var(--cyan));background:conic-gradient(from 0deg,var(--cyan),var(--violet),var(--cyan));animation:spin 6s linear infinite}
@keyframes spin{to{transform:rotate(360deg)}}
.navlinks a{overflow:hidden}
.roll{display:inline-block;position:relative;transition:transform .45s cubic-bezier(.76,0,.24,1);transition:transform .45s var(--ease)}
.roll::after{content:attr(data-text);position:absolute;left:0;top:100%;color:var(--cyan)}
.navlinks a:hover .roll{transform:translateY(-100%)}
.nav-cta{color:#fff;text-decoration:none;font-size:13px;padding:11px 18px;border-radius:100px;background:linear-gradient(120deg,rgba(0,212,255,.18),rgba(139,92,246,.18));border:1px solid rgba(0,212,255,.35);display:inline-block}
.nav-cta b{color:var(--cyan);font-weight:400;margin-left:6px}
.menu{width:44px;height:44px;position:relative}.menu i{position:absolute;left:12px;right:12px;height:1.5px;background:#fff;transition:.4s cubic-bezier(.76,0,.24,1);transition:.4s var(--ease)}.menu i:first-child{top:17px}.menu i:last-child{top:25px}
.menu.x i:first-child{top:21px;transform:rotate(45deg)}.menu.x i:last-child{top:21px;transform:rotate(-45deg)}

/* split text */
[data-split] .w{display:inline-block;overflow:hidden;vertical-align:top;perspective:600px;padding-bottom:.08em;margin-bottom:-.08em}
[data-split] .wi{display:inline-block;transform-origin:50% 100%}

/* hero */
.hero{perspective:1200px}
.hero-copy{transform-style:preserve-3d}
.hero-title{font-size:clamp(48px,8vw,138px);font-weight:300;line-height:.95;letter-spacing:-.06em;margin:26px 0 48px}
.hero-title .ln{display:block;overflow:hidden;padding-bottom:.06em}
.hero-title .ln>span{display:block;transform:translateY(110%) rotate(4deg);animation:lineUp 1.3s cubic-bezier(.76,0,.24,1) forwards;animation:lineUp 1.3s var(--ease) forwards}
.hero-title .ln:nth-child(2)>span{animation-delay:.12s}.hero-title .ln:nth-child(3)>span{animation-delay:.24s}
@keyframes lineUp{to{transform:none}}
.hero-title em{font-style:normal;background:linear-gradient(100deg,#7fe9ff,#a78bfa 50%,#7fe9ff);background-size:200%;-webkit-background-clip:text;background-clip:text;color:transparent;-webkit-text-stroke:0;animation:shine 6s linear infinite}
@keyframes shine{to{background-position:200% 0}}
.hero-line{animation-delay:.6s}
.kicker .dot{display:inline-block;width:7px;height:7px;border-radius:50%;background:#22e39a;margin-right:10px;box-shadow:0 0 0 0 rgba(34,227,154,.6);animation:pulse 2s infinite}
@keyframes pulse{70%{box-shadow:0 0 0 10px rgba(34,227,154,0)}100%{box-shadow:0 0 0 0 rgba(34,227,154,0)}}
.hero-actions{display:flex;align-items:center;gap:28px;flex-wrap:wrap}
.pill{display:inline-block;background:linear-gradient(120deg,rgba(0,212,255,.16),rgba(139,92,246,.16));-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}
.ghost-link{color:#d7dbe4;text-decoration:none;font-size:14px;border-bottom:1px solid rgba(255,255,255,.25);padding-bottom:4px;transition:color .3s,border-color .3s;display:inline-block}
.ghost-link:hover{color:var(--cyan);border-color:var(--cyan)}
.hero-meta{position:absolute;left:var(--pad);bottom:36px;display:flex;gap:28px;font:10px "DM Mono";letter-spacing:.14em;color:#6f7585}

/* marquee */
.marquee{position:relative;z-index:3;overflow:hidden;padding:34px 0;border-block:1px solid rgba(255,255,255,.09);border-block:1px solid var(--glass-line);background:rgba(5,5,8,.35);-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px)}
.marquee-row{display:flex;gap:48px;white-space:nowrap;width:-webkit-max-content;width:max-content}
.marquee-row span{font-size:clamp(34px,5vw,74px);font-weight:300;letter-spacing:-.04em;color:transparent;-webkit-text-stroke:1px rgba(255,255,255,.35);display:flex;align-items:center;gap:48px}
.marquee-row span:nth-child(3n){color:#fff;-webkit-text-stroke:0}
.marquee-row b{font-size:.4em;color:var(--cyan);-webkit-text-stroke:0}

/* services: sticky 3D stack */
.services{align-items:start;perspective:none}
.services-copy{position:-webkit-sticky;position:sticky;top:140px}
.services-copy .lead{font-size:18px;margin:10px 0 30px}
.service-stack{display:block;perspective:1400px}
.stack-card{position:-webkit-sticky;position:sticky;top:var(--top);margin-bottom:42vh;transform-origin:50% 0;will-change:transform}
.stack-card:last-child{margin-bottom:10vh}
.stack-inner{position:relative;overflow:hidden;min-height:320px;padding:42px;display:grid;grid-template-columns:60px 1fr;grid-gap:26px;gap:26px;border-radius:28px;background:linear-gradient(150deg,rgba(22,26,44,.85),rgba(10,11,18,.92));border:1px solid rgba(255,255,255,.09);border:1px solid var(--glass-line);box-shadow:0 40px 90px -30px rgba(0,0,0,.8),inset 0 1px 0 rgba(255,255,255,.06);-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px)}
.stack-num{font:12px "DM Mono";color:var(--cyan)}
.stack-inner h3{font-size:clamp(30px,3.4vw,52px);font-weight:400;letter-spacing:-.04em;margin:0 0 16px}
.stack-inner p{color:var(--muted);line-height:1.6;font-size:17px;max-width:440px;margin:0}
.stack-inner .tags{margin:28px 0 0}
.stack-orb{position:absolute;right:-60px;bottom:-60px;width:260px;height:260px;border-radius:50%;filter:blur(40px);opacity:.55;animation:float 8s ease-in-out infinite}
.orb-0{background:radial-gradient(circle,#00d4ff,transparent 65%)}.orb-1{background:radial-gradient(circle,#8b5cf6,transparent 65%)}
.orb-2{background:radial-gradient(circle,#22e39a,transparent 65%)}.orb-3{background:radial-gradient(circle,#f472b6,transparent 65%)}
@keyframes float{50%{transform:translate(-30px,-20px) scale(1.15)}}

/* work: horizontal 3D rail */
.work{padding:0}
.work-pin{min-height:100vh;display:flex;flex-direction:column;justify-content:center;overflow:hidden;padding-bottom:40px}
.work-head{padding-bottom:0;margin-bottom:50px;padding-top:110px}
.projects{display:flex;gap:4vw;padding-inline:var(--pad);width:-webkit-max-content;width:max-content;perspective:1600px}
.project-3d{width:min(78vw,1100px);flex:0 0 auto;transform-style:preserve-3d}
.project-card{position:relative;min-height:min(62vh,640px);background:linear-gradient(150deg,rgba(18,21,36,.88),rgba(8,9,14,.94));-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);transform:perspective(1400px) rotateX(var(--rx)) rotateY(var(--ry));transform-style:preserve-3d;transition:transform .5s cubic-bezier(.2,.8,.2,1),border-color .3s,box-shadow .3s}
.project-glare{position:absolute;inset:0;z-index:2;pointer-events:none;background:radial-gradient(600px circle at 50% 50%,rgba(0,212,255,.12),transparent 45%);background:radial-gradient(600px circle at var(--mx,50%) var(--my,50%),rgba(0,212,255,.12),transparent 45%);opacity:0;transition:opacity .4s}
.project-card:hover .project-glare{opacity:1}
.project-visual{transform-style:preserve-3d}
.float-layer{width:100%;transform:translateZ(60px);transition:transform .6s}
.project-card:hover .float-layer{transform:translateZ(110px) rotateX(4deg)}
.project-info{transform:translateZ(30px)}
.chart i{transform-origin:bottom;animation:grow 2.4s ease-in-out infinite alternate}
@keyframes grow{from{transform:scaleY(.55)}to{transform:scaleY(1)}}
.tables b:nth-child(2),.tables b:nth-child(5){animation:pulseT 2s infinite}
@keyframes pulseT{50%{box-shadow:inset 0 0 25px rgba(0,212,255,.35)}}

/* team / stats / contact */
.team .section-heading{grid-template-columns:1fr 2fr auto}
.person .portrait{transition:transform .6s cubic-bezier(.76,0,.24,1),filter .4s,box-shadow .4s;transition:transform .6s var(--ease),filter .4s,box-shadow .4s}
.person:hover .portrait{transform:translateY(-10px) rotateX(6deg)}
.stats div{background:rgba(10,12,20,.4);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);padding:30px;border-radius:0 20px 20px 0}
.contact{background:linear-gradient(transparent,rgba(8,12,28,.85) 40%,rgba(5,5,8,.95))}
.contact h2{background:linear-gradient(180deg,#fff,#7c86a3);-webkit-background-clip:text;background-clip:text;color:transparent}
.contact-cta{display:inline-block;align-self:center;font-size:clamp(20px,2.4vw,34px);color:#fff;text-decoration:none;padding:22px 40px;border-radius:100px;border:1px solid rgba(0,212,255,.4);background:linear-gradient(120deg,rgba(0,212,255,.14),rgba(139,92,246,.14));transition:box-shadow .4s}
.contact-cta:hover{box-shadow:0 0 60px rgba(0,212,255,.25)}
.contact-cta span{color:var(--cyan);margin-left:12px}

/* inner pages */
.page-intro{border-bottom-color:rgba(255,255,255,.09);border-bottom-color:var(--glass-line)}
.display{line-height:.92}
.service-row,.staff-row{-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}
.service-row:hover h3{color:var(--cyan);transition:color .3s}
.inner-cta{background:rgba(9,12,24,.6);-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px)}
.portfolio-card{background:rgba(10,12,20,.92)}
.form input,.form textarea{transition:border-color .3s}

@media(max-width:850px){
  .nav-cta{display:none}
  .navlinks{background:rgba(10,12,20,.95);-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px)}
  .navlinks.open a{opacity:0;animation:navIn .5s cubic-bezier(.76,0,.24,1) forwards;animation:navIn .5s var(--ease) forwards;animation-delay:calc(var(--i)*60ms)}
  .services-copy{position:static}
  .stack-card{margin-bottom:24px;position:relative;top:0}
  .stack-inner{grid-template-columns:1fr;padding:28px;min-height:auto}
  .work-pin{overflow:visible}
  .projects{flex-direction:column;width:auto;gap:40px}
  .project-3d{width:100%}
  .team .section-heading{grid-template-columns:1fr}
  .hero-meta{display:none}
}
@keyframes navIn{from{opacity:0;transform:translateY(12px)}to{opacity:1;transform:none}}
@media(prefers-reduced-motion:reduce){.hero-title .ln>span{transform:none;animation:none}.grain{animation:none}.curtain{display:none}}
.navlinks a{display:inline-block;height:1.3em;line-height:1.3em;padding:0;overflow:hidden}.navlinks a i{display:none}
.navlinks a.active .roll{color:var(--cyan)}
@media(max-width:850px){.navlinks a{height:auto;overflow:visible;padding:10px 0}.roll::after{display:none}}

/* ===== Avatar ===== */
.avatar{position:relative;overflow:hidden;background:radial-gradient(120% 90% at 30% 15%,hsl(var(--h) 90% 60% / .55),transparent 55%),radial-gradient(90% 80% at 85% 90%,hsl(calc(var(--h) + 60) 80% 55% / .45),transparent 60%),#0b0d16}
.avatar img{width:100%;height:100%;object-fit:cover;display:block}
.avatar-mesh{position:absolute;inset:0;background:repeating-linear-gradient(115deg,transparent 0 22px,rgba(255,255,255,.035) 22px 23px);-webkit-mask-image:radial-gradient(circle at 50% 40%,#000,transparent 75%);mask-image:radial-gradient(circle at 50% 40%,#000,transparent 75%);animation:meshMove 14s linear infinite}
@keyframes meshMove{to{background-position:200px 0}}
.avatar-mono{position:absolute;inset:0;display:grid;place-items:center;font:300 clamp(48px,6vw,96px)/1 "Space Grotesk",Inter,Arial,sans-serif;letter-spacing:-.06em;color:rgba(255,255,255,.92);text-shadow:0 10px 40px hsl(var(--h) 90% 50% / .6)}

/* ===== Team coverflow ===== */
.tc{outline:none;margin-top:20px}
.tc-stage{position:relative;height:clamp(380px,46vw,560px);perspective:1600px;transform-style:preserve-3d;display:flex;justify-content:center;cursor:grab;touch-action:pan-y}
.tc-stage:active{cursor:grabbing}
.tc-card{position:absolute;top:0;width:clamp(240px,26vw,360px);height:100%;border-radius:26px;overflow:hidden;border:1px solid rgba(255,255,255,.09);border:1px solid var(--glass-line);box-shadow:0 50px 90px -30px rgba(0,0,0,.9);transform-style:preserve-3d;-webkit-user-select:none;user-select:none}
.tc-card.is-active{border-color:rgba(0,212,255,.45);box-shadow:0 50px 100px -30px rgba(0,0,0,.9),0 0 60px -10px rgba(0,212,255,.35)}
.tc-photo{position:absolute;inset:0}
.tc-photo img{pointer-events:none}
.tc-shine{position:absolute;inset:0;background:linear-gradient(115deg,transparent 30%,rgba(255,255,255,.08) 45%,transparent 60%);transform:translateX(-100%);transition:transform 1s}
.tc-card.is-active .tc-shine{transform:translateX(100%)}
.tc-label{position:absolute;left:0;right:0;bottom:0;padding:70px 26px 24px;background:linear-gradient(transparent,rgba(4,5,10,.92))}
.tc-label span{font:11px "DM Mono";color:var(--cyan)}
.tc-label h3{margin:8px 0 4px;font-size:clamp(22px,2.2vw,30px);font-weight:400;letter-spacing:-.03em}
.tc-label p{margin:0;color:#a9afbd;font-size:13px}
.tc-bar{display:grid;grid-template-columns:1fr auto;grid-gap:40px;gap:40px;align-items:center;margin-top:44px;padding-top:28px;border-top:1px solid rgba(255,255,255,.09);border-top:1px solid var(--glass-line)}
.tc-info p{margin:0 0 14px;color:#b6bcc9;font-size:17px;line-height:1.6;max-width:620px}
.tc-info .tags{margin:0}
.tc-controls{display:flex;align-items:center;gap:18px}
.tc-controls button{width:52px;height:52px;border-radius:50%;border:1px solid rgba(255,255,255,.09);border:1px solid var(--glass-line);background:rgba(14,16,26,.7);color:#fff;font-size:18px;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);transition:border-color .3s,background .3s}
.tc-controls button:hover{border-color:var(--cyan);background:rgba(0,212,255,.1)}
.tc-dots{display:flex;gap:8px}
.tc-dots i{position:relative;width:22px;height:3px;border-radius:3px;background:rgba(255,255,255,.18);overflow:hidden;cursor:pointer;transition:width .4s}
.tc-dots i.on{width:46px;background:rgba(0,212,255,.25)}
.tc-dots b{position:absolute;inset:0;background:var(--cyan);transform-origin:0;animation:dotFill 4.5s linear forwards}
@keyframes dotFill{from{transform:scaleX(0)}to{transform:scaleX(1)}}
.team .section-heading{margin-bottom:40px}

/* ===== Team page grid ===== */
.team-grid2{display:grid;grid-template-columns:repeat(3,1fr);grid-gap:22px;gap:22px}
.tg-card{all:unset;box-sizing:border-box;display:block;border-radius:26px;overflow:hidden;background:linear-gradient(160deg,rgba(20,23,38,.85),rgba(9,10,16,.92));border:1px solid rgba(255,255,255,.09);border:1px solid var(--glass-line);transition:transform .25s ease-out,border-color .3s,box-shadow .3s;will-change:transform}
.tg-card:hover{border-color:rgba(0,212,255,.4);box-shadow:0 40px 80px -30px rgba(0,0,0,.9),0 0 40px -12px rgba(0,212,255,.35)}
.tg-photo{aspect-ratio:4/3.4}
.tg-photo img{transition:transform .7s cubic-bezier(.76,0,.24,1);transition:transform .7s var(--ease)}.tg-card:hover .tg-photo img{transform:scale(1.06)}
.tg-body{padding:24px 26px 28px}
.tg-no{font:11px "DM Mono";color:var(--cyan)}
.tg-body h3{font-size:28px;font-weight:400;letter-spacing:-.035em;margin:10px 0 4px;color:#fff}
.tg-role{margin:0 0 14px;color:#d4d8e1;font-size:14px}
.tg-bio{margin:0 0 22px;color:#8d94a3;line-height:1.6;font-size:14px}
.tg-more{font-size:13px;color:#fff;border-bottom:1px solid rgba(255,255,255,.25);padding-bottom:3px;transition:color .3s,border-color .3s}
.tg-card:hover .tg-more{color:var(--cyan);border-color:var(--cyan)}
.pf{perspective:1200px;max-width:1300px}
.pf-head{display:grid;grid-template-columns:260px 1fr;grid-gap:50px;gap:50px;align-items:end}
.pf-photo{aspect-ratio:1;border-radius:24px;border:1px solid rgba(255,255,255,.09);border:1px solid var(--glass-line)}
.pf-head h2{font-size:clamp(46px,7vw,96px);font-weight:300;letter-spacing:-.065em;margin:16px 0 14px;line-height:.95}
.pf-bio{color:#a6adbb;font-size:19px;line-height:1.6;margin:0 0 20px;max-width:640px}
.portfolio-grid{margin-top:70px}

/* ===== Shared glass tile ===== */
.glass-tile{position:relative;border-radius:22px;padding:30px;background:linear-gradient(160deg,rgba(20,23,38,.7),rgba(9,10,16,.8));border:1px solid rgba(255,255,255,.09);border:1px solid var(--glass-line);-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);transition:border-color .3s,transform .4s cubic-bezier(.76,0,.24,1);transition:border-color .3s,transform .4s var(--ease)}
.glass-tile:hover{border-color:rgba(0,212,255,.35);transform:translateY(-4px)}

/* ===== About ===== */
.about-stats{display:grid;grid-template-columns:repeat(4,1fr);grid-gap:18px;gap:18px}
.about-stats strong{display:block;font-size:clamp(48px,5vw,80px);font-weight:300;letter-spacing:-.06em;background:linear-gradient(135deg,#fff,#7fe9ff 60%,#a78bfa);-webkit-background-clip:text;background-clip:text;color:transparent}
.about-stats span{font:11px "DM Mono";text-transform:uppercase;letter-spacing:.12em;color:#8b91a0}
.process{display:grid;grid-template-columns:repeat(4,1fr);grid-gap:18px;gap:18px;counter-reset:s}
.process-step{min-height:280px;display:flex;flex-direction:column;overflow:hidden}
.ps-no{font:12px "DM Mono";color:var(--cyan)}
.process-step h3{font-size:32px;font-weight:400;letter-spacing:-.04em;margin:auto 0 12px}
.process-step p{color:#959cab;line-height:1.6;margin:0}
.ps-line{position:absolute;left:0;top:0;height:2px;width:100%;background:linear-gradient(90deg,var(--cyan),#8b5cf6);background:linear-gradient(90deg,var(--cyan),var(--violet));transform:scaleX(0);transform-origin:0;transition:transform .7s cubic-bezier(.76,0,.24,1);transition:transform .7s var(--ease)}
.process-step:hover .ps-line{transform:scaleX(1)}
.values2{display:grid;grid-template-columns:repeat(3,1fr);grid-gap:18px;gap:18px;padding-bottom:140px}
.value-card{padding:40px 32px;border-radius:24px;border:1px solid rgba(255,255,255,.09);border:1px solid var(--glass-line);background:radial-gradient(120% 100% at 0 0,rgba(0,212,255,.1),transparent 50%),rgba(9,10,16,.7);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px)}
.value-card strong{font:12px "DM Mono";color:var(--cyan)}
.value-card h3{font-size:clamp(24px,2.4vw,34px);font-weight:400;letter-spacing:-.035em;margin:60px 0 12px}
.value-card p{color:#929aa9;line-height:1.6;margin:0}
.inner-cta{text-align:center}.inner-cta a{border:1px solid rgba(0,212,255,.4);border-radius:100px;padding:18px 34px;background:linear-gradient(120deg,rgba(0,212,255,.12),rgba(139,92,246,.12))}

/* ===== Contact ===== */
.contact-intro{min-height:62vh}
.contact-grid{display:grid;grid-template-columns:.8fr 1.2fr;grid-gap:30px;gap:30px;align-items:start}
.contact-side{display:grid;grid-gap:16px;gap:16px;position:-webkit-sticky;position:sticky;top:120px}
.ci{display:grid;grid-gap:6px;gap:6px;text-decoration:none;color:#fff}
.ci small{font:10px "DM Mono";text-transform:uppercase;letter-spacing:.14em;color:#7d8494}
.ci strong{font-size:clamp(20px,2vw,26px);font-weight:400;letter-spacing:-.02em}
.ci>span{color:#8d94a3;font-size:14px}
a.ci>span{position:absolute;right:26px;top:26px;color:var(--cyan);font-size:20px;transition:transform .3s}
a.ci:hover>span{transform:translate(4px,-4px)}
.live{display:flex;align-items:center;gap:8px}.live i{width:8px;height:8px;border-radius:50%;background:#22e39a;animation:pulse 2s infinite}
.glass-form{padding:clamp(28px,4vw,52px);border-radius:28px;border:1px solid rgba(255,255,255,.09);border:1px solid var(--glass-line);background:linear-gradient(160deg,rgba(20,23,38,.75),rgba(9,10,16,.85));-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);gap:30px}
.form-row{display:grid;grid-template-columns:1fr 1fr;grid-gap:24px;gap:24px}
.fl{position:relative}
.fl input,.fl textarea{padding:22px 2px 10px;font-size:17px;font-family:inherit}
.fl label{position:absolute;left:2px;top:22px;pointer-events:none;transition:transform .35s cubic-bezier(.76,0,.24,1),color .3s;transition:transform .35s var(--ease),color .3s;transform-origin:0 0}
.fl input:focus+label,.fl input:not(:placeholder-shown)+label,.fl textarea:focus+label,.fl textarea:not(:placeholder-shown)+label{transform:translateY(-20px) scale(.85);color:var(--cyan)}
.fl::after{content:"";position:absolute;left:0;right:0;bottom:0;height:1px;background:linear-gradient(90deg,var(--cyan),#8b5cf6);background:linear-gradient(90deg,var(--cyan),var(--violet));transform:scaleX(0);transform-origin:0;transition:transform .5s cubic-bezier(.76,0,.24,1);transition:transform .5s var(--ease)}
.fl:focus-within::after{transform:scaleX(1)}
.send{padding:18px 34px;font-size:15px;background:linear-gradient(120deg,rgba(0,212,255,.2),rgba(139,92,246,.2))}
.send:disabled{opacity:.6}
.form-feedback{margin:0;font-size:14px}.form-feedback.sent{color:#22e39a}.form-feedback.error{color:#ff7a8a}

@media(max-width:1000px){.team-grid2{grid-template-columns:repeat(2,1fr)}.process{grid-template-columns:repeat(2,1fr)}.about-stats{grid-template-columns:repeat(2,1fr)}}
@media(max-width:850px){.tc-bar{grid-template-columns:1fr}.tc-card{width:68vw}.contact-grid{grid-template-columns:1fr}.contact-side{position:static}.values2{grid-template-columns:1fr}.pf-head{grid-template-columns:1fr}.pf-photo{width:160px}}
@media(max-width:560px){.team-grid2,.process,.form-row{grid-template-columns:1fr}.tc-controls .ghost-link{display:none}}

