/* Autogenic Labs — campaign landing-page styles. Brand: brand/DESIGN.md
   Light/warm "candlelit" register. Replaces the legacy neon-dark styling.
   (Legacy k7m9q2 keeps its own inline copy, untouched.) */

:root {
  --background:#F7F3EA; --card:#FDFBF4; --foreground:#1F1C16; --muted-foreground:#5E5847;
  --wordmark:#ABA28F; --border:#E8DFCC; --secondary:#EFE9D9;
  --primary:#2F8761; --primary-foreground:#FDFBF4; --primary-700:#287153; --green-100:#D2EEDF; --green-800:#215C44;
  --cta-grad:linear-gradient(135deg,#F4DC8E,#E6C461); --cta-grad-hover:linear-gradient(135deg,#F1D578,#DCB94E); --cta-foreground:#3A2B0A;
  --radius-button:12px; --radius-card:14px; --radius-pill:999px;
  --shadow-sm:0 1px 3px rgba(31,28,22,0.08), 0 1px 2px rgba(31,28,22,0.06);
  --shadow-cta:0 1px 2px rgba(31,28,22,0.04), 0 10px 24px -10px rgba(31,28,22,0.22);
  --font:'Plus Jakarta Sans', system-ui, sans-serif;
  --mono:ui-monospace, SFMono-Regular, Menlo, monospace;
}
/* Dark register — espresso / Magician (DESIGN.md §2.2). Gold CTA unchanged across registers. */
:root[data-theme="dark"] {
  --background:#15120D; --card:#211C15; --foreground:#F2ECDE; --muted-foreground:#B3A994;
  --wordmark:#565656; --border:#322A20; --secondary:#322A20;
  --primary:#4EC486; --primary-foreground:#15120D; --primary-700:#4EC486; --green-100:#322A20; --green-800:#4EC486;
  --shadow-sm:none;
}
* { margin:0; padding:0; box-sizing:border-box; }
html { font-size:16px; }
body {
  min-height:100vh; display:flex; flex-direction:column;
  background:var(--background); color:var(--foreground); font-family:var(--font);
  font-size:1.0625rem; line-height:1.55; -webkit-font-smoothing:antialiased; -moz-osx-font-smoothing:grayscale;
}
a { color:inherit; }

.header { position:relative; padding:1.75rem 1.5rem 0; display:flex; justify-content:center; }
.wordmark { color:var(--wordmark); text-decoration:none; font-size:0.75rem; font-weight:600; letter-spacing:0.18em; text-transform:uppercase; }
.theme-toggle { position:absolute; right:1rem; top:1rem; width:44px; height:44px; display:inline-flex; align-items:center; justify-content:center; background:transparent; border:none; border-radius:var(--radius-button); color:var(--muted-foreground); cursor:pointer; transition:background 90ms, color 90ms; }
.theme-toggle:hover { background:var(--secondary); color:var(--foreground); }
.theme-toggle:focus-visible { outline:none; box-shadow:0 0 0 2px var(--background), 0 0 0 4px var(--primary); }
.theme-toggle svg { width:20px; height:20px; }
.theme-toggle .icon-sun { display:none; }
:root[data-theme="dark"] .theme-toggle .icon-sun { display:block; }
:root[data-theme="dark"] .theme-toggle .icon-moon { display:none; }

main { flex:1; width:100%; max-width:560px; margin:0 auto; padding:2.5rem 1.5rem 1rem; }

.eyebrow {
  display:inline-flex; align-items:center; gap:0.375rem; font-size:0.6875rem; font-weight:700;
  letter-spacing:0.06em; text-transform:uppercase; color:var(--green-800); background:var(--green-100);
  padding:0.25rem 0.75rem; border-radius:var(--radius-pill); margin-bottom:1.5rem;
}
.eyebrow .spark { color:var(--primary); font-size:0.8rem; }

h1 { font-size:clamp(2rem,4vw,2.875rem); font-weight:700; line-height:1.14; letter-spacing:-0.015em; margin-bottom:1rem; }
h1 em, h1 .alive { font-style:normal; font-weight:700; color:var(--primary); }

.lede { color:var(--muted-foreground); font-size:1.0625rem; line-height:1.55; margin-bottom:2rem; max-width:46ch; }

.cta {
  display:flex; align-items:center; justify-content:center; gap:0.5rem; width:100%;
  min-height:56px; background:var(--cta-grad); color:var(--cta-foreground); text-decoration:none;
  font-weight:700; font-size:1.125rem; padding:0 1.5rem; border-radius:var(--radius-button);
  transition:transform 90ms cubic-bezier(0.16,1,0.3,1), background 90ms;
}
.cta:hover { background:var(--cta-grad-hover); transform:translateY(-1px); }
.cta:active { transform:scale(0.985); }
.cta:focus-visible { outline:none; box-shadow:0 0 0 2px var(--background), 0 0 0 4px var(--primary); }
.cta .chev { font-weight:700; }
.cta-hint { font-size:0.8125rem; color:var(--muted-foreground); margin:0.75rem 0 2rem; }

.code-card { background:var(--card); border:1px solid var(--border); border-radius:var(--radius-card); padding:1.25rem 1.5rem; margin-bottom:2rem; box-shadow:var(--shadow-sm); }
.code-row { display:flex; align-items:center; justify-content:space-between; gap:1rem; }
.code-row + .code-row { margin-top:0.875rem; padding-top:0.875rem; border-top:1px solid var(--border); }
.code-label { font-size:0.6875rem; font-weight:700; letter-spacing:0.06em; text-transform:uppercase; color:var(--muted-foreground); display:flex; align-items:center; gap:0.5rem; }
.trial { font-size:0.625rem; font-weight:700; letter-spacing:0.04em; color:var(--primary-foreground); background:var(--primary); padding:0.125rem 0.4rem; border-radius:6px; text-transform:uppercase; }
.code-val { font-size:1rem; font-weight:600; color:var(--foreground); }
.code-val a { text-decoration:none; }
.code { font-family:var(--mono); background:var(--secondary); color:var(--foreground); padding:0.25rem 0.625rem; border-radius:6px; font-size:0.8125rem; font-weight:600; letter-spacing:0.04em; }
.code-row[hidden] { display:none; }

.problem { font-size:1.1875rem; line-height:1.55; color:var(--foreground); border-left:2px solid var(--border); padding-left:1.125rem; margin-bottom:2.25rem; max-width:54ch; }

.section-label { font-size:0.6875rem; font-weight:700; letter-spacing:0.08em; text-transform:uppercase; color:var(--primary); margin:0 0 1.125rem; display:flex; align-items:center; gap:0.625rem; }
.section-label::before { content:""; width:1.5rem; height:2px; background:var(--primary); border-radius:1px; flex:0 0 auto; }

.benefits { display:grid; gap:1rem; margin-bottom:2.25rem; }
.benefit { display:flex; gap:0.875rem; align-items:flex-start; }
.benefit .check { flex-shrink:0; width:20px; height:20px; border-radius:var(--radius-pill); background:var(--green-100); color:var(--primary); display:flex; align-items:center; justify-content:center; margin-top:0.125rem; }
.benefit .check svg { width:13px; height:13px; }
.benefit-title { font-size:1.0625rem; font-weight:600; color:var(--foreground); }
.benefit-desc { font-size:0.9375rem; color:var(--muted-foreground); }

.steps { display:grid; gap:0.75rem; margin-bottom:2.25rem; }
.step { background:var(--card); border:1px solid var(--border); border-radius:var(--radius-card); padding:1rem 1.25rem; display:flex; gap:0.875rem; align-items:center; box-shadow:var(--shadow-sm); }
.step-n { flex-shrink:0; width:32px; height:32px; border-radius:var(--radius-pill); background:var(--primary); color:var(--primary-foreground); font-size:1.125rem; font-weight:700; display:flex; align-items:center; justify-content:center; }
.step-text { font-size:1.0625rem; color:var(--foreground); }

.reassure { font-size:0.9375rem; color:var(--muted-foreground); margin-bottom:1rem; }
.cta--final { margin:0 0 2rem; }

.fineprint { font-size:0.8125rem; color:var(--muted-foreground); line-height:1.6; border-top:1px solid var(--border); padding-top:1.25rem; }
.fineprint .kbd { font-family:var(--mono); font-size:0.75rem; background:var(--secondary); padding:0.0625rem 0.375rem; border-radius:4px; }
.fineprint a { color:var(--primary-700); text-decoration:underline; text-underline-offset:2px; }

footer { text-align:center; padding:2rem 1.5rem 2.5rem; font-size:0.75rem; color:var(--wordmark); }
footer a { color:var(--wordmark); text-decoration:none; margin:0 0.625rem; }
footer a:hover { color:var(--muted-foreground); }

@media (prefers-reduced-motion: reduce) { .cta { transition:none; } }
