:root{--bg:#0a0709;--panel:#140e12;--line:#2b1d26;--text:#f4eef2;--mute:#a79aa3;--pink:#e364a9;--grad:linear-gradient(135deg,#f59ad0 0%,#e364a9 50%,#a8397e 100%)}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;color:var(--text);font:400 17px/1.65 "Nunito",system-ui,sans-serif;background:var(--bg) radial-gradient(900px 500px at 50% -80px,rgba(227,100,169,.22),transparent 70%) no-repeat}
a{color:inherit}
:focus-visible{outline:2px solid var(--pink);outline-offset:3px}
.bar{position:sticky;top:0;z-index:5;display:flex;justify-content:space-between;align-items:center;padding:10px clamp(16px,4vw,48px);background:rgba(10,7,9,.82);backdrop-filter:blur(10px);border-bottom:1px solid var(--line)}
.brand img{display:block;height:44px;width:auto}
nav{display:flex;align-items:center;gap:22px}
nav a:not(.btn){text-decoration:none;color:var(--mute);font-weight:600}
nav a:not(.btn):hover{color:var(--text)}
.banner{max-width:1200px;margin:24px auto 0;padding:0 16px}
.banner img{display:block;width:100%;height:auto;border-radius:18px;border:1px solid rgba(227,100,169,.45);box-shadow:0 0 60px rgba(227,100,169,.25)}
main{max-width:760px;margin:0 auto;padding:0 20px}
section{padding:64px 0;border-bottom:1px solid var(--line)}
section:last-of-type{border:0}
h1,h2{font-family:"Fredoka",sans-serif;font-weight:600;line-height:1.15;margin:0 0 16px}
h1{font-size:clamp(38px,7vw,60px);background:var(--grad);-webkit-background-clip:text;background-clip:text;color:transparent}
h2{font-size:30px}
.intro{text-align:center;padding-top:48px}
.lead{max-width:30em;margin:0 auto;color:var(--mute);font-size:19px}
.pill{display:inline-block;margin:0 0 20px;padding:6px 16px;border:1px solid rgba(227,100,169,.5);border-radius:999px;background:rgba(227,100,169,.1);color:var(--text);font-weight:600;font-size:15px}
.pill b{color:var(--pink)}
.cta{display:flex;flex-wrap:wrap;justify-content:center;gap:12px;margin-top:32px}
.btn{display:inline-block;padding:12px 26px;border:0;border-radius:999px;background:var(--grad);color:#1a0612;font:600 17px "Fredoka",sans-serif;text-decoration:none;cursor:pointer;box-shadow:0 6px 24px rgba(227,100,169,.35)}
.btn:hover{filter:brightness(1.1)}
.btn.small{padding:7px 18px;font-size:15px;box-shadow:none}
.btn.ghost{background:transparent;color:var(--text);border:1px solid rgba(227,100,169,.6);box-shadow:none}
.rules{padding-left:22px}.rules li{margin-bottom:12px}
.note{color:var(--mute);font-size:14px}
form{display:grid;gap:18px;padding:28px;border:1px solid var(--line);border-radius:18px;background:var(--panel)}
label{display:grid;gap:6px;color:var(--mute);font-size:15px;font-weight:600}
input,textarea{padding:12px 14px;border:1px solid var(--line);border-radius:10px;background:#0d080b;color:var(--text);font:inherit}
input:focus,textarea:focus{border-color:var(--pink);outline:0}
.hp{position:absolute;left:-9999px}
#msg{min-height:1.5em;margin:0;color:var(--pink);font-weight:600}
footer{padding:32px 20px;text-align:center;color:var(--mute);font-size:13px}
@media(max-width:560px){nav{gap:12px}nav a:nth-child(-n+3){display:none}.banner img{border-radius:12px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}
