*{box-sizing:border-box;margin:0;padding:0}html{scroll-behavior:smooth}body{font-family:var(--font-body);color:var(--ink);background:var(--cream);-webkit-font-smoothing:antialiased;line-height:1.65;overflow-x:hidden}img{max-width:100%;height:auto;display:block}a{color:inherit;text-decoration:none}.announce{z-index:60;min-height:var(--ann-h);background:var(--navy);color:#fff;text-align:center;justify-content:center;align-items:center;gap:12px;padding:8px 44px;font-size:.86rem;font-weight:500;line-height:1.3;display:flex;position:fixed;top:0;left:0;right:0}.announce b{color:var(--pink);font-weight:700}.announce-x{color:#fff;cursor:pointer;opacity:.7;background:0 0;border:none;padding:6px;font-size:1.3rem;line-height:1;position:absolute;top:50%;right:10px;transform:translateY(-50%)}.announce-x:hover{opacity:1}.nl-bar{flex-wrap:nowrap;justify-content:center;align-items:center;gap:14px;display:flex}.nl-pitch{white-space:nowrap;font-weight:600}.nl-toggle{font:inherit;background:var(--pink);color:var(--navy);cursor:pointer;white-space:nowrap;border:none;border-radius:999px;padding:7px 18px;font-size:.82rem;font-weight:700;transition:background .2s,transform .2s}.nl-toggle:hover{background:#fff;transform:translateY(-1px)}.nl-pop{z-index:61;width:min(380px,94vw);color:var(--ink);text-align:left;background:#fff;border-radius:16px;margin-top:10px;padding:16px;animation:.18s nlPopIn;position:absolute;top:100%;left:50%;transform:translate(-50%);box-shadow:0 26px 64px -26px #292574a6}.nl-pop[hidden]{display:none}.nl-form{align-items:center;gap:8px;display:flex}.nl-input{min-width:0;font:inherit;border:1.5px solid var(--line);background:var(--cream);color:var(--ink);border-radius:999px;flex:1;padding:10px 14px;font-size:.92rem}.nl-input:focus{border-color:var(--navy);outline:none;box-shadow:0 0 0 3px #29257424}.nl-btn{font:inherit;background:var(--navy);color:#fff;cursor:pointer;white-space:nowrap;border:none;border-radius:999px;padding:10px 16px;font-size:.85rem;font-weight:700;transition:background .2s}.nl-btn:hover{background:var(--navy-2)}.nl-btn:disabled{opacity:.6;cursor:default}.nl-hp{opacity:0;pointer-events:none;width:1px;height:1px;left:-9999px;position:absolute!important}.nl-msg{color:var(--navy);margin:8px 2px 0;font-size:.82rem;font-weight:600}.nl-msg:empty{display:none}.nl-msg.err{color:var(--pink-text)}.nl-ds{color:var(--muted);margin:8px 2px 0;font-size:.74rem;text-decoration:underline;display:inline-block}.nl-ds:hover{color:var(--navy)}@keyframes nlPopIn{0%{opacity:0;transform:translate(-50%)translateY(-6px)}to{opacity:1;transform:translate(-50%)translateY(0)}}@media (width<=680px){.nl-lead{display:none}}.nl-thanks{z-index:200;backdrop-filter:blur(4px);background:#1c19588c;justify-content:center;align-items:center;padding:20px;animation:.25s nlFade;display:flex;position:fixed;inset:0}.nl-thanks[hidden]{display:none}.nl-thanks-card{text-align:center;background:#fff;border-radius:22px;width:100%;max-width:420px;padding:clamp(28px,5vw,40px) clamp(24px,4vw,34px);animation:.3s cubic-bezier(.2,.8,.2,1) nlPop;box-shadow:0 30px 80px -30px #29257499}.nl-thanks-ico{background:var(--pink-soft);width:66px;height:66px;color:var(--pink-deep);border-radius:50%;justify-content:center;align-items:center;margin:0 auto 18px;display:flex}.nl-thanks-card h2{font-family:var(--font-display);color:var(--navy);margin-bottom:10px;font-size:1.5rem;font-weight:800}.nl-thanks-card p{color:var(--muted);margin-bottom:24px}@keyframes nlFade{0%{opacity:0}to{opacity:1}}@keyframes nlPop{0%{opacity:0;transform:translateY(14px)scale(.96)}to{opacity:1;transform:none}}body.ann-closed{--ann-h:0px}body.ann-closed .announce{display:none}.nav{top:var(--ann-h);z-index:50;background:0 0;justify-content:space-between;align-items:center;padding:18px clamp(16px,4vw,48px);transition:padding .35s,background .35s,box-shadow .35s,top .35s;display:flex;position:fixed;left:0;right:0}.nav.scrolled{backdrop-filter:blur(12px);background:#fff8fbeb;padding:11px clamp(16px,4vw,48px);box-shadow:0 6px 30px -18px #29257480}.nav .brand{opacity:0;pointer-events:none;transition:opacity .35s;display:inline-flex}.nav .brand.show{opacity:1;pointer-events:auto}.nav .logo{height:40px;transition:height .35s}.nav.scrolled .logo{height:34px}.nav .links{align-items:center;gap:26px;font-size:.95rem;font-weight:500;display:flex}.nav .links a:not(.btn){color:var(--navy);opacity:.85;transition:opacity .2s;position:relative}.nav .links a:not(.btn):after{content:"";background:var(--pink-deep);width:0;height:2px;transition:width .25s;position:absolute;bottom:-5px;left:0}.nav .links a:not(.btn):hover{opacity:1}.nav .links a:not(.btn):hover:after{width:100%}.burger{cursor:pointer;background:0 0;border:none;flex-direction:column;gap:5px;padding:8px;display:none}.burger span{background:var(--navy);border-radius:3px;width:26px;height:3px;transition:transform .3s,opacity .3s}.burger[aria-expanded=true] span:first-child{transform:translateY(8px)rotate(45deg)}.burger[aria-expanded=true] span:nth-child(2){opacity:0}.burger[aria-expanded=true] span:nth-child(3){transform:translateY(-8px)rotate(-45deg)}.hero{background:radial-gradient(900px 480px at 10% 108%,#f4aacc73,transparent 62%), radial-gradient(1100px 560px at 82% -8%,var(--pink) 0%,var(--pink-soft) 46%,var(--cream) 76%);align-items:center;min-height:96svh;padding:clamp(180px,22svh,260px) 0 110px;display:flex;position:relative;overflow:hidden}.glow{pointer-events:none;will-change:transform;background:radial-gradient(closest-side,#f4aacc8c,#f4aacc00 72%);position:absolute}.g1{z-index:0;width:min(920px,80vw);height:680px;top:-240px;right:-200px}.g2{z-index:0;opacity:.85;width:640px;height:520px;bottom:-200px;left:-220px}.g3{z-index:4;background:radial-gradient(closest-side,#e2719f57,#f4aacc00 74%);width:min(860px,72vw);height:400px;bottom:-160px;left:16%}.hero-athlete{z-index:1;pointer-events:none;user-select:none;opacity:0;will-change:transform;width:clamp(360px,50vw - 180px,560px);height:auto;transition:opacity .6s;position:absolute;top:11%}.hero-athlete--left{top:21%;left:auto;right:calc(50% + 72px)}.hero-athlete--right{left:calc(50% + 72px);right:auto}.hero-athlete.loaded{opacity:1}@media (width<=1100px){.hero-athlete{display:none}}.hero .container{z-index:2;text-align:center;max-width:800px;margin-inline:auto;position:relative}.hero .cta-row{justify-content:center;margin-top:30px}.hero .tagline{margin-inline:auto}.hero-logo{width:clamp(200px,21vw,325px);height:auto;margin:0 auto;display:block}.hero .sub{color:var(--navy);max-width:46ch;margin:26px auto 0;font-size:clamp(1.05rem,2.3vw,1.28rem);font-weight:600}@keyframes logoIn{0%{opacity:0;filter:blur(8px);transform:scale(.82)rotate(-5deg)}to{opacity:1;filter:blur();transform:none}}@keyframes softIn{0%{opacity:0}}.hero-logo{animation:1s cubic-bezier(.2,.75,.25,1.08) .1s both logoIn}.hero .sub{animation:.9s .5s both softIn}.glow{animation:1.6s .15s both softIn}@keyframes athInLeft{0%{opacity:0;transform:translate(-46px)scale(.96)}to{opacity:1;transform:translate(0)scale(1)}}@keyframes athInRight{0%{opacity:0;transform:translate(46px)scale(.96)}to{opacity:1;transform:translate(0)scale(1)}}.hero-athlete--left.loaded{animation:1.2s cubic-bezier(.2,.8,.2,1) .2s both athInLeft}.hero-athlete--right.loaded{animation:1.2s cubic-bezier(.2,.8,.2,1) .2s both athInRight}.hero-athlete.px-on{animation:none}.hero .tagline{color:var(--pink-text);letter-spacing:.02em;margin-bottom:28px;font-weight:600}.cta-row{flex-wrap:wrap;gap:14px;display:flex}.datecard{background:linear-gradient(150deg,var(--navy),var(--navy-grad));color:#fff;box-shadow:var(--shadow);border-radius:24px;max-width:620px;margin:34px auto 0;padding:clamp(28px,4vw,44px) clamp(24px,4vw,40px);position:relative;overflow:hidden}.datecard:before{content:"";pointer-events:none;background:radial-gradient(circle,#f4aacc66,#0000 70%);border-radius:50%;width:300px;height:300px;animation:9s ease-in-out infinite glow;position:absolute;top:-130px;right:-90px}.datecard:after{content:"";pointer-events:none;background:radial-gradient(circle,#f4aacc38,#0000 70%);border-radius:50%;width:210px;height:210px;animation:13s ease-in-out infinite reverse glow;position:absolute;bottom:-90px;left:-60px}@keyframes glow{0%,to{transform:translate(0)}50%{transform:translate(-20px,16px)}}.metrics{z-index:1;grid-template-columns:repeat(3,1fr);gap:clamp(6px,2vw,18px);display:grid;position:relative}.metric{text-align:center;padding:4px}.metric .num{font-family:var(--font-display);color:var(--pink);font-variant-numeric:tabular-nums;font-size:clamp(2.1rem,6.5vw,3.3rem);font-weight:800;line-height:1;display:block}.metric .lab{opacity:.85;margin-top:10px;font-size:clamp(.95rem,1.8vw,1.05rem);font-weight:600;display:block}.js .reveal .metric{opacity:0;transform:translateY(16px)}.js .reveal.in .metric{opacity:1;transition:opacity .6s,transform .6s cubic-bezier(.2,.7,.2,1);transform:none}.js .reveal.in .metric:nth-child(2){transition-delay:.12s}.js .reveal.in .metric:nth-child(3){transition-delay:.24s}.count-wrap{background:var(--navy);color:#fff;padding:clamp(30px,4.5vw,46px) 0;position:relative;overflow:hidden}.count-wrap:before{content:"";pointer-events:none;background:radial-gradient(circle,#f4aacc40,#0000 70%);border-radius:50%;width:300px;height:300px;position:absolute;top:-140px;right:-60px}.count-wrap .container{z-index:1;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:24px;display:flex;position:relative}.count-wrap .lab{font-family:var(--font-display);color:#fff;font-size:clamp(1.15rem,2.2vw,1.5rem);font-weight:800;line-height:1.1}.countdown{gap:clamp(8px,1.4vw,14px);display:flex}.cd{text-align:center;background:#ffffff17;border-radius:18px;min-width:84px;padding:14px 20px;transition:transform .25s,background .25s}.cd:nth-child(odd){transform:rotate(-1.5deg)}.cd:nth-child(2n){transform:rotate(1.5deg)}.cd:hover{background:#f4aacc2e;transform:translateY(-5px)rotate(0)}.cd .num{font-family:var(--font-display);color:#fff;font-variant-numeric:tabular-nums;font-size:clamp(2rem,4.4vw,2.8rem);font-weight:800;line-height:1}.cd .unit{text-transform:uppercase;letter-spacing:.14em;color:var(--pink);margin-top:9px;font-size:.66rem;font-weight:700}.sec{padding:clamp(64px,9vw,108px) 0}.sec.alt{background:#fff}.head{max-width:62ch}.head.center{text-align:center;margin-inline:auto}.kicker{color:var(--pink-text);letter-spacing:.16em;text-transform:uppercase;margin-bottom:12px;font-size:.78rem;font-weight:700}.sec h2{font-family:var(--font-display);color:var(--navy);letter-spacing:-.01em;text-wrap:balance;margin-bottom:16px;font-size:clamp(1.9rem,4.4vw,3rem);font-weight:800;line-height:1.06}.sec .intro{color:var(--muted);text-wrap:pretty;margin-bottom:48px;font-size:1.06rem}.head.center .intro{margin-inline:auto}.fest-grid{grid-template-columns:1.05fr .95fr;align-items:center;gap:clamp(28px,5vw,64px);display:grid}.fest-grid .intro{margin-bottom:0}.fest-media{border-radius:var(--r);box-shadow:var(--shadow);position:relative;overflow:hidden}.fest-media img{aspect-ratio:6/5;object-fit:cover;width:100%}.fest-plan{max-width:900px;margin:clamp(28px,4vw,48px) auto 0}.fest-plan img{border-radius:var(--r);width:100%;height:auto;box-shadow:var(--shadow);display:block}.fest-plan figcaption{text-align:center;color:var(--muted);margin-top:12px;font-size:.9rem}.fest-plan figcaption a{color:var(--pink-text);border-bottom:1px solid var(--pink);font-weight:600}.cta-grid{grid-template-columns:repeat(3,minmax(0,1fr));align-items:stretch;gap:20px;display:grid}.cta-card{border-radius:var(--r);background:#fff;flex-direction:column;padding:clamp(28px,3.5vw,40px);transition:transform .3s,box-shadow .3s;display:flex;box-shadow:0 8px 30px -20px #29257459}.cta-card:hover{box-shadow:var(--shadow);transform:translateY(-6px)}.cta-card.is-primary{background:var(--navy);transform:translateY(-6px);box-shadow:0 20px 48px -18px #29257499}.cta-card.is-primary:hover{transform:translateY(-12px);box-shadow:0 26px 60px -20px #292574a8}.cta-card.is-primary h3{color:#fff}.cta-card.is-primary p{color:#cfcce8}.cta-card .tag{background:var(--navy);color:var(--pink);letter-spacing:.1em;text-transform:uppercase;border-radius:999px;align-self:flex-start;margin-bottom:18px;padding:6px 14px;font-size:.72rem;font-weight:600}.cta-card h3{font-family:var(--font-display);color:var(--navy);overflow-wrap:break-word;margin-bottom:12px;font-size:1.4rem;font-weight:700;line-height:1.15}.cta-card p{color:var(--muted);flex:1;margin-bottom:24px}.cta-card .btn{align-self:flex-start}.soon{color:var(--pink-text);background:var(--pink-soft);border-radius:999px;align-self:flex-start;padding:12px 22px;font-weight:600}.vereine{grid-template-columns:repeat(6,1fr);align-items:center;gap:18px;display:grid}.vereine .v{aspect-ratio:1;justify-content:center;align-items:center;padding:clamp(8px,1.6vw,18px);transition:transform .3s;display:flex}.vereine .v:hover{transform:translateY(-5px)scale(1.04)}.vereine .v img{object-fit:contain;mix-blend-mode:multiply;max-width:100%;max-height:100%}.tierlabel{text-align:center;letter-spacing:.14em;text-transform:uppercase;color:var(--pink-text);margin-bottom:24px;font-size:.78rem;font-weight:600}.partners-gold{flex-wrap:wrap;justify-content:center;align-items:center;gap:clamp(40px,7vw,88px);margin-top:clamp(30px,4.5vw,56px);display:flex}.partners-gold .pg{transition:transform .35s;display:inline-flex}.partners-gold .pg:hover{transform:translateY(-7px)scale(1.06)}.partners-gold img{object-fit:contain;mix-blend-mode:multiply;filter:drop-shadow(0 12px 20px #2925741f);width:auto;height:clamp(76px,9.5vw,116px);transition:filter .35s}.partners-gold .pg:hover img{filter:drop-shadow(0 18px 26px #2925743d)}.partners-gold .pg-wide img{height:clamp(52px,6.5vw,80px)}.partner-cta{text-align:center;flex-direction:column;align-items:center;gap:14px;margin-top:clamp(30px,4.5vw,52px);display:flex}.partner-link{color:var(--muted);border-bottom:2px solid var(--pink);padding-bottom:2px;font-size:.92rem;font-weight:600;transition:color .2s}.partner-link:hover{color:var(--navy)}.news-slider{position:relative}.news{scroll-snap-type:x mandatory;scrollbar-width:none;-webkit-overflow-scrolling:touch;gap:22px;padding:20px max(50vw - 570px,4vw) 38px;scroll-padding-inline:max(50vw - 570px,4vw);display:flex;overflow-x:auto}.news::-webkit-scrollbar{display:none}.news>.ncard{scroll-snap-align:start;flex:0 0 clamp(280px,84vw,400px)}.news{cursor:grab;-webkit-user-select:none;user-select:none}.news.grabbing{cursor:grabbing;scroll-snap-type:none}.news.grabbing .ncard{cursor:grabbing}.news-arrow{z-index:3;background:var(--navy);color:#fff;cursor:pointer;border:none;border-radius:50%;justify-content:center;align-items:center;width:48px;height:48px;font-size:1.2rem;transition:background .2s,transform .2s,opacity .25s;display:none;position:absolute;top:40%;box-shadow:0 12px 26px -12px #29257499}.news-arrow:hover{background:var(--pink-deep);transform:scale(1.08)}.news-arrow:disabled{opacity:0;pointer-events:none}.news-arrow.prev{left:clamp(8px,2vw,28px)}.news-arrow.next{right:clamp(8px,2vw,28px)}@media (width>=901px){.news-arrow{display:flex}}.ncard.ncard-all{background:linear-gradient(160deg,var(--pink),var(--pink-soft) 85%)}.ncard.ncard-all .nbody{justify-content:center}.ncard.ncard-all .ndate{color:var(--navy)}.ncard.ncard-all .ntitle{margin-bottom:0}.ncard.ncard-all .more{border-color:var(--navy)}.nl-cta{background:linear-gradient(120deg,var(--navy),var(--navy-2));border-radius:var(--r);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:22px;margin-top:clamp(28px,4vw,44px);padding:clamp(24px,4vw,40px);display:flex;box-shadow:0 18px 50px -28px #29257480}.nl-cta h3{font-family:var(--font-display);color:#fff;font-size:clamp(1.2rem,2.6vw,1.55rem);font-weight:800}.nl-cta p{color:#cfcce8;max-width:52ch;margin-top:6px}@media (width<=560px){.nl-cta{text-align:center;justify-content:center}}.mood{height:clamp(280px,44vw,480px);position:relative;overflow:hidden}.mood img{object-fit:cover;object-position:center 35%;width:100%;height:100%}.mood:after{content:"";background:linear-gradient(90deg,#292574d1,#2925744d 70%,#2925741f);position:absolute;inset:0}.mood-cap{z-index:2;max-width:42ch;padding:clamp(22px,4vw,48px);position:absolute;bottom:0;left:0}.mood-cap b{font-family:var(--font-display);color:#fff;text-shadow:0 2px 16px #00000059;font-size:clamp(1.5rem,3.6vw,2.6rem);font-weight:800;line-height:1.05;display:block}.mood-cap span{color:#fff;opacity:.92;letter-spacing:.04em;margin-top:10px;font-weight:500;display:block}.band{background:radial-gradient(820px 400px at 22% 0%,var(--pink) 0,var(--navy-2) 70%);color:#fff;text-align:center;padding:clamp(60px,8vw,100px) 0}.band h2{font-family:var(--font-display);color:#fff;margin-bottom:14px;font-size:clamp(2rem,5vw,3.2rem);font-weight:800}.band p{opacity:.9;max-width:48ch;margin:0 auto 30px;font-size:1.1rem}footer{background:var(--navy-2);color:#cfcce8;padding:64px 0 28px;font-size:.95rem}footer .cols{grid-template-columns:1.5fr 1fr 1fr;gap:40px;margin-bottom:40px;display:grid}footer .logo{filter:brightness(0)invert();height:46px;margin-bottom:16px}footer h2{color:#fff;letter-spacing:.1em;text-transform:uppercase;margin-bottom:14px;font-size:.82rem;font-weight:600}footer a{opacity:.82;margin-bottom:8px;transition:opacity .2s,color .2s;display:block}footer a:hover{opacity:1;color:var(--pink)}footer .bottom{opacity:.78;border-top:1px solid #ffffff1f;flex-wrap:wrap;justify-content:space-between;gap:14px;padding-top:20px;font-size:.82rem;display:flex}@media (width<=900px){.hero .container{text-align:center;grid-template-columns:1fr}.hero .sub,.hero .tagline{margin-inline:auto}.cta-row{justify-content:center}.datecard{text-align:left;max-width:460px;margin-inline:auto}.fest-grid{grid-template-columns:1fr;gap:32px}.fest-grid .head{text-align:center;max-width:none;margin-inline:auto}.fest-grid .intro{margin-inline:auto}.fest-media{order:-1;max-width:560px;margin-inline:auto}.vereine{grid-template-columns:repeat(3,1fr)}footer .cols{grid-template-columns:1fr 1fr}.nav .links{background:var(--cream);box-shadow:var(--shadow);flex-direction:column;align-items:stretch;gap:18px;padding:22px;display:none;position:absolute;top:100%;left:0;right:0}.nav .links.open{display:flex}.nav .links .btn{justify-content:center}.burger{display:flex}}@media (width<=720px){.cta-grid{grid-template-columns:1fr}.cta-card.is-primary{order:-1}}@media (width<=560px){.vereine{grid-template-columns:repeat(2,1fr)}footer .cols{grid-template-columns:1fr}.count-wrap .container{text-align:center;flex-direction:column;align-items:stretch;gap:16px}.countdown{grid-template-columns:repeat(2,1fr);display:grid}.cd{min-width:0}}
