:root{
  --bg:#090f1f; --bg2:#0d1428; --panel:#10192d; --line:rgba(255,255,255,.08);
  --text:#f5f7fb; --muted:#8e98aa; --blue:#28b6f0; --blue2:#247df0; --max:1200px;
}
*{box-sizing:border-box;margin:0;padding:0}
html{scroll-behavior:smooth}
body{font-family:Inter,system-ui,sans-serif;background:var(--bg);color:var(--text);line-height:1.5;overflow-x:hidden}
body:before{content:"";position:fixed;inset:0;pointer-events:none;background:radial-gradient(circle at 75% 12%,rgba(38,130,255,.07),transparent 25%),radial-gradient(circle at 20% 70%,rgba(32,92,220,.04),transparent 28%);z-index:-2}
a{color:inherit;text-decoration:none}
button,input,textarea{font:inherit}
.site-header{height:76px;display:flex;align-items:center;justify-content:space-between;max-width:var(--max);margin:auto;padding:0 22px;position:relative;z-index:20}
.brand{display:flex;flex-direction:column;width:max-content;line-height:.78}
.brand-swift{font-size:7px;letter-spacing:2.8px;color:#b6becb;margin-left:3px}
.brand-name{font-size:19px;font-weight:500;letter-spacing:-.6px}
.brand-name span{color:var(--blue);font-weight:800}
.brand small{font-size:4px;letter-spacing:1.8px;color:#737d8d;text-align:right;margin-top:3px}
.nav{display:flex;gap:38px;align-items:center;font-size:11px;color:#c5cad4}
.nav a{padding:8px 0;position:relative}
.nav a.active,.nav a:hover{color:#fff}
.nav a.active:after{content:"";height:2px;width:22px;background:var(--blue);position:absolute;left:0;bottom:0}
.header-cta{border:1px solid #31516d;border-radius:7px;padding:9px 15px;font-size:10px;color:#fff}
.header-cta span{color:var(--blue)}
.menu-toggle{display:none;background:none;border:0}
.section{max-width:var(--max);margin:auto;padding:92px 22px}
.hero{min-height:560px;display:grid;grid-template-columns:1fr 1.08fr;align-items:center;padding-top:42px;padding-bottom:58px}
.eyebrow{font-size:8px;letter-spacing:1.2px;color:var(--blue);font-weight:600;margin-bottom:12px}
.hero h1{font-size:40px;line-height:1.1;letter-spacing:-1.5px;max-width:620px}
h2{font-size:29px;line-height:1.12;letter-spacing:-.8px}
h3{line-height:1.2}
em{font-style:normal;color:var(--blue)}
.hero-copy>p{font-size:11px;color:#a5adba;max-width:430px;margin:14px 0 20px}
.hero-actions{display:flex;gap:12px}
.btn,.outline-btn{display:inline-flex;align-items:center;justify-content:center;border-radius:6px;font-size:10px;padding:12px 16px;border:1px solid transparent;transition:.25s}
.btn-primary{background:#28a9dc;color:#fff}
.btn-primary:hover{transform:translateY(-2px);filter:brightness(1.08)}
.btn-secondary{background:#111d34;border-color:#2b405e}
.btn-secondary span{margin-left:12px;color:var(--blue)}
.trusted{margin-top:27px;color:#626d7d;font-size:8px}
.trusted-logos{display:flex;gap:23px;margin-top:8px;color:#a9b0ba;font-size:8px;letter-spacing:1px}
.hero-art{height:475px;position:relative;display:flex;align-items:center;justify-content:flex-end}
.hero-art>img{width:100%;height:100%;object-fit:cover;object-position:left center;mix-blend-mode:screen}
.metric{position:absolute;background:rgba(14,24,43,.92);border:1px solid rgba(44,71,105,.18);border-radius:7px;padding:12px 15px;box-shadow:0 12px 40px rgba(0,0,0,.2)}
.metric small{display:block;color:#8f98a9;font-size:7px;margin-bottom:3px}
.metric strong{font-size:16px}.metric i{font-style:normal;color:#727f92;font-size:6px;margin-left:5px;font-weight:400}
.metric-top{top:85px;right:30px}.metric-bottom{right:12px;bottom:92px}
.scroll-cue{position:absolute;bottom:4px;left:20%;font-size:7px;color:#6c7482;letter-spacing:.5px}
.scroll-cue span{display:block;width:1px;height:24px;background:#394252;margin:7px auto 0}
.services,.work,.testimonials{border-top:1px solid var(--line)}
.split{display:grid;grid-template-columns:1fr 1fr;gap:80px;align-items:end}
.split>p{font-size:10px;color:#7e8798;max-width:390px;padding-bottom:3px}
.service-grid{display:grid;grid-template-columns:repeat(5,1fr);gap:20px;margin-top:28px}
.service-card{min-height:175px;background:linear-gradient(150deg,#111b30,#10182b);border:1px solid rgba(255,255,255,.02);border-radius:8px;padding:17px 14px;transition:.3s}
.service-card:hover{transform:translateY(-5px);border-color:rgba(40,182,240,.2)}
.number{color:var(--blue);font-size:13px}
.service-card h3{font-size:11px;margin:15px 0 8px}
.service-card p{font-size:8px;line-height:1.55;color:#798496}
.service-card a{display:inline-block;margin-top:11px;color:#54c8ef;font-size:7px}
.work-top{display:flex;justify-content:space-between;align-items:end}
.work-index{font-size:7px;color:#778092;margin-bottom:9px}
.work h2{margin-top:7px}
.filters{display:flex;gap:25px;margin-bottom:4px}
.filter{background:none;border:0;color:#838c9c;cursor:pointer;font-size:12px;padding:8px 0}
.filter.active,.filter:hover{color:var(--blue)}
.portfolio-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:18px;margin-top:20px}
.project img{width:100%;aspect-ratio:1.3/1;object-fit:cover;border-radius:8px;display:block;transition:.35s}
.project:hover img{transform:translateY(-3px)}
.project h3{font-size:9px;margin-top:8px}
.project span{font-size:7px;color:#70798a}
.project.hidden{display:none}
.center{text-align:center;margin-top:28px}.outline-btn{border-color:#34445c;background:#0d1527;padding:10px 18px}
.testimonials h2{margin-bottom:26px}
.quote-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:22px}
.quote{background:#10192d;border:1px solid rgba(255,255,255,.025);border-radius:8px;padding:20px;min-height:132px}
.quote p{font-size:8px;color:#8790a0;line-height:1.5}
.quote footer{margin-top:17px;font-size:7px;color:#778194}.quote footer b{color:#e3e7ed}.quote footer span{color:var(--blue);letter-spacing:1px}
.vision{display:grid;grid-template-columns:1fr 1fr;border-top:1px solid var(--line);border-bottom:1px solid var(--line);background:#0c1426}
.vision-copy{padding:75px max(22px,calc((100vw - var(--max))/2 + 22px)) 72px max(22px,calc((100vw - var(--max))/2 + 22px))}
.vision-copy h2{font-size:27px}.vision-copy p{font-size:9px;color:#818b9d;max-width:520px;margin:14px 0 25px}
.vision-art{min-height:360px}.vision-art img{width:100%;height:100%;object-fit:cover}
.vision-points{display:flex;gap:25px}.vision-points div{display:flex;align-items:center;gap:8px;font-size:7px;color:#bbc1cb}.vision-points i{width:22px;height:22px;background:#293a50;border-radius:50%;display:block}
.contact{display:grid;grid-template-columns:.75fr 1.25fr;gap:55px;align-items:center}
.contact-copy h2{font-size:28px}.contact-copy>p{font-size:8px;color:#798497;margin-top:16px}
.contact-form{background:#0d162a;border-radius:10px;padding:21px}
.form-row{display:grid;grid-template-columns:1fr 1fr;gap:18px}
.contact-form label{display:block;position:relative;margin-bottom:13px}
.contact-form label span{position:absolute;left:13px;top:10px;font-size:8px;color:#657084;transition:.2s;pointer-events:none}
.contact-form input,.contact-form textarea{width:100%;background:#101a2f;border:1px solid rgba(255,255,255,.015);border-radius:5px;color:#fff;padding:16px 12px 7px;outline:none;font-size:9px}
.contact-form input:focus,.contact-form textarea:focus{border-color:#245f82}
.contact-form input:focus+span,.contact-form input:not(:placeholder-shown)+span{top:3px;font-size:6px;color:var(--blue)}
.message textarea{min-height:88px;resize:vertical}.submit{width:100%;border:0;cursor:pointer}.form-status{font-size:8px;color:var(--blue);text-align:center;margin-top:9px;min-height:12px}
.footer{background:#030508;display:grid;grid-template-columns:1.5fr repeat(3,1fr) 1.1fr;gap:45px;padding:48px max(22px,calc((100vw - var(--max))/2 + 22px)) 20px;color:#667083;position:relative}
.footer h4{font-size:7px;color:#fff;margin-bottom:12px;letter-spacing:.4px}.footer>a,.footer>div>a{display:block;font-size:8px;margin:7px 0}.footer-brand p{font-size:8px;line-height:1.5;max-width:210px;margin-top:13px}
.newsletter p{font-size:8px;line-height:1.5;margin-bottom:10px}.newsletter input{width:100%;background:#111a2e;border:1px solid #18243b;border-radius:5px;padding:9px;color:#fff;font-size:8px;margin-bottom:8px}.newsletter button{width:100%;background:#28a9dc;color:#fff;border:0;border-radius:5px;padding:9px;font-size:8px;cursor:pointer}
.copyright{grid-column:1/-1;border-top:1px solid rgba(255,255,255,.05);padding-top:17px;text-align:center;font-size:6px;color:#495263;margin-top:5px}
.reveal{opacity:0;transform:translateY(20px);transition:opacity .7s ease,transform .7s ease}.reveal.visible{opacity:1;transform:none}
.page-glow{position:fixed;width:400px;height:400px;right:-180px;top:100px;border-radius:50%;background:rgba(20,113,255,.06);filter:blur(70px);pointer-events:none;z-index:-1}

@media(max-width:900px){
  .nav{gap:20px}.service-grid{grid-template-columns:repeat(3,1fr)}.hero{grid-template-columns:1fr 1fr}.hero h1{font-size:33px}
  .portfolio-grid{grid-template-columns:repeat(2,1fr)}.footer{grid-template-columns:1.4fr 1fr 1fr}
  .newsletter{grid-column:2/4}.copyright{grid-column:1/-1}
}
@media(max-width:680px){
  .site-header{height:68px}.menu-toggle{display:flex;flex-direction:column;gap:4px}.menu-toggle span{display:block;width:22px;height:1px;background:#cfd5de}
  .nav{display:none;position:absolute;top:62px;left:15px;right:15px;background:#0d1527;border:1px solid var(--line);padding:15px;border-radius:8px;flex-direction:column;gap:4px;align-items:stretch}.nav.open{display:flex}.nav a{padding:10px 8px}
  .header-cta{display:none}.hero{grid-template-columns:1fr;padding-top:55px}.hero-art{height:340px;margin-top:10px}.hero h1{font-size:34px}
  .section{padding:65px 18px}.split,.contact,.vision{grid-template-columns:1fr}.split{gap:16px}.service-grid{grid-template-columns:1fr 1fr}.service-card{min-height:170px}
  .work-top{display:block}.filters{margin-top:18px;gap:17px;overflow:auto}.portfolio-grid{gap:12px}.vision-copy{padding:60px 18px}.vision-art{min-height:280px}.quote-grid{grid-template-columns:1fr}.contact-form{padding:15px}
  .form-row{grid-template-columns:1fr;gap:0}.footer{grid-template-columns:1fr 1fr;gap:30px;padding:40px 18px 18px}.footer-brand,.newsletter{grid-column:1/-1}
}
@media(max-width:420px){
  .service-grid{grid-template-columns:1fr}.portfolio-grid{grid-template-columns:1fr}.hero-art{height:285px}.trusted-logos{gap:10px;flex-wrap:wrap}.vision-points{gap:12px}
}
