:root{
  --pink:#e8288a;
  --pink-dark:#c81d75;
  --purple:#3a2b5c;
  --ink:#2a2140;
  --muted:#5d5573;
  --cream:#fff7fb;
  --band:#f6f1fa;
  --line:#e9e1f1;
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;font-family:"Nunito",system-ui,sans-serif;color:var(--ink);background:var(--cream);line-height:1.6;font-size:18px}
h1,h2,h3{font-family:"Fredoka","Nunito",sans-serif;color:var(--purple);line-height:1.15;margin:0 0 .5em}
h1{font-size:clamp(2.2rem,5vw,3.4rem)}
h2{font-size:clamp(1.7rem,3.5vw,2.4rem)}
h3{font-size:1.35rem}
p{margin:0 0 1em}
a{color:var(--pink-dark)}
img{max-width:100%;height:auto}
.wrap{max-width:1120px;margin:0 auto;padding:0 24px}

.topbar{position:sticky;top:0;z-index:10;background:rgba(255,247,251,.92);backdrop-filter:blur(8px);border-bottom:1px solid var(--line)}
.topbar-in{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:8px 24px}
.brand{display:flex;align-items:center;gap:10px;text-decoration:none;color:var(--purple);font-family:"Fredoka",sans-serif;font-weight:600;font-size:1.1rem}
.brand img{width:64px;height:auto}
nav{display:flex;gap:22px;flex-wrap:wrap}
nav a{text-decoration:none;color:var(--purple);font-weight:700}
nav a:hover{color:var(--pink)}

.hero{padding:56px 0 64px}
.hero-in{display:grid;grid-template-columns:1.05fr 1fr;gap:40px;align-items:center}
.eyebrow{text-transform:uppercase;letter-spacing:.12em;font-weight:700;color:var(--pink);font-size:.85rem;margin-bottom:.6em}
.lead{font-size:1.2rem;color:var(--muted)}
.cta-row{display:flex;gap:14px;flex-wrap:wrap;margin:22px 0 14px}
.deadline{font-size:.98rem;color:var(--muted)}

.btn{display:inline-block;padding:14px 24px;border-radius:999px;font-weight:700;text-decoration:none;font-family:"Fredoka",sans-serif;font-size:1.05rem;transition:transform .12s ease,background .12s ease}
.btn:hover{transform:translateY(-1px)}
.btn-pink{background:var(--pink);color:#fff}
.btn-pink:hover{background:var(--pink-dark)}
.btn-purple{background:var(--purple);color:#fff}
.btn-ghost{border:2px solid var(--purple);color:var(--purple)}

.band{background:var(--band);padding:64px 0}
.cards{display:grid;grid-template-columns:1fr 1fr;gap:24px;margin-top:20px}
.card{background:#fff;border:1px solid var(--line);border-radius:20px;padding:28px;display:flex;flex-direction:column;align-items:flex-start}
.card p{color:var(--muted);flex:1}
.num{width:42px;height:42px;border-radius:50%;background:var(--pink);color:#fff;display:grid;place-items:center;font-family:"Fredoka",sans-serif;font-weight:700;font-size:1.3rem;margin-bottom:14px}

.story{padding:72px 0}
.story-in{display:grid;grid-template-columns:1fr 1fr;gap:48px}
.facts{list-style:none;padding:0;margin:20px 0 0;display:grid;gap:10px}
.facts li{display:flex;align-items:center;gap:14px;font-weight:600}
.facts span{min-width:76px;text-align:center;background:var(--purple);color:#fff;border-radius:12px;padding:6px 10px;font-family:"Fredoka",sans-serif}

.faq details{background:#fff;border:1px solid var(--line);border-radius:14px;padding:16px 20px;margin-bottom:12px}
.faq summary{cursor:pointer;font-weight:700;color:var(--purple)}
.faq details p{margin:10px 0 0;color:var(--muted)}

.contact{padding:72px 0;text-align:center}
.contact-in p{color:var(--muted)}

.foot{background:var(--purple);color:#efe9f7;padding:28px 0;text-align:center;font-size:.95rem}
.foot p{margin:.2em 0}
.foot .small{opacity:.75;font-size:.85rem}

@media (max-width:820px){
  body{font-size:17px}
  .hero-in,.cards,.story-in{grid-template-columns:1fr}
  .hero-art{order:-1;max-width:420px;margin:0 auto}
  .brand span{display:none}
  nav{gap:14px}
}
