:root{--rosa: #ff2d8f;--rosa-soft: #ff8ac4;--rosa-pale: #ffd9ea;--violet: #7b2ff7;--cyan: #00c2ff;--mint: #06d6a0;--sun: #ffd166;--orange: #ff6f3c;--cherry: #e8264c;--ink: #2b0b3a;--ink-soft: #5a3a6b;--paper: #fffdf9;--radius-lg: 28px;--radius-md: 20px;--radius-sm: 14px;--shadow-pop: 0 18px 40px rgba(123, 47, 247, .22);--shadow-soft: 0 10px 24px rgba(255, 45, 143, .18);--font-display: "Baloo 2", "Trebuchet MS", system-ui, sans-serif;--font-body: "Fredoka", "Segoe UI", system-ui, -apple-system, sans-serif}*,*:before,*:after{box-sizing:border-box}html,body{margin:0;padding:0;min-height:100%}body{font-family:var(--font-body);color:var(--ink);background:linear-gradient(135deg,#ffe3f2,#fff6e0,#e0fbff,#f0e5ff,#ffe3f2);background-size:400% 400%;animation:gradientDrift 26s ease infinite;overflow-x:hidden;-webkit-font-smoothing:antialiased}@keyframes gradientDrift{0%{background-position:0% 50%}50%{background-position:100% 50%}to{background-position:0% 50%}}#root{min-height:100vh}.visually-hidden{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap;border:0}.app{position:relative;min-height:100vh;z-index:0}.shell{position:relative;z-index:2;max-width:1180px;margin:0 auto;padding:clamp(20px,4vw,48px) clamp(16px,4vw,40px) 80px}.backdrop{position:fixed;inset:0;z-index:0;pointer-events:none;overflow:hidden}.blob{position:absolute;border-radius:50%;filter:blur(70px);opacity:.5;will-change:transform}.blob--pink{width:46vw;height:46vw;min-width:300px;min-height:300px;background:radial-gradient(circle at 30% 30%,#ff2d8f,#ff8ac4);top:-12vw;left:-10vw;animation:blobFloat 22s ease-in-out infinite}.blob--mint{width:38vw;height:38vw;min-width:260px;min-height:260px;background:radial-gradient(circle at 40% 40%,#06d6a0,#00c2ff);bottom:-14vw;right:-8vw;animation:blobFloat 28s ease-in-out infinite reverse}.blob--sun{width:30vw;height:30vw;min-width:220px;min-height:220px;background:radial-gradient(circle at 50% 50%,#ffd166,#ff6f3c);top:45%;left:55%;animation:blobFloat 24s ease-in-out infinite 3s}.blob--violet{width:32vw;height:32vw;min-width:220px;min-height:220px;background:radial-gradient(circle at 50% 50%,#7b2ff7,#c77dff);top:10%;right:12%;animation:blobFloat 30s ease-in-out infinite 6s}@keyframes blobFloat{0%,to{transform:translateZ(0) scale(1)}33%{transform:translate3d(6vw,4vh,0) scale(1.12)}66%{transform:translate3d(-4vw,-5vh,0) scale(.92)}}.sprinkles{position:absolute;inset:0;opacity:.35;background-image:radial-gradient(circle,rgba(255,45,143,.9) 2px,transparent 2.5px),radial-gradient(circle,rgba(6,214,160,.9) 2px,transparent 2.5px),radial-gradient(circle,rgba(255,209,102,.9) 2px,transparent 2.5px);background-size:140px 140px,190px 190px,240px 240px;background-position:0 0,60px 70px,120px 30px;animation:sprinkleShift 40s linear infinite}@keyframes sprinkleShift{to{background-position:140px 140px,250px 260px,360px 270px}}.floaties{position:absolute;inset:0}.floaty{position:absolute;bottom:-12vh;opacity:.6;filter:drop-shadow(0 4px 6px rgba(123,47,247,.2));animation-name:floatUp;animation-timing-function:linear;animation-iteration-count:infinite;will-change:transform,opacity}@keyframes floatUp{0%{transform:translateZ(0) rotate(0);opacity:0}10%{opacity:.7}90%{opacity:.55}to{transform:translate3d(var(--drift, 0px),-122vh,0) rotate(360deg);opacity:0}}.confetti-canvas{position:fixed;inset:0;z-index:40;pointer-events:none}.pill{display:inline-flex;align-items:center;gap:6px;padding:7px 16px;border-radius:999px;font-weight:600;font-size:.85rem;color:#fff;white-space:nowrap;box-shadow:var(--shadow-soft);animation:pillPop .6s cubic-bezier(.34,1.56,.64,1) both}.pill--rosa{background:linear-gradient(135deg,#ff2d8f,#ff6f9f)}.pill--mint{background:linear-gradient(135deg,#06d6a0,#00c2ff);animation-delay:.1s}.pill--sun{background:linear-gradient(135deg,#ffd166,#ff6f3c);animation-delay:.2s;color:#4a2600}@keyframes pillPop{0%{transform:scale(.4) translateY(10px);opacity:0}to{transform:scale(1) translateY(0);opacity:1}}.btn{font-family:var(--font-body);font-weight:600;font-size:1rem;border:none;cursor:pointer;border-radius:999px;padding:12px 24px;transition:transform .18s ease,box-shadow .18s ease,filter .18s ease}.btn:hover{transform:translateY(-2px) scale(1.03)}.btn:active{transform:translateY(1px) scale(.98)}.btn:focus-visible{outline:3px solid var(--violet);outline-offset:3px}.btn--primary{background:linear-gradient(135deg,var(--rosa) 0%,var(--violet) 100%);color:#fff;box-shadow:var(--shadow-pop)}.btn--ghost{background:#ffffffbf;color:var(--ink);border:2px solid rgba(255,45,143,.35);backdrop-filter:blur(6px)}.btn--tiny{background:#fff9;color:var(--ink-soft);border:1px dashed rgba(123,47,247,.4);font-size:.82rem;padding:6px 14px}.btn--big{font-size:1.25rem;padding:18px 40px;font-family:var(--font-display);font-weight:800}.pulse{animation:pulse 1.6s ease-in-out infinite}@keyframes pulse{0%,to{box-shadow:0 18px 40px #7b2ff738;transform:scale(1)}50%{box-shadow:0 22px 55px #ff2d8f80;transform:scale(1.045)}}.gate{text-align:center;display:flex;flex-direction:column;align-items:center;gap:22px;padding-top:clamp(10px,3vh,40px);animation:fadeUp .8s ease both}@keyframes fadeUp{0%{opacity:0;transform:translateY(26px)}to{opacity:1;transform:translateY(0)}}.gate__jersey{animation:swing 5s ease-in-out infinite;transform-origin:50% 8%}@keyframes swing{0%,to{transform:rotate(-4deg)}50%{transform:rotate(4deg)}}.gate__kicker,.hero__kicker,.finale__kicker{display:flex;flex-wrap:wrap;gap:10px;justify-content:center;margin:0}.gate__title{font-family:var(--font-display);font-size:clamp(2.4rem,8vw,4.6rem);margin:0;line-height:1.05}.wave-text span{display:inline-block;background:linear-gradient(135deg,#ff2d8f,#7b2ff7,#00c2ff,#06d6a0,#ffd166);background-size:300% 300%;-webkit-background-clip:text;background-clip:text;color:transparent;animation:waveChar 2.6s ease-in-out infinite,gradientDrift 8s ease infinite}@keyframes waveChar{0%,to{transform:translateY(0) rotate(0)}30%{transform:translateY(-12px) rotate(-4deg)}60%{transform:translateY(4px) rotate(3deg)}}.gate__lead,.hero__lead,.finale__lead{max-width:620px;font-size:clamp(1rem,2.4vw,1.15rem);line-height:1.65;color:var(--ink-soft);margin:0}.countdown{display:grid;grid-template-columns:repeat(4,minmax(70px,130px));gap:clamp(8px,2vw,18px)}.countdown__cell{background:#ffffffe6;border-radius:var(--radius-md);padding:clamp(12px,2.5vw,22px) 8px;box-shadow:var(--shadow-pop);border:3px solid transparent;background-image:linear-gradient(#ffffffeb,#ffffffeb),linear-gradient(135deg,#ff2d8f,#7b2ff7,#00c2ff,#06d6a0);background-origin:border-box;background-clip:padding-box,border-box;animation:cellIn .7s cubic-bezier(.34,1.56,.64,1) both,bob 3.4s ease-in-out infinite}@keyframes cellIn{0%{opacity:0;transform:translateY(30px) scale(.8)}to{opacity:1;transform:translateY(0) scale(1)}}@keyframes bob{0%,to{translate:0 0}50%{translate:0 -7px}}.countdown__value{font-family:var(--font-display);font-weight:800;font-size:clamp(2rem,7vw,3.6rem);line-height:1;background:linear-gradient(135deg,var(--rosa),var(--violet));-webkit-background-clip:text;background-clip:text;color:transparent;animation:flipIn .45s ease}@keyframes flipIn{0%{transform:rotateX(-80deg);opacity:.2}to{transform:rotateX(0);opacity:1}}.countdown__label{margin-top:6px;font-size:clamp(.7rem,1.8vw,.9rem);font-weight:600;letter-spacing:.06em;text-transform:uppercase;color:var(--ink-soft)}.gate__timezone{margin:0;font-size:.88rem;color:var(--ink-soft);opacity:.85}.peloton{position:relative;width:min(100%,660px);height:74px;overflow:hidden}.peloton__road{position:absolute;bottom:14px;left:0;right:0;height:8px;border-radius:99px;background:repeating-linear-gradient(90deg,#ff2d8f 0 26px,#ffd166 26px 52px,#06d6a0 52px 78px,#00c2ff 78px 104px);background-size:104px 100%;animation:roadRun 2.4s linear infinite;opacity:.7}@keyframes roadRun{to{background-position:-104px 0}}.peloton__rider,.peloton__gelato{position:absolute;bottom:18px;font-size:30px;animation:rideAcross 7s linear infinite}.peloton__rider--1{animation-delay:0s}.peloton__rider--2{animation-delay:.8s;font-size:26px}.peloton__rider--3{animation-delay:1.5s;font-size:28px}.peloton__gelato{animation-delay:3.2s;font-size:24px;animation-duration:8s}@keyframes rideAcross{0%{transform:translate(-70px) translateY(0)}50%{transform:translate(calc(50vw - 60px)) translateY(-5px)}to{transform:translate(calc(100% + 700px)) translateY(0)}}.gate__facts{display:flex;flex-wrap:wrap;gap:14px;justify-content:center}.fact{background:#ffffffe6;border-radius:var(--radius-sm);padding:14px 20px;min-width:150px;box-shadow:var(--shadow-soft);border:2px solid rgba(255,45,143,.2);transition:transform .2s ease}.fact:hover{transform:translateY(-4px) rotate(-1.5deg)}.fact__value{display:block;font-family:var(--font-display);font-weight:800;font-size:1.5rem;color:var(--rosa)}.fact__label{display:block;font-size:.8rem;color:var(--ink-soft);margin-top:4px}.bib{position:relative;display:inline-block;padding-top:10px;animation:bibSwing 6s ease-in-out infinite;transform-origin:50% 0}@keyframes bibSwing{0%,to{transform:rotate(-2.2deg)}50%{transform:rotate(2.2deg)}}.bib__pin{position:absolute;top:0;left:50%;width:14px;height:14px;margin-left:-7px;border-radius:50%;background:linear-gradient(135deg,#d9d9d9,#8f8f8f);box-shadow:0 2px 4px #0006;z-index:2}.bib__plate{background:#16161a;color:#fff;border-radius:10px;padding:10px 14px 8px;width:260px;box-shadow:0 14px 30px #00000059;border:2px solid #2c2c33}.bib__header{display:flex;align-items:center;gap:8px;border-bottom:1px solid #33333c;padding-bottom:6px}.bib__chip{background:#fc0;color:#16161a;font-weight:800;font-size:.7rem;padding:2px 6px;border-radius:3px;letter-spacing:.04em}.bib__event{display:flex;flex-direction:column;line-height:1.1;text-align:left}.bib__event strong{font-size:.72rem;letter-spacing:.08em}.bib__event span{font-size:.6rem;color:#b9b9c4;letter-spacing:.14em}.bib__number{background:#fff;border-radius:6px;margin:8px 0 6px;padding:6px 10px 4px;display:flex;flex-direction:column;align-items:center}.bib__digits{font-family:var(--font-display);font-weight:800;font-size:clamp(2.2rem,7vw,3.1rem);color:#101014;line-height:1;letter-spacing:-.02em}.bib__name{font-family:var(--font-body);font-size:.95rem;color:#3d3d47;margin-top:-2px}.bib__footer{display:flex;justify-content:space-between;align-items:center;font-size:.55rem;letter-spacing:.1em;text-transform:uppercase;color:#9a9aa6}.bib__dots{color:#fc0;letter-spacing:.2em}.puzzle{animation:fadeUp .7s ease both}.hero{display:grid;grid-template-columns:minmax(0,1.35fr) minmax(0,.65fr);gap:clamp(20px,4vw,44px);align-items:center;background:#ffffffe0;backdrop-filter:blur(12px);border-radius:var(--radius-lg);padding:clamp(20px,3.5vw,40px);box-shadow:var(--shadow-pop);border:3px solid rgba(255,45,143,.22);margin-bottom:34px}.hero__left{display:flex;flex-direction:column;gap:16px}.hero__kicker{justify-content:flex-start}.hero__title{font-family:var(--font-display);margin:0;line-height:.95;display:flex;flex-direction:column}.hero__title-line--1{font-size:clamp(1.8rem,5.4vw,3.1rem);color:var(--ink);animation:slideInLeft .7s ease both}.hero__title-line--2{font-size:clamp(3.4rem,11vw,6.2rem);animation:slideInLeft .7s ease .15s both}@keyframes slideInLeft{0%{opacity:0;transform:translate(-40px)}to{opacity:1;transform:translate(0)}}.rainbow-text{background:linear-gradient(100deg,#ff2d8f,#ff6f3c,#ffd166,#06d6a0,#00c2ff,#7b2ff7,#ff2d8f);background-size:300% 100%;-webkit-background-clip:text;background-clip:text;color:transparent;animation:rainbowShift 6s linear infinite}@keyframes rainbowShift{to{background-position:300% 0}}.hero__legend{display:flex;flex-wrap:wrap;gap:6px}.legend__item{display:inline-flex;align-items:baseline;gap:3px;background:linear-gradient(135deg,#ff2d8f1f,#00c2ff1f);border:1px solid rgba(123,47,247,.18);border-radius:8px;padding:3px 7px;font-size:.74rem;transition:transform .15s ease,background .15s ease}.legend__item:hover{transform:translateY(-3px) scale(1.08);background:linear-gradient(135deg,var(--rosa),var(--violet));color:#fff}.legend__item b{font-weight:700}.legend__item i{font-style:normal;opacity:.7}.hero__right{display:flex;flex-direction:column;align-items:center;gap:14px}.hero__jersey{animation:swing 6s ease-in-out infinite;transform-origin:50% 8%}.hero__bibnote{margin:0;font-size:.82rem;color:var(--ink-soft);text-align:center}.progress{background:#ffffffe0;border-radius:var(--radius-md);padding:18px clamp(22px,3vw,34px) 14px;box-shadow:var(--shadow-soft);border:2px solid rgba(6,214,160,.3);margin-bottom:26px}.progress__meta{display:flex;justify-content:space-between;align-items:baseline;margin-bottom:10px;font-size:.95rem}.progress__count strong{color:var(--rosa);font-size:1.2rem}.progress__percent{font-family:var(--font-display);font-weight:800;color:var(--violet);font-size:1.2rem}.progress__track{position:relative;height:16px;margin:0 34px 0 6px;border-radius:99px;background:#7b2ff724;overflow:visible}.progress__fill{height:100%;border-radius:99px;background:linear-gradient(90deg,#ff2d8f,#ff6f3c,#ffd166,#06d6a0,#00c2ff);background-size:200% 100%;transition:width .7s cubic-bezier(.34,1.3,.64,1);animation:rainbowShift 4s linear infinite}.progress__rider{position:absolute;top:-20px;font-size:28px;transform:translate(-55%);transition:left .7s cubic-bezier(.34,1.3,.64,1);filter:drop-shadow(0 3px 3px rgba(0,0,0,.2))}.progress__finish{position:absolute;right:-32px;top:-12px;font-size:22px;animation:bob 2.2s ease-in-out infinite}.progress__scoops{display:flex;gap:4px;margin-top:16px;flex-wrap:wrap}.scoop{font-size:20px;filter:grayscale(1);opacity:.35;transition:all .35s cubic-bezier(.34,1.56,.64,1)}.scoop--on{filter:none;opacity:1;transform:scale(1.25) rotate(-8deg)}.solution{background:linear-gradient(135deg,#ffecf5eb,#f0e9ffeb);backdrop-filter:blur(8px);border:3px dashed rgba(255,45,143,.45);border-radius:var(--radius-lg);padding:clamp(18px,3vw,30px);margin-bottom:30px;transition:box-shadow .5s ease,border-color .5s ease}.solution--complete{border-style:solid;border-color:var(--mint);box-shadow:0 0 0 6px #06d6a02e,var(--shadow-pop);animation:completeGlow 2.2s ease-in-out infinite}@keyframes completeGlow{0%,to{box-shadow:0 0 0 6px #06d6a02e,var(--shadow-pop)}50%{box-shadow:0 0 0 14px #ff2d8f29,0 22px 50px #ff2d8f59}}.solution__title{font-family:var(--font-display);font-size:clamp(1.4rem,4vw,2rem);margin:0 0 6px;color:var(--ink)}.solution__hint{margin:0 0 18px;font-size:.9rem;color:var(--ink-soft)}.solution__words{display:flex;flex-wrap:wrap;gap:clamp(12px,3vw,26px)}.solution__word{display:flex;gap:6px;flex-wrap:wrap}.tile{position:relative;width:clamp(38px,7vw,54px);height:clamp(46px,8.5vw,66px);border-radius:12px;background:#ffffffd9;border:2px solid rgba(123,47,247,.25);display:flex;align-items:center;justify-content:center;box-shadow:0 6px 14px #7b2ff71f;transition:transform .3s ease}.tile__index{position:absolute;top:3px;left:5px;font-size:.62rem;font-weight:600;color:var(--ink-soft);opacity:.65}.tile__letter{font-family:var(--font-display);font-weight:800;font-size:clamp(1.3rem,4.5vw,2rem);color:var(--violet)}.tile--filled{background:linear-gradient(135deg,var(--rosa),var(--violet));border-color:transparent;box-shadow:0 10px 22px #ff2d8f59;animation:tileFlip .55s cubic-bezier(.34,1.56,.64,1) both}.tile--filled .tile__letter{color:#fff}.tile--filled .tile__index{color:#ffffffbf}@keyframes tileFlip{0%{transform:rotateY(90deg) scale(.7)}60%{transform:rotateY(-12deg) scale(1.12)}to{transform:rotateY(0) scale(1)}}.solution--complete .tile--filled{animation:tileFlip .55s cubic-bezier(.34,1.56,.64,1) both,tileDance 1.6s ease-in-out infinite}@keyframes tileDance{0%,to{translate:0 0;rotate:0deg}50%{translate:0 -8px;rotate:-3deg}}.puzzle__cta{display:flex;justify-content:center;margin-bottom:30px}.grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:clamp(14px,2.4vw,22px)}.card{position:relative;background:#ffffffed;backdrop-filter:blur(8px);border-radius:var(--radius-md);padding:20px;box-shadow:var(--shadow-soft);border:2px solid rgba(255,255,255,.9);display:flex;flex-direction:column;gap:12px;overflow:hidden;animation:cardIn .6s cubic-bezier(.34,1.4,.64,1) both;transition:transform .25s ease,box-shadow .25s ease}@keyframes cardIn{0%{opacity:0;transform:translateY(28px) scale(.95)}to{opacity:1;transform:translateY(0) scale(1)}}.card:before{content:"";position:absolute;inset:0 0 auto;height:6px;background:var(--card-gradient, linear-gradient(90deg, #ff2d8f, #7b2ff7))}.card:hover{transform:translateY(-6px) rotate(-.6deg);box-shadow:0 20px 44px #7b2ff73d}.card--solved{border-color:var(--mint);background:linear-gradient(160deg,#06d6a026,#ffffffeb)}.card--pop{animation:cardPop .7s cubic-bezier(.34,1.56,.64,1)}@keyframes cardPop{0%{transform:scale(1)}40%{transform:scale(1.06) rotate(1.4deg)}to{transform:scale(1) rotate(0)}}.card--wrong{animation:shake .5s ease;border-color:var(--cherry)}@keyframes shake{0%,to{transform:translate(0)}20%{transform:translate(-9px)}40%{transform:translate(9px)}60%{transform:translate(-6px)}80%{transform:translate(6px)}}.card__head{display:flex;align-items:center;gap:12px}.card__badge{flex:0 0 auto;width:40px;height:40px;border-radius:50%;background:var(--card-gradient, linear-gradient(135deg, #ff2d8f, #7b2ff7));color:#fff;font-family:var(--font-display);font-weight:800;font-size:1.15rem;display:grid;place-items:center;box-shadow:0 6px 14px #00000029}.card__titles{display:flex;align-items:center;justify-content:space-between;gap:8px;flex:1 1 auto;min-width:0}.card__title{margin:0;font-family:var(--font-display);font-size:1.02rem;font-weight:700;color:var(--ink)}.card__emoji{font-size:1.5rem;animation:bob 3s ease-in-out infinite}.card__prompt{margin:0;font-size:.98rem;line-height:1.5;color:var(--ink-soft);flex:1 1 auto}.card__row{display:flex;align-items:center;gap:10px;flex-wrap:wrap}.card__inputwrap{display:inline-flex}.card__input{width:78px;height:56px;border-radius:var(--radius-sm);border:3px solid rgba(123,47,247,.3);background:#fff;text-align:center;font-family:var(--font-display);font-weight:800;font-size:1.7rem;color:var(--ink);transition:border-color .2s ease,box-shadow .2s ease,transform .2s ease}.card__input::placeholder{color:#5a3a6b4d}.card__input:focus{outline:none;border-color:var(--rosa);box-shadow:0 0 0 5px #ff2d8f29;transform:scale(1.04)}.card__input:disabled{background:#06d6a024;border-color:var(--mint);color:var(--mint);-webkit-text-fill-color:var(--mint);opacity:1}.card__arrow{color:var(--ink-soft);font-size:1.3rem;opacity:.6}.card__letter{width:56px;height:56px;border-radius:var(--radius-sm);border:3px dashed rgba(123,47,247,.3);display:grid;place-items:center;font-family:var(--font-display);font-weight:800;font-size:1.9rem;color:#5a3a6b59}.card__letter--filled{border-style:solid;border-color:transparent;background:linear-gradient(135deg,var(--mint),var(--cyan));color:#fff;animation:tileFlip .55s cubic-bezier(.34,1.56,.64,1) both;box-shadow:0 8px 20px #06d6a066}.card__check{margin-left:auto}.card__foot{min-height:34px;display:flex;align-items:center}.card__hint,.card__explanation{margin:0;font-size:.85rem;line-height:1.45;color:var(--ink-soft);animation:fadeUp .35s ease both}.card__explanation{color:#0b7a5c;font-weight:500}.puzzle__footer{margin-top:40px;display:flex;flex-direction:column;align-items:center;gap:12px}.puzzle__footer-note{margin:0;font-size:.85rem;color:var(--ink-soft);opacity:.8}.finale{text-align:center;display:flex;flex-direction:column;align-items:center;gap:22px;opacity:0;transform:translateY(24px);transition:opacity .7s ease,transform .7s ease}.finale--in{opacity:1;transform:translateY(0)}.finale__headline{font-family:var(--font-display);font-size:clamp(1.9rem,7.4vw,4.6rem);line-height:1.05;margin:0;display:flex;flex-wrap:wrap;justify-content:center;gap:0 clamp(10px,2vw,22px)}.finale__word{display:inline-flex}.finale__word--name{font-family:var(--font-display);background:linear-gradient(135deg,#ff2d8f,#e8264c);-webkit-background-clip:text;background-clip:text;color:transparent;animation:charDrop .7s cubic-bezier(.34,1.56,.64,1) both,wobble 2.4s ease-in-out infinite 1s;filter:drop-shadow(0 6px 14px rgba(255,45,143,.35))}@keyframes wobble{0%,to{transform:rotate(-3deg) scale(1)}50%{transform:rotate(3deg) scale(1.06)}}.finale__char{display:inline-block;background:linear-gradient(135deg,#ff2d8f,#ff6f3c,#ffd166,#06d6a0,#00c2ff,#7b2ff7);background-size:400% 400%;-webkit-background-clip:text;background-clip:text;color:transparent;animation:charDrop .6s cubic-bezier(.34,1.56,.64,1) both,gradientDrift 7s ease infinite,charFloat 3.4s ease-in-out infinite;text-shadow:0 6px 18px rgba(255,45,143,.18)}@keyframes charDrop{0%{opacity:0;transform:translateY(-60px) rotate(-16deg) scale(.4)}to{opacity:1;transform:translateY(0) rotate(0) scale(1)}}@keyframes charFloat{0%,to{translate:0 0}50%{translate:0 -6px}}.finale__cake{position:relative;display:inline-grid;place-items:center}.finale__cake-emoji{font-size:clamp(70px,16vw,130px);animation:bob 2.6s ease-in-out infinite;filter:drop-shadow(0 12px 18px rgba(255,45,143,.3))}.finale__cake-age{position:absolute;bottom:12%;font-family:var(--font-display);font-weight:800;font-size:clamp(24px,6vw,44px);color:#fff;text-shadow:0 3px 8px rgba(0,0,0,.35)}.finale__actions{display:flex;flex-wrap:wrap;gap:12px;justify-content:center;margin-top:10px}.devfooter{position:relative;z-index:3;text-align:center;padding-bottom:26px}.devfooter__link{font-size:.75rem;color:var(--ink-soft);opacity:.5;text-decoration:none;border-bottom:1px dotted currentColor;transition:opacity .2s ease}.devfooter__link:hover{opacity:1}@media (max-width: 900px){.hero{grid-template-columns:1fr;text-align:center}.hero__kicker{justify-content:center}.hero__title{align-items:center}.hero__legend{justify-content:center}.hero__lead{margin:0 auto}}@media (max-width: 560px){.countdown{grid-template-columns:repeat(2,minmax(0,1fr))}.card__check{margin-left:0}.bib__plate{width:230px}.legend__item{font-size:.68rem;padding:2px 5px}}@media (prefers-reduced-motion: reduce){*,*:before,*:after{animation-duration:.001ms!important;animation-iteration-count:1!important;transition-duration:.001ms!important;scroll-behavior:auto!important}body{animation:none;background-position:0 50%}.floaties,.peloton__rider,.peloton__gelato{display:none}}
