:root {
  --canvas:#0f0c08; --surface:#1d1712; --brand:#d4a24e; --gold:#c97d54;
  --ink:#f3ede2; --subtle:#8a7b66; --divider:#2c241a;
  --rose:#fb7185; --amber:#fbbf24; --teal:#2dd4bf;
}
* { box-sizing:border-box; margin:0; padding:0; }
html { scroll-behavior:smooth; }
body {
  background:var(--canvas); color:var(--ink);
  font:17px/1.7 -apple-system,'Segoe UI',Roboto,sans-serif;
  overflow-x:hidden;
}
a { color:var(--brand); text-decoration:none; }
.wrap { max-width:1080px; margin:0 auto; padding:0 24px; }
.script { font-family:'Snell Roundhand','Brush Script MT',cursive; }
.serif { font-family:Georgia,'Times New Roman',serif; font-style:italic; }

/* Nav */
nav {
  position:sticky; top:0; z-index:20;
  background:rgba(15,12,8,0.8); backdrop-filter:blur(12px);
  border-bottom:1px solid var(--divider);
}
nav .wrap { display:flex; align-items:center; justify-content:space-between; height:64px; }
nav .brand { font-family:'Snell Roundhand','Brush Script MT',cursive; font-size:30px; color:var(--ink); }
nav .links a { margin-left:28px; font-size:14px; color:var(--subtle); }
nav .links a:hover { color:var(--ink); }
@media (max-width:640px){ nav .links a{ margin-left:16px; font-size:13px; } }

/* Hero */
.hero { position:relative; text-align:center; padding:96px 0 80px; }
.hero::before {
  content:""; position:absolute; inset:0; z-index:-1;
  background:radial-gradient(circle at 50% 30%, rgba(212,162,78,0.18), transparent 60%);
}
.hero h1 { font-size:80px; color:var(--ink); line-height:1; margin-bottom:8px; }
.hero .tag { font-size:22px; color:var(--subtle); margin-bottom:16px; }
.hero p.lead { max-width:560px; margin:0 auto 36px; color:var(--ink); opacity:0.85; }
@media (max-width:640px){ .hero h1{ font-size:56px; } .hero .tag{ font-size:18px; } }

/* Seam divider */
.seam { height:2px; max-width:200px; margin:0 auto;
  background:linear-gradient(90deg, transparent, var(--brand), transparent); }

/* Buttons */
.btn {
  display:inline-block; font-size:15px; font-weight:500;
  padding:15px 28px; border-radius:16px; cursor:pointer; border:none;
}
.btn-primary { background:var(--brand); color:#211605; }
.btn-primary:hover { filter:brightness(1.08); }
.btn-ghost { border:1px solid var(--divider); color:var(--ink); background:transparent; }
.badges { margin-top:14px; }
.badge {
  display:inline-flex; align-items:center; gap:8px;
  background:var(--surface); border:1px solid var(--divider); border-radius:14px;
  padding:12px 20px; color:var(--ink); font-size:14px; opacity:0.55; cursor:default;
}
.appstore-badge { display:inline-block; line-height:0; transition:transform .15s ease; }
.appstore-badge:hover { transform:translateY(-1px); }
.appstore-badge img { display:block; height:52px; width:auto; }
.soon { font-size:11px; color:var(--subtle); margin-top:8px; }

/* Sections */
section { padding:72px 0; }
.eyebrow { color:var(--brand); font-size:12px; letter-spacing:3px; text-transform:uppercase; margin-bottom:12px; }
h2 { font-family:Georgia,serif; font-style:italic; font-size:38px; color:var(--ink); margin-bottom:16px; line-height:1.2; }
.muted { color:var(--subtle); max-width:640px; }

/* Steps */
.steps { display:grid; grid-template-columns:repeat(3,1fr); gap:20px; margin-top:36px; }
@media (max-width:760px){ .steps{ grid-template-columns:1fr; } }
.card { background:var(--surface); border:1px solid var(--divider); border-radius:20px; padding:28px; }
.card .n { font-family:Georgia,serif; font-style:italic; font-size:22px; color:var(--brand); margin-bottom:10px; }
.card h3 { font-size:18px; margin-bottom:8px; color:var(--ink); }
.card p { font-size:15px; color:var(--subtle); }

/* Resonance row */
.res { display:grid; grid-template-columns:repeat(3,1fr); gap:16px; margin-top:32px; }
@media (max-width:760px){ .res{ grid-template-columns:1fr; } }
.res .chip { border-radius:16px; padding:22px; border:1px solid rgba(255,255,255,0.06); }
.res .m { background:rgba(76,5,25,0.4); }
.res .c { background:rgba(69,26,3,0.4); }
.res .g { background:rgba(4,47,46,0.4); }
.res .chip .t { font-weight:600; margin-bottom:6px; }
.res .m .t { color:var(--rose); }
.res .c .t { color:var(--amber); }
.res .g .t { color:var(--teal); }
.res .chip p { font-size:14px; color:var(--subtle); }

/* Premium */
.premium { background:linear-gradient(180deg, var(--surface), var(--canvas)); border:1px solid var(--divider); border-radius:24px; padding:44px; text-align:center; }
.premium h2 { color:var(--brand); }
.perks { display:flex; flex-wrap:wrap; justify-content:center; gap:12px; margin-top:24px; }
.perk { background:var(--canvas); border:1px solid var(--divider); border-radius:14px; padding:12px 18px; font-size:14px; color:var(--ink); }

/* Waitlist */
.waitlist { text-align:center; }
.wl-form { display:flex; gap:10px; max-width:440px; margin:24px auto 0; }
@media (max-width:520px){ .wl-form{ flex-direction:column; } }
.wl-form input {
  flex:1; background:var(--surface); border:1px solid var(--divider); border-radius:16px;
  padding:15px 18px; color:var(--ink); font-size:15px; outline:none;
}
.wl-form input:focus { border-color:var(--brand); }
.wl-note { font-size:13px; color:var(--subtle); margin-top:12px; }

/* Footer */
footer { border-top:1px solid var(--divider); padding:40px 0; color:var(--subtle); font-size:14px; }
footer .wrap { display:flex; flex-wrap:wrap; justify-content:space-between; gap:16px; }
footer a { color:var(--subtle); margin-right:18px; }
footer a:hover { color:var(--ink); }

/* Legal pages */
.legal { max-width:720px; margin:0 auto; padding:48px 24px 96px; }
.legal .wordmark { font-family:'Snell Roundhand','Brush Script MT',cursive; font-size:56px; }
.legal h1 { font-family:Georgia,serif; font-style:italic; font-size:32px; margin:16px 0 8px; }
.legal h2 { color:var(--brand); font-size:14px; letter-spacing:2px; text-transform:uppercase; margin:36px 0 10px; font-style:normal; }
.legal p, .legal li { color:var(--ink); opacity:.9; margin-bottom:12px; }
.legal ul { padding-left:22px; }
.legal .updated { color:var(--subtle); font-size:13px; margin-bottom:32px; }
.legal .card { padding:20px 24px; margin:12px 0; }
