/* Carigma marketing site — brand tokens + shared components.
   Zero-build: pages load Tailwind via CDN for utilities, this file for brand.
   Tokens mirror resumeiq/theme.py exactly (Experience Spec 1.2–1.4). */

@import url('https://fonts.googleapis.com/css2?family=Inter:wght@400;500;600;700;800&family=Space+Grotesk:wght@500;600;700&family=JetBrains+Mono:wght@500&display=swap');

:root {
  --ink-900:#17153A; --ink-700:#1E1B4B; --ink-500:#312E81; --ink-400:#4F46E5; --ink-100:#E7E6F4;
  --gold-600:#B08F52; --gold-500:#C8A96E; --gold-100:#F6EFDF;
  --paper:#FAFAF7; --surface:#FFFFFF; --line:#E7E5E4; --muted:#6B6980;
  --night:#14122E; --night-line:#2A2750; --night-text:#EDECF7;
  --success:#16A34A; --amber:#CA8A04;
  --font-display:'Space Grotesk','Inter',sans-serif;
  --font-mono:'JetBrains Mono',ui-monospace,monospace;
}

* { box-sizing:border-box; }
html { scroll-behavior:smooth; }
body {
  margin:0; background:var(--paper); color:var(--ink-700);
  font-family:'Inter',-apple-system,'Segoe UI',sans-serif; line-height:1.6;
  -webkit-font-smoothing:antialiased;
}
h1,h2,h3 { font-family:var(--font-display); color:var(--ink-900); letter-spacing:-0.02em; line-height:1.15; }
a { color:var(--ink-400); text-decoration:none; }
.mono { font-family:var(--font-mono); font-size:13px; letter-spacing:0.02em; color:var(--muted); }
.wrap { max-width:1080px; margin:0 auto; padding:0 24px; }

/* Wordmark */
.wordmark { font-family:var(--font-display); font-weight:700; font-size:22px; color:var(--ink-700); letter-spacing:-0.02em; }
.wordmark .dot { color:var(--gold-500); }
.on-night .wordmark { color:var(--night-text); }

/* Buttons */
.btn { display:inline-flex; align-items:center; gap:8px; font-weight:600; font-size:15px;
  padding:11px 22px; border-radius:10px; transition:all .15s ease; cursor:pointer; border:1px solid transparent; }
.btn-gold { background:var(--gold-500); color:var(--ink-900); }
.btn-gold:hover { background:var(--gold-600); }
.btn-ink { background:var(--ink-500); color:#fff; }
.btn-ink:hover { background:var(--ink-700); }
.btn-ghost { color:var(--ink-400); }
.btn-ghost.on-night { color:var(--night-text); border-color:var(--night-line); }
.btn-ghost:hover { text-decoration:underline; }

/* Nav */
.nav { position:sticky; top:0; z-index:50; background:rgba(250,250,247,.9); backdrop-filter:blur(8px);
  border-bottom:1px solid var(--line); }
.nav .wrap { display:flex; align-items:center; justify-content:space-between; height:64px; }
.nav-links { display:flex; align-items:center; gap:26px; font-size:14px; font-weight:600; color:var(--muted); }
.nav-links a { color:var(--muted); }
.nav-links a:hover { color:var(--ink-700); }
@media (max-width:720px){ .nav-links a.hide-sm { display:none; } }

/* Sections */
section { padding:64px 0; }
.eyebrow { font-family:var(--font-mono); font-size:12px; letter-spacing:.08em; text-transform:uppercase; color:var(--gold-600); }
.card { background:var(--surface); border:1px solid var(--line); border-radius:14px; padding:22px;
  box-shadow:0 1px 2px rgba(23,21,58,.06); }
.grid { display:grid; gap:16px; }
.g3 { grid-template-columns:repeat(3,1fr); }
.g4 { grid-template-columns:repeat(4,1fr); }
.g2 { grid-template-columns:repeat(2,1fr); }
@media (max-width:820px){ .g3,.g4,.g2 { grid-template-columns:1fr; } }

/* Hero (night) */
.hero { background:var(--night); color:var(--night-text); padding:88px 0; }
.hero h1 { color:var(--night-text); font-size:clamp(2.4rem,6vw,3.6rem); }
.hero .grad { color:var(--gold-500); }
.hero p.lede { font-size:18px; color:#C9C6E4; max-width:640px; }
.trust { font-family:var(--font-mono); font-size:12px; color:#8D89B8; }

/* Score band demo */
.band { background:var(--surface); border:1px solid var(--line); border-radius:16px; padding:32px; text-align:center; }

/* FAQ */
details { border-bottom:1px solid var(--line); padding:16px 0; }
details summary { font-weight:600; color:var(--ink-900); cursor:pointer; list-style:none; font-size:16px; }
details summary::-webkit-details-marker { display:none; }
details summary::after { content:'+'; float:right; color:var(--gold-600); font-weight:700; }
details[open] summary::after { content:'–'; }
details p { color:var(--muted); margin:10px 0 0; }

/* Footer */
.footer { background:var(--night); color:#C9C6E4; padding:48px 0 32px; }
.footer a { color:#C9C6E4; }
.footer a:hover { color:var(--night-text); }
.footer .cols { display:flex; justify-content:space-between; flex-wrap:wrap; gap:24px; }

/* Article (blog + legal) */
.prose { max-width:720px; margin:0 auto; }
.prose h2 { font-size:1.5rem; margin-top:2rem; }
.prose h3 { font-size:1.2rem; margin-top:1.5rem; }
.prose p, .prose li { color:var(--ink-700); font-size:16px; }
.prose code { background:var(--ink-100); padding:2px 6px; border-radius:6px; font-family:var(--font-mono); font-size:13px; }
.prose .example { background:var(--surface); border-left:3px solid var(--gold-500); border-radius:0 10px 10px 0; padding:12px 16px; margin:12px 0; }
