:root{
  --page:#FCFAF4;
  --card:#F7EFDE;
  --ink:#1B1918;
  --page-dark:#0A0908;
  --card-dark:#1B1918;
  --honey:#C9A227;
  --honey-hover:#B8931F;
  --metallic:#D8A857;
  --grey:#6B6459;
  --muted-dark:#B0A99C;
  --border-light:#E3D6BC;
  --border-dark:#2A2724;
  --radius-card:16px;
  --radius-btn:8px;
}
*{box-sizing:border-box;}
html{scroll-behavior:smooth;}
@media (prefers-reduced-motion: reduce){ html{scroll-behavior:auto;} *{transition:none !important;} }

body{ margin:0; background:var(--page); font-family:'Inter',sans-serif; color:var(--ink); }

nav{
  background:var(--page); display:flex; align-items:center; justify-content:space-between;
  padding:18px 48px; border-bottom:1px solid var(--border-light); position:sticky; top:0; z-index:10;
}
.brand{display:flex; align-items:center; gap:10px;}
.brand-icon{width:30px; height:30px;}
.brand-name{font-family:'Space Grotesk',sans-serif; font-weight:700; font-size:19px; letter-spacing:-0.3px;}
.nav-link{ font-size:13px; font-weight:600; color:var(--grey); text-decoration:none; }
.nav-link:hover{ color:var(--ink); }

.btn{
  font-family:'Inter',sans-serif; font-weight:600; font-size:13px; border-radius:var(--radius-btn);
  padding:10px 20px; border:none; cursor:pointer; text-decoration:none; display:inline-block;
  transition:background 0.15s ease, opacity 0.15s ease;
}
.btn-primary{ background:var(--honey); color:var(--ink); }
.btn-primary:hover{ background:var(--honey-hover); }
.btn-premium{ background:var(--metallic); color:var(--ink); }
.btn-premium:hover{ opacity:0.9; }
.btn:focus-visible{ outline:2px solid var(--honey); outline-offset:2px; }

section{ padding:80px 48px; }

.hero{
  background:var(--page); display:grid; grid-template-columns:1.1fr 0.9fr; gap:56px;
  align-items:center; padding-top:72px;
}
.eyebrow{
  font-weight:600; font-size:11px; letter-spacing:1.5px; text-transform:uppercase;
  color:var(--honey-hover); margin:0 0 14px 0;
}
.eyebrow.on-dark{ color:var(--metallic); }
h1{
  font-family:'Space Grotesk',sans-serif; font-weight:700; font-size:42px; line-height:1.1;
  letter-spacing:-0.7px; margin:0 0 18px 0;
}
.hero p.sub{ font-size:16px; line-height:1.6; color:var(--grey); max-width:440px; margin:0 0 26px 0; }

.hero-form{ display:flex; gap:10px; max-width:420px; }
.hero-form input{
  flex:1; padding:11px 16px; border-radius:var(--radius-btn); border:1px solid var(--border-light);
  background:var(--card); font-family:'Inter',sans-serif; font-size:14px; color:var(--ink);
}
.hero-form input:focus-visible{ outline:2px solid var(--honey); outline-offset:1px; }
.fine-print{ font-size:11.5px; color:var(--grey); opacity:0.85; margin-top:12px; }

.text-link{
  font-size:13px; font-weight:600; color:var(--ink); text-decoration:none;
  border-bottom:1.5px solid var(--honey); padding-bottom:2px;
}
.text-link:hover{ color:var(--honey-hover); }
.hero-pro-link{ margin-top:22px; }

.mascot-showcase{
  display:flex; align-items:center; justify-content:center;
  background: radial-gradient(circle at center, rgba(201,162,39,0.14) 0%, rgba(201,162,39,0) 70%);
}
.mascot-large{ width: 100%; height:auto; border-radius:var(--radius-card); box-shadow:0 6px 16px -4px rgba(0,0,0,0.35); }

.section-head{ max-width:560px; margin:0 0 44px 0; }
.section-head h2{ font-family:'Space Grotesk',sans-serif; font-weight:700; font-size:30px; letter-spacing:-0.4px; margin:0 0 10px 0; }
.section-head p{ color:var(--grey); font-size:15px; margin:0; line-height:1.6; }

.card-grid{ display:grid; grid-template-columns:repeat(3, 1fr); gap:20px; }
.prop-card{ background:var(--card); border:0.5px solid var(--border-light); border-radius:var(--radius-card); padding:24px; }
.prop-card .bar{ width:28px; height:4px; background:var(--honey); border-radius:2px; margin-bottom:16px; }
.prop-card h3{ font-family:'Space Grotesk',sans-serif; font-size:17px; font-weight:700; margin:0 0 8px 0; }
.prop-card p{ font-size:13.5px; color:var(--grey); line-height:1.55; margin:0; }

.prop-card.dark{ background:var(--card-dark); border-color:var(--border-dark); }
.prop-card.dark .bar{ background:var(--metallic); }
.prop-card.dark h3{ color:var(--page); }
.prop-card.dark p{ color:var(--muted-dark); }

.divider{ position:relative; line-height:0; background:var(--page); }
.divider svg.wave{ width:100%; height:70px; display:block; }
.divider-icon{
  position:absolute; left:50%; top:22px; transform:translateX(-50%); width:44px; height:44px; border-radius:50%;
  background:var(--metallic); display:flex; align-items:center; justify-content:center;
  box-shadow:0 6px 16px -4px rgba(0,0,0,0.35);
}

.pro-zone{ background:var(--page-dark); color:var(--page); scroll-margin-top:80px; }
.pro-zone .section-head h2{ color:var(--page); }
.pro-zone .section-head p{ color:var(--muted-dark); }
.pro-form{ display:flex; gap:10px; max-width:420px; margin-top:36px; }
.pro-form input{
  flex:1; padding:11px 16px; border-radius:var(--radius-btn); border:1px solid var(--border-dark);
  background:var(--card-dark); font-family:'Inter',sans-serif; font-size:14px; color:var(--page);
}
.pro-form input::placeholder{ color:var(--muted-dark); }
.pro-form input:focus-visible{ outline:2px solid var(--metallic); outline-offset:1px; }
.pro-caption{ font-size:12.5px; color:var(--muted-dark); margin-top:16px; max-width:480px; line-height:1.6; }

.waitlist-confirm{
  font-size:14px; color:var(--ink); background:var(--card); border:1px solid var(--border-light);
  border-radius:var(--radius-btn); padding:14px 18px; max-width:420px; line-height:1.5;
}
.waitlist-confirm-check{ color:var(--honey); font-weight:700; margin-right:6px; }
.waitlist-confirm.on-dark{ background:var(--card-dark); border-color:var(--border-dark); color:var(--page); }
.waitlist-confirm.on-dark .waitlist-confirm-check{ color:var(--metallic); }
.form-error{ font-size:12px; color:#B3261E; margin-top:8px; }

.flash{
  display:flex; align-items:center; gap:10px; padding:14px 48px; font-size:13.5px; font-weight:600;
  line-height:1.5; border-bottom:1px solid var(--border-light);
}
.flash-icon{
  width:18px; height:18px; border-radius:50%; flex-shrink:0; font-size:11px; font-weight:700;
  display:inline-flex; align-items:center; justify-content:center;
}
.flash-notice{ background:var(--card); color:var(--ink); }
.flash-notice .flash-icon{ background:var(--honey); color:var(--ink); }
.flash-alert{ background:#FBEAE8; color:#7A2119; border-bottom-color:#F1C9C3; }
.flash-alert .flash-icon{ background:#B3261E; color:#FBEAE8; }

footer{
  background:var(--page-dark); border-top:1px solid var(--border-dark); padding:36px 48px;
  display:flex; align-items:center; justify-content:space-between; flex-wrap:wrap; gap:20px;
}
.footer-brand{ display:flex; align-items:center; gap:9px; color:var(--page); }
.footer-brand span{ font-family:'Space Grotesk',sans-serif; font-weight:700; font-size:14px; }
.footer-links{ display:flex; gap:22px; flex-wrap:wrap; }
.footer-links a{ font-size:12px; color:var(--muted-dark); text-decoration:none; }
.footer-links a:hover{ color:var(--page); }
.footer-links .draft-tag{ font-size:9.5px; color:#5C564C; margin-left:3px; }
.copyright{ width:100%; font-size:11px; color:#5C564C; margin-top:6px; }

@media (max-width: 860px){
  .hero{ grid-template-columns:1fr; }
  .card-grid{ grid-template-columns:1fr; }
  nav{ padding:16px 24px; }
  section{ padding:56px 24px; }
  .hero-form{ flex-direction:column; max-width:100%; }
  h1{ font-size:30px; }
  .flash{ padding:12px 24px; }
}

/* ============ PRIVACY POLICY PAGE ============ */
.back-link{ font-size:13px; font-weight:600; color:var(--grey); text-decoration:none; }
.back-link:hover{ color:var(--ink); }
.back-link.on-dark{ color:var(--muted-dark); }
.back-link.on-dark:hover{ color:var(--page); }

.draft-banner{
  background:#F3E7C8; border-bottom:1px solid var(--border-light);
  padding:12px 48px; font-size:12.5px; color:#6B4E12; font-weight:600;
  display:flex; align-items:center; gap:8px;
}
.draft-dot{ width:6px; height:6px; border-radius:50%; background:var(--honey); flex-shrink:0; display:inline-block; }

main{ background:var(--page); padding:56px 48px 80px 48px; }
.doc{ max-width:680px; margin:0 auto; }

.doc h1{ font-family:'Space Grotesk',sans-serif; font-weight:700; font-size:34px; letter-spacing:-0.5px; margin:0 0 8px 0; }
.doc .subtitle{ font-size:14px; color:var(--grey); margin:0 0 4px 0; }
.doc .updated{ font-size:12px; color:var(--muted-dark); margin:0 0 40px 0; }

.doc h2{
  font-family:'Inter',sans-serif; font-weight:700; font-size:12px; letter-spacing:1px; text-transform:uppercase;
  color:var(--honey); margin:36px 0 12px 0;
}
.doc p{ font-size:15px; line-height:1.7; color:var(--ink); margin:0 0 14px 0; }
.doc ul{ margin:0 0 14px 0; padding-left:20px; }
.doc li{ font-size:15px; line-height:1.7; color:var(--ink); margin-bottom:6px; }
.doc a{ color:var(--ink); border-bottom:1.5px solid var(--honey); text-decoration:none; }
.doc a:hover{ color:var(--honey-hover); }
.doc .placeholder{ background:var(--card); border:1px dashed var(--border-light); border-radius:8px; padding:10px 14px; font-size:13px; color:var(--grey); margin:0 0 14px 0; }

.doc hr{ border:none; border-top:1px solid var(--border-light); margin:40px 0 24px 0; }
.doc .closing{ font-size:13px; color:var(--grey); line-height:1.7; font-style:italic; }

@media (max-width: 640px){
  nav, main, .draft-banner{ padding-left:22px; padding-right:22px; }
  .doc h1{ font-size:27px; }
}