:root{
  --bg-dark: oklch(0.16 0.018 255);
  --bg-dark-2: oklch(0.205 0.02 255);
  --bg-light: oklch(0.975 0.006 255);
  --card-light: oklch(1 0 0);
  --border-dark: oklch(1 0 0 / 10%);
  --border-light: oklch(0.9 0.006 255);
  --fg-dark: oklch(0.96 0.006 255);
  --fg-dark-muted: oklch(0.685 0.016 255);
  --fg-light: oklch(0.19 0.012 255);
  --fg-light-muted: oklch(0.465 0.014 255);
  --accent: oklch(0.78 0.135 195);
  --accent-strong: oklch(0.685 0.145 195);
  --accent-ink: oklch(0.55 0.13 195);
  --accent-dim: oklch(0.78 0.135 195 / 15%);
  --font-display: 'Space Grotesk', system-ui, sans-serif;
  --font-body: 'IBM Plex Sans', system-ui, sans-serif;
}
*{ box-sizing:border-box; }
html{ scroll-behavior:smooth; }
body{ margin:0; font-family:var(--font-body); background:var(--bg-dark); }
a{ color:var(--accent); text-decoration:none; }
a:hover{ color:var(--accent-strong); }
h1,h2,h3{ font-family:var(--font-display); margin:0; }
p{ margin:0; }
img{ max-width:100%; }
.container{ max-width:1160px; margin:0 auto; padding:0 40px; }
.eyebrow{ font-family:var(--font-body); font-size:12px; font-weight:600; letter-spacing:.14em; text-transform:uppercase; display:flex; align-items:center; gap:8px; margin-bottom:18px; }
.eyebrow .dot{ width:6px; height:6px; border-radius:50%; flex-shrink:0; }
.btn{ display:inline-flex; align-items:center; gap:8px; padding:14px 26px; border-radius:10px; font-family:var(--font-body); font-weight:600; font-size:15px; cursor:pointer; border:1.5px solid transparent; white-space:nowrap; }
.btn-primary{ background:var(--accent); color:oklch(0.16 0.018 255); }
.btn-primary:hover{ background:var(--accent-strong); color:oklch(0.16 0.018 255); }
.btn-outline{ background:transparent; border-color:var(--border-dark); color:var(--fg-dark); }
.btn-outline:hover{ border-color:var(--accent); color:var(--accent); }
.pill{ display:inline-flex; align-items:center; padding:7px 14px; border-radius:20px; font-size:12.5px; font-weight:500; background:var(--accent-dim); color:var(--accent); }
.navlink{ font-size:14px; font-weight:500; color:var(--fg-dark-muted); }
.navlink:hover{ color:var(--fg-dark); }
.card-dark{ background:var(--bg-dark-2); border:1px solid var(--border-dark); border-radius:16px; }
.card-light{ background:var(--card-light); border:1px solid var(--border-light); border-radius:16px; }
.icon-box{ width:40px; height:40px; border-radius:10px; background:var(--accent-dim); color:var(--accent); display:flex; align-items:center; justify-content:center; flex-shrink:0; }
.grid-2{ display:grid; grid-template-columns:repeat(2,1fr); gap:20px; }
.grid-3{ display:grid; grid-template-columns:repeat(3,1fr); gap:20px; }
.grid-4{ display:grid; grid-template-columns:repeat(4,1fr); gap:18px; }
.grid-clients{ display:grid; grid-template-columns:repeat(auto-fit, minmax(150px, 1fr)); gap:18px; }
header{ background:var(--bg-dark); border-bottom:1px solid var(--border-dark); }
.header-inner{ display:flex; align-items:center; justify-content:space-between; height:84px; gap:24px; }
.logo-mark{ width:38px; height:38px; border-radius:10px; background:var(--accent); display:flex; align-items:center; justify-content:center; flex-shrink:0; }
.logo-mark span{ font-family:var(--font-display); font-weight:700; font-size:15px; color:oklch(0.16 0.018 255); }
nav{ display:flex; align-items:center; gap:36px; }
.hero{ background:var(--bg-dark); position:relative; overflow:hidden; padding:96px 0 100px; }
.hero-grid{ display:grid; grid-template-columns:1.15fr 0.85fr; gap:40px; align-items:center; position:relative; z-index:1; }
.hero-stats{ display:flex; gap:36px; margin-top:56px; padding-top:28px; border-top:1px solid var(--border-dark); max-width:520px; }
.pillars{ background:var(--bg-light); padding:104px 0; }
.services{ background:var(--bg-dark); padding:108px 0; }
.clients{ background:var(--bg-light); padding:100px 0; }
.cta-final{ background:var(--bg-dark); padding:100px 0 0; }
footer{ margin-top:88px; border-top:1px solid var(--border-dark); padding:26px 0; }
.footer-inner{ display:flex; align-items:center; justify-content:space-between; flex-wrap:wrap; gap:12px; }
.skip-link{ position:absolute; left:-999px; top:0; background:var(--accent); color:oklch(0.16 0.018 255); padding:10px 16px; border-radius:8px; z-index:100; font-weight:600; }
.skip-link:focus{ left:16px; top:16px; }
@media (max-width:900px){
  .container{ padding:0 24px; }
  .grid-2, .grid-3, .grid-4{ grid-template-columns:1fr 1fr; }
  .grid-clients{ grid-template-columns:repeat(3, 1fr); }
  .hero-grid{ grid-template-columns:1fr; }
  .hero-visual{ display:none; }
}
@media (max-width:600px){
  .grid-2, .grid-3, .grid-4{ grid-template-columns:1fr; }
  .grid-clients{ grid-template-columns:repeat(2, 1fr); gap:12px; }
  .header-inner nav{ display:none; }
  .hero h1{ font-size:38px !important; }
}
