@import url('https://fonts.googleapis.com/css2?family=Manrope:wght@400;500;600;700;800&family=Space+Grotesk:wght@500;600;700&display=swap');

:root{
  --bg:#07111f;
  --bg-2:#0b1728;
  --panel:rgba(16,31,52,.72);
  --panel-strong:rgba(21,39,65,.94);
  --text:#f6fbff;
  --muted:#9eb0c6;
  --line:rgba(255,255,255,.11);
  --cyan:#69e7ff;
  --blue:#6f7cff;
  --violet:#b276ff;
  --lime:#b7ff7a;
  --shadow:0 30px 80px rgba(0,0,0,.38);
  --radius:28px;
}

*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{
  margin:0;
  min-height:100vh;
  overflow-x:hidden;
  color:var(--text);
  background:
    radial-gradient(circle at 15% 15%, rgba(105,231,255,.13), transparent 26%),
    radial-gradient(circle at 85% 5%, rgba(178,118,255,.14), transparent 27%),
    linear-gradient(160deg,var(--bg),#091525 58%,#060d18);
  font-family:Manrope,system-ui,sans-serif;
}
a{color:inherit;text-decoration:none}
img{max-width:100%;display:block}
button,input,textarea,select{font:inherit}

.noise{position:fixed;inset:0;pointer-events:none;opacity:.035;z-index:100;background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 180 180' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.8' numOctaves='4' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)' opacity='.8'/%3E%3C/svg%3E")}
.container{width:min(1180px,calc(100% - 40px));margin:auto}
.section{padding:110px 0;position:relative}
.eyebrow{display:inline-flex;align-items:center;gap:10px;padding:8px 13px;border:1px solid var(--line);border-radius:999px;background:rgba(255,255,255,.045);color:var(--cyan);font-size:.78rem;font-weight:800;letter-spacing:.12em;text-transform:uppercase}
.eyebrow::before{content:"";width:7px;height:7px;border-radius:50%;background:currentColor;box-shadow:0 0 18px currentColor}
.section-title{font:700 clamp(2.25rem,5vw,5rem)/.98 Space Grotesk,sans-serif;letter-spacing:-.055em;margin:20px 0 20px;max-width:850px}
.section-copy{color:var(--muted);font-size:1.05rem;line-height:1.8;max-width:680px}
.gradient-text{background:linear-gradient(100deg,var(--cyan),#b6f3ff 35%,var(--violet) 80%);-webkit-background-clip:text;background-clip:text;color:transparent}

.site-header{position:fixed;top:0;left:0;right:0;z-index:90;padding:18px 0;transition:.3s}
.site-header.scrolled{background:rgba(5,12,23,.72);backdrop-filter:blur(18px);border-bottom:1px solid var(--line);padding:12px 0}
.nav{display:flex;align-items:center;justify-content:space-between;gap:24px}
.brand{display:flex;align-items:center;gap:12px;font:700 1rem Space Grotesk,sans-serif;letter-spacing:.02em}
.logo-mark{width:42px;height:42px;position:relative;transform-style:preserve-3d;transform:rotateX(55deg) rotateZ(45deg)}
.logo-mark span{position:absolute;inset:7px;border:1px solid rgba(255,255,255,.65);background:linear-gradient(135deg,rgba(105,231,255,.85),rgba(111,124,255,.25));box-shadow:0 0 25px rgba(105,231,255,.32)}
.logo-mark span:nth-child(2){transform:translateZ(8px);opacity:.8}
.logo-mark span:nth-child(3){transform:translateZ(16px);opacity:.55}
.nav-links{display:flex;align-items:center;gap:28px;color:#c3d0df;font-size:.92rem;font-weight:700}
.nav-links a{position:relative}
.nav-links a::after{content:"";position:absolute;left:0;right:100%;bottom:-7px;height:2px;background:linear-gradient(90deg,var(--cyan),var(--violet));transition:.25s}
.nav-links a:hover::after,.nav-links a.active::after{right:0}
.nav-cta,.btn{display:inline-flex;align-items:center;justify-content:center;gap:10px;border-radius:999px;padding:14px 20px;font-weight:800;border:1px solid var(--line);transition:.25s;cursor:pointer}
.nav-cta,.btn-primary{background:linear-gradient(135deg,var(--cyan),#7b8cff 60%,var(--violet));color:#07111f;border:0;box-shadow:0 16px 45px rgba(105,231,255,.18)}
.btn:hover,.nav-cta:hover{transform:translateY(-3px);box-shadow:0 20px 50px rgba(0,0,0,.25)}
.btn-secondary{background:rgba(255,255,255,.055);backdrop-filter:blur(10px)}
.menu-btn{display:none;width:44px;height:44px;border:1px solid var(--line);border-radius:14px;background:rgba(255,255,255,.05);color:white}

.hero{min-height:100vh;padding:160px 0 100px;display:grid;align-items:center;position:relative}
.hero-grid{display:grid;grid-template-columns:1.05fr .95fr;align-items:center;gap:60px}
.hero h1{font:700 clamp(3.7rem,7vw,7.8rem)/.86 Space Grotesk,sans-serif;letter-spacing:-.075em;margin:24px 0}
.hero p{font-size:1.12rem;line-height:1.8;color:var(--muted);max-width:640px}
.hero-actions{display:flex;flex-wrap:wrap;gap:14px;margin-top:34px}
.hero-meta{display:flex;gap:34px;flex-wrap:wrap;margin-top:48px;padding-top:28px;border-top:1px solid var(--line)}
.hero-meta strong{display:block;font:700 1.65rem Space Grotesk;color:white}
.hero-meta span{font-size:.82rem;color:var(--muted)}

.scene{height:620px;perspective:1200px;position:relative;display:grid;place-items:center}
.orbit{position:absolute;border:1px solid rgba(105,231,255,.18);border-radius:50%;animation:spin 18s linear infinite}
.orbit.one{width:470px;height:470px;transform:rotateX(70deg) rotateZ(12deg)}
.orbit.two{width:360px;height:360px;transform:rotateY(68deg) rotateZ(25deg);animation-duration:14s;animation-direction:reverse;border-color:rgba(178,118,255,.22)}
.globe{width:300px;height:300px;border-radius:50%;position:relative;transform-style:preserve-3d;background:radial-gradient(circle at 35% 25%,rgba(255,255,255,.55),rgba(105,231,255,.2) 18%,rgba(111,124,255,.12) 48%,rgba(4,9,20,.5) 70%);border:1px solid rgba(255,255,255,.18);box-shadow:inset -35px -30px 80px rgba(0,0,0,.45),0 0 100px rgba(105,231,255,.18);animation:float 5s ease-in-out infinite}
.globe::before,.globe::after{content:"";position:absolute;inset:12%;border:1px solid rgba(105,231,255,.26);border-radius:50%}
.globe::before{transform:rotateX(70deg)}
.globe::after{transform:rotateY(70deg)}
.float-card{position:absolute;width:210px;padding:18px;border:1px solid var(--line);border-radius:22px;background:rgba(15,30,51,.74);backdrop-filter:blur(18px);box-shadow:var(--shadow);transform-style:preserve-3d;transition:.2s}
.float-card small{color:var(--cyan);font-weight:800;text-transform:uppercase;letter-spacing:.08em}
.float-card strong{display:block;font:700 1.6rem Space Grotesk;margin-top:7px}
.float-card p{font-size:.78rem;line-height:1.5;margin:6px 0 0}
.float-card.a{top:70px;left:10px;transform:rotateY(12deg) rotateX(7deg)}
.float-card.b{right:0;top:190px;transform:rotateY(-16deg) rotateX(5deg)}
.float-card.c{bottom:65px;left:70px;transform:rotateY(10deg) rotateX(-5deg)}

.grid-3{display:grid;grid-template-columns:repeat(3,1fr);gap:22px;margin-top:48px}
.card-3d{position:relative;min-height:330px;padding:30px;border-radius:var(--radius);background:linear-gradient(145deg,rgba(24,46,75,.76),rgba(10,20,36,.8));border:1px solid var(--line);box-shadow:var(--shadow);overflow:hidden;transform-style:preserve-3d;transition:transform .18s ease,box-shadow .25s}
.card-3d::before{content:"";position:absolute;width:180px;height:180px;border-radius:50%;right:-60px;top:-60px;background:radial-gradient(circle,var(--glow,rgba(105,231,255,.25)),transparent 67%)}
.card-3d .icon{width:60px;height:60px;border-radius:18px;display:grid;place-items:center;background:linear-gradient(145deg,rgba(255,255,255,.14),rgba(255,255,255,.035));border:1px solid var(--line);font-size:1.5rem;transform:translateZ(35px)}
.card-3d h3{font:700 1.45rem Space Grotesk;margin:45px 0 12px;transform:translateZ(28px)}
.card-3d p{color:var(--muted);line-height:1.72;transform:translateZ(20px)}
.card-3d a{display:inline-flex;margin-top:18px;color:var(--cyan);font-weight:800;transform:translateZ(24px)}
.card-3d:nth-child(2){--glow:rgba(178,118,255,.28)}
.card-3d:nth-child(3){--glow:rgba(183,255,122,.21)}

.stats-panel{display:grid;grid-template-columns:repeat(4,1fr);gap:1px;background:var(--line);border:1px solid var(--line);border-radius:26px;overflow:hidden;margin-top:60px;box-shadow:var(--shadow)}
.stat{padding:34px;background:rgba(10,21,37,.9)}
.stat strong{display:block;font:700 2.3rem Space Grotesk;color:var(--cyan)}
.stat span{color:var(--muted);font-size:.86rem}

.work-grid{display:grid;grid-template-columns:1.15fr .85fr;gap:24px;margin-top:48px}
.work-card{min-height:430px;border:1px solid var(--line);border-radius:30px;position:relative;overflow:hidden;background:linear-gradient(145deg,#122848,#0a1424);box-shadow:var(--shadow);padding:34px;display:flex;flex-direction:column;justify-content:flex-end}
.work-card.small{min-height:430px}
.work-visual{position:absolute;inset:0;perspective:900px;overflow:hidden}
.mock-window{position:absolute;width:72%;height:61%;right:-4%;top:8%;border-radius:22px;background:linear-gradient(145deg,rgba(255,255,255,.13),rgba(255,255,255,.03));border:1px solid rgba(255,255,255,.14);transform:rotateY(-18deg) rotateX(8deg) rotateZ(-3deg);box-shadow:0 35px 70px rgba(0,0,0,.38);padding:16px}
.mock-window::before{content:"";display:block;width:38%;height:8px;border-radius:5px;background:linear-gradient(90deg,var(--cyan),var(--violet));box-shadow:0 25px 0 rgba(255,255,255,.13),0 50px 0 rgba(255,255,255,.08),0 75px 0 rgba(255,255,255,.08)}
.work-card h3,.work-card p,.work-card .tag{position:relative;z-index:2}
.tag{align-self:flex-start;padding:7px 11px;border:1px solid var(--line);border-radius:999px;font-size:.75rem;color:var(--cyan);font-weight:800;background:rgba(5,12,23,.5)}
.work-card h3{font:700 2rem Space Grotesk;margin:13px 0 8px}
.work-card p{color:var(--muted);max-width:500px}

.split{display:grid;grid-template-columns:1fr 1fr;gap:70px;align-items:center}
.depth-stack{height:520px;position:relative;perspective:1100px}
.layer{position:absolute;inset:70px 25px;border-radius:34px;border:1px solid var(--line);background:linear-gradient(145deg,rgba(105,231,255,.24),rgba(111,124,255,.08));box-shadow:var(--shadow);transform-style:preserve-3d}
.layer:nth-child(1){transform:rotateY(18deg) rotateX(10deg) translateZ(-60px);opacity:.4}
.layer:nth-child(2){transform:rotateY(12deg) rotateX(7deg) translateZ(0);inset:50px 45px;opacity:.65}
.layer:nth-child(3){transform:rotateY(7deg) rotateX(4deg) translateZ(60px);inset:30px 65px;background:linear-gradient(155deg,rgba(21,42,70,.95),rgba(10,19,34,.95));padding:34px;display:flex;flex-direction:column;justify-content:space-between}
.chart{height:190px;display:flex;align-items:flex-end;gap:12px}
.chart i{flex:1;border-radius:10px 10px 3px 3px;background:linear-gradient(var(--cyan),var(--blue));height:var(--h);box-shadow:0 0 20px rgba(105,231,255,.15)}

.page-hero{padding:190px 0 90px;position:relative}
.page-hero h1{font:700 clamp(3.2rem,7vw,6.7rem)/.92 Space Grotesk;letter-spacing:-.065em;margin:20px 0}
.breadcrumb{color:var(--muted);font-size:.88rem}
.breadcrumb a{color:var(--cyan)}
.content-grid{display:grid;grid-template-columns:.8fr 1.2fr;gap:80px}
.list{display:grid;gap:14px;margin-top:28px}
.list div{display:flex;gap:12px;align-items:flex-start;color:#d8e2ee}
.list div::before{content:"✦";color:var(--cyan)}

.team-grid,.service-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:22px;margin-top:46px}
.team-card{padding:28px;border:1px solid var(--line);border-radius:25px;background:rgba(255,255,255,.04)}
.avatar{aspect-ratio:1;border-radius:22px;background:radial-gradient(circle at 35% 30%,rgba(255,255,255,.42),transparent 16%),linear-gradient(145deg,rgba(105,231,255,.42),rgba(178,118,255,.13));position:relative;overflow:hidden;margin-bottom:22px}
.avatar::before{content:"";position:absolute;width:46%;height:46%;border-radius:50%;left:27%;top:16%;background:rgba(5,12,23,.56)}
.avatar::after{content:"";position:absolute;width:72%;height:48%;border-radius:50% 50% 12% 12%;left:14%;bottom:-10%;background:rgba(5,12,23,.56)}
.team-card h3{margin:0 0 6px;font:700 1.25rem Space Grotesk}
.team-card span{color:var(--cyan);font-size:.86rem}

.process{counter-reset:step;display:grid;gap:16px;margin-top:40px}
.process-item{counter-increment:step;display:grid;grid-template-columns:70px 1fr;gap:20px;padding:25px;border:1px solid var(--line);border-radius:22px;background:rgba(255,255,255,.035)}
.process-item::before{content:"0" counter(step);font:700 1.35rem Space Grotesk;color:var(--cyan)}
.process-item h3{margin:0 0 6px;font:700 1.2rem Space Grotesk}
.process-item p{margin:0;color:var(--muted);line-height:1.65}

.contact-layout{display:grid;grid-template-columns:.85fr 1.15fr;gap:36px;margin-top:48px}
.contact-card,.form-card{border:1px solid var(--line);border-radius:30px;background:rgba(14,29,49,.68);backdrop-filter:blur(14px);padding:36px;box-shadow:var(--shadow)}
.contact-item{padding:22px 0;border-bottom:1px solid var(--line)}
.contact-item:last-child{border:0}
.contact-item small{display:block;color:var(--cyan);text-transform:uppercase;letter-spacing:.1em;font-weight:800;margin-bottom:7px}
.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:18px}
.field{display:grid;gap:8px}
.field.full{grid-column:1/-1}
.field label{font-size:.85rem;font-weight:800;color:#d9e4ef}
.field input,.field textarea,.field select{width:100%;border:1px solid var(--line);background:rgba(255,255,255,.045);color:white;padding:15px 16px;border-radius:14px;outline:none;transition:.2s}
.field input:focus,.field textarea:focus,.field select:focus{border-color:var(--cyan);box-shadow:0 0 0 4px rgba(105,231,255,.08)}
.field textarea{min-height:150px;resize:vertical}
.form-status{margin-top:16px;color:var(--lime);font-weight:700;min-height:24px}

.cta{border:1px solid var(--line);border-radius:36px;padding:70px;background:radial-gradient(circle at 80% 20%,rgba(178,118,255,.22),transparent 30%),radial-gradient(circle at 10% 70%,rgba(105,231,255,.18),transparent 28%),rgba(13,27,46,.9);box-shadow:var(--shadow);overflow:hidden;position:relative}
.cta h2{font:700 clamp(2.4rem,5vw,5rem)/1 Space Grotesk;letter-spacing:-.055em;max-width:820px;margin:14px 0 25px}

footer{border-top:1px solid var(--line);padding:70px 0 28px;background:rgba(4,10,18,.6)}
.footer-grid{display:grid;grid-template-columns:1.5fr repeat(3,1fr);gap:45px}
.footer-brand p{color:var(--muted);line-height:1.7;max-width:390px}
footer h4{font:700 1rem Space Grotesk;margin:0 0 17px}
footer ul{list-style:none;margin:0;padding:0;display:grid;gap:11px;color:var(--muted);font-size:.9rem}
.footer-bottom{margin-top:45px;padding-top:22px;border-top:1px solid var(--line);display:flex;justify-content:space-between;gap:20px;color:#8294aa;font-size:.78rem}

.reveal{opacity:0;transform:translateY(28px);transition:.75s ease}
.reveal.visible{opacity:1;transform:none}
@keyframes spin{to{rotate:1turn}}
@keyframes float{50%{transform:translateY(-18px) rotateY(12deg)}}

@media (max-width:960px){
  .nav-links{position:fixed;top:78px;left:20px;right:20px;padding:24px;display:none;flex-direction:column;align-items:flex-start;background:rgba(8,18,31,.96);border:1px solid var(--line);border-radius:22px;backdrop-filter:blur(20px)}
  .nav-links.open{display:flex}.menu-btn{display:block}.nav .nav-cta{display:none}
  .hero-grid,.split,.content-grid,.contact-layout{grid-template-columns:1fr}
  .scene{height:540px}.grid-3,.team-grid,.service-grid{grid-template-columns:repeat(2,1fr)}
  .stats-panel{grid-template-columns:repeat(2,1fr)}
  .work-grid{grid-template-columns:1fr}.footer-grid{grid-template-columns:1fr 1fr}
}
@media (max-width:650px){
  .container{width:min(100% - 26px,1180px)}.section{padding:80px 0}.hero{padding-top:130px}.hero h1{font-size:3.35rem}
  .scene{height:440px;transform:scale(.83);margin-inline:-50px}.globe{width:250px;height:250px}.orbit.one{width:390px;height:390px}.orbit.two{width:300px;height:300px}
  .float-card{width:180px;padding:14px}.float-card.a{left:0}.float-card.b{right:0}.float-card.c{left:50px}
  .grid-3,.team-grid,.service-grid,.form-grid{grid-template-columns:1fr}.field.full{grid-column:auto}.stats-panel{grid-template-columns:1fr}
  .hero-meta{gap:22px}.cta{padding:42px 25px}.footer-grid{grid-template-columns:1fr}.footer-bottom{flex-direction:column}.page-hero{padding-top:150px}
}
