:root{--ink:#f4ecf7;--muted:#c9bcd8;--accent:#e9c98b;--rose:#c58fb0;--deep:#0f1430;--plum:#2a1840;--card:#ffffff0d;--line:#ffffff1f}
*{box-sizing:border-box;margin:0}
html{scroll-behavior:smooth}
body{font-family:Inter,system-ui,sans-serif;color:var(--ink);background:#0b0f26;min-height:100vh;line-height:1.65;overflow-x:hidden;font-size:16px}
.sky{position:fixed;inset:0;z-index:-1;background:radial-gradient(1200px 600px at 50% -10%,#3a1f55 0,transparent 60%),radial-gradient(800px 500px at 100% 100%,#1d2a5c 0,transparent 60%),#0b0f26}
.sky::after{content:"";position:absolute;inset:0;background-image:radial-gradient(1px 1px at 20% 30%,#fff8,transparent),radial-gradient(1px 1px at 70% 20%,#fff9,transparent),radial-gradient(1.5px 1.5px at 40% 80%,#fff7,transparent),radial-gradient(1px 1px at 85% 60%,#fff8,transparent),radial-gradient(1px 1px at 10% 70%,#fff6,transparent)}
a{color:var(--accent)}
.top{display:flex;justify-content:space-between;align-items:center;gap:12px;padding:16px 20px;max-width:1100px;margin:auto;flex-wrap:wrap}
.logo{font-family:"Cormorant Garamond",serif;font-size:28px;font-weight:600;color:var(--ink);text-decoration:none}
.top nav a{color:var(--muted);text-decoration:none;font-size:14px;margin-left:16px}.top nav a:hover{color:var(--accent)}
main{max-width:1100px;margin:auto;padding:0 20px 40px}
h1,h2,h3{font-family:"Cormorant Garamond",serif;font-weight:600;line-height:1.15}
h1{font-size:clamp(34px,7vw,58px)}h2{font-size:clamp(26px,4.5vw,36px);margin:.2em 0 .4em}h3{font-size:22px}
.eyebrow{font-size:12px;letter-spacing:2px;text-transform:uppercase;color:var(--accent);margin-bottom:10px;display:block}
.lead{font-size:18px;color:var(--muted);max-width:640px;margin:14px auto}
.fine{font-size:13px;color:var(--muted);margin-top:12px}
.center{text-align:center}
.hero{text-align:center;padding:56px 0 40px}.hero.sm{padding:36px 0 24px}
.ctas{display:flex;flex-wrap:wrap;gap:12px;justify-content:center;margin-top:22px}
.btn{display:inline-block;border:0;cursor:pointer;font:600 16px Inter,sans-serif;padding:14px 26px;border-radius:999px;background:linear-gradient(135deg,var(--accent),var(--rose));color:#1a1030;text-decoration:none;box-shadow:0 8px 30px #c58fb055;transition:transform .2s}
.btn:hover{transform:translateY(-2px)}.btn.ghost{background:transparent;color:var(--ink);border:1px solid var(--line);box-shadow:none}
.btn:disabled{opacity:.45;cursor:default;transform:none}
.split{display:grid;gap:20px;margin:30px 0}@media(min-width:800px){.split{grid-template-columns:1fr 1fr}}
.panel,.gcard,.signup,.rcard{background:var(--card);border:1px solid var(--line);border-radius:20px;padding:26px;backdrop-filter:blur(6px)}
.panel ol{padding-left:20px;color:var(--muted)}.panel li{margin:8px 0}.panel .btn{margin-top:14px}
.grid{display:grid;gap:18px;margin:20px 0}@media(min-width:640px){.grid{grid-template-columns:1fr 1fr}}@media(min-width:980px){.grid{grid-template-columns:repeat(3,1fr)}}
.gcard{color:var(--ink);text-decoration:none;transition:border-color .2s,transform .2s}.gcard:hover{border-color:var(--accent);transform:translateY(-3px)}
.gcard p{color:var(--muted);font-size:14px;margin-top:8px}
.signup{text-align:center;margin:40px auto;max-width:720px;background:linear-gradient(160deg,#3a1f5555,#1d2a5c55)}
.signup p{color:var(--muted)}
.email-form{display:flex;flex-wrap:wrap;gap:10px;justify-content:center;margin-top:16px}
.email-form input{flex:1 1 200px;min-width:0;padding:13px 18px;border-radius:999px;border:1px solid var(--line);background:#0b0f26aa;color:var(--ink);font:16px Inter,sans-serif}
.email-form .ok{width:100%;color:var(--accent)}
.start{text-align:center;max-width:480px;margin:10px auto}.start .avatar{font-size:46px;width:88px;height:88px;line-height:88px;margin:10px auto;border-radius:50%;background:linear-gradient(135deg,var(--plum),#1d2a5c);border:2px solid var(--accent)}
.start h1{font-size:36px}.big{display:block;margin:14px 0;padding:18px;border-radius:16px;background:var(--card);border:1px solid var(--line);color:var(--ink);text-decoration:none;font-weight:600;font-size:17px;transition:.2s}.big:hover{border-color:var(--accent);background:#ffffff18}
.startpage .top nav{display:none}
.prose{max-width:740px;margin:20px auto}.prose h1{margin-bottom:18px}.prose h2{margin-top:1.6em}.prose h3{margin-top:1.2em}.prose p,.prose li{color:#e6dcef;margin:.8em 0}.prose ul,.prose ol{padding-left:22px}
.prose table{width:100%;border-collapse:collapse;margin:1em 0;font-size:15px;display:block;overflow-x:auto}.prose th,.prose td{border-bottom:1px solid var(--line);padding:10px;text-align:left}.prose th{color:var(--accent)}
.prose hr{border:0;border-top:1px solid var(--line);margin:2em 0}.prose em{color:var(--muted)}
.prose a.aff{display:inline-block;padding:9px 18px;border-radius:999px;border:1px solid var(--accent);text-decoration:none;font-weight:600;font-size:15px}
.prose a.aff:hover{background:var(--accent);color:#1a1030}
.crumb{font-size:13px;letter-spacing:1px;text-transform:uppercase}.crumb a{text-decoration:none}
.disclosure{font-size:13px;color:var(--muted);border-left:3px solid var(--accent);background:var(--card);padding:12px 16px;border-radius:8px;margin-bottom:20px}
.foot{max-width:1100px;margin:30px auto 0;padding:30px 20px 40px;border-top:1px solid var(--line);text-align:center;font-size:13px;color:var(--muted)}
.foot p{margin:8px auto;max-width:720px}.foot .bio{font-family:"Cormorant Garamond",serif;font-size:20px;color:var(--ink)}
.foot nav{margin:14px 0}.foot nav a{color:var(--muted);margin:0 10px;text-decoration:none;display:inline-block}.foot nav a:hover{color:var(--accent)}
.tiles{display:grid;grid-template-columns:repeat(2,1fr);gap:12px;margin:24px auto;max-width:900px}@media(min-width:700px){.tiles{grid-template-columns:repeat(5,1fr)}}
.tile,.opt{background:var(--card);border:1px solid var(--line);border-radius:16px;padding:14px 10px;color:var(--ink);cursor:pointer;font:500 15px Inter,sans-serif;text-align:center;transition:.2s}
.tile b{display:block;font-size:26px}.tile small{display:block;color:var(--muted);font-size:12px;margin-top:4px}
.tile:hover,.opt:hover{border-color:var(--accent)}.opt.on{border-color:var(--accent);background:#e9c98b22;color:var(--accent)}
.quiz{max-width:720px;margin:30px auto;text-align:center}.prog{height:6px;background:var(--line);border-radius:9px;overflow:hidden;margin-bottom:22px}.bar{height:100%;background:linear-gradient(90deg,var(--accent),var(--rose));transition:width .4s}
.opts{display:flex;flex-wrap:wrap;gap:10px;justify-content:center;margin:20px 0}.opts .opt{flex:0 1 auto;padding:12px 18px}
.opts input,.opts textarea{width:100%;padding:13px 16px;border-radius:14px;border:1px solid var(--line);background:#0b0f26aa;color:var(--ink);font:16px Inter,sans-serif}
.qnav{display:flex;justify-content:space-between;gap:10px;margin-top:10px}
.spinner{width:56px;height:56px;margin:20px auto;border-radius:50%;border:3px solid var(--line);border-top-color:var(--accent);animation:sp 1s linear infinite}@keyframes sp{to{transform:rotate(360deg)}}
.rcard h3{margin-bottom:6px}.rcard p{color:var(--muted);font-size:14px;margin:8px 0}.rcard .btn{margin-top:10px;padding:11px 20px;font-size:15px}.rcard small{display:block;color:var(--muted);font-size:12px;margin-top:10px}
.faq{max-width:720px;margin:40px auto}.faq details{border-bottom:1px solid var(--line);padding:14px 0}.faq summary{cursor:pointer;font-weight:600}.faq p{color:var(--muted);margin-top:8px}
[hidden]{display:none!important}
