:root{--accent:#d9ff6e;
  --bg:#1e1430;--bg2:#28193f;--panel:#2d1c45;--ink:#fff6e9;--muted:#c1b1d6;--pink:#ffb8d6;--lime:#d9ff6e;--violet:#c7a6ff;--line:#4a3263;
  --font-body:"Nunito","Trebuchet MS",system-ui,sans-serif;--font-display:"Baloo 2","Arial Rounded MT Bold","Trebuchet MS",sans-serif;
}
body{background:var(--bg);color:var(--ink);font-family:var(--font-body);line-height:1.6;overflow-x:hidden}
a{color:var(--lime)}
.wrap{width:min(1120px,calc(100% - 36px));margin-inline:auto}
.top{position:sticky;top:0;z-index:20;background:color-mix(in srgb,var(--bg) 90%,transparent);border-bottom:2px solid var(--line);backdrop-filter:blur(8px)}
.top-inner{min-height:68px;display:flex;align-items:center;gap:1.2rem}
.brand{display:flex;gap:.55rem;align-items:center;text-decoration:none;font-family:var(--font-display);font-size:1.15rem}
.brand img{border-radius:11px}
.top nav{display:flex;gap:1rem;margin-left:auto;font-weight:700;font-size:.85rem}
.top nav a{text-decoration:none;color:var(--muted);padding:.4rem .5rem;border-radius:999px}
.top nav a:hover{color:var(--ink);background:var(--panel)}
.pill{background:var(--lime);color:var(--bg);border-color:var(--lime);border-radius:999px;font-weight:800}
.marquee{background:var(--lime);color:var(--bg);overflow:hidden;border-bottom:2px solid var(--bg);padding:.4rem 0;font-family:var(--font-display);font-size:.7rem;letter-spacing:.14em}
.marquee span{display:block;white-space:nowrap;animation:slide 18s linear infinite}
@keyframes slide{to{transform:translateX(-50%)}}
.hero{padding:3.6rem 0 4rem;position:relative}
.hero-grid{display:grid;grid-template-columns:1.02fr .98fr;gap:2rem;align-items:center}
.eyebrow{color:var(--pink);font-size:.7rem;letter-spacing:.16em;text-transform:uppercase;font-weight:800;margin-bottom:.7rem}
h1,h2{font-family:var(--font-display);line-height:.9;letter-spacing:-.03em}
h1{font-size:clamp(4rem,10vw,8rem);margin:0 0 1rem}
h1 span{color:var(--lime);text-shadow:4px 4px 0 var(--bg2)}
h2{font-size:clamp(2.4rem,5.6vw,4.4rem);margin:.3rem 0 .9rem}
.lede{color:var(--muted);font-size:1.12rem;max-width:36ch}
.points{list-style:none;display:grid;gap:.35rem;margin:1.2rem 0 1.6rem;color:var(--muted);font-weight:700;font-size:.9rem}
.points li::before{content:"✺";color:var(--pink);margin-right:.55rem}
.btn.big{background:var(--lime);color:var(--bg);border:2px solid var(--bg);border-radius:999px;box-shadow:4px 4px 0 var(--bg2);padding:.9rem 1.5rem;font-weight:900}
.note{font-size:.72rem;color:var(--muted);margin-top:.8rem}
.art{position:relative;min-height:470px}
.blob{position:absolute;left:8%;top:12%;width:300px;height:280px;border-radius:48% 52% 44% 56%;background:linear-gradient(145deg,var(--pink),var(--violet) 55%,var(--lime));box-shadow:0 22px 50px rgba(0,0,0,.28);transition:transform .2s ease}
.blob i{position:absolute;left:24%;top:22%;width:24%;height:14%;border-radius:50%;background:rgba(255,255,255,.45)}
.blob b,.blob em{position:absolute;top:46%;width:12px;height:14px;border-radius:50%;background:#241533}
.blob b{left:38%}.blob em{left:58%}
.blob::after{content:"";position:absolute;left:44%;top:58%;width:18%;height:10%;border-bottom:4px solid #241533;border-radius:50%}
.sticker{position:absolute;font-family:var(--font-display);font-size:.66rem;line-height:1.05;letter-spacing:.08em;background:var(--pink);color:#241533;border:2px solid #241533;padding:.55rem .65rem;border-radius:10px;box-shadow:4px 4px 0 #241533;transform:rotate(-7deg)}
.sticker strong{font-size:.9rem}
.sticker-a{right:2%;top:6%}
.sticker-b{left:0;bottom:21%;background:var(--violet);transform:rotate(5deg)}
.photo-frame{position:absolute;right:4%;bottom:0;width:210px;background:var(--panel);border:2px solid var(--line);border-radius:18px;padding:.55rem .55rem 1.5rem;transform:rotate(3deg);box-shadow:7px 7px 0 rgba(0,0,0,.25)}
.photo-frame img{border-radius:12px}
.photo-frame span{position:absolute;bottom:.4rem;left:.7rem;font-size:.55rem;letter-spacing:.14em;color:var(--muted);font-weight:800}
.play{padding:5rem 0;background:var(--bg2);border-top:2px solid var(--line);border-bottom:2px solid var(--line)}
.play-grid{display:grid;grid-template-columns:1fr .95fr;gap:3rem;align-items:center}
.play p{color:var(--muted);max-width:40ch}
.dial{background:var(--panel);border:2px solid var(--line);border-radius:26px;padding:1.3rem;box-shadow:8px 8px 0 rgba(0,0,0,.25)}
.dial-top{display:flex;align-items:baseline;gap:.4rem;flex-wrap:wrap}
.dial-top span{font-size:.64rem;letter-spacing:.16em;color:var(--muted);width:100%;font-weight:800}
.dial-top strong{font-family:var(--font-display);font-size:3.4rem;line-height:1;color:var(--lime)}
.dial-top small{font-weight:800;color:var(--muted)}
input[type=range]{width:100%;accent-color:var(--lime);margin:1rem 0 .2rem}
.dial-meta{display:flex;justify-content:space-between;font-size:.64rem;color:var(--muted);font-weight:700}
.dial-result{margin-top:1rem;background:var(--bg);border-radius:14px;padding:.75rem;font-size:.78rem;color:var(--muted)}
.dial-result b{color:var(--ink)}
.fine{display:block;color:var(--muted);font-size:.62rem;margin-top:.6rem}
.stickers{padding:5rem 0}
.features{display:grid;grid-template-columns:repeat(2,1fr);gap:1rem;margin-top:1.2rem}
.feature{background:var(--panel);border:2px solid var(--line);border-radius:20px;padding:1.15rem;position:relative;box-shadow:5px 5px 0 rgba(0,0,0,.22)}
.feature:nth-child(3n+1){transform:rotate(-1deg)}
.feature:nth-child(3n+2){transform:rotate(.8deg);background:#35224f}
.feature:nth-child(3n){transform:rotate(-.5deg)}
.feature .fnum{font-family:var(--font-display);color:var(--pink);font-size:.75rem}
.feature h3{font-family:var(--font-display);font-size:1.12rem;line-height:1.08;margin:.45rem 0 .35rem}
.feature p{color:var(--muted);font-size:.82rem}
.result{padding:5rem 0;background:var(--pink);color:#241533}
.result .eyebrow{color:#6a2c50}
.result-grid{display:grid;grid-template-columns:1.05fr .95fr;gap:2rem;align-items:stretch}
.result-card{background:#fff6e9;border:3px solid #241533;border-radius:26px;padding:1.4rem;box-shadow:8px 8px 0 #241533;transform:rotate(-1deg)}
.result-card strong{font-family:var(--font-display);font-size:2.1rem;display:block;margin:.3rem 0 .8rem}
.meter{height:16px;border:3px solid #241533;border-radius:999px;overflow:hidden;background:#ffd9e8}
.meter i{display:block;height:100%;width:92%;background:var(--lime);border-right:3px solid #241533}
.result-rows{display:grid;grid-template-columns:1fr auto;gap:.3rem .8rem;margin-top:1rem;font-size:.8rem}
.result-rows span{color:#6a2c50}.result-rows b{text-align:right}
.result-card p{font-size:.78rem;margin-top:1rem;color:#4a2a3c}
.refusal{background:#241533;color:var(--ink);border-radius:26px;padding:1.5rem;transform:rotate(1.2deg);box-shadow:8px 8px 0 rgba(36,21,51,.3)}
.refusal span{font-size:.64rem;letter-spacing:.14em;color:var(--lime);font-weight:800}
.refusal h2{color:var(--pink);font-size:2.3rem}
.refusal p{color:var(--muted);font-size:.85rem}
.privacy{padding:5rem 0;background:var(--violet);color:#241533}
.privacy .eyebrow{color:#503277}
.privacy-grid{display:grid;grid-template-columns:1fr 1fr;gap:3rem}
.privacy h2{font-size:clamp(2.6rem,6vw,4.8rem)}
.privacy p{max-width:40ch;margin-bottom:1rem;color:#38204d}
.privacy a{color:#241533;font-weight:800}
.get{padding:5rem 0}
.get-inner{display:grid;grid-template-columns:1.1fr .9fr;gap:3rem;align-items:end}
.get p{color:var(--muted);max-width:38ch}
footer{border-top:2px solid var(--line);padding:2rem 0 1rem}
.foot{display:flex;justify-content:space-between;gap:2rem;flex-wrap:wrap;border-bottom:1px solid var(--line);padding-bottom:1.2rem}
.foot strong{font-family:var(--font-display);font-size:1.2rem}
.foot p{color:var(--muted);font-size:.78rem;max-width:40ch}
.foot nav{display:flex;gap:1rem;flex-wrap:wrap;font-size:.75rem;font-weight:700}
.foot a{text-decoration:none;color:var(--muted)}
.legal{font-size:.62rem;color:var(--muted);padding-top:.9rem}
@media(max-width:860px){.hero-grid,.play-grid,.result-grid,.privacy-grid,.get-inner{grid-template-columns:1fr;gap:2.5rem}.top nav{display:none}.art{min-height:420px}.blob{width:260px;height:245px}}
@media(max-width:560px){.features{grid-template-columns:1fr}.photo-frame{width:160px}.sticker-a{right:0}.hero{padding-top:2.5rem}}
