:root{
  /* === THEME === */
  --primary: #4C6FFF;
  --primary-600:#3a57d5;
  --primary-700:#2e47b0;
  --accent: #12c2e9;

  --bg: #0b1020;
  --text: #0e1528;  /* slightly darker for contrast */
  --muted: #4b5563;
  --card: #ffffff;
  --border: #e7ecf3;

  /* Typography */
  --ff-display: "Plus Jakarta Sans", Inter, system-ui, -apple-system, Segoe UI, Roboto, Helvetica, Arial, sans-serif;
  --ff-body: Inter, system-ui, -apple-system, Segoe UI, Roboto, Helvetica, Arial, sans-serif;

  /* Effects */
  --shadow-1: 0 10px 28px rgba(15, 18, 31, .08);
  --shadow-2: 0 22px 48px rgba(15, 18, 31, .12);
  --ring: 0 0 0 6px rgba(76,111,255,.12);
}

*{box-sizing:border-box}
html,body{height:100%}
html{scroll-behavior:smooth;text-size-adjust:100%}
body{
  margin:0;
  font-family:var(--ff-body);
  color:var(--text);
  background:#f7f9fc;
  line-height:1.6;
  -webkit-font-smoothing:antialiased;
  -moz-osx-font-smoothing:grayscale;
}

/* Accessibility */
:focus-visible{outline:3px solid var(--primary);outline-offset:2px;box-shadow:var(--ring)}
.no-scroll{overflow:hidden}

/* Layout helpers */
.container{max-width:1240px;margin:auto;padding:0 22px}
.grid{display:grid;gap:28px}
.grid-3{grid-template-columns:repeat(3,minmax(0,1fr))}
.grid-2{grid-template-columns:repeat(2,minmax(0,1fr))}
@media (max-width:1024px){.grid-3{grid-template-columns:repeat(2,1fr)}}
@media (max-width:720px){.grid-3,.grid-2{grid-template-columns:1fr}}
/* Header */
/* Header */
header{
  position:sticky;top:0;z-index:50 !important;
  background:
    linear-gradient(180deg, rgba(13,18,36,.92), rgba(13,18,36,.78)),
    radial-gradient(80% 120% at 10% -40%, rgba(76,111,255,.16), transparent 60%);
  -webkit-backdrop-filter:saturate(170%) blur(14px);
  backdrop-filter:saturate(170%) blur(14px);
  border-bottom:1px solid rgba(255,255,255,.08);
  transition:box-shadow .25s ease, border-color .25s ease, background .25s ease;
}
header.is-scrolled{
  box-shadow:0 18px 40px rgba(7,10,20,.28);
  border-color:rgba(255,255,255,.12);
}

.nav{display:flex;align-items:center;justify-content:space-between;padding:16px 0;color:#e5e7eb}
/* Logo */
.logo img{
  width:180px;   /* adjust this value to fit your header */
  height:auto;   /* keeps aspect ratio */
  display:block;
}

/* Desktop nav */
.nav-links{display:flex;align-items:center;gap:16px;flex-wrap:wrap}
.nav-link{
  position:relative; display:inline-flex; align-items:center; gap:6px;
  color:#cbd5e1; text-decoration:none;font-size:15px;font-weight:600;
  padding:10px 10px; border-radius:12px;
  transition:color .15s ease, background .15s ease, opacity .15s ease, transform .15s ease;
}
.nav-link:hover{color:#fff; background:rgba(255,255,255,.06); transform:translateY(-1px)}
.nav-link.active{color:#fff}
.nav-link::after{
  content:""; position:absolute; left:12px; right:12px; bottom:4px; height:3px;
  border-radius:999px; background:linear-gradient(90deg, var(--primary), var(--accent));
  opacity:0; transform:translateY(6px); transition:opacity .18s ease, transform .18s ease;
}
.nav-link:hover::after, .nav-link.active::after{opacity:1; transform:translateY(0)}
.nav-link::before{
  content:""; position:absolute; inset:0; border-radius:12px; pointer-events:none;
  box-shadow:0 0 0 0 rgba(76,111,255,.0); transition:box-shadow .18s ease;
}
.nav-link:hover::before{ box-shadow:0 0 0 6px rgba(76,111,255,.08) }

/* CTA – gradient pill with glossy shine */
.cta{
  position:relative; overflow:hidden; display:inline-flex; align-items:center; gap:10px;
  color:#fff; border:0; border-radius:999px;
  padding:12px 18px; font-weight:800; letter-spacing:.2px; white-space:nowrap;
  background:linear-gradient(135deg, #4C6FFF 0%, #3a57d5 55%, #12c2e9 100%);
  box-shadow:0 12px 28px rgba(18, 41, 120, .35), inset 0 -2px 0 rgba(255,255,255,.12);
  transition:transform .12s ease, box-shadow .22s ease, filter .22s ease;
}
.cta:hover{ transform:translateY(-2px); filter:saturate(112%); box-shadow:0 18px 40px rgba(18, 41, 120, .45) }
.cta:active{ transform:translateY(0) }
.cta i{font-size:18px}

/* Subtle neon ring */
.cta--pill::before{
  content:""; position:absolute; inset:-1px; border-radius:999px; pointer-events:none;
  background:
    radial-gradient(120px 40px at -40% 0%, rgba(255,255,255,.45), transparent 60%),
    radial-gradient(120px 40px at 140% 100%, rgba(255,255,255,.28), transparent 60%);
  opacity:.6;
}

/* Glossy sweep */
.cta--shine::after{
  content:""; position:absolute; top:0; left:-140%;
  width:120%; height:100%; transform:skewX(-20deg);
  background:linear-gradient(90deg, transparent, rgba(255,255,255,.38), transparent);
  transition:transform .7s ease; pointer-events:none;
}
.cta--shine:hover::after{ transform:translateX(240%) skewX(-20deg) }

/* Mobile menu button */
.menu-toggle{
  display:none;background:transparent;border:0;color:#e5e7eb;
  font-size:24px;line-height:1;padding:8px;border-radius:12px;
  transition:background .15s ease
}
.menu-toggle:hover{background:rgba(255,255,255,.08)}

/* Mobile nav behavior */
@media (max-width:900px){
  .menu-toggle{display:inline-flex;align-items:center;justify-content:center}
  .nav-links{
    position:fixed;inset:64px 0 auto 0; /* below header */
    display:none;flex-direction:column;gap:12px;padding:18px 20px;
    background:rgba(8,12,28,.98);border-bottom:1px solid rgba(255,255,255,.08)
  }
  .nav-links.open{display:flex}
  .nav-links .nav-link{font-size:16px;padding:14px 12px;width:100%;border-radius:12px}
  .nav-links .cta{width:100%;text-align:center;padding:14px 20px}
}
@media (max-width:600px){
  .logo img{
    width:140px; /* smaller for mobile */
  }
}



/* Hero */
.hero{
  position:relative;min-height:86svh;display:grid;place-items:center;color:#fff;
  background:
    radial-gradient(60% 90% at 10% 10%,rgba(76,111,255,.35),rgba(76,111,255,0)),
    linear-gradient(62deg, rgba(16, 20, 36, 0.94), rgba(16, 20, 36, 0.78)),
    url('https://images.unsplash.com/photo-1522071820081-009f0129c71c?q=80&w=1600&auto=format&fit=crop');
  background-size:cover;background-position:center
}
.hero:after{
  content:"";position:absolute;inset:0;
  background:linear-gradient(135deg,transparent 60%,rgba(76,111,255,.85) 60.1%)
}
.hero-inner{position:relative;z-index:2;text-align:left;max-width:980px}
.eyebrow{
  font:700 12px/1 var(--ff-display);
  letter-spacing:.22em;opacity:.9;text-transform:uppercase
}
.hero h1{
  font-family:var(--ff-display);
  font-size:clamp(30px,4.6vw,56px);
  line-height:1.05;margin:14px 0 14px;letter-spacing:-.02em
}
.hero p{
  max-width:760px;opacity:.94;
  font-size:clamp(15px,1.6vw,19px)
}
.hero-actions{display:flex;gap:12px;margin-top:22px;flex-wrap:wrap}
.btn{
  display:inline-flex;gap:8px;align-items:center;padding:12px 16px;border-radius:12px;
  border:1px solid rgba(255,255,255,.22);color:#fff;text-decoration:none;
  transition:transform .12s ease, border-color .2s ease, background .2s ease
}
.btn.primary{background:var(--primary);border-color:transparent}
.btn.primary:hover{background:var(--primary-600);transform:translateY(-1px)}
.btn.ghost:hover{border-color:#fff;background:rgba(255,255,255,.06)}

/* Section base (more breathing room) */
section{padding: clamp(28px, 6vw, 120px) 0}
.scroll-margin-top,.scroll-target{scroll-margin-top:100px}
.section-eyebrow{
  color:var(--primary-700);font-weight:800;letter-spacing:.15em;font-size:12px;text-transform:uppercase
}
.section-title{
  font-family:var(--ff-display);
  font-size:clamp(26px,3.4vw,40px);
  margin:10px 0 14px;letter-spacing:-.02em
}
.section-lead{color:#475569;max-width:820px;font-size:clamp(15px,1.4vw,18px)}

/* Features (3 cols) */
.feature{
  position:relative;
  background:var(--card);
  border:1px solid var(--border);
  border-radius:18px;padding:22px;
  transition:transform .18s ease, box-shadow .18s ease, border-color .18s ease
}
.feature:before{
  content:"";position:absolute;inset:-1px;border-radius:20px;pointer-events:none;
  background:linear-gradient(135deg,rgba(76,111,255,.25),rgba(18,194,233,.18),transparent);
  mask: linear-gradient(#000,#000) content-box, linear-gradient(#000,#000);
  -webkit-mask: linear-gradient(#000,#000) content-box, linear-gradient(#000,#000);
  -webkit-mask-composite: xor; mask-composite: exclude;
  padding:1px;opacity:.0;transition:opacity .2s ease
}
.feature:hover{transform:translateY(-4px);box-shadow:var(--shadow-1);border-color:#dbe1ea}
.feature:hover:before{opacity:1}
.feature i{font-size:24px;color:var(--primary)}
.feature h4{margin:12px 0 6px;font-family:var(--ff-display);letter-spacing:-.01em}
.feature p{color:#64748b;font-size:15px}

/* Split image band */
.image-band{background:#0f172a;color:#fff}
.image-grid{display:grid;grid-template-columns:1.2fr 1fr;gap:32px;align-items:stretch}
.image-grid img{width:100%;height:100%;object-fit:cover;border-radius:18px;box-shadow:0 20px 40px rgba(0,0,0,.25)}
@media (max-width:900px){.image-grid{grid-template-columns:1fr}}

/* Service cards (2x2) */
.card{
  background:var(--card);border:1px solid var(--border);border-radius:20px;padding:24px;
  transition:transform .18s ease, box-shadow .18s ease
}
.card:hover{transform:translateY(-4px);box-shadow:var(--shadow-1)}
.card h5{margin:10px 0;font-size:18px;font-family:var(--ff-display);letter-spacing:-.01em}
.card p{color:#64748b}
.card i{color:var(--primary);font-size:42px}

/* Lists */
.list{margin:14px 0 0;padding-left:18px}
.list li{margin:8px 0}

/* KPI band */
.kpi-band{
  background:linear-gradient(180deg,#f9fbff,#f2f6ff)
}
.kpi{display:flex;align-items:center;gap:16px}
.kpi i{font-size:34px;color:var(--primary)}
.count{font-size:clamp(26px,2.6vw,34px);font-weight:800;color:var(--primary);letter-spacing:-.01em}
.muted{color:#6b7280}

/* Contact */
.contact-chips{display:flex;gap:10px;margin-top:16px;flex-wrap:wrap}
.contact-chips span{
  display:inline-flex;align-items:center;gap:6px;
  border:1px dashed rgba(148,163,184,.65);padding:9px 12px;border-radius:999px;font-size:14px
}
form.card label{display:block;margin-bottom:14px}
form.card input, form.card ,select, textarea{
  width:100%;padding:13px 14px;border-radius:12px;border:1px solid var(--border);margin-top:6px;
  font:inherit;background:#fff;transition:border-color .15s ease, box-shadow .15s ease
}
form.card input:focus, form.card textarea:focus{border-color:#cbd5e1;box-shadow:0 0 0 4px rgba(44,82,130,.08)}
form.card button.cta{width:max-content;margin-top:8px}

/* Footer */
footer{background:#0b1020;color:#cbd5e1;padding:70px 0}
footer a{color:#cbd5e1;text-decoration:none}
.subtle{color:#94a3b8}
.brand-footer{color:#fff}
.footer-bottom{
  margin-top:26px;border-top:1px solid rgba(255,255,255,.08);
  padding-top:18px;display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:10px
}

/* Motion preferences */
@media (prefers-reduced-motion: reduce){
  *{animation-duration:.001ms !important;animation-iteration-count:1 !important;transition-duration:.001ms !important;scroll-behavior:auto !important}
}
