
:root{
  --charcoal:#1F2937;
  --ai-blue:#3B82F6;
  --green:#10B981;
  --bg:#F9FAFB;
  --ink:#0b1220;
  --muted:#6B7280;
  --card:#ffffff;
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;font-family:Inter,system-ui,-apple-system,Segoe UI,Roboto,Helvetica,Arial,sans-serif;background:var(--bg);color:var(--ink)}

/* Header */
.site-header{background:#0b1220;color:#fff;position:sticky;top:0;z-index:50}
.header-inner{display:flex;align-items:center;justify-content:space-between;padding:12px 20px;gap:16px;max-width:1100px;margin:0 auto}
.brand{display:flex;align-items:center;gap:10px;text-decoration:none;color:#fff;font-weight:800}
.brand img{height:56px;width:auto} /* adjust to change logo size */
.main-nav ul{display:flex;gap:22px;list-style:none;margin:0;padding:0}
.main-nav a{color:#e5e7eb;text-decoration:none;font-weight:700;opacity:.9}
.main-nav a:hover,.main-nav a.active{opacity:1;color:#3B82F6}

/* ==== Sticky header base ==== */
:root {
  --header-h: 72px;                 /* tweak if you want taller header */
  --header-bg: #0b1324;             /* your navy */
  --header-bg-scrolled: rgba(11, 19, 36, 0.92);
}

body { margin: 0; }                 /* make sure no default margin */

.site-header {
  position: sticky;
  top: 0;                           /* stick to top */
  z-index: 1000;
  background: var(--header-bg);
  backface-visibility: hidden;
  transform: translateZ(0);         /* prevent subtle jitter on mobile */
  transition: background .2s ease, box-shadow .2s ease;
}

/* inner bar sizing stays consistent */
.site-header .nav-bar {
  height: var(--header-h);
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 1rem;
  max-width: 1200px;
  margin: 0 auto;
  padding: 0 1rem;
}

/* brand cluster */
.brand {
  display: inline-flex;
  align-items: center;
  gap: .6rem;
  text-decoration: none;
}
.brand img { width: 40px; height: 40px; }
.brand-name { font-weight: 700; color: #fff; }

/* desktop nav */
.main-nav { display: none; gap: 1.25rem; }
.main-nav a { color: #e5e7eb; text-decoration: none; font-weight: 600; }
.main-nav a:hover { color: #fff; }

/* mobile toggle button */
.nav-toggle {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 44px; height: 44px;
  border: 1px solid rgba(255,255,255,.15);
  border-radius: 10px;
  background: transparent;
  color: #fff;
}
.nav-toggle .bar {
  display: block;
  width: 18px; height: 2px;
  margin: 2px 0;
  background: currentColor;
  border-radius: 1px;
}

/* show desktop nav from md+ */
@media (min-width: 900px) {
  .main-nav { display: inline-flex; }
  .nav-toggle { display: none; }
}

/* On scroll: slight blur + shadow for depth */
html.scrolled .site-header {
  background: var(--header-bg-scrolled);
  backdrop-filter: saturate(140%) blur(8px);
  box-shadow: 0 8px 24px rgba(0,0,0,.12);
}

/* ===== Mobile drawer (overlay, not pushing layout) ===== */
.mobile-drawer[hidden] { display: none; }

.mobile-drawer {
  position: fixed;
  top: var(--header-h);
  left: 0;
  right: 0;
  height: calc(100dvh - var(--header-h));
  background: rgba(11, 19, 36, .98);
  z-index: 999;
  display: flex;
  flex-direction: column;
  padding: 1rem;
  gap: .75rem;
  overflow-y: auto;
  transform: translateY(0);       /* visible when not hidden */
}

.mobile-drawer a {
  color: #e5e7eb;
  text-decoration: none;
  font-size: 1.125rem;
  font-weight: 600;
  padding: .75rem 0;
  border-bottom: 1px solid rgba(255,255,255,.08);
}

/* optional: prevent background scroll when drawer is open */
html.drawer-open, body.drawer-open { overflow: hidden; }

/* Hero */
.hero{padding:64px 0;background:linear-gradient(180deg,#ffffff,#eef2ff)}
.hero .inner{max-width:1100px;margin:0 auto;display:grid;grid-template-columns:1.2fr .8fr;gap:24px;align-items:center;padding:0 20px}
.hero h1{font-size:clamp(32px,4vw,48px);margin:0 0 10px}
.hero p.lead{color:#374151;margin:0 0 16px}
.hero img{width:100%;border-radius:14px;border:1px solid #e5e7eb}
.cta-row{display:flex;gap:12px;flex-wrap:wrap}
.btn{display:inline-block;padding:12px 16px;border-radius:10px;font-weight:800;text-decoration:none}
.btn.primary{background:var(--ai-blue);color:#fff}
.btn.secondary{border:2px solid var(--ai-blue);color:var(--ai-blue);background:#fff}

/* Sections */
.section{padding:56px 0}
.container{max-width:1100px;margin:0 auto;padding:0 20px}
.grid-3{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}
.card{background:var(--card);border:1px solid #e5e7eb;border-radius:12px;padding:18px}
.card img{width:100%;height:auto;border-radius:10px;margin-bottom:10px}

/* Footer */
.site-footer{background:#0b1220;color:#d1d5db;margin-top:48px}
.footer-inner{max-width:1100px;margin:0 auto;padding:28px 20px;display:grid;grid-template-columns:2fr 1fr 1fr;gap:20px}
.footer-inner a{color:#e5e7eb;text-decoration:none}
.footer-inner a:hover{color:#3B82F6}
.socials{display:flex;gap:10px;flex-wrap:wrap}
.socials a{display:inline-flex;align-items:center;gap:8px;background:#111a33;border:1px solid #233056;color:#e5edff;padding:8px 12px;border-radius:999px;text-decoration:none}

/* Responsive */
@media (max-width:900px){
  .hero .inner{grid-template-columns:1fr}
  .grid-3{grid-template-columns:1fr}
  .footer-inner{grid-template-columns:1fr}
}

