/* Marketing site (welcome, pricing, about, faq, contact) — 23 Sep 2026.
   Same palette and type as the app: deep purple, gold, lavender. */
:root{ --bg:#0d0a1f; --bg2:#141031; --card:rgba(42,29,74,.55); --line:rgba(202,188,225,.18);
  --ink:#EFE6FF; --soft:#C9C2D8; --faint:#9a93b3; --gold:#D7AD4F; --gold2:#F0C75E; --lav:#C9A0F5;
  --cta1:#B57BEA; --cta2:#D7A4FF; --cta3:#E7C9A0; color-scheme:dark; }
*{ box-sizing:border-box; }
html,body{ margin:0; overflow-x:clip; }
body{ background:radial-gradient(1200px 600px at 50% -10%, rgba(160,100,240,.16), transparent 60%), linear-gradient(160deg,var(--bg),#110d28 45%,#080814);
  color:var(--soft); font:16px/1.65 -apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,sans-serif; }
a{ color:var(--lav); }
.wrap{ max-width:1080px; margin:0 auto; padding-inline:20px; }
.nav{ display:flex; align-items:center; gap:18px; padding-block:18px; flex-wrap:wrap; }
.nav .logo img{ height:44px; width:auto; display:block; }
.nav .links{ display:flex; gap:18px; margin-left:auto; flex-wrap:wrap; align-items:center; }
.nav .links a{ color:var(--soft); text-decoration:none; font-size:15px; }
.nav .links a:hover, .nav .links a[aria-current]{ color:var(--ink); }
.btn{ display:inline-block; background:linear-gradient(100deg,var(--cta1),var(--cta2) 55%,var(--cta3)); color:#1a1030 !important; font-weight:700;
  border-radius:12px; padding:12px 22px; text-decoration:none; border:0; }
.btn.ghost{ background:transparent; color:var(--ink) !important; border:1px solid var(--line); font-weight:600; }
.nav .btn{ padding:9px 16px; font-size:14px; }
h1,h2,h3{ font-family:"Cormorant Garamond",Georgia,serif; color:var(--ink); line-height:1.12; text-wrap:balance; }
h1{ font-size:clamp(38px,6vw,64px); margin:0 0 14px; }
h2{ font-size:clamp(28px,4vw,40px); margin:0 0 12px; }
h3{ font-size:24px; margin:0 0 6px; }
.eyebrow{ font-size:12px; letter-spacing:.3em; text-transform:uppercase; color:var(--gold); font-weight:700; }
.lede{ font-size:clamp(17px,2.2vw,20px); color:var(--soft); max-width:62ch; }
section{ padding-block:44px; }
.hero{ text-align:center; padding-top:24px; }
.hero img.art{ width:100%; height:auto; max-width:980px; border-radius:22px; border:1px solid var(--line); box-shadow:0 30px 80px rgba(0,0,0,.45); margin-top:26px; }
.hero .ctas{ display:flex; gap:12px; justify-content:center; flex-wrap:wrap; margin-top:22px; }
.grid3{ display:grid; grid-template-columns:repeat(3,1fr); gap:18px; }
.card{ background:var(--card); border:1px solid var(--line); border-radius:18px; padding:20px; }
.card img{ width:100%; height:auto; border-radius:12px; aspect-ratio:1; object-fit:cover; margin-bottom:12px; }
.quote{ font-family:"Cormorant Garamond",Georgia,serif; font-size:clamp(24px,3.4vw,34px); color:var(--ink); text-align:center; max-width:30ch; margin:0 auto; }
.quote small{ display:block; font-family:inherit; font-size:15px; color:var(--gold); margin-top:10px; letter-spacing:.08em; }
.steps{ counter-reset:s; display:grid; gap:14px; }
.steps li{ list-style:none; background:var(--card); border:1px solid var(--line); border-radius:14px; padding:14px 16px; }
.steps li b{ color:var(--ink); }
.faq details{ background:var(--card); border:1px solid var(--line); border-radius:14px; padding:14px 18px; margin-bottom:10px; }
.faq summary{ cursor:pointer; color:var(--ink); font-weight:600; }
.faq summary:focus-visible, .btn:focus-visible, a:focus-visible{ outline:2px solid var(--lav); outline-offset:3px; }
.price{ max-width:520px; margin:0 auto; text-align:center; }
.price .amt{ font-family:"Cormorant Garamond",Georgia,serif; font-size:44px; color:var(--gold2); }
.foot{ border-top:1px solid var(--line); margin-top:30px; padding-block:26px; text-align:center; font-size:14px; color:var(--faint); }
.foot a{ color:var(--lav); text-decoration:none; margin:0 6px; }
.foot .soc{ margin-bottom:8px; }
@media (max-width:760px){ .grid3{ grid-template-columns:1fr; } .nav .links{ gap:12px; } .nav .links a.hide-sm{ display:none; } section{ padding-block:30px; } }
@media (prefers-reduced-motion:reduce){ *{ transition:none !important; } }
