:root{
  --bg: #f7fafc;
  --text:#0b1220;
  --muted:#667085;
  --primary:#22c55e;
  --primary-600:#16a34a;
  --accent:#0ea5e9;
  --card:#ffffffcc;
  --ring:#93c5fd;
}

:root.dark {
  --bg:#0f172a;
  --text:#e5e7eb;
  --muted:#9aa3af;
  --primary:#22d3ee;
  --primary-600:#06b6d4;
  --accent:#a78bfa;
  --card:#111827cc;
  --ring:#a78bfa;
}

*{ box-sizing:border-box; }
html, body { height:100%; }
body{
  font-family: 'Inter', system-ui, -apple-system, Segoe UI, Roboto, sans-serif;
  margin:0;
  background: var(--bg);
  color: var(--text);
  line-height:1.5;
}

/* Header */
.site-header{
  max-width: 1120px;
  margin: 0 auto;
  padding: 16px 20px;
  display:flex;
  align-items:center;
  justify-content:space-between;
}
.brand { display:flex; gap:10px; align-items:center; }
.logo{ width:40px; height:40px; border-radius:10px; }
.brand-name{ font-weight:800; letter-spacing:1px; }

.nav-actions{ display:flex; gap:8px; align-items:center; }

.btn-pill{
  border:1px solid #e2e8f0;
  background: transparent;
  color: var(--text);
  padding:8px 12px;
  border-radius:999px;
  cursor:pointer;
}
:root.dark .btn-pill{ border-color:#334155; }

.btn, .btn-primary, .btn-ghost{
  appearance:none;
  border:none;
  padding:12px 16px;
  border-radius:12px;
  cursor:pointer;
  font-weight:600;
}
.btn{ background:var(--accent); color:white; }
.btn:hover{ filter:brightness(0.95); }
.btn-primary{ background:var(--primary); color: #001; }
.btn-primary:hover{ background:var(--primary-600); }
.btn-ghost{ background:transparent; border:1px solid #cbd5e1; color:var(--text); }
:root.dark .btn-ghost{ border-color:#334155; }

/* Hero */
.hero{ position:relative; overflow:hidden; min-height: 100vh; }
.hero-bg .bubble{
  position:absolute; border-radius: 50%;
  filter: blur(40px); opacity:0.5; mix-blend-mode: multiply;
  animation: float 12s ease-in-out infinite;
}
.hero-bg .b1{ width: 360px; height:360px; background: radial-gradient(circle, #22d3ee, transparent 70%); top:10%; left:-80px; }
.hero-bg .b2{ width: 420px; height:420px; background: radial-gradient(circle, #a78bfa, transparent 70%); top:30%; right:-120px; animation-duration: 15s; }
.hero-bg .b3{ width: 300px; height:300px; background: radial-gradient(circle, #34d399, transparent 70%); bottom:-80px; left:20%; animation-duration: 18s; }

@keyframes float { 
  0%,100%{ transform: translateY(0px)} 
  50%{ transform: translateY(-16px)} 
}

.hero-content{
  position:relative;
  max-width:1120px;
  margin: 24px auto 0;
  padding: 40px 20px;
  display:grid;
  grid-template-columns: 1.2fr 1fr;
  gap: 24px;
}
@media (max-width: 900px){
  .hero-content{ grid-template-columns: 1fr; }
}

.glass{
  background: var(--card);
  backdrop-filter: blur(6px);
  border: 1px solid rgba(255,255,255,0.25);
  border-radius: 16px;
  box-shadow: 0 10px 30px rgba(2, 6, 23, 0.08);
}

.hero-copy{ padding: 28px; }
.hero-copy h1{ font-size: clamp(28px, 3.4vw, 48px); margin: 0 0 12px; }
.subhead{ color:var(--muted); margin: 0 0 12px; }
.benefits{ margin:12px 0 0; padding-left: 18px; }
.benefits li{ margin: 6px 0; }

/* Form */
.form-card{ padding: 28px; align-self:start; }
.form-card h2{ margin-top:0; }

.field{ display:flex; flex-direction:column; margin-bottom: 12px; }
.field-row{ display:grid; grid-template-columns: 1fr 1fr; gap: 12px; }
@media (max-width: 600px){
  .field-row{ grid-template-columns: 1fr; }
}

input[type="text"], input[type="email"]{
  background: white; color:#0b1220;
  border:1px solid #e2e8f0;
  padding: 12px 12px; border-radius: 10px;
  outline: none;
}
:root.dark input[type="text"], :root.dark input[type="email"]{ background: #0b1220; color:#f1f5f9; border-color: #334155; }
input:focus{ border-color: var(--ring); box-shadow: 0 0 0 3px color-mix(in oklab, var(--ring) 40%, transparent); }

.error{ color:#ef4444; font-size: 12px; min-height: 18px; }

.consent{ display:flex; align-items:center; gap:8px; margin: 6px 0 10px; }

.fineprint{ font-size: 12px; color: var(--muted); }

.success, .failure{
  margin-top:10px;
  padding:10px;
  border-radius:8px;
  font-weight:600;
}

.success{ background:#dcfce7; color:#065f46; }
.failure{ background:#fee2e2; color:#991b1b; }
.hidden{ display:none; }

/* Trust */
.trust{ max-width:1120px; margin: 20px auto; padding: 0 20px; }
.trust-inner{ padding: 18px 22px; text-align:center; }

/* Footer */
.site-footer{ margin-top: 32px; }
.footer-inner{ 
  max-width:1120px; 
  margin: 0 auto; 
  padding: 24px 20px;
  text-align:center; 
  color: var(--muted); 
  border-top: 1px dashed #e2e8f0; 
}
:root.dark .footer-inner{ border-top-color: #334155; }

/* REMOVE COOKIE BANNER COMPLETELY */
.cookie-banner {
  display: none !important;
}
