
:root{
  --bg:#050505;
  --bg-soft:#0a0a0c;
  --paper:#f5f4ef;
  --text:#f4f5f7;
  --muted:#9a9da4;
  --muted2:#70757e;
  --silver:#b8bcc4;
  --blue:#1aa8ff;
  --blue2:#4f62ff;
  --cyan:#86e6ff;
  --line:rgba(255,255,255,.105);
  --line-soft:rgba(255,255,255,.055);
  --max:1280px;
  --ease:cubic-bezier(.22,1,.36,1);
  --serif:Georgia,"Times New Roman",serif;
}
*{box-sizing:border-box}
html{scroll-behavior:smooth;background:var(--bg)}
body{
  margin:0;background:var(--bg);color:var(--text);
  font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;
  line-height:1.55;overflow-x:hidden
}
body:before{
  content:"";position:fixed;inset:0;pointer-events:none;z-index:-5;
  background:
   radial-gradient(1000px 560px at 82% -5%,rgba(79,98,255,.14),transparent 70%),
   radial-gradient(760px 480px at 4% 24%,rgba(26,168,255,.065),transparent 70%)
}
body:after{
  content:"";position:fixed;inset:0;pointer-events:none;z-index:90;opacity:.12;
  background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='140' height='140' viewBox='0 0 140 140'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.86' numOctaves='4' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)' opacity='.18'/%3E%3C/svg%3E");
  mix-blend-mode:soft-light
}
a{color:inherit;text-decoration:none}
img{max-width:100%;display:block}
button,input,textarea,select{font:inherit}
.container{width:min(calc(100% - 50px),var(--max));margin:0 auto}
main{position:relative;z-index:1}
.skip{position:absolute;left:-9999px}.skip:focus{left:16px;top:16px;z-index:9999;background:#fff;color:#000;padding:10px 14px;border-radius:10px}
.header{
  position:fixed;top:0;left:0;right:0;z-index:1000;
  background:linear-gradient(180deg,rgba(5,5,5,.86),rgba(5,5,5,.52));
  backdrop-filter:blur(18px);border-bottom:1px solid transparent;transition:.35s ease
}
.header.scrolled{background:rgba(5,5,5,.92);border-color:var(--line)}
.nav{height:88px;display:flex;align-items:center;justify-content:space-between;gap:26px}
.logo{width:154px}
.navlinks{display:flex;align-items:center;gap:30px;font-size:11px;letter-spacing:.01em;color:#dfe2e7}
.navlinks a{position:relative;opacity:.72;transition:.25s}.navlinks a:hover{opacity:1}.navlinks a:after{content:"";position:absolute;left:0;right:0;bottom:-11px;height:1px;background:linear-gradient(90deg,var(--blue),var(--blue2));transform:scaleX(0);transform-origin:left;transition:.3s var(--ease)}.navlinks a:hover:after{transform:scaleX(1)}
.navcta{display:flex;align-items:center;gap:10px}
.menu{display:none;background:none;border:0;color:#fff;font-size:26px}
.btn{
  display:inline-flex;align-items:center;justify-content:center;gap:9px;
  min-height:50px;padding:12px 19px;border:1px solid var(--line);
  border-radius:999px;font-size:11px;font-weight:850;letter-spacing:.02em;
  transition:transform .35s var(--ease),box-shadow .35s var(--ease),border-color .35s ease,background .35s ease
}
.btn:hover{transform:translateY(-3px)}.btn-primary{background:linear-gradient(135deg,var(--blue),var(--blue2));border-color:transparent;box-shadow:0 18px 50px rgba(26,168,255,.15)}.btn-ghost{background:rgba(255,255,255,.025)}
.magnetic{will-change:transform}
.cursor,.cursor-ring{position:fixed;pointer-events:none;z-index:5000;transform:translate(-50%,-50%);opacity:0}.cursor{width:7px;height:7px;background:#fff;border-radius:50%;mix-blend-mode:difference}.cursor-ring{width:34px;height:34px;border:1px solid rgba(255,255,255,.5);border-radius:50%;transition:width .25s,height .25s,border-color .25s,opacity .25s}.cursor.on,.cursor-ring.on{opacity:1}.cursor-ring.hover{width:56px;height:56px;border-color:rgba(24,168,255,.8)}
.eyebrow{font-size:9px;letter-spacing:.2em;text-transform:uppercase;font-weight:900;color:#7fdfff}
.kicker{display:inline-flex;align-items:center;gap:9px;border:1px solid var(--line);padding:8px 12px;border-radius:999px;background:rgba(255,255,255,.02);font-size:9px;letter-spacing:.17em;text-transform:uppercase;color:#e1e6ec}.kicker i{width:7px;height:7px;border-radius:50%;background:var(--blue);box-shadow:0 0 18px var(--blue)}
h1{font-size:clamp(62px,8vw,120px);line-height:.87;letter-spacing:-.075em;font-weight:780;margin:25px 0 30px;max-width:1100px}
h2{font-size:clamp(42px,5.3vw,75px);line-height:.95;letter-spacing:-.06em;font-weight:770;margin:10px 0 0}
h3{line-height:1.08}
.gradient{background:linear-gradient(90deg,#fff 0,#dce7ee 34%,#86e6ff 62%,#5d71ff 100%);-webkit-background-clip:text;background-clip:text;color:transparent}
.display-serif{font-family:var(--serif);font-weight:400;font-style:italic}
.lead{font-size:18px;line-height:1.85;color:var(--muted);max-width:720px}
.actions{display:flex;gap:12px;flex-wrap:wrap;margin-top:34px}
.meta{display:flex;gap:28px;flex-wrap:wrap;margin-top:32px;color:var(--muted);font-size:10px}.meta strong{display:block;color:#fff;font-size:17px;margin-bottom:2px}
.hero{min-height:100vh;padding:160px 0 90px;display:flex;align-items:center;position:relative;overflow:hidden}
.hero-grid{display:grid;grid-template-columns:.88fr 1.12fr;gap:36px;align-items:center}
.hero-copy{position:relative;z-index:4}
.hero-stage{height:700px;position:relative;perspective:1500px}
.scene{position:absolute;inset:0;transform-style:preserve-3d;will-change:transform}
#hero3d{position:absolute;inset:0;width:100%;height:100%}
.float-label{
  position:absolute;z-index:3;padding:15px 17px;border:1px solid var(--line);
  background:rgba(5,7,10,.66);backdrop-filter:blur(14px);border-radius:18px;
  box-shadow:0 25px 70px rgba(0,0,0,.36);font-size:10px;color:#9ea9b6
}
.float-label b{display:block;color:#fff;font-size:12px;margin-bottom:3px}
.fl1{left:3%;top:17%}.fl2{right:1%;top:25%}.fl3{left:6%;bottom:16%}.fl4{right:5%;bottom:12%}
.scroll-note{position:absolute;left:50%;bottom:26px;transform:translateX(-50%);display:flex;align-items:center;gap:9px;color:#697587;font-size:9px;letter-spacing:.16em;text-transform:uppercase}.scroll-note i{width:34px;height:1px;background:linear-gradient(90deg,var(--blue),transparent)}
.marquee{border-block:1px solid var(--line);padding:17px 0;overflow:hidden}.marquee-track{display:flex;gap:40px;width:max-content;color:#6c7788;font-size:9px;letter-spacing:.16em;text-transform:uppercase;animation:marq 26s linear infinite}.marquee-track span:nth-child(4n+1){color:#9aa6b5}@keyframes marq{to{transform:translateX(-50%)}}
.section{padding:135px 0}.section-head{display:grid;grid-template-columns:1fr 430px;gap:60px;align-items:end;margin-bottom:50px}.section-head p{margin:0;color:var(--muted);font-size:15px}
.editorial{display:grid;grid-template-columns:1.1fr .9fr;gap:70px;align-items:start}.editorial-copy{padding-top:15px}.editorial-copy p{color:var(--muted);font-size:16px;max-width:670px}.editorial-kicker{font-size:12px;color:#6c7a8e;letter-spacing:.12em;text-transform:uppercase}
.service-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:14px}.service{
 min-height:355px;border:1px solid var(--line);border-radius:28px;padding:34px;position:relative;overflow:hidden;
 background:linear-gradient(145deg,rgba(255,255,255,.032),rgba(255,255,255,.008));
 transition:transform .45s var(--ease),border-color .35s ease,background .35s ease
}.service:hover{transform:translateY(-7px);border-color:rgba(24,168,255,.29);background:linear-gradient(145deg,rgba(255,255,255,.05),rgba(255,255,255,.012))}
.service:before{content:"";position:absolute;width:260px;height:260px;right:-100px;bottom:-110px;border-radius:50%;background:radial-gradient(circle,rgba(24,168,255,.15),transparent 68%);transition:.5s var(--ease)}.service:hover:before{transform:scale(1.25)}
.service .num{font-size:9px;letter-spacing:.16em;color:#667386}.service h3{font-size:31px;margin:50px 0 11px}.service p{margin:0;max-width:540px;color:var(--muted);font-size:14px}.service .link{display:inline-flex;margin-top:25px;color:#88e0ff;font-size:11px;font-weight:850}
.statement{padding:35px 0}.statement .container{border-top:1px solid var(--line);padding-top:70px}.statement p{font-size:clamp(38px,5.2vw,74px);line-height:1.02;letter-spacing:-.055em;margin:0;max-width:1100px}.statement em{font-family:var(--serif);font-weight:400;color:#d5e0e7}
.pillars{display:grid;grid-template-columns:repeat(4,1fr);border-block:1px solid var(--line)}.pillar{padding:26px 20px;border-right:1px solid var(--line)}.pillar:last-child{border-right:0}.pillar small{color:#68778a;font-size:10px}.pillar h3{font-size:19px;margin:8px 0}.pillar p{color:var(--muted);font-size:12px;margin:0}
.metric-wall{display:grid;grid-template-columns:1.2fr .8fr;gap:14px}.metric-hero{min-height:420px;padding:40px;border:1px solid var(--line);border-radius:28px;background:linear-gradient(145deg,#0c1520,#07090d);position:relative;overflow:hidden}.metric-hero:after{content:"";position:absolute;inset:auto -10% -50% auto;width:650px;height:650px;border-radius:50%;background:radial-gradient(circle,rgba(24,168,255,.14),transparent 66%)}.metric-number{font-size:clamp(90px,11vw,160px);line-height:.85;letter-spacing:-.08em;background:linear-gradient(180deg,#fff,#7adfff);-webkit-background-clip:text;background-clip:text;color:transparent}.metric-label{color:#7d8a9c;font-size:11px;letter-spacing:.13em;text-transform:uppercase}.metric-side{display:grid;gap:14px}.metric-card{padding:28px;border:1px solid var(--line);border-radius:24px;background:rgba(255,255,255,.018)}.metric-card strong{display:block;font-size:44px;letter-spacing:-.05em}.metric-card span{color:#788698;font-size:11px}
.process-grid{display:grid;grid-template-columns:1.1fr .9fr;gap:14px}.panel{padding:34px;border:1px solid var(--line);border-radius:28px;background:linear-gradient(145deg,#090d14,#05070a)}.step{display:grid;grid-template-columns:70px 1fr;gap:18px;padding:23px 0;border-top:1px solid var(--line)}.step:first-child{border-top:0}.step small{color:#657488}.step h3{margin:0 0 5px;font-size:19px}.step p{color:var(--muted);margin:0;font-size:13px}
.work-grid{display:grid;grid-template-columns:1.12fr .88fr;gap:14px}.work-card{min-height:450px;padding:34px;border:1px solid var(--line);border-radius:29px;position:relative;overflow:hidden;background:linear-gradient(145deg,#101a29,#07090d)}.work-card.small{min-height:218px}.work-stack{display:grid;gap:14px}.work-card:after{content:"";position:absolute;width:410px;height:410px;right:-150px;bottom:-160px;border-radius:50%;background:radial-gradient(circle,rgba(24,168,255,.16),transparent 68%)}.tag{display:inline-flex;padding:7px 10px;border:1px solid var(--line);border-radius:999px;color:#8bdffb;font-size:9px;letter-spacing:.12em;text-transform:uppercase}.work-card h3{font-size:31px;line-height:1.03;max-width:590px;margin:19px 0 10px}.work-card p{color:#bac6d2;max-width:560px}
.quote{max-width:1000px;margin:auto;text-align:center}.quote p{font:normal clamp(38px,5vw,66px)/1.04 var(--serif);letter-spacing:-.03em}.quote span{color:#77869a;font-size:11px}
.pagehero{padding:165px 0 90px}.pagehero h1{max-width:1020px}.feature-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px}.feature{padding:34px;border:1px solid var(--line);border-radius:25px;background:rgba(255,255,255,.018)}.feature h3{font-size:28px;margin:16px 0 10px}.feature p,.feature li{color:var(--muted)}
.casegrid{display:grid;grid-template-columns:1fr 1fr;gap:14px}.case{min-height:300px;padding:32px;border:1px solid var(--line);border-radius:25px;background:linear-gradient(145deg,rgba(50,70,110,.22),rgba(255,255,255,.015))}.case h3{font-size:29px}.case p{color:var(--muted)}
.faq{max-width:930px;margin:auto}.faq details{border-top:1px solid var(--line);padding:21px 0}.faq summary{cursor:pointer;font-weight:800}.faq p{color:var(--muted)}
.contact{display:grid;grid-template-columns:.72fr 1.28fr;gap:14px}.contact-card{padding:31px;border:1px solid var(--line);border-radius:27px;background:rgba(255,255,255,.018)}.contact-list{display:grid;gap:10px;margin-top:22px}.contact-list a{padding:14px;border:1px solid var(--line);border-radius:15px;color:#dbe4ed}form{display:grid;gap:13px}.field{display:grid;gap:6px}.field label{font-size:10px;color:#9ca9b7}input,textarea,select{width:100%;padding:13px 14px;border-radius:13px;border:1px solid var(--line);background:#06090e;color:#fff;outline:0}input:focus,textarea:focus,select:focus{border-color:rgba(24,168,255,.65);box-shadow:0 0 0 3px rgba(24,168,255,.08)}textarea{min-height:150px;resize:vertical}.note{font-size:10px;color:#6d7b8d}
.legal{max-width:900px}.legal h2{font-size:30px;margin-top:46px}.legal p{color:var(--muted)}
footer{border-top:1px solid var(--line);padding:40px 0 48px;color:#7e8a9b}.footer{display:flex;align-items:center;justify-content:space-between;gap:20px;flex-wrap:wrap}.footer img{width:138px}.footerlinks{display:flex;gap:18px;flex-wrap:wrap;font-size:11px}
.reveal{opacity:0;transform:translateY(20px);transition:opacity .8s var(--ease),transform .8s var(--ease)}.reveal.in{opacity:1;transform:none}
@media(max-width:1000px){
 .navlinks{display:none;position:absolute;top:76px;left:18px;right:18px;padding:17px;background:#080b10;border:1px solid var(--line);border-radius:18px;flex-direction:column;align-items:flex-start}.navlinks.open{display:flex}.menu{display:block}.navcta .btn{display:none}
 .hero{padding-top:130px}.hero-grid,.editorial,.metric-wall,.process-grid,.work-grid,.contact{grid-template-columns:1fr}.hero-stage{height:540px}.service-grid{grid-template-columns:1fr 1fr}.pillars{grid-template-columns:1fr 1fr}.pillar:nth-child(2){border-right:0}.pillar:nth-child(n+3){border-top:1px solid var(--line)}.section-head{grid-template-columns:1fr}.feature-grid,.casegrid{grid-template-columns:1fr}.stats{grid-template-columns:1fr 1fr}
}
@media(max-width:620px){
 .container{width:min(calc(100% - 28px),var(--max))}.nav{height:70px}.logo{width:124px}.hero{padding:122px 0 65px;min-height:auto}.hero-grid{gap:26px}.hero-stage{height:410px}h1{font-size:50px}.lead{font-size:16px}.actions .btn{width:100%}.section{padding:85px 0}.section-head{display:block}.section-head p{margin-top:15px}.service-grid,.pillars,.stats{grid-template-columns:1fr}.pillar{border-right:0;border-top:1px solid var(--line)}.pillar:first-child{border-top:0}.statement .container{padding-top:55px}.metric-number{font-size:92px}.metric-side{grid-template-columns:1fr}.cta-box{display:block}.float-label{font-size:8px;padding:10px;min-width:100px}.float-label b{font-size:10px}
}
@media(prefers-reduced-motion:reduce){
 html{scroll-behavior:auto}.reveal{opacity:1;transform:none;transition:none}.marquee-track{animation:none}
}
