/* ═══════════════════════════════════════════════════
   AI LightLab — LEGAL PAGES v2 STYLE
   Shared stylesheet for Terms, Privacy, Refund pages.
   Uses the v2 design system tokens (warm paper + Fraunces + Geist).
═══════════════════════════════════════════════════ */

@import url('https://fonts.googleapis.com/css2?family=Fraunces:ital,opsz,wght@0,9..144,300..700;1,9..144,300..700&family=Geist:wght@300;400;500;600;700&family=Geist+Mono:wght@400;500&display=swap');

:root{
  --bg:#F4EFE7;--bg-2:#EBE4D7;--bg-dark:#161310;
  --ink:#161310;--ink-soft:#3A332B;--ink-dim:#726858;--ink-mute:#A59B89;
  --rule:rgba(22,19,16,.12);--rule-2:rgba(22,19,16,.22);
  --paper:#F9F5EE;--amber:#D0661F;--amber-2:#E8864A;
  --sans:'Geist',-apple-system,BlinkMacSystemFont,sans-serif;
  --serif:'Fraunces','Times New Roman',serif;
  --mono:'Geist Mono',ui-monospace,Menlo,monospace;
  --t:.3s cubic-bezier(.4,0,.2,1);
}

*,*::before,*::after{box-sizing:border-box;margin:0;padding:0}
html{scroll-behavior:smooth;font-size:16px}
body{font-family:var(--sans);background:var(--bg);color:var(--ink);line-height:1.65;-webkit-font-smoothing:antialiased;font-feature-settings:"ss01","cv11"}
a{color:inherit;text-decoration:none}
img{max-width:100%;display:block}

/* ── NAV (pill) ────────────────────────────────────── */
nav.site-nav{
  position:fixed;top:16px;left:16px;right:16px;z-index:100;
  display:flex;align-items:center;height:56px;padding:0 20px;
  background:rgba(249,245,238,.7);
  backdrop-filter:blur(24px) saturate(160%);
  -webkit-backdrop-filter:blur(24px) saturate(160%);
  border:1px solid var(--rule);
  border-radius:999px;
  transition:background var(--t),border-color var(--t);
}
nav.site-nav.scrolled{background:rgba(249,245,238,.92);border-color:var(--rule-2)}
.nav-inner{display:flex;align-items:center;justify-content:space-between;width:100%}
.brand{display:flex;align-items:center;gap:10px}
.brand-logo{
  width:28px;height:28px;flex-shrink:0;
  background-image:url('logo-icon.png');
  background-size:contain;background-position:center;background-repeat:no-repeat;
}
.brand-name{font-family:var(--sans);font-weight:600;font-size:15px;letter-spacing:-.01em;color:var(--ink)}
.nav-links{display:flex;align-items:center;gap:28px}
.nav-links a{font-size:13px;font-weight:500;color:var(--ink-soft);transition:color var(--t)}
.nav-links a:hover{color:var(--ink)}
.nav-links a.on{color:var(--ink)}
.nav-cta{display:flex;align-items:center;gap:10px}
.btn-ghost{display:inline-flex;align-items:center;gap:6px;font-size:13px;font-weight:500;color:var(--ink-soft);padding:8px 14px;border-radius:999px;transition:background var(--t)}
.btn-ghost:hover{background:rgba(22,19,16,.06)}
.btn-dark{display:inline-flex;align-items:center;gap:8px;background:var(--ink);color:var(--paper);font-weight:500;font-size:14px;padding:9px 18px;border-radius:999px;transition:background var(--t),transform var(--t)}
.btn-dark:hover{background:#000;transform:translateY(-1px)}
.btn-dark .arr{transition:transform var(--t)}
.btn-dark:hover .arr{transform:translateX(3px)}

/* ── HERO ──────────────────────────────────────────── */
.legal-hero{padding:140px 32px 40px;text-align:center}
.legal-hero-inner{max-width:720px;margin:0 auto}
.crumbs{
  display:inline-flex;gap:10px;align-items:center;
  font-family:var(--mono);font-size:11px;letter-spacing:.06em;text-transform:uppercase;color:var(--ink-dim);margin-bottom:18px;
}
.crumbs a{color:var(--ink-soft);border-bottom:1px solid transparent;padding-bottom:2px;transition:all var(--t)}
.crumbs a:hover{color:var(--amber);border-color:var(--amber)}
.crumbs .sep{opacity:.5}
.crumbs .cur{color:var(--ink)}
.legal-hero h1{
  font-family:var(--serif);
  font-optical-sizing:auto;font-variation-settings:"opsz" 144,"SOFT" 50;
  font-weight:340;letter-spacing:-.028em;line-height:1;
  font-size:clamp(44px,6vw,76px);color:var(--ink);margin-bottom:14px;
}
.legal-hero h1 em{font-style:italic;color:var(--amber);font-variation-settings:"opsz" 144,"SOFT" 100;font-weight:300}
.last-updated{
  font-family:var(--mono);font-size:12px;letter-spacing:.04em;color:var(--ink-dim);
}

/* ── CONTENT ARTICLE ──────────────────────────────── */
.legal-content{padding:48px 32px 80px}
.legal-content-inner{max-width:720px;margin:0 auto;font-size:15.5px;color:var(--ink-soft);line-height:1.75}
.legal-content-inner h2{
  font-family:var(--serif);font-variation-settings:"opsz" 72;
  font-weight:400;font-size:clamp(22px,2.4vw,28px);line-height:1.2;letter-spacing:-.012em;
  color:var(--ink);margin:40px 0 14px;
}
.legal-content-inner h2:first-child{margin-top:0}
.legal-content-inner h3{
  font-family:var(--sans);font-weight:600;font-size:16px;
  color:var(--ink);margin:24px 0 8px;
}
.legal-content-inner p{margin-bottom:14px}
.legal-content-inner ul,.legal-content-inner ol{padding-left:20px;margin:10px 0 16px}
.legal-content-inner li{margin-bottom:6px}
.legal-content-inner strong{color:var(--ink);font-weight:600}
.legal-content-inner em{font-style:italic}
.legal-content-inner a{color:var(--amber);border-bottom:1px solid currentColor;padding-bottom:1px;transition:color var(--t)}
.legal-content-inner a:hover{color:var(--amber-2)}
.legal-content-inner code{
  font-family:var(--mono);font-size:13px;
  background:rgba(22,19,16,.06);color:var(--ink);
  padding:2px 6px;border-radius:4px;border:1px solid var(--rule);
}
.legal-content-inner blockquote{
  border-left:2px solid var(--amber);
  padding:4px 16px;margin:16px 0;
  color:var(--ink-soft);font-style:italic;
  background:rgba(208,102,31,.04);
}

/* ── FOOTER ───────────────────────────────────────── */
footer.site-foot{background:var(--bg);padding:48px 0 28px;border-top:1px solid var(--rule)}
.foot-inner{max-width:1200px;margin:0 auto;padding:0 32px}
.foot-grid{display:grid;grid-template-columns:2fr 1fr 1fr 1fr;gap:40px;margin-bottom:36px}
.foot-brand{display:flex;align-items:center;gap:10px;margin-bottom:14px}
.foot-brand-name{font-family:var(--sans);font-weight:600;font-size:15px;letter-spacing:-.01em}
.foot-desc{font-size:13px;color:var(--ink-soft);line-height:1.6;max-width:340px}
.foot-desc a{color:var(--amber);border-bottom:1px solid currentColor;padding-bottom:1px}
.foot-col h4{
  font-family:var(--mono);font-size:10px;font-weight:500;
  letter-spacing:.14em;text-transform:uppercase;
  color:var(--ink-dim);margin-bottom:14px;
}
.foot-col a{display:block;font-size:13.5px;color:var(--ink-soft);padding:4px 0;transition:color var(--t)}
.foot-col a:hover{color:var(--amber)}
.foot-col a.on{color:var(--ink)}
.foot-bottom{
  display:flex;justify-content:space-between;align-items:center;
  padding-top:20px;border-top:1px solid var(--rule);
  font-family:var(--mono);font-size:11px;letter-spacing:.06em;color:var(--ink-dim);
}

/* ── RESPONSIVE ────────────────────────────────────── */
@media (max-width:820px){
  .nav-links{display:none}
  .legal-hero{padding:110px 20px 30px}
  .legal-content{padding:32px 20px 60px}
  .foot-grid{grid-template-columns:1fr 1fr;gap:28px}
}
@media (max-width:520px){
  .foot-grid{grid-template-columns:1fr}
  .legal-hero h1{font-size:clamp(38px,10vw,54px)}
}
