/* Jost lokal eingebunden; Prozessfarben: K80 und C46 M0 Y98 K0. */
@font-face{font-family:"Jost";src:url("assets/fonts/jost-variable.woff2") format("woff2");font-style:normal;font-weight:100 900;font-display:swap}
@font-face{font-family:"Jost";src:url("assets/fonts/jost-italic-variable.woff2") format("woff2");font-style:italic;font-weight:100 900;font-display:swap}
:root{--ink:#4c4e4d;--green:#96c93d;--green-dark:#4c4e4d;--paper:#fafbf6;--line:#dce2d6;--muted:#4c4e4d;--white:#fff}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:100px}body{margin:0;background:var(--paper);color:var(--ink);font:16px/1.65 "Jost",Arial,sans-serif}a{color:inherit;text-decoration:none}button,input,textarea,select{font:inherit}button,a{touch-action:manipulation}a:focus-visible,button:focus-visible,input:focus-visible,textarea:focus-visible,select:focus-visible{outline:3px solid #6b851b;outline-offset:5px}button{cursor:pointer}.wrap{max-width:1200px;width:calc(100% - 96px);margin:auto}header{background:var(--paper);border-bottom:1px solid var(--line);position:sticky;top:0;z-index:10}.header-row{min-height:100px;display:flex;align-items:center;justify-content:space-between;gap:24px}.brand{display:flex;align-items:center;gap:14px;font-size:12px;font-weight:500;letter-spacing:1.3px;line-height:1.4}.brand small{display:block;font-size:10px;font-weight:400;letter-spacing:.1px;margin-top:5px}.brand-mark{font-size:45px;letter-spacing:-4px;font-weight:500;line-height:1}.brand-mark span{color:#4c4e4d;font-size:28px;letter-spacing:-8px;vertical-align:top}nav{display:flex;gap:25px;align-items:center;font-size:13px}nav>a:not(.button):hover,.text-link:hover{color:var(--green-dark);text-decoration:underline;text-underline-offset:6px}.button{display:inline-flex;gap:30px;justify-content:space-between;align-items:center;background:var(--green);border:1px solid transparent;color:var(--ink);padding:16px 24px;border-radius:5px;font-weight:500;line-height:1.4}.button:hover{background:#c6df64}.button.small{padding:12px 18px;gap:20px}.menu-button{display:none}.hero{padding:66px 0 68px}.hero-grid{display:grid;grid-template-columns:1fr 1fr;gap:48px;align-items:center}.eyebrow{font-size:11px;letter-spacing:2px;font-weight:500;margin:0 0 24px}.dot{display:inline-block;width:8px;height:8px;border-radius:50%;background:#96c93d;margin-right:8px}h1{font-size:clamp(50px,5.3vw,76px);line-height:1.05;letter-spacing:-4px;margin:0 0 27px;font-weight:600}h1>span{color:#96c93d}.intro{max-width:450px;font-size:17px;line-height:1.7;color:var(--muted)}.actions{display:flex;gap:24px;align-items:center;flex-wrap:wrap;margin-top:30px}.text-link{font-size:13px;font-weight:500;display:inline-flex;gap:18px;align-items:center}.hero-note{font-size:12px;color:var(--muted);margin-top:23px}.hero-art{position:relative;aspect-ratio:1/1.02;background:#e6edd5;border-radius:80px 8px 80px 8px;overflow:hidden}.hero-art>img{width:100%;height:100%;object-fit:cover}.art-label{position:absolute;top:28px;left:30px;font-size:10px;font-weight:500;letter-spacing:2px}.art-note{position:absolute;bottom:24px;left:28px;background:var(--paper);padding:12px 18px;border-radius:4px;font-size:12px;transform:rotate(-4deg)}.rhythm{background:var(--ink);color:var(--white)}.rhythm-grid{display:grid;grid-template-columns:repeat(3,1fr)}.rhythm a{display:flex;flex-direction:column;padding:28px 28px 30px 0}.rhythm a+a{padding-left:30px;border-left:1px solid #4c5e49}.rhythm-day{font-size:10px;letter-spacing:1.8px;color:#c1d895}.rhythm strong{font-size:20px;margin:6px 0}.rhythm a>span:last-child{font-size:12px;color:#d2dacb}.section{padding-top:86px;padding-bottom:86px;scroll-margin-top:0}.section-top{display:flex;justify-content:space-between;gap:32px;align-items:flex-end;margin-bottom:36px}.section-top .eyebrow{margin-bottom:12px}h2{font-size:clamp(30px,3.1vw,43px);line-height:1.15;letter-spacing:-1.6px;margin:0}h3{font-size:27px;letter-spacing:-.8px;line-height:1.25;margin:18px 0}.section-top>p{font-size:14px;color:var(--muted);margin:0}.offer-grid{display:grid;grid-template-columns:.8fr 1.2fr;gap:24px}.offer{border:1px solid var(--line);padding:35px;border-radius:7px;background:white;position:relative}.offer.family{background:#f1f7e8}.offer-icon{font-size:42px;line-height:1;margin-bottom:30px;color:#4c4e4d}.tag{font-size:11px;font-weight:500;letter-spacing:.3px}.offer p{color:var(--muted);font-size:15px}.offer .location{font-size:13px;padding-top:15px;border-top:1px solid #d2dcc4;margin-top:22px}.offer .text-link{margin-top:13px}.calendar-section{background:#eff2e9}.filters{display:flex;flex-wrap:wrap;gap:9px;margin-bottom:24px}.filter{border:1px solid #cbd4c3;background:transparent;color:var(--ink);font-size:13px;border-radius:30px;padding:9px 18px}.filter.active{background:var(--ink);color:white;border-color:var(--ink)}.empty-events{border:1px dashed #bdc8b3;border-radius:6px;padding:32px;background:#f9faf5}.empty-events h3{font-size:20px;margin:0 0 8px}.empty-events p{margin:0;color:var(--muted);font-size:14px}.schedule-note{display:flex;gap:15px;margin-top:25px;font-size:13px;color:var(--muted)}.schedule-note>span{font-size:24px}.schedule-note p{margin:0}.event{display:grid;grid-template-columns:135px 1fr 1fr;align-items:center;gap:25px;padding:25px;background:white;border-bottom:1px solid var(--line)}.event:first-child{border-radius:6px 6px 0 0}.event-date{font-size:21px;font-weight:500}.event-date small{display:block;font-size:12px;font-weight:400}.event h3{font-size:20px;margin:0}.event p{font-size:13px;margin:0;color:var(--muted)}.event .cancelled{color:#da291c;font-weight:500}.news-card{display:grid;grid-template-columns:190px 1fr;gap:45px;padding:35px 0;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}.news-art{background:var(--ink);border-radius:5px;min-height:195px;display:flex;align-items:center;justify-content:center;font-size:74px;color:var(--green);position:relative;overflow:hidden}.news-art:before,.news-art:after{content:"";height:150px;width:7px;background:#c0d571;position:absolute;transform:rotate(37deg)}.news-art:after{transform:rotate(-37deg);background:#91aa47}.news-card .eyebrow{margin:0 0 12px;color:var(--green-dark)}.news-card h3{font-size:32px;margin:0 0 15px}.news-card p:last-child{max-width:700px;margin:0;color:var(--muted);font-size:15px}.impressions{background:#eef2e6}.gallery{display:grid;grid-template-columns:repeat(3,1fr);gap:24px}.gallery figure{margin:0}.gallery-image{position:relative;aspect-ratio:4/3;background:#e0e7d3;border-radius:5px;overflow:hidden}.gallery img{width:100%;height:100%;object-fit:cover}.placeholder-tag{position:absolute;bottom:12px;left:12px;background:#fafbf6eb;padding:4px 9px;font-size:10px;border-radius:3px}.gallery figcaption{font-size:14px;margin-top:13px;font-weight:500}.join{background:var(--ink);color:white;border-radius:8px;padding:48px;display:grid;grid-template-columns:1.2fr 1fr;gap:30px;align-items:center}.join .eyebrow{color:#c4d889;margin-bottom:18px}.join h2{font-size:44px}.join p{color:#d0dac9;font-size:14px}.join-action{max-width:330px;justify-self:end}.join-action p{font-size:12px;margin-top:14px}.join-action .button{width:100%}footer{padding:0 0 24px}.footer-top,.footer-bottom{display:flex;justify-content:space-between;align-items:center;gap:24px}.footer-top{padding:5px 0 40px}.footer-top p{font-size:13px;color:var(--muted)}.footer-bottom{border-top:1px solid var(--line);padding-top:20px;font-size:11px;color:var(--muted)}.footer-bottom>div{display:flex;gap:25px}.footer-bottom a:hover{text-decoration:underline}.skip{position:absolute;top:-80px;left:15px;background:white;padding:12px;z-index:30}.skip:focus{top:15px}.legal{max-width:800px;min-height:65vh}.legal p{color:var(--muted)}.legal .notice{padding:24px;border:1px solid #b5c486;background:#f1f7e8}.editor{max-width:900px}.editor label{display:block;font-weight:500;font-size:14px;margin:15px 0 5px}.editor input,.editor textarea,.editor select{width:100%;padding:10px;border:1px solid #adb9a5;border-radius:4px;background:white;color:var(--ink)}.editor textarea{min-height:100px}.editor fieldset{border:1px solid var(--line);border-radius:6px;padding:24px;margin:24px 0}.editor legend{font-size:23px;font-weight:500}.edit-item{border-top:1px solid var(--line);padding:15px 0 25px}.editor .secondary{border:1px solid #adb9a5;background:transparent;padding:9px 15px;border-radius:4px;margin:10px 8px 0 0;color:var(--ink)}.editor .remove{color:#da291c}.editor .export{position:sticky;bottom:15px;background:#e7edd9;padding:18px;border:1px solid #bac9a1;border-radius:6px}.editor-status{font-size:13px}.editor .check{width:auto;margin-right:10px}.editor .help{font-size:13px;color:var(--muted)}@media(min-width:1500px){.hero{padding:85px 0}.hero-art{max-height:570px}}@media(max-width:1100px){.wrap{width:calc(100% - 48px)}nav{gap:15px;font-size:12px}.brand>span:last-child{font-size:10px}.brand small{display:none}.hero-grid{gap:30px}h1{font-size:61px}.actions{gap:15px}.section{padding-top:64px;padding-bottom:64px}}@media(max-width:820px){.header-row{min-height:80px}.menu-button{display:flex;gap:18px;background:transparent;border:1px solid var(--line);border-radius:4px;padding:9px 12px;color:var(--ink);font-size:13px}nav{display:none;position:absolute;top:80px;left:0;width:100%;padding:20px 24px;background:var(--paper);border-bottom:1px solid var(--line);flex-direction:column;align-items:stretch;gap:0}nav.open{display:flex}nav a{padding:12px}nav .button{margin-top:10px}.hero{padding:42px 0}.hero-grid{grid-template-columns:1fr 1fr;gap:24px}h1{font-size:48px;letter-spacing:-2.5px}.intro{font-size:15px}.hero-art{aspect-ratio:.8}.art-label{font-size:8px;left:18px}.art-note{left:14px;font-size:10px;padding:8px}.rhythm strong{font-size:16px}.rhythm a{padding-right:14px}.rhythm a+a{padding-left:18px}.section-top{align-items:flex-start;flex-direction:column;gap:20px}.offer-grid{grid-template-columns:1fr 1.2fr}.offer{padding:25px}.join{padding:32px}.join h2{font-size:35px}.gallery{gap:14px}.event{grid-template-columns:100px 1fr;gap:18px}.event>p{grid-column:2}}@media(max-width:580px){.wrap{width:calc(100% - 36px)}html{scroll-padding-top:90px}.hero-grid{grid-template-columns:1fr}.hero{padding-top:34px}.hero .eyebrow{margin-bottom:20px}h1{font-size:56px;letter-spacing:-3px}.intro{font-size:16px}.hero-copy{padding-bottom:5px}.hero-art{aspect-ratio:1.25;border-radius:55px 6px 55px 6px}.hero-art>img{object-position:center}.art-label{font-size:9px}.rhythm-grid{grid-template-columns:1fr}.rhythm a,.rhythm a+a{padding:20px 0;border-left:0}.rhythm a+a{border-top:1px solid #4c5e49}.rhythm strong{font-size:21px}.rhythm a>span:last-child{font-size:13px}.section{padding-top:51px;padding-bottom:51px}h2{font-size:33px}.section-top{margin-bottom:25px}.offer-grid{grid-template-columns:1fr}.offer{padding:28px}.offer-icon{margin-bottom:20px}.news-card{grid-template-columns:1fr;gap:25px}.news-art{min-height:150px}.news-card h3{font-size:28px}.gallery{grid-template-columns:1fr;gap:27px}.gallery-image{aspect-ratio:1.6}.join{grid-template-columns:1fr;padding:28px;gap:20px}.join h2{font-size:34px}.join-action{justify-self:start;width:100%;max-width:none}.footer-top{align-items:flex-start;flex-direction:column;gap:16px;padding-bottom:24px}.footer-bottom{align-items:flex-start;flex-direction:column;gap:14px}.footer-bottom>div{flex-wrap:wrap;gap:12px}.event{padding:20px;grid-template-columns:80px 1fr}.event h3{font-size:18px}.event-date{font-size:19px}.empty-events{padding:24px}.editor fieldset{padding:18px}.editor .export .button{width:100%;justify-content:center}.editor .export{bottom:5px}.legal h1{font-size:43px;overflow-wrap:anywhere}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}

/* Echte Vereinsfotos: Ausschnitte für Einstieg und Galerie. */
.hero-art{aspect-ratio:1.12}.hero-art>img{object-position:57% 50%}.art-note{box-shadow:0 2px 12px #1527151a}.gallery-image{aspect-ratio:4/3}.gallery img{object-position:center}.gallery figure:nth-child(3) img{object-position:50% 58%}@media(max-width:820px) and (min-width:581px){.hero-art{aspect-ratio:.82}.hero-art>img{object-position:55% 50%}}@media(max-width:580px){.hero-art{aspect-ratio:1.3}.gallery-image{aspect-ratio:4/3}.gallery img{object-position:center}}

.gallery{grid-template-columns:repeat(2,minmax(0,1fr))}.gallery figure:nth-child(3){grid-column:1/-1}.gallery figure:nth-child(3) .gallery-image{aspect-ratio:2.2}.gallery figure:nth-child(3) img{object-fit:contain}@media(max-width:580px){.gallery{grid-template-columns:1fr}.gallery figure:nth-child(3) .gallery-image{aspect-ratio:2.2}}
/* Startseite für Mitglieder: Datum, Uhrzeit und Halle zuerst. */
[hidden]{display:none!important}.member-start{padding:38px 0 34px;background:#f1f7e8;border-bottom:1px solid var(--line)}.member-title{display:flex;justify-content:space-between;align-items:flex-end;gap:20px;margin-bottom:24px}.member-title .eyebrow{margin-bottom:9px}.member-title h1{font-size:38px;letter-spacing:-1.5px;line-height:1.15;margin:0}.next-sport{display:grid;grid-template-columns:1fr 1fr;gap:20px}.next-card{background:#fff;border:1px solid #d6dfcb;border-radius:8px;padding:23px 27px}.next-card>.eyebrow{font-size:10px;letter-spacing:1.3px;margin:0 0 8px;color:var(--green-dark)}.next-card h2{font-size:25px;letter-spacing:-.6px}.next-details{display:grid;grid-template-columns:65px 1fr;gap:5px 12px;margin:18px 0;font-size:14px;line-height:1.5}.next-details dt{font-weight:500}.next-details dd{margin:0;color:var(--muted)}.next-note{font-size:13px;color:var(--muted)}.next-details .cancelled{color:#da291c;font-weight:500}.workshop-section{padding:30px 0;background:#fafbf6;border-bottom:1px solid var(--line)}.workshop-card{display:grid;grid-template-columns:110px 1fr;gap:28px;padding:28px 32px;background:#263d28;color:#fff;border-radius:8px}.workshop-card .news-art{min-height:150px;background:#344e32}.workshop-card .news-art:before,.workshop-card .news-art:after{height:110px}.workshop-card .eyebrow{color:#c8df8c;margin:0 0 9px;letter-spacing:1.2px;font-size:10px}.workshop-card h2{font-size:30px;letter-spacing:-.8px}.workshop-copy{font-size:14px;line-height:1.6;margin:12px 0;color:#dde6d6}.workshop-dates{display:flex;flex-wrap:wrap;gap:9px;margin:15px 0 8px}.workshop-dates time{font-size:12px;background:#425b3a;padding:5px 10px;border-radius:3px}.workshop-time{font-weight:500;font-size:16px;margin:9px 0 3px}.workshop-location{font-size:13px;margin:0 0 15px;color:#dde6d6}.workshop-card .button{font-size:13px;padding:11px 16px}.workshop-contact{display:inline-block;margin:0 0 0 15px;font-size:12px;color:#dbe3d3}.hero-heading{font-size:clamp(50px,5.3vw,76px);line-height:1.05;letter-spacing:-4px;margin:0 0 27px;font-weight:500}.hero-heading>span{color:#96c93d}@media(max-width:820px){.hero-heading{font-size:48px;letter-spacing:-2.5px}.workshop-card{grid-template-columns:70px 1fr;padding:25px;gap:22px}.workshop-contact{display:block;margin:10px 0 0}.member-title h1{font-size:34px}.next-card{padding:20px}.next-details{font-size:13px;grid-template-columns:55px 1fr}.workshop-card h2{font-size:27px}}@media(max-width:580px){.member-start{padding:26px 0}.member-title{align-items:flex-start;flex-direction:column;gap:12px;margin-bottom:18px}.member-title h1{font-size:31px}.next-sport{grid-template-columns:1fr;gap:12px}.next-card{padding:19px 20px}.next-card h2{font-size:23px}.next-details{font-size:14px;margin:13px 0;gap:4px 10px}.next-card .text-link{font-size:12px}.workshop-section{padding:20px 0}.workshop-card{display:block;padding:24px}.workshop-card .news-art{display:none}.workshop-card h2{font-size:28px}.workshop-dates{display:grid;gap:6px}.workshop-dates time{font-size:13px}.hero-heading{font-size:56px;letter-spacing:-3px}}@media(max-width:360px){.hero-heading{font-size:48px}.member-title h1{font-size:28px}.workshop-card h2{font-size:25px}}

/* Workshopfoto bleibt vollständig sichtbar, auch mit Schwertspitze. */
.workshop-card{grid-template-columns:230px minmax(0,1fr);gap:30px}.workshop-photo{border-radius:5px;overflow:hidden;background:#fff;align-self:center}.workshop-photo img{display:block;width:100%;height:auto}.flyer-link{display:block;width:fit-content;color:#d8e8ab;text-decoration:underline;text-underline-offset:4px;font-size:13px;margin-top:16px}.flyer-link:hover{color:#fff}@media(max-width:820px){.workshop-card{grid-template-columns:170px minmax(0,1fr);gap:22px}}@media(max-width:580px){.workshop-card{display:flex;flex-direction:column;gap:22px}.workshop-photo{width:100%;max-width:230px;align-self:center}.workshop-card h2{font-size:27px}}
.load-warning{padding:15px 20px;background:#fff0d7;border:1px solid #d8ac65;border-radius:5px;color:#65491f}.upload-preview{display:block;max-width:100%;width:280px;max-height:210px;object-fit:contain;background:#e8eddf;border-radius:5px;margin-top:15px}.image-tools{padding-bottom:15px}.image-tools input[type=file]{font-size:13px}.account-settings{border:1px solid var(--line);padding:22px;margin-top:30px}.account-settings summary{cursor:pointer;font-weight:500}.account-settings h2{font-size:23px;margin-top:28px}.account-settings form{margin-bottom:32px}.admin-status{font-size:13px}.editor textarea{white-space:pre-wrap}.hero-intro,[data-text="familyText"],[data-text="familyActivities"],[data-text="galleryIntro"],[data-text="joinTitle"],[data-text="joinText"]{white-space:pre-line}button:disabled{opacity:.6;cursor:wait}

/* Deutliche Angebotsfarben, in Datumsspalte und Filter wiederholt. */
[data-sport="volleyball"],[data-filter="volleyball"]{--sport-color:#298fc2;--sport-tint:#ebf3fa}
[data-sport="familie"],[data-filter="familie"]{--sport-color:#96c93d;--sport-tint:#f1f7e8}
[data-sport="workshop"],[data-filter="workshop"]{--sport-color:#e87722;--sport-tint:#fff2e7}
.event{grid-template-columns:155px minmax(0,1fr) minmax(0,1fr)}
.event-when{display:flex;gap:12px;align-items:center;background:#f3f5ef;padding:12px;border-radius:5px;min-width:0}
.event-square{display:block;flex:0 0 24px;width:24px;height:24px;background:var(--sport-color);border-radius:2px}
.event-date{min-width:0}.event-date small{line-height:1.5}
.next-card[data-sport]{background:var(--sport-tint)}
.next-card[data-sport] h2::before,.filter[data-filter]:not([data-filter="alle"])::before{content:"";display:inline-block;width:15px;height:15px;border-radius:2px;background:var(--sport-color);margin-right:10px;vertical-align:middle;flex-shrink:0}
.filter[data-filter]:not([data-filter="alle"]){display:inline-flex;align-items:center}
.filter[data-filter]:not([data-filter="alle"]):hover{background:var(--sport-tint);border-color:var(--sport-color)}
.filter[data-filter]:not([data-filter="alle"]).active{background:var(--sport-tint);color:var(--ink);border-color:var(--sport-color);box-shadow:inset 0 0 0 1px var(--sport-color)}
@media(max-width:820px){.event{grid-template-columns:145px minmax(0,1fr)}.event>p{grid-column:2}}
@media(max-width:580px){.event{grid-template-columns:108px minmax(0,1fr);gap:16px;padding:20px 16px}.event-when{gap:8px;padding:9px 8px}.event-square{flex-basis:18px;width:18px;height:18px}.event-date{font-size:18px}.event-date small{font-size:10px}.event h3{font-size:17px}}
@media(forced-colors:active){.event-square,.next-card[data-sport] h2::before,.filter[data-filter]:not([data-filter="alle"])::before{background:CanvasText;border:1px solid CanvasText}.filter.active{outline:2px solid Highlight}}

/* Einladender Einstieg mit sofort sichtbarem Workshop-Link. */
.hero{padding-top:36px;padding-bottom:48px}.hero-highlight{display:flex;align-items:center;gap:12px;width:fit-content;max-width:100%;padding:11px 15px;margin:21px 0 0;border:1px solid #d4be99;border-radius:5px;background:#faf1df;color:var(--ink);font-size:13px;font-weight:500;line-height:1.45}.hero-highlight:hover{background:#f3e5cc;border-color:#b28a4d}.highlight-tag{font-size:9px;letter-spacing:1px;background:#b28a4d;color:#fff;padding:3px 6px;border-radius:3px;flex-shrink:0}.hero-highlight>span:last-child{margin-left:3px}.hero-highlight+.actions{margin-top:19px}.member-title h2{font-size:38px;letter-spacing:-1.5px;line-height:1.15;margin:0}.about-section{border-top:1px solid var(--line)}.about-grid{display:grid;grid-template-columns:1fr 1fr;gap:65px}.about-intro p{font-size:22px;line-height:1.65;margin:0;color:var(--ink)}.about-details h3{font-size:21px;margin:0 0 12px}.about-details p{font-size:15px;color:var(--muted);margin:0 0 28px;white-space:pre-line}.about-details .text-link{margin-top:0}@media(max-width:820px){.member-title h2{font-size:34px}.about-grid{gap:30px}.about-intro p{font-size:19px}}@media(max-width:580px){.hero{padding-top:30px;padding-bottom:32px}.hero-highlight{gap:9px;font-size:12px;padding:11px 12px}.hero-highlight .highlight-tag{font-size:8px}.member-title h2{font-size:31px}.about-grid{grid-template-columns:1fr;gap:27px}.about-intro p{font-size:19px}}@media(max-width:360px){.member-title h2{font-size:28px}}

/* Vektorlogos aus den verbindlichen Vorlagen. */
.brand-logo{display:inline-flex;flex-shrink:0}.club-logo{display:block;width:150px;height:auto}.header-row{min-height:100px;padding-top:10px;padding-bottom:10px}html{scroll-padding-top:120px}.hero-visual{display:grid;gap:24px;min-width:0;justify-items:center}.hero-club-logo{display:block;width:min(100%,340px);height:auto}.hero-visual .hero-art{width:100%;aspect-ratio:1.8;border-radius:48px 6px 48px 6px}.hero-visual .hero-art>img{object-position:57% 50%}.footer-top .club-logo-scene{width:260px;max-width:100%}.footer-top{align-items:center}
@media(max-width:1100px) and (min-width:821px){nav{gap:10px;font-size:11px}.club-logo{width:135px}.header-row{gap:15px}}
@media(max-width:820px){.club-logo{width:132px}.header-row{min-height:90px}nav{top:100%}html{scroll-padding-top:110px}.hero-club-logo{width:min(100%,290px)}.hero-visual .hero-art{aspect-ratio:1.2}.hero-visual{gap:20px}}
@media(max-width:580px){.club-logo{width:124px}.header-row{min-height:86px}html{scroll-padding-top:104px}.hero-club-logo{width:min(100%,300px)}.hero-visual .hero-art{aspect-ratio:1.5}.footer-top{align-items:flex-start}.footer-top .club-logo-scene{width:260px}}

/* S und untere Welle wechseln gemeinsam je Angebot. */
.sport-logo{display:block;width:112px;height:auto;margin:0 0 20px}.next-card .sport-logo{width:100px;margin-bottom:16px}.workshop-card .sport-logo{background:#fff;padding:8px;border-radius:4px;box-sizing:content-box;margin-bottom:16px}.hero-highlight{border-color:#e2b387;background:#fff2e7}.highlight-tag{background:#e87722}.workshop-card .eyebrow{color:#ffbc80}.workshop-dates time{background:#634323}.workshop-card .button{background:#e87722}.workshop-card .button:hover{background:#e87722}

.event-when{flex-direction:column;align-items:flex-start;gap:10px}.event-when .sport-logo{width:88px;margin:0}.event-date{display:block}@media(max-width:580px){.event-when .sport-logo{width:76px;max-width:100%}.event-when{gap:9px}}

/* Workshop: großzügiges Bild und gemeinsamer Kopf für Kategorie und Logo. */
.workshop-card{grid-template-columns:minmax(260px,360px) minmax(0,1fr);gap:40px;padding:32px;align-items:center}.workshop-photo{width:100%;align-self:center}.workshop-photo img{width:100%;height:auto;object-fit:contain}.workshop-body{min-width:0}.workshop-heading{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-bottom:18px}.workshop-heading .eyebrow{margin:0;max-width:330px;line-height:1.7}.workshop-heading .sport-logo{width:90px;padding:7px;flex-shrink:0;margin:0}.workshop-card h2{font-size:32px;line-height:1.15;max-width:620px}.workshop-copy{margin:18px 0;line-height:1.75}.workshop-dates{gap:8px}.workshop-contact{display:block;margin:12px 0 0}
@media(max-width:1000px) and (min-width:761px){.workshop-card{grid-template-columns:minmax(220px,30%) minmax(0,1fr);gap:28px;padding:28px;align-items:start}.workshop-photo{align-self:start}.workshop-card h2{font-size:29px}}
@media(max-width:760px){.workshop-card{display:flex;flex-direction:column;gap:28px;padding:24px;align-items:stretch}.workshop-photo{width:100%;max-width:300px;align-self:center}.workshop-heading{gap:14px;margin-bottom:18px}.workshop-heading .sport-logo{width:78px;padding:6px}.workshop-heading .eyebrow{font-size:9px;letter-spacing:1px}.workshop-card h2{font-size:28px}.workshop-copy{font-size:14px}.workshop-contact{overflow-wrap:anywhere}}

/* Hallennamen bleiben kurz; Adresse und Anfahrt öffnen sich auf Wunsch. */
.venue-link{display:inline-flex;align-items:baseline;gap:7px;text-align:left;border:0;padding:3px 0;background:none;color:inherit;line-height:inherit;max-width:100%;text-decoration:underline;text-decoration-color:currentColor;text-decoration-thickness:1px;text-underline-offset:4px}.venue-link:hover{color:var(--green-dark)}.venue-info{display:inline-flex;align-items:center;justify-content:center;border:1px solid currentColor;border-radius:50%;font-size:10px;font-weight:500;font-style:normal;line-height:1;width:15px;height:15px;flex-shrink:0;align-self:center}.workshop-card .venue-link:hover{color:#ffbc80}
#venue-dialog{border:1px solid var(--line);border-radius:12px;background:var(--paper);color:var(--ink);padding:30px;width:calc(100% - 36px);max-width:540px;max-height:calc(100dvh - 36px);overflow:auto;box-shadow:0 20px 80px #13271933}#venue-dialog::backdrop{background:#13271999}.venue-dialog-top{display:flex;justify-content:space-between;gap:20px;align-items:center;margin-bottom:24px}.venue-dialog-top .eyebrow{margin:0;font-size:10px}.venue-close{border:1px solid var(--line);border-radius:4px;background:transparent;color:inherit;font-size:13px;padding:8px 10px;flex-shrink:0}#venue-title{font-size:30px;line-height:1.2;letter-spacing:-1px}#venue-address{font-style:normal;font-size:18px;line-height:1.7;margin:22px 0 28px}#venue-dialog .button{font-size:14px;gap:14px}@media(max-width:580px){#venue-dialog{padding:23px}#venue-title{font-size:26px}#venue-dialog .button{width:100%;padding:14px;font-size:13px}.venue-dialog-top{gap:12px}.venue-dialog-top .eyebrow{letter-spacing:1px}}

.calendar-link{display:inline-flex;width:40px;height:40px;align-items:center;justify-content:center;flex-shrink:0;border:1px solid var(--line);border-radius:5px;background:#fff;vertical-align:middle}.calendar-link:hover{background:#e6edd9;border-color:#8c9c76}.calendar-link img{display:block;width:20px;height:20px}.next-details .calendar-link{width:32px;height:32px;margin-left:9px}.event-date-row{display:flex;align-items:center;gap:6px;width:100%;justify-content:space-between}.event-date-row .calendar-link{width:32px;height:36px}.event-date-row .calendar-link img{width:18px;height:18px}.event:target,.event.event-selected{outline:2px solid var(--green-dark);outline-offset:3px}.event[id]{scroll-margin-top:125px}
.calendar-subscription{margin:0 0 24px;border:1px solid var(--line);border-radius:6px;padding:15px 18px;background:#fff}.calendar-subscription summary{cursor:pointer;font-size:14px;font-weight:500}.calendar-subscription p{font-size:13px;max-width:850px;color:var(--muted)}.calendar-subscription-actions{display:flex;flex-wrap:wrap;align-items:center;gap:18px}.calendar-copy{border:1px solid var(--line);border-radius:4px;padding:9px 12px;background:transparent;color:var(--ink);font-size:13px}#calendar-url{overflow-wrap:anywhere}.calendar-subscription [aria-disabled]{color:var(--muted)}
.workshop-live-schedule{display:grid;gap:12px;margin:20px 0}.workshop-slot{border-top:1px solid #64745d;padding-top:12px;display:grid;grid-template-columns:minmax(0,1fr) auto;gap:3px 14px;align-items:center}.workshop-date-link{font-size:14px;font-weight:500;text-decoration:underline;text-underline-offset:4px}.workshop-slot .workshop-time,.workshop-slot .workshop-location,.workshop-slot-note{grid-column:1/-1;margin:0}.workshop-slot-note{font-size:12px;color:#dde6d6}.workshop-slot .workshop-time{font-size:14px}
@media(max-width:580px){.event-date-row{align-items:flex-start;flex-direction:column;gap:8px}.event-date-row .calendar-link{width:36px;height:36px}.event[id]{scroll-margin-top:108px}.next-details .calendar-link{margin-left:6px}.workshop-card{align-items:stretch}}

.event-editor{border:1px solid var(--line);border-radius:6px;margin:12px 0;padding:0!important;background:#fff}.event-editor-summary{padding:16px 18px;cursor:pointer;font-weight:500;font-size:15px;line-height:1.6}.event-editor-summary:hover{background:#f0f4e8}.event-editor[open] .event-editor-summary{border-bottom:1px solid var(--line)}.event-editor-fields{padding:6px 18px 18px;display:grid;grid-template-columns:180px minmax(0,1fr);gap:12px 18px;align-items:center}.event-editor-fields label{margin:0}.event-editor-fields input,.event-editor-fields select{margin:0}.event-editor-actions{padding:0 18px 18px;display:flex;flex-wrap:wrap;gap:8px}.event-editor-actions .secondary{margin:0}.event-editor-cancelled .event-editor-summary{color:#da291c;background:#fff4f0}.editor-more{margin:24px 0}.editor-more>summary{font-size:20px;font-weight:500;cursor:pointer;padding:18px 0;border-bottom:1px solid var(--line)}
@media(max-width:580px){.event-editor-fields{grid-template-columns:1fr;gap:8px}.event-editor-fields label:not(:first-child){margin-top:10px}.event-editor-summary{font-size:14px;padding:14px}.event-editor-actions{flex-direction:column;align-items:stretch}.editor .export .button{min-height:48px}}

/* Wir für euch: zuerst die drei Vorstandsämter, danach weitere Kontakte. */
.team-section{margin-top:64px;padding-top:45px;border-top:1px solid var(--line)}.team-section>.eyebrow{margin-bottom:12px}.team-section>h3{font-size:36px;line-height:1.2;letter-spacing:-1.3px;margin:0 0 30px}.people-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px}.people-contacts{margin-top:32px}.person-card{border:1px solid var(--line);border-radius:8px;overflow:hidden;background:#fff;min-width:0}.person-picture{position:relative;aspect-ratio:5/4;background:#edf1e7;overflow:hidden}.person-picture>img{display:block;width:100%;height:100%;object-fit:cover;object-position:50% 35%}.person-photo-note{position:absolute;bottom:14px;left:16px;padding:4px 9px;border:1px solid #d4decb;background:#fafbf6e8;border-radius:3px;color:var(--muted);font-size:11px}.person-content{padding:22px 24px 24px}.person-role{font-size:12px;font-weight:500;letter-spacing:.4px;line-height:1.5;color:var(--green-dark);margin:0 0 8px}.person-name{font-size:24px;line-height:1.25;letter-spacing:-.6px;margin:0}.person-contact{display:grid;gap:7px;margin-top:16px}.person-contact:empty{display:none}.person-contact a{font-size:13px;overflow-wrap:anywhere;text-decoration:underline;text-underline-offset:4px}.person-contact a:hover{color:var(--green-dark)}.team-person-editor{border:1px solid var(--line);border-radius:5px;background:#fff;margin-top:12px}.team-person-editor>summary{padding:16px;cursor:pointer;font-weight:500}.team-person-fields{padding:0 18px 20px}.team-person-editor[open]>summary{border-bottom:1px solid var(--line);margin-bottom:15px}.team-person-fields .upload-preview{width:220px;aspect-ratio:5/4;object-fit:cover}
@media(max-width:820px){.people-grid{gap:16px}.person-content{padding:18px 16px}.person-name{font-size:22px}.person-role{font-size:11px;letter-spacing:0}.team-section{margin-top:42px;padding-top:35px}}
@media(max-width:580px){.people-grid{grid-template-columns:1fr;gap:22px}.people-contacts{margin-top:30px}.team-section>h3{font-size:31px}.person-picture{aspect-ratio:5/4}.person-content{padding:22px}.person-name{font-size:25px}.person-role{font-size:12px}}

/* Drei dauerhafte Angebote: Familie, Volleyball und offene Workshops. */
.next-sport{grid-template-columns:repeat(3,minmax(0,1fr));align-items:stretch}.next-card{min-width:0;display:flex;flex-direction:column;padding:24px}.next-card .sport-logo{width:80px;margin-bottom:18px}.next-card>h2{font-size:25px;line-height:1.2;min-height:60px}.next-card>.eyebrow{font-size:9px;letter-spacing:1.2px}.next-card>.text-link{margin-top:auto;padding-top:18px}.next-details{grid-template-columns:55px minmax(0,1fr);font-size:13px;gap:8px 10px}.next-details dd{min-width:0;overflow-wrap:anywhere}.next-details .calendar-link{margin-left:5px}.current-activity{font-size:14px;font-weight:500;line-height:1.5;margin:14px 0 0}.capacity-status{width:fit-content;font-weight:500;font-size:12px!important;color:#235b83!important;background:#dcecf8;border:1px solid #accbe2;padding:4px 9px;border-radius:4px;margin:14px 0 0}.offer .capacity-status{margin:16px 0 0}.family-space{font-size:14px;line-height:1.7;color:var(--ink);font-weight:500}.participation{margin-top:35px;padding:28px 32px;border:1px solid #d4dfc2;border-radius:7px;background:#f1f7e8}.participation h4{font-size:26px;letter-spacing:-.7px;line-height:1.25;margin:0 0 12px}.participation p{max-width:850px;font-size:16px;line-height:1.8;margin:0;white-space:pre-line}
@media(max-width:1000px) and (min-width:901px){.next-card{padding:20px}.next-card>h2{font-size:22px}.next-details{grid-template-columns:1fr;gap:3px}.next-details dd{margin-bottom:8px}}
@media(max-width:900px){.next-sport{grid-template-columns:1fr}.next-card>h2{min-height:0}.next-card{padding:24px}.next-details{grid-template-columns:60px minmax(0,1fr);font-size:14px}.next-card>.text-link{padding-top:8px}}
@media(max-width:580px){.participation{padding:24px}.participation h4{font-size:24px}.participation p{font-size:15px}}

.next-card>h2{min-height:0}.next-card-context{min-height:48px;margin-top:16px}.next-card-context .current-activity,.next-card-context .capacity-status{margin-top:0}@media(max-width:900px){.next-card-context{min-height:0;margin-top:14px}.next-card-context:empty{display:none}}

.schedule-shortcut{background:#f1f7e8;border-bottom:1px solid #d8e1cc;padding:20px 0}.shortcut-row{display:flex;justify-content:space-between;align-items:center;gap:28px}.shortcut-copy{min-width:0}.shortcut-copy>.eyebrow{margin:0 0 6px;font-size:10px}.family-today-status{font-size:20px;font-weight:500;line-height:1.4;margin:0}.shortcut-copy p:not(.eyebrow):not(.family-today-status){margin:6px 0 0;font-size:13px;line-height:1.55;color:var(--muted)}.shortcut-copy .calendar-link{width:30px;height:30px;margin-left:10px}.shortcut-button{flex-shrink:0}.schedule-shortcut[data-status="cancelled"]{background:#fff2e7}.schedule-shortcut[data-status="cancelled"] .family-today-status{color:#da291c}.header-quick-calendar{display:none}.volleyball-register{font-size:13px;justify-content:center;text-align:center;line-height:1.5;padding:12px 14px;margin:16px 0 8px}.next-card>.volleyball-register{width:100%}.next-card>.text-link{margin-top:auto}
#volleyball-dialog{border:1px solid var(--line);border-radius:12px;background:var(--paper);color:var(--ink);padding:28px;width:calc(100% - 36px);max-width:570px;max-height:calc(100dvh - 36px);overflow:auto;box-shadow:0 20px 80px #13271933}#volleyball-dialog::backdrop{background:#13271999}#volleyball-dialog h2{font-size:30px}#volleyball-dialog .registration-intro{font-size:14px;line-height:1.7}#volleyball-registration-form label{display:block;font-size:13px;font-weight:500;margin:14px 0 5px}#volleyball-registration-form input,#volleyball-registration-form select{width:100%;padding:10px;border:1px solid #adb9a5;border-radius:4px;background:#fff;color:var(--ink)}.registration-purpose{font-size:12px;color:var(--muted);line-height:1.7;margin:18px 0}#volleyball-registration-status{font-size:14px;line-height:1.6}.registration-trap{position:absolute;left:-10000px;width:1px;height:1px;overflow:hidden}
@media(max-width:820px){.header-quick-calendar{display:inline-flex;align-items:center;flex-shrink:0;padding:8px 10px;border:1px solid #a8bf61;border-radius:4px;background:#f1f7e8;font-size:12px;font-weight:500}.header-row{gap:12px}.menu-button{margin-left:auto}.shortcut-row{align-items:flex-start}.shortcut-button{font-size:13px;padding:13px 16px;gap:14px}}
@media(max-width:580px){.shortcut-row{flex-direction:column;gap:14px}.schedule-shortcut{padding:18px 0}.family-today-status{font-size:18px}.shortcut-button{width:100%;justify-content:space-between}.header-row{gap:10px}.header-quick-calendar{margin-left:auto}.menu-button{margin-left:0}#volleyball-dialog{padding:22px}#volleyball-dialog h2{font-size:27px}.volleyball-register{padding:13px 12px}}
@media(max-width:360px){.header-row{gap:8px}.header-row .club-logo{width:110px}.menu-button{gap:10px;padding:8px 10px}}

.attendance-panel{border:1px solid var(--line);border-radius:7px;padding:24px;margin:30px 0;background:#ebf3fa}.attendance-heading{display:flex;align-items:center;justify-content:space-between;gap:20px}.attendance-heading h2{font-size:27px}.attendance-count{font-size:18px;font-weight:500}.attendance-person{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:20px;border-top:1px solid #cbd9e1;padding:18px 0}.attendance-person h3{font-size:19px;margin:0 0 5px}.attendance-person a{font-size:13px;overflow-wrap:anywhere;text-decoration:underline}.attendance-person p{font-size:12px;margin:5px 0}.attendance-actions{display:flex;align-items:flex-end;flex-wrap:wrap;gap:8px}.attendance-actions label{font-size:12px!important;margin:0!important}.attendance-actions input{width:85px!important;display:block}.attendance-actions .secondary{margin:0!important;padding:10px!important;font-size:12px}.attendance-cancelled{opacity:.65}.attendance-panel #attendance-status{font-size:13px;line-height:1.6}@media(max-width:580px){.attendance-panel{padding:18px}.attendance-heading{align-items:flex-start}.attendance-heading h2{font-size:24px}.attendance-person{grid-template-columns:1fr;gap:12px}.attendance-actions{align-items:flex-end}}

/* Kompakter Einstieg mit vollständiger Einleitung, Logo und Hallenfoto. */
.hero-compact{padding:28px 0 32px}.hero-compact .hero-grid{grid-template-columns:1fr .72fr 1.1fr;gap:32px;align-items:center}.hero-compact .hero-visual{display:contents}.hero-compact .hero-copy{min-width:0}.hero-compact .hero-heading{font-size:clamp(40px,4.1vw,56px);letter-spacing:-2.6px;line-height:1.04;margin-bottom:17px}.hero-compact .eyebrow{font-size:9px;letter-spacing:1.5px;margin-bottom:15px}.hero-compact .intro{font-size:14px;line-height:1.65;margin:0;max-width:380px}.hero-compact .hero-club-logo{width:100%;max-width:245px;justify-self:center}.hero-compact .hero-art{width:100%;aspect-ratio:1.7;border-radius:45px 6px 45px 6px}.hero-compact .art-note{font-size:10px;padding:8px 12px;bottom:16px;left:20px}.hero-compact .hero-highlight{font-size:11px;gap:8px;padding:8px 10px;margin-top:14px}.hero-compact .highlight-tag{font-size:8px}
.member-start .schedule-shortcut{border:1px solid #d5dfc8;border-radius:5px;padding:12px 16px;margin:0 0 20px;background:#f1f7e8}.member-start .shortcut-row{display:block}.member-start .shortcut-copy>.eyebrow{font-size:9px;margin-bottom:4px}.member-start .family-today-status{font-size:16px}.member-start #family-today-details p{font-size:12px;margin-top:4px}.member-start .schedule-shortcut[data-status="cancelled"]{background:#fff2e7}
.workshop-info-button{display:inline-flex;align-items:center;justify-content:center;width:23px;height:23px;min-width:23px;border:1px solid #c47b39;border-radius:50%;background:#fff2e7;color:#87511f;font-weight:500;font-size:13px;font-family:inherit;line-height:1;margin-left:8px;vertical-align:middle}.workshop-info-button:hover{background:#ffe0bf}.next-card[data-sport="workshop"] .current-activity{display:flex;align-items:flex-start}.next-card[data-sport="workshop"] .workshop-info-button{flex-shrink:0}
#workshop-info-dialog{border:1px solid var(--line);border-radius:12px;background:var(--paper);color:var(--ink);padding:28px;width:calc(100% - 36px);max-width:640px;max-height:calc(100dvh - 36px);overflow:auto;box-shadow:0 20px 80px #13271933}#workshop-info-dialog::backdrop{background:#13271999}#workshop-info-dialog h2{font-size:30px;line-height:1.2;letter-spacing:-.8px}.workshop-info-label{font-weight:500;color:#92571d;font-size:12px}#workshop-info-copy{font-size:15px;line-height:1.75}#workshop-info-date{font-weight:500;margin-bottom:6px}#workshop-info-location{font-size:14px;margin-top:0;line-height:1.6}.workshop-info-actions{display:flex;gap:20px;flex-wrap:wrap;align-items:center;margin-top:24px}.workshop-info-actions .button{background:#e87722;font-size:14px}
@media(max-width:1000px) and (min-width:701px){.hero-compact .hero-grid{gap:20px;grid-template-columns:1.1fr .65fr 1fr}.hero-compact .hero-heading{font-size:43px}.hero-compact .intro{font-size:13px}.hero-compact .hero-art{aspect-ratio:1.25}.hero-compact .hero-club-logo{max-width:190px}}
@media(max-width:700px){.hero-compact .hero-grid{grid-template-columns:1fr 1fr;gap:24px 18px}.hero-compact .hero-copy{grid-column:1/-1}.hero-compact .hero-heading{font-size:51px}.hero-compact .intro{font-size:15px;max-width:470px}.hero-compact .hero-club-logo{max-width:190px}.hero-compact .hero-art{aspect-ratio:1.05;border-radius:24px 5px 24px 5px}.hero-compact .art-note{font-size:8px;left:8px;bottom:12px;padding:5px 7px}.hero-compact .hero-highlight{font-size:11px;width:fit-content}.hero-compact{padding:26px 0}.member-title .button{font-size:13px}.member-start .family-today-status{font-size:15px}#workshop-info-dialog{padding:22px}#workshop-info-dialog h2{font-size:26px}}

/* Three permanent sports areas and consistent registration actions. */
.offer-grid{grid-template-columns:repeat(3,minmax(0,1fr))}
.offer{min-width:0;padding:28px}
.offer[data-sport="volleyball"]{background:#ebf3fa;border-color:#ccdfef}
.offer.open-workshops{background:#fff2e7;border-color:#ead7c2}
.offer .tag{display:block;margin-top:18px}
.offer .text-link{display:flex;align-items:center;width:fit-content}
.button.registration-action,.workshop-card .button.registration-action{background:#ebf3fa;border-color:#a5c9e7;color:#185886}
.button.registration-action:hover,.workshop-card .button.registration-action:hover{background:#ebf3fa}
.registration-action:focus-visible,#volleyball-registration-form input:focus-visible,#volleyball-registration-form select:focus-visible{outline-color:#298fc2}
#volleyball-registration-form input,#volleyball-registration-form select{border-color:#a5c9e7}
@media(max-width:980px){.offer-grid{grid-template-columns:1fr}.offer{padding:28px}}

.person-contact .person-mail-icon{display:inline-flex;align-items:center;justify-content:center;width:40px;height:40px;border:1px solid #cbd7c6;border-radius:50%;background:#f4f7ef;color:var(--ink)}.person-mail-icon svg{width:20px;height:20px}.person-contact .person-mail-icon:hover{background:#e6eedc;border-color:#91a381}

.next-card>.workshop-register{width:100%;justify-content:center;text-align:center;font-size:13px;line-height:1.5;padding:13px 12px;margin:16px 0 8px}

/* Registration actions follow their sport category. */
.next-card[data-sport="workshop"] .registration-action,.workshop-card .button.registration-action{background:#e87722;border-color:#e58d37;color:#4c4e4d}
.next-card[data-sport="workshop"] .registration-action:hover,.workshop-card .button.registration-action:hover{background:#e87722;border-color:#d97b27}
.next-card[data-sport="workshop"] .registration-action:focus-visible,.workshop-card .button.registration-action:focus-visible{outline-color:#b75e15}

.today-program{list-style:none;margin:14px 0 0;padding:0;display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,300px),1fr));gap:12px}
.today-program-item{min-width:0;background:#fff;border:1px solid var(--line);border-left:4px solid #6bb521;border-radius:4px;padding:12px 14px}
.today-program-item[data-sport="volleyball"]{border-left-color:#298fc2}.today-program-item[data-sport="workshop"]{border-left-color:#e87722}
.today-program-heading{display:flex;align-items:baseline;justify-content:space-between;flex-wrap:wrap;gap:6px 12px}
.today-program-title{font-size:14px;font-weight:500;text-decoration:underline;text-underline-offset:3px;overflow-wrap:anywhere}
.today-program-status{font-size:11px;font-weight:500;color:#4c4e4d}.today-program-item[data-state="cancelled"] .today-program-status{color:#da291c}.today-program-item[data-state="ended"] .today-program-status{color:#4c4e4d}
.today-program-item[data-state="cancelled"]{background:#fff5ef}.today-program-item[data-state="ended"]{background:#f4f5f1}

.founders{margin-top:28px;padding-top:22px;border-top:1px solid var(--line)}.founders h3{font-size:22px;margin:0 0 8px}.founders .founders-order{font-size:12px;color:var(--muted);margin:0 0 14px}.founders-list{list-style:none;padding:0;margin:0;columns:2;column-gap:24px;font-size:14px}.founders-list li{break-inside:avoid;margin-bottom:8px}@media(max-width:480px){.founders-list{columns:1}}

/* About the club: calm reading rhythm, founding members, then people. */
.about-section{padding-top:72px;padding-bottom:80px}
.about-section>.section-top{margin-bottom:34px}
.about-section>.section-top h2{max-width:820px;font-size:clamp(32px,3.4vw,46px);line-height:1.13;letter-spacing:-1.7px}
.about-grid{grid-template-columns:1fr 1fr;gap:48px;align-items:start}
.about-intro>p{font-size:19px;line-height:1.85;max-width:36ch;color:var(--muted);margin:0}
.about-details{display:grid;gap:16px}
.about-value{padding:24px 26px;border:1px solid #dfe5d7;border-radius:10px;background:#f1f4eb}
.about-value h3{font-size:20px;letter-spacing:-.5px;margin:0 0 10px}
.about-value p{font-size:14px;line-height:1.8;margin:0;color:var(--muted)}
.about-value .text-link{margin-top:16px}
.about-section>.founders{display:grid;grid-template-columns:.85fr 1.35fr;gap:40px;align-items:start;margin-top:36px;padding:30px 32px;background:#fff;border:1px solid var(--line);border-radius:10px}
.founders-heading>.eyebrow{font-size:9px;letter-spacing:1.3px;color:var(--green-dark);margin:0 0 12px}
.founders-heading h3{font-size:25px;line-height:1.2;letter-spacing:-.7px;margin:0 0 10px}
.founders .founders-order{font-size:12px;line-height:1.7;max-width:28ch;margin:0}
.founders-list{columns:2;column-gap:32px;font-size:14px;margin:0;padding:0}
.founders-list li{padding:8px 0;margin:0;border-bottom:1px solid #edf0e8;line-height:1.6;break-inside:avoid}
.about-section .team-section{margin-top:48px;padding-top:36px}
.about-section .team-section>h3{margin-bottom:24px;font-size:32px}
.about-section .people-grid{gap:22px}
.about-section .person-card{border-radius:10px}
.about-section .person-picture{aspect-ratio:3/2}
.about-section .person-content{padding:22px}
.about-section .person-name{font-size:23px}
.about-section .person-role{font-size:11px;min-height:33px;margin-bottom:6px}
.about-section .person-contact{margin-top:14px}
.about-section .participation{margin-top:28px;padding:30px 32px;border:0;border-radius:10px;background:var(--ink);color:white}
.about-section .participation h4{font-size:27px;margin-bottom:12px;color:#fff}
.about-section .participation p{font-size:15px;line-height:1.8;max-width:850px;color:#e0e9d8}
.about-section .participation-link{margin-top:20px;color:#d4e7a7}
.about-section .participation-link:hover{color:#fff}
@media(max-width:900px){.about-grid{gap:28px}.about-intro>p{font-size:17px}.about-value{padding:22px}.about-section>.founders{grid-template-columns:1fr 1.4fr;gap:24px;padding:26px}}
@media(max-width:680px){.about-section{padding-top:45px;padding-bottom:50px}.about-section>.section-top{margin-bottom:24px}.about-section>.section-top h2{font-size:33px;letter-spacing:-1.2px}.about-grid{grid-template-columns:1fr;gap:24px}.about-intro>p{font-size:17px;line-height:1.8;max-width:none}.about-value{padding:22px}.about-section>.founders{grid-template-columns:1fr;gap:20px;margin-top:24px;padding:24px}.founders .founders-order{max-width:none}.founders-list{columns:2;column-gap:22px;font-size:13px}.about-section .people-grid{grid-template-columns:1fr}.about-section .person-picture{aspect-ratio:8/5}.about-section .person-role{min-height:0}.about-section .participation{padding:25px}.about-section .participation h4{font-size:25px}}
@media(max-width:360px){.founders-list{columns:1}}

/* Category galleries: two top collections, family sports across the bottom. */
.gallery-collections{grid-template-columns:1fr 1fr;gap:22px}
.gallery-collection{min-width:0;border-radius:12px;overflow:hidden;border:1px solid #d3dfe9;background:#ebf3fa}
.gallery-collection[data-sport="workshop"]{background:#fff2e7;border-color:#ecd7bf}
.gallery-collection[data-sport="familie"]{grid-column:1/-1;background:#f1f7e8;border-color:#d4dfc2}
.gallery-collection-button{position:relative;display:flex;flex-direction:column;align-items:flex-start;justify-content:flex-end;width:100%;min-height:290px;padding:30px;border:0;background:transparent;color:var(--ink);text-align:left;overflow:hidden}
.gallery-collection[data-sport="familie"] .gallery-collection-button{min-height:410px}
.gallery-collection-button:disabled{cursor:default;opacity:1}
.gallery-collection-button>.sport-logo{width:94px;height:auto;margin-bottom:auto;padding-bottom:24px}
.gallery-cover{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center 45%;transition:transform .25s}
.gallery-collection-button.has-photo:after{content:"";position:absolute;inset:0;background:linear-gradient(transparent 15%,#0f261dbf 100%)}
.gallery-collection-button.has-photo{color:white}
.gallery-collection-button.has-photo:hover .gallery-cover{transform:scale(1.025)}
.gallery-collection-copy{position:relative;z-index:1}
.gallery-collection-copy .eyebrow{margin:0 0 8px;font-size:10px;letter-spacing:1.5px}
.gallery-collection-copy h3{font-size:28px;margin:0 0 16px;letter-spacing:-.8px}
.gallery-open-label{display:inline-block;font-size:12px;font-weight:500;padding:8px 12px;border:1px solid currentColor;border-radius:4px}
.photo-dialog{width:min(1000px,calc(100% - 32px));max-height:calc(100dvh - 32px);padding:24px;border:1px solid var(--line);border-radius:12px;background:var(--paper);color:var(--ink)}
.photo-dialog::backdrop{background:#102118d9}.photo-dialog-top{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-bottom:18px}.photo-dialog h2{font-size:24px;letter-spacing:-.7px}.photo-view{margin:0}.photo-view img{display:block;width:100%;height:min(65dvh,700px);object-fit:contain;background:#e9ede3;border-radius:6px}.photo-view figcaption{font-size:14px;margin-top:12px;line-height:1.5}.photo-dialog-controls{display:flex;align-items:center;justify-content:space-between;gap:14px;margin-top:18px}.photo-dialog-controls p{font-size:12px;margin:0}.photo-dialog-controls button{font-size:12px}.photo-dialog-controls button:disabled{opacity:.45;cursor:default}
.gallery-editor-item{border:1px solid var(--line);border-radius:6px;margin:12px 0;padding:0}.gallery-editor-item>summary{padding:16px;cursor:pointer;font-weight:500}.gallery-editor-fields{padding:0 18px 18px}.gallery-editor-item>.image-tools,.gallery-editor-item>.remove{margin:0 18px 18px}
@media(max-width:680px){.gallery-collections{grid-template-columns:1fr;gap:16px}.gallery-collection-button{min-height:240px;padding:24px}.gallery-collection[data-sport="familie"] .gallery-collection-button{min-height:330px}.gallery-collection-copy h3{font-size:25px}.photo-dialog{padding:16px}.photo-dialog h2{font-size:20px}.photo-view img{height:52dvh}.photo-dialog-controls{flex-wrap:wrap;gap:10px}.photo-dialog-controls p{order:3;width:100%;text-align:center}.photo-dialog-controls button{padding:10px;font-size:11px}}
@media(prefers-reduced-motion:reduce){.gallery-cover{transition:none}}

.fees-section{background:#edf2e5;border-top:1px solid #dce4d1;border-bottom:1px solid #dce4d1}
.fees-layout{display:grid;grid-template-columns:1fr 1.1fr;gap:55px;align-items:center}
.fees-copy>.eyebrow{margin-bottom:16px}.fees-copy h2{max-width:480px;font-size:clamp(31px,3.2vw,42px)}
.fees-copy>p:not(.eyebrow){font-size:15px;line-height:1.85;color:var(--muted);max-width:490px;margin:22px 0}.fees-copy .text-link{margin-top:3px}
.fees-cards{display:grid;grid-template-columns:1fr 1fr;gap:18px}
.fee-card{padding:30px 24px;background:#fff;border:1px solid #d3ddc6;border-radius:10px;min-width:0}
.fee-card.fee-family{background:#f8fbef;border-color:#bccc9b}
.fee-card h3{font-size:16px;letter-spacing:-.3px;line-height:1.4;margin:0 0 32px;overflow-wrap:anywhere}
.fee-amount{margin:0;line-height:1.1;font-size:50px;font-weight:500;letter-spacing:-2px}
.fee-period{display:block;font-size:13px;line-height:1.6;letter-spacing:0;font-weight:400;color:var(--muted);margin-top:12px}
@media(max-width:1000px){.fees-layout{grid-template-columns:1fr;gap:28px}.fees-copy h2,.fees-copy>p:not(.eyebrow){max-width:660px}.fee-card h3{overflow-wrap:normal}.fee-card{padding:28px}}
@media(max-width:480px){.fees-cards{grid-template-columns:1fr;gap:14px}.fee-card{padding:24px}.fee-card h3{margin-bottom:20px}.fee-amount{font-size:46px}}

/* Workshop details share the warm palette of the orange overview. */
.workshop-card{background:#fff2e7;color:var(--ink);border:1px solid #e7c9a7}
.workshop-card .eyebrow{color:#945018}
.workshop-card .workshop-copy,.workshop-card .workshop-location,.workshop-card .workshop-contact,.workshop-card .workshop-slot-note{color:#63594c}
.workshop-card .workshop-slot{border-top-color:#e4cdb5}
.workshop-card .workshop-date-link{color:var(--ink)}
.workshop-card .workshop-date-link:hover,.workshop-card .venue-link:hover{color:#8f430b}
.workshop-card .flyer-link{color:#8f430b}
.workshop-card .flyer-link:hover{color:#5e2d09}
.workshop-card .calendar-link{border-color:#ddc6ae}
.workshop-card .news-art{background:#f5d6b8}

.editor-media{border:1px solid #cfdbc3;border-radius:10px;background:#f3f6ed;padding:26px;margin:28px 0;scroll-margin-top:110px}
.editor-media>h2{font-size:28px;letter-spacing:-.8px;margin:0 0 10px}.editor-media>.help{margin:0 0 20px}
.media-shortcuts,.gallery-add-buttons{display:flex;gap:9px;flex-wrap:wrap;margin:16px 0 22px}
.media-shortcuts .secondary,.gallery-add-buttons .secondary{background:#fff;border:1px solid #b7c6ab;border-radius:5px;padding:10px 13px;font-weight:500;font-size:12px;color:var(--ink)}
.gallery-add-buttons [data-gallery-category="volleyball"]{background:#e6f0fa;border-color:#aacbe4;color:#185886}.gallery-add-buttons [data-gallery-category="workshop"]{background:#fff0df;border-color:#e7b986;color:#8f430b}.gallery-add-buttons [data-gallery-category="familie"]{background:#e9f2da;border-color:#bfd19e}
.media-panel{background:#fff;border:1px solid var(--line);border-radius:7px;margin-top:12px;scroll-margin-top:110px}.media-panel>summary{font-size:16px;font-weight:500;cursor:pointer;padding:18px}.media-panel[open]>summary{border-bottom:1px solid var(--line)}.editor .media-panel>fieldset{border:0;margin:0;padding:22px}.media-panel>fieldset>legend{font-size:18px;padding:18px 0 0}
.image-upload-label{border:1px dashed #9eb18d;border-radius:6px;padding:14px;background:#f5f8ef}.image-upload-label input[type=file]{display:block;border:0;padding:10px 0 0;max-width:100%;font-size:13px;background:transparent}.image-upload-label input::file-selector-button{padding:9px 12px;border:1px solid #a7bc90;border-radius:4px;background:#e7efd9;color:#4c4e4d;cursor:pointer;margin-right:10px}
@media(max-width:580px){.editor-media{padding:18px}.editor .media-panel>fieldset{padding:16px}.media-shortcuts .secondary,.gallery-add-buttons .secondary{width:100%;text-align:left}.editor-media>h2{font-size:26px}}

/* Exact match with the green S and wave in the FSK logo. */
h1>span{color:#96c93d}
.event-registration-fields{background:#f5f8ef}.editor .event-registration-fields{margin:20px 0 0;padding:18px}.editor .event-registration-fields legend{font-size:17px}.event-registration-fields input:disabled,.event-registration-fields select:disabled{opacity:.55;background:#f1f2ee}
.button.event-registration-link{font-size:12px;padding:9px 13px;margin-top:12px;width:fit-content;gap:10px;background:#e6f0dc;border-color:#b6cd9d;color:#4c4e4d}
.button.event-registration-link[data-sport="volleyball"]{background:#ebf3fa;border-color:#a5c9e7;color:#185886}.button.event-registration-link[data-sport="workshop"]{background:#e87722;border-color:#e58d37;color:#4c4e4d}.button.event-registration-link:hover{filter:brightness(.96)}
.next-card>.event-registration-link{width:100%;justify-content:center;text-align:center;margin:16px 0 8px;padding:13px 12px;font-size:13px}
.workshop-slot>.event-registration-link{grid-column:1/-1}

/* Keep the mobile navigation visible; reserve its space to avoid content jumps. */
@media(max-width:820px){
  .site-page{--mobile-header-height:87px;padding-top:calc(var(--mobile-header-height) + env(safe-area-inset-top,0px))}
  .site-header{position:fixed;top:0;left:0;right:0;z-index:30;padding-top:env(safe-area-inset-top,0px);background:var(--paper);box-shadow:0 2px 12px #263d280d}
  .site-header .header-row{min-height:86px}
  .site-header nav{top:100%;max-height:calc(100vh - 87px - env(safe-area-inset-top,0px));max-height:calc(100dvh - 87px - env(safe-area-inset-top,0px));overflow-y:auto;overscroll-behavior:contain;padding-bottom:calc(20px + env(safe-area-inset-bottom,0px))}
  html:has(.site-header){scroll-padding-top:calc(103px + env(safe-area-inset-top,0px))}
}

/* Section orientation stays with the header on desktop and mobile. */
.section-orientation{border-top:1px solid #e6eade;background:#f2f5eb;font-size:12px;line-height:1.4}
.section-orientation>.wrap{display:flex;align-items:center;min-height:34px}
.section-orientation [aria-current]{font-weight:500;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
html:has(.site-header){scroll-padding-top:calc(var(--site-header-height,136px) + 16px)}
@media(max-width:820px){
  .site-page{padding-top:var(--site-header-height,122px)}
  .site-header nav{max-height:calc(100vh - var(--site-header-height,122px));max-height:calc(100dvh - var(--site-header-height,122px))}
  html:has(.site-header){scroll-padding-top:calc(var(--site-header-height,122px) + 16px)}
  .section-orientation{font-size:11px}
}

/* Complete Sunday panorama; narrow screens allow horizontal exploration. */
.hero-panorama .hero-grid{grid-template-columns:minmax(0,1.4fr) minmax(0,1fr);gap:24px 50px}
.hero-panorama .hero-visual{display:flex;justify-content:center;align-items:center}
.hero-panorama .hero-club-logo{width:min(100%,245px);max-width:245px}
.hero-panorama-figure{grid-column:1/-1;margin:0;min-width:0}
.hero-panorama .hero-art{aspect-ratio:auto;max-height:none;width:100%;border-radius:14px;overflow:hidden;background:#e8eddf}
.hero-panorama .hero-art>img{display:block;width:100%;height:auto;object-fit:contain;object-position:center}
.hero-panorama .hero-art:focus-visible{outline:3px solid #477e18;outline-offset:4px}
.hero-panorama figcaption{display:flex;justify-content:space-between;gap:10px;margin-top:10px;font-size:12px;color:var(--muted)}
.panorama-hint{display:none}
@media(max-width:820px){
 .hero-panorama .hero-grid{grid-template-columns:minmax(0,1.5fr) minmax(0,1fr);gap:20px}
 .hero-panorama .hero-visual{grid-column:1/-1}
 .hero-panorama .hero-club-logo{max-width:155px}
 .hero-panorama .hero-art{overflow-x:auto;overscroll-behavior-x:contain;-webkit-overflow-scrolling:touch;scrollbar-width:thin;scrollbar-color:#99ac82 #e8eddf}
 .hero-panorama .hero-art>img{width:100%;min-width:1000px;max-width:none}
 .hero-panorama figcaption{flex-direction:column;gap:4px}
 .panorama-hint{display:block;font-weight:500;color:var(--ink)}
}
@media(max-width:380px){.hero-panorama .hero-grid{grid-template-columns:minmax(0,1.8fr) minmax(0,1fr);gap:16px}.hero-panorama .hero-club-logo{max-width:105px}}

/* Panorama first, with native swipe and a quiet automatic sweep. */
.hero-panorama{padding-top:0}
.hero-panorama-figure{margin:0 0 30px}
.hero-panorama .hero-art{height:clamp(210px,22vw,340px);border-radius:0;overflow-x:auto;overflow-y:hidden;scrollbar-width:none;-ms-overflow-style:none;scroll-behavior:auto;overscroll-behavior-x:contain;cursor:grab}
.hero-panorama .hero-art::-webkit-scrollbar{display:none;width:0;height:0}
.hero-panorama .hero-art>img{height:100%;width:auto;min-width:calc(100% + 160px);max-width:none;object-fit:cover;user-select:none;-webkit-user-drag:none}
.hero-panorama .hero-art.is-dragging{cursor:grabbing}
.hero-panorama .panorama-controls{min-height:55px;display:flex;flex-direction:row;align-items:center;justify-content:space-between;gap:16px;margin-top:0;padding-top:10px;padding-bottom:10px;font-size:12px}
.hero-panorama .panorama-hint{display:block;font-size:11px;font-weight:400;color:var(--muted);margin-top:3px}
.panorama-toggle{flex-shrink:0;border:1px solid #b9c8ab;background:#f2f5eb;color:var(--ink);border-radius:5px;padding:8px 11px;min-height:38px;font-size:12px;font-weight:500;cursor:pointer}
.panorama-toggle:focus-visible{outline:2px solid #477e18;outline-offset:3px}
@media(max-width:820px){.hero-panorama .hero-art{height:190px}.hero-panorama .hero-art>img{min-width:calc(100% + 160px);width:auto}.hero-panorama .panorama-controls{gap:10px;font-size:11px}.panorama-toggle{max-width:120px;font-size:11px}.hero-panorama-figure{margin-bottom:26px}}

/* Scrollbars are hidden visually; all normal scroll interactions remain. */
html:has(body.site-page),.site-page,.site-page *{scrollbar-width:none;-ms-overflow-style:none}
html:has(body.site-page)::-webkit-scrollbar,.site-page::-webkit-scrollbar,.site-page *::-webkit-scrollbar{display:none;width:0;height:0}
.hero-panorama .panorama-caption{margin-top:0;padding-top:9px;padding-bottom:9px;font-size:12px;color:var(--muted)}

/* Vorschau: Jost SemiBold fuer die grosse Startseitenueberschrift. */
.hero h1{font-weight:600}

/* Verbindliche Webwerte aus Styleguide.jpg, 26.10.2026. */
:root{--fsk-green:#96c93d;--fsk-blue:#298fc2;--fsk-orange:#e87722;--fsk-red:#da291c;--fsk-green-bg:#f1f7e8;--fsk-blue-bg:#ebf3fa;--fsk-orange-bg:#fff2e7;--fsk-red-bg:#fbeceb;--green:var(--fsk-green)}
body{font-weight:400}
h1,h2,h3,h4,h5,h6{font-weight:600}
strong,b,button,.button,.text-link,nav a{font-weight:500}
.hero h1{font-weight:600}
[data-sport="familie"],[data-filter="familie"]{--sport-color:var(--fsk-green);--sport-tint:var(--fsk-green-bg)}
[data-sport="volleyball"],[data-filter="volleyball"]{--sport-color:var(--fsk-blue);--sport-tint:var(--fsk-blue-bg)}
[data-sport="workshop"],[data-filter="workshop"]{--sport-color:var(--fsk-orange);--sport-tint:var(--fsk-orange-bg)}
.member-start,.schedule-shortcut,.member-start .schedule-shortcut,.gallery-collection[data-sport="familie"]{background:var(--fsk-green-bg)}
.next-card[data-sport],.offer[data-sport],.gallery-collection[data-sport]{background:var(--sport-tint)}
.button:hover{background:var(--fsk-green);filter:brightness(.96)}
.button.registration-action,.button.event-registration-link[data-sport="volleyball"]{background:var(--fsk-blue-bg);border-color:var(--fsk-blue);color:var(--ink)}
.next-card[data-sport="workshop"] .registration-action,.workshop-card .button.registration-action,.button.event-registration-link[data-sport="workshop"]{background:var(--fsk-orange);border-color:var(--fsk-orange);color:var(--ink)}
.button.registration-action:hover,.button.event-registration-link:hover{filter:brightness(.96)}
.workshop-card,.workshop-info-button,.hero-highlight{background:var(--fsk-orange-bg)}
.hero-highlight strong{background:var(--fsk-orange);color:#fff}
.workshop-info-button{color:var(--ink);border-color:var(--fsk-orange)}
.cancelled,.today-program-item[data-state="cancelled"] .today-program-status{color:var(--fsk-red)}
.schedule-shortcut[data-status="cancelled"]{background:var(--fsk-red-bg)}


/* Shared card rows keep related information and actions aligned. */
.next-details{align-items:center}
.next-details dd{display:flex;align-items:center;flex-wrap:wrap;gap:5px}
.next-details .calendar-link{margin-left:0}
.next-card-notes .next-note{margin:0}
.next-card-notes .next-note+.next-note{margin-top:8px}
.next-card-actions>.registration-action{display:flex;width:100%;min-height:48px;margin:0;padding:12px 14px;justify-content:center;align-items:center;text-align:center;font-size:13px;line-height:1.5;border-width:1px}
@media(min-width:901px){
 .next-sport{column-gap:20px;row-gap:0}
 .next-card{display:grid;grid-row:span 8;grid-template-rows:subgrid;row-gap:0;align-content:start}
 .next-card>.sport-logo{grid-row:1;align-self:start}
 .next-card>.eyebrow{grid-row:2;align-self:start}
 .next-card>h2{grid-row:3;align-self:start}
 .next-card>.next-card-context{grid-row:4;align-self:start}
 .next-card>.next-details{grid-row:5;align-self:start;margin:18px 0 24px}
 .next-card>.next-card-notes{grid-row:6;margin-bottom:20px}
 .next-card>.next-card-actions{grid-row:7;margin-bottom:28px}
 .next-card-actions>.registration-action{height:100%}
 .next-card>.text-link{grid-row:8;margin:0;padding-top:0;align-self:end}
}
@media(max-width:900px){
 .next-card-notes{margin:0 0 18px}
 .next-card-actions{margin:0 0 20px}
 .next-card-notes:empty,.next-card-actions:empty{display:none}
}

/* Desktop entrance preview: one balanced composition of message and club mark. */
.hero-entry-actions{display:flex;align-items:center;flex-wrap:wrap;gap:16px 24px;margin-top:24px}
.hero-entry-actions .button{font-size:14px;padding:12px 18px}
.hero-offer-link{display:inline-flex;align-items:center;gap:12px;font-size:14px;font-weight:500;text-decoration:none;border-bottom:1px solid #b8c3ad;padding:5px 0}
.hero-offer-link:hover{border-color:var(--ink)}
.hero-offer-link:focus-visible{outline:2px solid var(--fsk-green);outline-offset:5px}
@media(min-width:901px){
 .hero-refined .hero-art{height:clamp(220px,17vw,270px)}
 .hero-refined .hero-panorama-figure{margin-bottom:36px}
 .hero-refined .hero-grid{max-width:1100px;grid-template-columns:minmax(0,1.15fr) minmax(0,.85fr);gap:48px;padding:0 0 16px;align-items:center}
 .hero-refined .hero-heading{font-size:clamp(52px,4.3vw,64px);line-height:1.04;letter-spacing:-2.2px;margin-bottom:20px}
 .hero-refined .intro{max-width:470px;font-size:15px;line-height:1.65}
 .hero-refined .hero-visual{position:relative;isolation:isolate;min-height:340px}
 .hero-refined .hero-visual:before{content:"";position:absolute;z-index:-1;width:min(100%,380px);height:330px;border-radius:49% 51% 44% 47%;background:var(--fsk-green-bg);transform:rotate(-7deg)}
 .hero-refined .hero-club-logo{width:min(100%,310px);max-width:310px}
 .hero-refined .hero-highlight{margin-top:20px}
}
@media(max-width:580px){.hero-entry-actions{gap:14px 20px;margin-top:20px}.hero-entry-actions .button,.hero-offer-link{font-size:13px}}

/* Legal pages and a factual notice for necessary browser storage only. */
.cookie-info-panel{position:fixed;z-index:1000;left:20px;right:20px;bottom:20px;max-width:900px;margin:auto;display:flex;gap:28px;align-items:center;background:#fff;border:1px solid #cdd8be;border-radius:12px;box-shadow:0 10px 45px #24332226;padding:24px 28px;color:var(--ink)}
.cookie-info-panel .eyebrow{font-size:9px;margin:0 0 8px}.cookie-info-panel h2{font-size:23px;letter-spacing:-.4px;line-height:1.2;margin:0 0 12px}.cookie-info-panel p{font-size:14px;line-height:1.6;margin:0}.cookie-info-panel .cookie-info-details{margin-top:10px;font-size:13px}.cookie-info-panel .cookie-info-details a{text-decoration:underline;text-underline-offset:3px}.cookie-info-panel>.button{flex-shrink:0;font-size:14px;padding:12px 20px}
.cookie-info-link{font:inherit;color:inherit;cursor:pointer;border:0;background:transparent;padding:0;text-align:left}.cookie-info-link:hover{text-decoration:underline}.privacy-footer{display:flex;gap:24px;flex-wrap:wrap;padding-top:24px;padding-bottom:35px;font-size:14px}
.privacy-legal{max-width:900px}.privacy-legal h1{font-size:clamp(34px,5vw,58px);letter-spacing:-1.5px;line-height:1.1;overflow-wrap:anywhere;margin-bottom:24px}.privacy-legal h2{font-size:25px;letter-spacing:-.4px;line-height:1.25;margin:36px 0 14px}.privacy-legal p,.privacy-legal li{font-size:16px;line-height:1.75}.privacy-legal a{overflow-wrap:anywhere;text-decoration:underline;text-underline-offset:3px}.privacy-legal address{font-style:normal;line-height:1.7}.privacy-legal table{width:100%;border-collapse:collapse;font-size:14px}.privacy-legal td,.privacy-legal th{padding:12px;text-align:left;vertical-align:top;border:1px solid var(--line);overflow-wrap:anywhere}.privacy-legal .table-scroll{overflow-x:auto}.privacy-summary{background:var(--fsk-green-bg);border:1px solid var(--line);padding:22px 26px;border-radius:8px}
@media(max-width:580px){.cookie-info-panel{inset:auto 12px 12px;max-height:calc(100dvh - 24px);overflow:auto;display:block;padding:20px}.cookie-info-panel h2{font-size:21px}.cookie-info-panel>.button{margin-top:18px;width:100%;justify-content:center}.privacy-legal h2{font-size:23px}.privacy-legal p,.privacy-legal li{font-size:15px}.privacy-summary{padding:18px}}
/* Public documents and authenticated document administration. */
.download-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,320px),1fr));gap:24px}.download-card{padding:28px;border:1px solid var(--line);border-radius:10px;background:#fff;display:flex;flex-direction:column;align-items:flex-start}.download-badge{padding:4px 10px;background:#f1f7e8;border-radius:4px;font-size:12px;font-weight:600;letter-spacing:1px}.download-card h3{font-size:25px;line-height:1.25;margin:20px 0 12px}.download-card p{max-width:65ch;margin:0 0 24px}.download-card .button{margin-top:auto}.download-size{font-size:12px;margin-top:8px}.download-return{background:#f1f7e8;padding:24px 28px;border-radius:8px;margin-top:28px}.download-return h3{font-size:21px;margin:0 0 10px}.download-return p{margin:0;max-width:86ch}.download-return a{text-decoration:underline;overflow-wrap:anywhere}.documents-editor{margin:40px 0;padding-top:28px;border-top:1px solid var(--line)}.document-edit-item{margin:20px 0;padding:20px}.document-actions{display:flex;gap:10px;flex-wrap:wrap;margin-top:16px}.documents-editor input[type=file]{max-width:100%}.documents-editor>button{margin:10px 14px 10px 0}.documents-editor textarea{min-height:85px}@media(min-width:901px){#navigation{gap:18px}}@media(max-width:580px){.download-card,.download-return{padding:22px}.download-card h3{font-size:23px}.download-return h3{font-size:20px}.document-edit-item{padding:14px}.document-actions .secondary{font-size:12px}}

/* Preserve author-entered lines and blank paragraphs without interpreting HTML. */
[data-text]:not([data-text="heroTitle"]):not([data-text="aboutFounders"]),.next-note,.event-note,.workshop-copy,.workshop-slot-note,#workshop-info-copy,.download-card>p,.photo-view figcaption{white-space:pre-line}
