:root{--red:#E8524A;--red-deep:#D23F38;--sea:#5FB4D6;--sea-deep:#4A9EC0;--sand:#FFF6E3;--sand-deep:#F6DFA8;--sky-art:#F9DDB2;--sun:#FFC94A;--ink:#2E5D6B;--radius:28px}*{margin:0;padding:0;box-sizing:border-box}html{scroll-behavior:smooth}body{font-family:Nunito,sans-serif;font-weight:500;color:var(--ink);background:var(--sand);font-size:1.06rem;line-height:1.65}h1,h2,h3{font-family:Fredoka,sans-serif;line-height:1.15}a{color:inherit}img{display:block;max-width:100%}.wrap{max-width:1060px;margin:0 auto;padding:0 22px}header.nav{position:sticky;top:0;z-index:20;padding:14px 0;background:var(--red);box-shadow:0 3px 0 var(--red-deep)}.nav-inner{display:flex;align-items:center;justify-content:space-between;gap:14px;flex-wrap:wrap}.brand{display:flex;gap:10px;align-items:center;text-decoration:none}.beam-mark{display:flex;gap:6px;align-items:center}.beam-mark i{width:11px;height:11px;border-radius:50%;background:#fff;display:block}.beam-mark i:nth-child(2){width:14px;height:14px;background:var(--sun)}.brand span.t{font-family:Fredoka,sans-serif;font-weight:600;color:#fff;font-size:1.15rem}header.nav nav ul{display:flex;gap:8px;list-style:none;flex-wrap:wrap;justify-content:flex-end}header.nav nav a{font-family:Fredoka,sans-serif;font-weight:600;text-decoration:none;font-size:1rem;background:#fff;color:var(--ink);padding:9px 18px;border-radius:999px;box-shadow:0 3px 0 var(--red-deep);transition:transform .15s ease,background .15s ease}header.nav nav a:hover{transform:translateY(-2px);background:var(--sun)}header.nav nav a.on{background:var(--sun)}header.nav nav a:focus-visible{outline:3px solid #fff;outline-offset:2px}.hero-strip{background:linear-gradient(var(--sky-art),var(--sand));text-align:center;padding:56px 22px 40px}.hero-strip h1{font-size:clamp(2.2rem,6vw,3.4rem);font-weight:700;color:var(--red);text-shadow:-2px -2px 0 #fff,2px -2px 0 #fff,-2px 2px 0 #fff,2px 2px 0 #fff}.hero-strip p{max-width:620px;margin:12px auto 0;font-size:1.1rem}section{padding:56px 0}.eyebrow{font-family:Fredoka,sans-serif;font-weight:600;color:var(--red);display:flex;align-items:center;gap:10px;justify-content:center;font-size:1rem;text-transform:lowercase;letter-spacing:.03em}.eyebrow:before,.eyebrow:after{content:"";width:9px;height:9px;border-radius:50%;background:var(--sun)}h2{font-size:clamp(1.7rem,4vw,2.4rem);font-weight:600;text-align:center;margin:6px 0 14px}.lede{max-width:620px;margin:0 auto 36px;text-align:center}.btn{font-family:Fredoka,sans-serif;font-weight:600;font-size:1.05rem;text-decoration:none;padding:14px 28px;border-radius:999px;display:inline-block;margin:4px 6px;transition:transform .15s ease;border:none;cursor:pointer}.btn:hover{transform:translateY(-3px) rotate(-1deg)}.btn:focus-visible{outline:3px solid var(--ink);outline-offset:2px}.btn-red{background:var(--red);color:#fff;box-shadow:0 5px 0 var(--red-deep)}.btn-white{background:#fff;color:var(--ink);box-shadow:0 5px #2e5d6b2e}.card-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:26px;max-width:860px;margin:0 auto}@media(max-width:720px){.card-grid{grid-template-columns:repeat(2,1fr);gap:18px}}@media(max-width:420px){.card-grid{grid-template-columns:1fr}}.card{background:#fff;border-radius:var(--radius);padding:14px 14px 18px;text-align:center;text-decoration:none;box-shadow:0 6px #2e5d6b1a;transition:transform .18s ease}.card:hover{transform:translateY(-6px) rotate(-1.2deg)}.card:focus-visible{outline:3px solid var(--red);outline-offset:3px}.card .pic{border-radius:22px;overflow:hidden;aspect-ratio:1/1;margin-bottom:12px;background:var(--sky-art)}.card .pic img{width:100%;height:100%;object-fit:cover}.card h3{font-size:1.25rem;font-weight:600;color:var(--red)}.card p{font-size:.88rem;line-height:1.45;margin-top:4px}.pill{display:inline-block;font-family:Fredoka,sans-serif;font-weight:600;font-size:.85rem;background:var(--sand-deep);border-radius:999px;padding:5px 14px}.soon{display:inline-block;margin-top:10px;font-family:Fredoka,sans-serif;font-weight:600;color:var(--sea-deep);font-size:.95rem}.panel{background:#fff;border-radius:var(--radius);padding:28px;box-shadow:0 6px #2e5d6b1a}.split{display:grid;grid-template-columns:1fr 1.3fr;gap:36px;align-items:center;max-width:960px;margin:0 auto}@media(max-width:760px){.split{grid-template-columns:1fr}}.split .pic{border-radius:var(--radius);overflow:hidden;box-shadow:0 8px #2e5d6b1a}.dot-callout{background:#fff;border:3px dashed var(--red);border-radius:var(--radius);padding:20px 24px;margin-top:22px}.dot-callout h3{color:var(--red);font-size:1.1rem;margin-bottom:6px;display:flex;gap:8px;align-items:center}.dot-callout h3:before{content:"";width:12px;height:12px;border-radius:50%;background:var(--red);flex:none}.phrase-row{display:flex;gap:10px;flex-wrap:wrap;margin-top:16px}.phrase{background:var(--sand-deep);border-radius:999px;padding:8px 18px;font-family:Fredoka,sans-serif;font-weight:600;font-size:.95rem}.group-band{background:linear-gradient(var(--sea) 0%,var(--sea-deep) 100%);color:#fff}.group-band .eyebrow{color:#fff}.group-band .lede{color:#eaf7fc}.song-groups{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:18px}.group{background:#ffffff24;border-radius:var(--radius);padding:22px}.group h3{font-size:1.15rem;font-weight:600;margin-bottom:12px;display:flex;align-items:center;gap:8px}.group h3:before{content:"";width:11px;height:11px;border-radius:50%;background:var(--sun);flex:none}.song{background:#fff;color:var(--ink);border-radius:20px;padding:14px 18px;margin-bottom:10px}.song b{font-family:Fredoka,sans-serif;font-weight:600;display:block}.song span{font-size:.9rem}.video-slot{background:#2e5d6b14;border:2px dashed rgba(46,93,107,.3);border-radius:14px;padding:10px 14px;margin-top:10px;font-size:.85rem;font-family:Fredoka,sans-serif;font-weight:500}form .field{margin-bottom:18px;text-align:left}form label{display:block;font-family:Fredoka,sans-serif;font-weight:600;margin-bottom:6px}form input,form textarea{width:100%;border:2px solid var(--sand-deep);border-radius:16px;padding:12px 16px;font-family:Nunito,sans-serif;font-size:1rem;background:#fff;color:var(--ink)}form input:focus,form textarea:focus{outline:3px solid var(--sun);border-color:var(--sun)}.prose{max-width:720px;margin:0 auto}.prose h2{text-align:left;font-size:1.4rem;margin:28px 0 8px}.prose p{margin-bottom:14px}footer{background:#284b57;color:#dff0f6;text-align:center;padding:56px 22px 40px;position:relative;overflow:hidden}footer .moonline{font-family:Fredoka,sans-serif;font-weight:500;font-size:clamp(1.2rem,3vw,1.6rem);margin-bottom:8px}footer .fdots{display:flex;gap:8px;justify-content:center;margin:18px 0}footer .fdots i{width:9px;height:9px;border-radius:50%;background:var(--sun);display:block;opacity:.9;animation:footblink 7s ease-in-out infinite}footer .fdots i:nth-child(2){animation-delay:.18s}footer .fdots i:nth-child(3){animation-delay:.36s}@keyframes footblink{0%,14%,to{opacity:.35}4%,10%{opacity:1}}footer nav{margin-top:14px;display:flex;gap:12px;justify-content:center;flex-wrap:wrap}footer nav a{font-family:Fredoka,sans-serif;font-weight:600;font-size:1rem;text-decoration:none;color:#fff;background:#ffffff29;padding:10px 22px;border-radius:999px;border:2px solid rgba(255,255,255,.35);transition:background .15s ease,transform .15s ease}footer nav a:hover{background:var(--red);border-color:var(--red);transform:translateY(-2px)}footer small{display:block;font-size:.85rem;opacity:.75;margin-top:16px}.secret-dot{position:absolute;width:16px;height:16px;border-radius:50%;background:var(--red);border:none;cursor:pointer;padding:0}.secret-dot.found{animation:wobble .8s ease}@keyframes wobble{0%{transform:scale(1)}25%{transform:scale(1.8) rotate(12deg)}50%{transform:scale(1.2) rotate(-10deg)}75%{transform:scale(1.6)}to{transform:scale(1)}}.dot-toast{position:fixed;left:50%;bottom:26px;transform:translate(-50%) translateY(120px);background:var(--red);color:#fff;font-family:Fredoka,sans-serif;font-weight:600;padding:14px 26px;border-radius:999px;box-shadow:0 6px 0 var(--red-deep);transition:transform .35s ease;z-index:50}.dot-toast.show{transform:translate(-50%) translateY(0)}@media(prefers-reduced-motion:reduce){*{animation:none!important;transition:none!important}html{scroll-behavior:auto}}.hero-strip.has-art{background-size:cover;background-position:center 30%;min-height:min(46vw,420px);display:flex;flex-direction:column;justify-content:flex-start;align-items:center;padding-top:52px}.hero-strip.has-art p{background:#fff6e3e0;border-radius:24px;padding:10px 24px;display:inline-block;max-width:640px}@media(max-width:600px){.hero-strip.has-art{min-height:280px;background-position:center 25%}}.hero-art-full{line-height:0}.hero-art-full img{width:100%;height:auto;display:block}.brand .logo-img{height:64px;width:auto;display:block;max-width:100%}@media(max-width:600px){.brand .logo-img{height:48px}}.socials{display:flex;gap:12px;justify-content:center;margin-top:18px}.socials a{width:44px;height:44px;border-radius:50%;background:#ffffff29;border:2px solid rgba(255,255,255,.35);display:flex;align-items:center;justify-content:center;color:#fff;transition:background .15s ease,transform .15s ease}.socials a:hover{background:var(--red);border-color:var(--red);transform:translateY(-2px)}.socials svg{width:22px;height:22px}.friend-gallery{display:grid;grid-template-columns:repeat(3,1fr);gap:18px;max-width:860px;margin:0 auto}@media(max-width:640px){.friend-gallery{grid-template-columns:repeat(2,1fr)}}.friend-gallery .pic{border-radius:22px;overflow:hidden;aspect-ratio:1/1;box-shadow:0 6px #2e5d6b1a}.friend-gallery .pic img{width:100%;height:100%;object-fit:cover}@media(max-width:720px){.nav-inner{flex-direction:column;gap:12px}.brand{justify-content:center}.brand .logo-img{height:56px}header.nav nav{width:100%}header.nav nav ul{justify-content:center;gap:8px 8px;row-gap:8px}header.nav nav a{padding:9px 14px;font-size:.95rem}}@media(max-width:400px){header.nav nav ul{display:grid;grid-template-columns:1fr 1fr;gap:8px}header.nav nav a{text-align:center;padding:10px 8px}}@media(max-width:720px){header.nav{padding:10px 0}.nav-inner{flex-direction:column;gap:10px;flex-wrap:nowrap}.brand{justify-content:center}header.nav nav{width:100%}header.nav nav ul{display:flex;flex-wrap:nowrap;justify-content:flex-start;overflow-x:auto;gap:8px;padding:2px 16px 6px;margin:0 -16px;scrollbar-width:none;-webkit-overflow-scrolling:touch}header.nav nav ul::-webkit-scrollbar{display:none}header.nav nav li{flex:0 0 auto}header.nav nav a{white-space:nowrap;padding:9px 16px;font-size:.95rem}}@media(max-width:400px){header.nav nav ul{display:flex;grid-template-columns:none}}.hero-play{position:absolute;left:50%;bottom:14px;transform:translate(-50%);z-index:4;background:#ffffffeb;color:var(--ink);border:none;border-radius:999px;padding:10px 22px;font-family:Fredoka,sans-serif;font-weight:600;font-size:.95rem;box-shadow:0 4px #2e5d6b2e;cursor:pointer;display:none}.hero-art.needs-tap .hero-play{display:block}.burger{display:none;background:#fff;border:none;border-radius:14px;width:46px;height:46px;padding:0;cursor:pointer;box-shadow:0 3px 0 var(--red-deep);flex-direction:column;align-items:center;justify-content:center;gap:5px}.burger span{display:block;width:22px;height:3px;border-radius:2px;background:var(--ink);transition:transform .2s ease,opacity .2s ease}.burger.open span:nth-child(1){transform:translateY(8px) rotate(45deg)}.burger.open span:nth-child(2){opacity:0}.burger.open span:nth-child(3){transform:translateY(-8px) rotate(-45deg)}.burger:focus-visible{outline:3px solid #fff;outline-offset:2px}@media(max-width:720px){header.nav{padding:10px 0}.nav-inner{flex-direction:row;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:0}.brand{justify-content:flex-start}.brand .logo-img{height:50px}.burger{display:flex}header.nav nav{width:100%;max-height:0;overflow:hidden;transition:max-height .28s ease}header.nav nav.open{max-height:420px}header.nav nav ul{display:flex;flex-direction:column;align-items:stretch;gap:8px;padding:12px 0 4px;margin:0;overflow:visible}header.nav nav li{width:100%}header.nav nav a{display:block;width:100%;text-align:center;padding:12px 16px;font-size:1.05rem;white-space:nowrap}}.hero-play{left:auto;right:14px;bottom:14px;transform:none;width:46px;height:46px;padding:0;border-radius:50%;font-size:1rem;background:#ffffffd9;line-height:1}.dotty-theme[data-astro-cid-kbdpd5cl]{position:fixed;left:16px;bottom:16px;z-index:40;display:flex;align-items:center;gap:10px;background:#fff;border-radius:999px;padding:6px 18px 6px 8px;box-shadow:0 5px #2e5d6b29;font-family:Fredoka,sans-serif}.dt-btn[data-astro-cid-kbdpd5cl]{background:none;border:none;padding:0;cursor:pointer;line-height:0}.dt-btn[data-astro-cid-kbdpd5cl] svg[data-astro-cid-kbdpd5cl]{width:32px;height:46px;display:block}.dt-btn[data-astro-cid-kbdpd5cl]:focus-visible{outline:3px solid var(--sun);outline-offset:3px;border-radius:12px}.dt-lamp[data-astro-cid-kbdpd5cl]{transition:fill .3s ease}.playing[data-astro-cid-kbdpd5cl] .dt-lamp[data-astro-cid-kbdpd5cl]{fill:#ffc94a;animation:dt-blink 2.2s ease-in-out infinite}.has-ended[data-astro-cid-kbdpd5cl] .dt-lamp[data-astro-cid-kbdpd5cl]{fill:#ffc94a}@keyframes dt-blink{0%,to{opacity:1}12%{opacity:.35}24%{opacity:1}36%{opacity:.35}48%,90%{opacity:1}}.dt-meta[data-astro-cid-kbdpd5cl]{display:flex;flex-direction:column;gap:2px}.dt-label[data-astro-cid-kbdpd5cl]{font-weight:600;font-size:.9rem;color:var(--ink)}.dt-vol[data-astro-cid-kbdpd5cl]{width:74px;accent-color:var(--red);display:none}.dotty-theme[data-astro-cid-kbdpd5cl]:hover .dt-vol[data-astro-cid-kbdpd5cl],.dotty-theme[data-astro-cid-kbdpd5cl]:focus-within .dt-vol[data-astro-cid-kbdpd5cl]{display:block}@media(pointer:coarse){.dotty-theme[data-astro-cid-kbdpd5cl]:hover .dt-vol[data-astro-cid-kbdpd5cl],.dotty-theme[data-astro-cid-kbdpd5cl]:focus-within .dt-vol[data-astro-cid-kbdpd5cl]{display:none}}@media(max-width:480px){.dotty-theme[data-astro-cid-kbdpd5cl]{padding:6px 12px 6px 6px}.dt-label[data-astro-cid-kbdpd5cl]{font-size:.8rem}}@media(prefers-reduced-motion:reduce){.playing[data-astro-cid-kbdpd5cl] .dt-lamp[data-astro-cid-kbdpd5cl]{animation:none}}
