:root {
  --bg: #07111f;
  --bg-2: #0a1627;
  --card: #0d1b2d;
  --text: #edf4fb;
  --muted: #9aaabd;
  --line: rgba(255,255,255,.10);
  --accent: #62e6c5;
  --accent-2: #7aa7ff;
  --max: 1180px;
}
* { box-sizing: border-box; }
html { scroll-behavior: smooth; }
body { margin:0; background:var(--bg); color:var(--text); font-family:Inter, sans-serif; line-height:1.6; }
a { color:inherit; text-decoration:none; }
.container { width:min(var(--max), calc(100% - 48px)); margin:auto; }
.site-header { position:fixed; z-index:20; top:0; width:100%; background:rgba(7,17,31,.76); backdrop-filter:blur(16px); border-bottom:1px solid rgba(255,255,255,.06); }
.nav { height:78px; display:flex; align-items:center; justify-content:space-between; }
.brand { display:flex; gap:11px; align-items:center; font:700 19px "Space Grotesk"; letter-spacing:.12em; }
.brand-mark { display:grid; place-items:center; width:34px; height:34px; border:1px solid var(--accent); color:var(--accent); font:700 12px Inter; letter-spacing:0; }
.brand-dot { color:var(--accent); }
.nav-links { display:flex; align-items:center; gap:34px; font-size:14px; color:#c7d1df; }
.nav-links a:hover { color:white; }
.nav-cta { border:1px solid var(--line); padding:10px 18px; border-radius:3px; }
.menu-toggle { display:none; background:none; border:0; color:white; font-size:24px; }
.hero { min-height:760px; display:flex; align-items:center; position:relative; overflow:hidden; }
.hero-grid { position:absolute; inset:0; background-image:linear-gradient(rgba(255,255,255,.035) 1px, transparent 1px),linear-gradient(90deg,rgba(255,255,255,.035) 1px,transparent 1px); background-size:72px 72px; mask-image:linear-gradient(to bottom,black,transparent 90%); }
.hero-grid:after { content:""; position:absolute; width:650px;height:650px;right:-180px;top:50px;border-radius:50%;background:radial-gradient(circle,rgba(98,230,197,.13),transparent 66%); }
.hero-inner { position:relative; padding-top:80px; }
.eyebrow,.kicker { color:var(--accent); text-transform:uppercase; font-size:11px; font-weight:700; letter-spacing:.17em; }
.eyebrow span { display:inline-block;width:7px;height:7px;background:var(--accent);margin-right:9px;border-radius:50%; }
h1,h2,h3 { font-family:"Space Grotesk",sans-serif; line-height:1.05; }
h1 { font-size:clamp(60px,9vw,112px); letter-spacing:-.065em; margin:24px 0 25px; }
h1 em,h2 em { color:var(--accent); font-style:normal; }
.hero-copy { max-width:600px; font-size:19px; color:var(--muted); }
.hero-actions { display:flex; gap:14px; margin-top:35px; }
.button { display:inline-flex; align-items:center; gap:22px; padding:14px 20px; font-size:13px; font-weight:700; border-radius:3px; transition:.2s; }
.button-primary { background:var(--accent); color:#06131d; }
.button-primary:hover { transform:translateY(-2px); box-shadow:0 10px 30px rgba(98,230,197,.15); }
.button-ghost { border:1px solid var(--line); color:#d9e2ed; }
.button-ghost:hover { border-color:rgba(255,255,255,.25); }
.hero-trust { margin-top:75px; display:flex; align-items:center; gap:13px; color:#6f8095; font-size:11px; text-transform:uppercase; letter-spacing:.08em; }
.hero-trust strong { color:#c9d3df; font-size:11px; }
.hero-trust i { opacity:.35; }
.stats { border-top:1px solid var(--line); border-bottom:1px solid var(--line); background:#091625; }
.stats-grid { display:grid; grid-template-columns:repeat(4,1fr); }
.stats-grid div { padding:28px 20px; border-right:1px solid var(--line); display:flex; flex-direction:column; gap:3px; }
.stats-grid div:first-child { padding-left:0; }
.stats-grid div:last-child { border:0; }
.stats strong { font:600 25px "Space Grotesk"; }
.stats span { color:var(--muted); font-size:12px; }
.section { padding:120px 0; }
.section-heading { display:grid; grid-template-columns:1fr .7fr; gap:80px; align-items:end; margin-bottom:55px; }
h2 { font-size:clamp(38px,5vw,62px); letter-spacing:-.045em; margin:13px 0 0; }
h2 span { color:#728197; }
.section-heading p,.lead { color:var(--muted); font-size:15px; margin:0; }
.service-grid { display:grid; grid-template-columns:repeat(3,1fr); border-top:1px solid var(--line); border-left:1px solid var(--line); }
.service-card { min-height:370px; padding:30px; border-right:1px solid var(--line); border-bottom:1px solid var(--line); position:relative; transition:.25s; }
.service-card:hover { background:var(--card); }
.service-card.featured { background:linear-gradient(145deg,rgba(98,230,197,.09),transparent 60%); }
.service-number { position:absolute; top:28px; right:30px; color:#516177; font-size:11px; }
.service-icon { font-size:28px; color:var(--accent); margin:30px 0 35px; }
.service-card h3 { font-size:24px; margin:0 0 13px; }
.service-card p { color:var(--muted); font-size:13px; min-height:84px; }
.service-card ul { padding:0; margin:20px 0 0; list-style:none; color:#c7d1df; font-size:11px; }
.service-card li { display:inline-block; margin:0 7px 7px 0; padding:5px 8px; border:1px solid var(--line); }
.expertise { background:#091625; }
.expertise-layout { display:grid; grid-template-columns:.9fr 1.1fr; gap:110px; align-items:center; }
.lead { margin-top:28px; max-width:560px; line-height:1.9; }
.platform { display:flex; gap:25px; padding:25px 0; border-bottom:1px solid var(--line); }
.platform span { color:var(--accent); font:12px "Space Grotesk"; }
.platform strong { display:block; font:600 20px "Space Grotesk"; }
.platform small { display:block; color:var(--muted); font-size:11px; margin-top:6px; }
.approach { background:var(--bg); }
.centered { text-align:center; grid-template-columns:1fr; gap:20px; max-width:750px; margin-left:auto; margin-right:auto; }
.centered p { max-width:600px; margin:auto; }
.steps { display:grid; grid-template-columns:repeat(4,1fr); border-top:1px solid var(--line); }
.step { padding:32px 28px; border-right:1px solid var(--line); }
.step:first-child { border-left:1px solid var(--line); }
.step span { color:var(--accent); font:12px "Space Grotesk"; }
.step h3 { margin:55px 0 12px; font-size:21px; }
.step p { color:var(--muted); font-size:12px; }
.cta-section { padding:20px 0 100px; }
.cta-box { border:1px solid var(--line); padding:55px 60px; display:flex; justify-content:space-between; align-items:center; background:radial-gradient(circle at 20% 20%,rgba(98,230,197,.07),transparent 40%); }
.cta-box h2 { font-size:42px; }
.cta-box p { color:var(--muted); margin:8px 0 0; }
footer { border-top:1px solid var(--line); padding:30px 0; color:#718197; font-size:11px; }
.footer-inner { display:flex; align-items:center; justify-content:space-between; gap:20px; }
.footer-brand { color:#cbd5e1; font-size:15px; }
@media(max-width:800px) {
  .container { width:min(var(--max),calc(100% - 32px)); }
  .nav-links { display:none; position:absolute; top:78px; left:0; right:0; background:#081423; padding:20px 25px; flex-direction:column; align-items:flex-start; gap:18px; border-bottom:1px solid var(--line); }
  .nav-links.open { display:flex; }
  .menu-toggle { display:block; }
  .hero { min-height:680px; }
  .hero-trust { flex-wrap:wrap; margin-top:55px; }
  .stats-grid,.service-grid,.steps { grid-template-columns:1fr 1fr; }
  .stats-grid div:nth-child(2) { border-right:0; }
  .section-heading,.expertise-layout { grid-template-columns:1fr; gap:30px; }
  .service-card { min-height:330px; }
  .expertise-layout { gap:55px; }
  .cta-box { flex-direction:column; align-items:flex-start; gap:30px; padding:40px 30px; }
}
@media(max-width:520px) {
  h1 { font-size:56px; }
  .hero-copy { font-size:16px; }
  .hero-actions { flex-direction:column; align-items:stretch; }
  .button { justify-content:space-between; }
  .stats-grid,.service-grid,.steps { grid-template-columns:1fr; }
  .stats-grid div { border-right:0; border-bottom:1px solid var(--line); padding:20px 0; }
  .service-card { min-height:0; }
  .service-card p { min-height:0; }
  .step,.step:first-child { border-left:1px solid var(--line); }
  .footer-inner { flex-direction:column; align-items:flex-start; }
}

.contact-actions { display:flex; gap:12px; flex-wrap:wrap; }
.footer-inner a { color:#9aaabd; }
.footer-inner a:hover { color:var(--accent); }
@media(max-width:520px) {
  .contact-actions { width:100%; }
  .contact-actions .button { width:100%; }
}
