@font-face{font-family:Roboto;src:url('assets/roboto-regular.woff2') format('woff2');font-weight:400;font-display:swap}@font-face{font-family:Roboto;src:url('assets/roboto-700.woff2') format('woff2');font-weight:700;font-display:swap}@font-face{font-family:Roboto;src:url('assets/roboto-900.woff2') format('woff2');font-weight:900;font-display:swap}
:root{--blue:#224696;--dark:#162e61;--ink:#142a50;--muted:#52627b;--light:#f0f4fa;--line:#dbe3ef}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:105px}body{margin:0;font-family:Roboto,Arial,sans-serif;color:var(--ink);background:white;font-size:16px;line-height:1.6}a{color:inherit;text-decoration:none}button,summary{font:inherit}button,a,summary{-webkit-tap-highlight-color:transparent}a:focus-visible,summary:focus-visible,button:focus-visible{outline:3px solid #ecad32;outline-offset:5px}img{display:block;max-width:100%;height:auto}.shell{width:min(1240px,calc(100% - 96px));margin-inline:auto}.skip{position:fixed;left:20px;top:-100px;padding:12px 20px;background:white;z-index:50}.skip:focus{top:12px}.header{background:white;border-bottom:1px solid var(--line);position:sticky;top:0;z-index:20}.header-inner{min-height:98px;display:flex;align-items:center;justify-content:space-between;gap:24px}.brand{display:flex;gap:13px;align-items:center;font-size:23px;font-weight:900;letter-spacing:-.5px;line-height:1.3}.brand img{width:53px;height:57px;object-fit:contain}.brand small{display:block;font-size:12px;letter-spacing:1.4px;font-weight:700;margin-top:4px}.header nav{display:flex;align-items:center;gap:30px;font-size:15px;font-weight:700}.header nav>a:hover{color:var(--blue);text-decoration:underline;text-underline-offset:7px}.nav-contact{border:1px solid var(--line);padding:10px 18px;border-radius:6px}.nav-contact span{margin-left:13px}.menu-toggle{display:none}.hero{background:var(--blue);color:white;overflow:hidden}.hero-main{display:grid;grid-template-columns:1.3fr 1fr;gap:64px;align-items:center;padding-top:66px;padding-bottom:68px}.eyebrow{font-size:13px;font-weight:700;letter-spacing:1.7px;margin:0 0 22px;display:flex;align-items:center;gap:12px}.short-line{width:30px;height:2px;background:#a9c9ff}.blue{color:var(--blue)}h1,h2,h3,p{margin-top:0}h1{font-size:clamp(58px,6.5vw,88px);font-weight:900;line-height:1.015;letter-spacing:-3px;margin-bottom:26px}h1 em{color:#b8d6ff;font-style:normal}h2{font-size:clamp(30px,3.2vw,44px);line-height:1.12;letter-spacing:-1.2px;font-weight:900;margin-bottom:0}.hero-description{font-size:18px;line-height:1.65;max-width:445px;color:#e0eafb;margin-bottom:29px}.button{display:inline-flex;gap:35px;align-items:center;justify-content:space-between;padding:15px 22px;border-radius:6px;font-size:16px;font-weight:700;transition:transform .2s,background .2s}.button-white{background:white;color:var(--blue)}.button:hover{transform:translateY(-3px);background:#e7effe}.hero-art{position:relative;display:flex;flex-direction:column;align-items:center;padding:15px 0 0}.year-label{align-self:flex-end;text-align:right;font-size:12px;line-height:1.5;font-weight:700;letter-spacing:1.5px;margin:0 7px 27px;color:#d9e7ff}.crest-wrap{width:310px;max-width:85%;padding:26px;background:#f8f9fb;border-radius:36px;transform:rotate(7deg);box-shadow:17px 17px 0 #173b83}.hero-crest{width:100%;mix-blend-mode:multiply}.sticker{position:absolute;bottom:69px;left:-6px;transform:rotate(-9deg);background:#c4dbff;color:#193b80;padding:15px 25px;font-size:19px;line-height:1.4;border:3px solid var(--blue);box-shadow:0 5px 0 rgba(0,0,0,.08);border-radius:4px}.sticker strong{font-size:24px;font-weight:900}.hero-note{font-size:14px;margin:37px 0 0;letter-spacing:.3px;color:#dae7fb}.hero-bottom{border-top:1px solid #5873ab;padding-block:20px;display:flex;justify-content:space-between;font-size:13px;font-weight:700;letter-spacing:1.1px}.hero-bottom>span:last-child{font-weight:400;letter-spacing:0;color:#e0eafb;font-size:14px}.hero-bottom>span:last-child span{font-size:22px;margin-left:35px}.sports{padding-block:65px 78px;position:relative;z-index:3}.section-heading{display:flex;justify-content:space-between;align-items:flex-end;margin-bottom:32px;gap:24px}.section-heading .eyebrow{margin-bottom:11px}.section-heading>p{font-size:16px;color:var(--muted);margin:0}.sport-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:20px;align-items:start}.sport-card{position:relative;border:1px solid var(--line);background:white;border-radius:12px;padding:22px 21px 24px;transition:transform .22s,box-shadow .22s,border-color .22s}.sport-card:hover{transform:translateY(-5px);box-shadow:0 15px 35px #142a5010;border-color:#95b1df}.card-index{display:block;font-size:12px;font-weight:700;letter-spacing:1.2px;color:#65738a}.sport-card img{width:158px;height:158px;object-fit:contain;border-radius:50%;margin:23px auto 22px;transition:transform .3s}.sport-card:hover img{transform:rotate(-5deg)}.sport-title{display:flex;justify-content:space-between;gap:7px;align-items:center;font-size:22px;line-height:1.4;font-weight:900;letter-spacing:-.6px}.round-arrow{display:grid;place-items:center;border:1px solid var(--line);border-radius:50%;width:29px;height:29px;font-size:20px;font-weight:400;flex-shrink:0;color:var(--blue)}.sport-caption{display:block;font-size:14px;color:var(--muted);margin-top:6px}.football{padding:0;z-index:4}.football summary{padding:22px 21px 24px;cursor:pointer;list-style:none}.football summary::-webkit-details-marker,.club-more summary::-webkit-details-marker{display:none}.football[open] .round-arrow{transform:rotate(45deg);background:var(--blue);color:white}.football-menu{position:absolute;left:-1px;right:-1px;top:calc(100% - 6px);padding:13px 19px 18px;border:1px solid var(--line);border-top:0;border-radius:0 0 12px 12px;background:white;box-shadow:0 18px 25px #142a501a}.football-menu p{color:var(--muted);font-size:14px;margin-bottom:6px}.football-menu a{display:flex;justify-content:space-between;padding:9px 0;font-size:15px;font-weight:700;border-bottom:1px solid var(--line)}.football-menu a:hover{color:var(--blue);text-decoration:underline}.club{background:var(--light);padding-block:68px}.club-intro{display:grid;grid-template-columns:1fr 1fr;gap:90px;align-items:start}.club-intro .eyebrow{margin-bottom:17px}.club-copy p{color:var(--muted);font-size:17px;line-height:1.8;margin-bottom:16px}.text-link{display:inline-flex;align-items:center;gap:20px;font-size:15px;font-weight:700;color:var(--blue);border-bottom:1px solid #9fb4d5;padding-bottom:6px}.text-link:hover{border-color:var(--blue)}.club-links{display:grid;grid-template-columns:1fr 1fr;gap:0 36px;margin-top:42px}.club-links>a,.club-more summary{display:flex;align-items:center;gap:19px;padding:20px 0;border-top:1px solid #d3ddeb}.club-links img{width:67px;height:67px;object-fit:contain;border-radius:50%}.club-links>a>span:nth-child(2),.club-more summary>span:nth-child(2){font-weight:700;font-size:18px;flex:1}.club-links small{display:block;font-size:14px;color:var(--muted);font-weight:400}.club-links>a>span:last-child,.club-more summary>span:last-child{font-size:23px;padding-right:15px;color:var(--blue)}.club-links a:hover>span:nth-child(2){color:var(--blue)}.club-more summary{list-style:none;cursor:pointer}.club-more>div{display:flex;flex-wrap:wrap;gap:8px;padding:0 0 20px 86px}.club-more>div a{font-size:14px;background:white;border:1px solid var(--line);border-radius:5px;padding:7px 12px}.club-more>div a:hover{border-color:var(--blue)}.news{display:grid;grid-template-columns:1fr 1fr;gap:90px;padding-block:72px;align-items:center}.news .eyebrow{margin-bottom:17px}.news p:last-child{font-size:16px;color:var(--muted);margin-top:22px;margin-bottom:0}.news-links>a{display:flex;align-items:center;gap:16px;border-bottom:1px solid var(--line);padding:23px 0}.news-links>a>span:nth-child(2){flex:1;font-weight:700;font-size:19px}.news-links small{display:block;font-size:13px;font-weight:400;color:var(--muted);margin-top:4px}.news-links>a>span:last-child{font-size:25px;color:var(--blue)}.news-links a:hover{color:var(--blue)}.social-icon,.bfv-label{width:51px;height:51px;display:grid;place-items:center;background:var(--light);border-radius:10px;color:var(--blue);font-size:15px;font-weight:900;flex-shrink:0}.social-icon img{width:25px;height:25px}.contact{background:var(--blue);color:white;padding-block:62px}.contact-inner{display:grid;grid-template-columns:1.2fr 1fr;gap:100px;align-items:center}.contact .eyebrow{color:#bed6fe;margin-bottom:18px}.contact h2{font-size:40px}.contact p:not(.eyebrow){font-size:17px;color:#e0eafb;margin-top:23px;margin-bottom:25px}.contact-details{border-left:1px solid #6880b2;padding-left:70px}.contact-details h3{font-size:21px;margin-bottom:15px}.contact-details address{font-style:normal;color:#dfebff;margin-bottom:27px;line-height:1.8}.contact-details>a{display:flex;align-items:center;gap:12px;margin-top:15px;font-size:17px}.contact-details>a:hover{text-decoration:underline}.contact-details img{filter:brightness(0) invert(1);width:20px;height:20px}.footer{padding-block:27px}.footer-inner{display:flex;justify-content:space-between;align-items:center;gap:24px;font-size:13px;color:var(--muted)}.footer-motto{color:var(--blue);font-weight:700}.footer nav{display:flex;gap:22px}.footer a:hover{text-decoration:underline}
@media(min-width:1500px){.hero-main{padding-block:75px 85px}}
@media(max-width:1100px){.shell{width:calc(100% - 56px)}.header nav{gap:20px}.hero-main{gap:30px}h1{font-size:70px}.crest-wrap{width:270px}.sticker{left:-7px;bottom:60px}.sport-grid{gap:13px}.sport-card{padding:19px 16px}.football{padding:0}.football summary{padding:19px 16px}.sport-title{font-size:20px}.sport-caption{font-size:13px}.club-intro,.news{gap:50px}.contact-inner{gap:55px}.contact-details{padding-left:40px}}
@media(max-width:800px){html{scroll-padding-top:88px}.shell{width:calc(100% - 40px)}.header-inner{min-height:80px}.brand{font-size:21px}.brand small{font-size:12px}.brand img{width:44px;height:49px}.menu-toggle{display:flex;align-items:center;gap:13px;border:1px solid var(--line);border-radius:5px;background:white;padding:8px 12px;font-size:14px;color:var(--ink)}.header nav{display:none;position:absolute;top:100%;left:0;right:0;padding:20px;background:white;box-shadow:0 15px 22px #142a5012;flex-direction:column;align-items:stretch;gap:0}.header nav.is-open{display:flex}.header nav a{padding:12px}.hero-main{padding-block:45px 45px;gap:15px;grid-template-columns:1.25fr 1fr}h1{font-size:55px;letter-spacing:-2px}.hero-description{font-size:16px}.crest-wrap{width:218px;padding:18px}.year-label{font-size:12px;letter-spacing:1px}.sticker{padding:10px 16px;left:-5px;bottom:58px;font-size:14px}.sticker strong{font-size:20px}.hero-note{font-size:12px}.eyebrow{font-size:12px}.hero-bottom{font-size:12px}.hero-bottom>span:last-child{font-size:12px}.hero-bottom>span:last-child span{margin-left:10px}.section-heading>p{font-size:14px}.sports{padding-block:44px 50px}.sport-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}.sport-card,.football summary{padding:23px}.football{padding:0}.sport-title{font-size:24px}.sport-caption{font-size:14px}.sport-card img{width:170px;height:170px}.club,.news{padding-block:50px}.club-intro{grid-template-columns:1fr;gap:26px}.club-copy p{font-size:16px}.club-links{gap:0 20px}.club-links img{width:55px;height:55px}.club-links>a,.club-more summary{gap:12px}.club-links>a>span:nth-child(2),.club-more summary>span:nth-child(2){font-size:16px}.club-links small{font-size:13px}.club-more>div{padding-left:0}.news{gap:35px}.news-links>a>span:nth-child(2){font-size:16px}.news-links small{font-size:12px}.news-links>a{gap:12px}.contact-inner{gap:35px}.contact h2{font-size:32px}.contact-details{padding-left:28px}.contact-details>a{font-size:15px}.footer-inner{flex-wrap:wrap;gap:15px}.footer-motto{display:none}}
@media(max-width:540px){.shell{width:calc(100% - 36px)}.brand small{font-size:12px;letter-spacing:.8px}.brand{gap:9px;font-size:20px}.menu-toggle{gap:7px}.hero-main{grid-template-columns:1fr;padding-top:34px;padding-bottom:35px}.hero-copy{position:relative;z-index:2}.hero-copy .eyebrow{margin-bottom:23px}h1{font-size:clamp(48px,12.5vw,68px);letter-spacing:-2px}.hero-description{max-width:340px;font-size:16px;margin-bottom:25px}.hero-art{display:none}.hero-bottom{padding-block:17px;display:block}.hero-bottom>span:last-child{display:none}.section-heading{display:block;margin-bottom:24px}.section-heading>p{margin-top:15px;font-size:15px}.section-heading>p br{display:none}.sport-grid{gap:12px}.sport-card,.football summary{padding:15px 12px 18px}.football{padding:0}.sport-card img{width:115px;height:115px;margin:19px auto 16px}.card-index{font-size:12px;letter-spacing:.5px}.sport-title{font-size:18px;letter-spacing:-.5px;gap:3px}.round-arrow{width:23px;height:23px;font-size:17px}.sport-caption{font-size:13px;line-height:1.45;min-height:38px;margin-top:8px}.football-menu{width:calc(200% + 14px);right:auto;padding:12px 17px 16px}.football-menu a{padding:11px 0}.club-links{grid-template-columns:1fr;margin-top:24px}.club-links img{width:64px;height:64px}.club-links>a>span:nth-child(2),.club-more summary>span:nth-child(2){font-size:18px}.club-links small{font-size:14px}.club-more>div{padding-left:76px}.news{grid-template-columns:1fr;gap:18px}.news-links>a>span:nth-child(2){font-size:18px}.news-links small{font-size:12px}.contact-inner{grid-template-columns:1fr;gap:35px}.contact{padding-block:45px}.contact h2{font-size:33px}.contact-details{border-left:0;border-top:1px solid #6880b2;padding:28px 0 0}.contact-details>a{font-size:16px}.contact-details address{margin-bottom:20px}.footer-inner{flex-direction:column;align-items:flex-start}.footer nav{gap:24px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{transition:none!important;animation:none!important}}

@media(max-width:540px){.brand small{display:none}.card-index{font-size:12px;letter-spacing:0}.sport-title{font-size:17px}.sport-card,.football summary{padding-inline:10px}.football{padding:0}}
@media(min-width:801px) and (max-width:1000px){.sport-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.sport-card img{width:170px;height:170px}.header nav{gap:14px}.brand small{font-size:12px;letter-spacing:0}.header nav{font-size:14px}.nav-contact{padding:8px 12px}}
@media(max-width:540px){.sport-title .round-arrow{display:none}}
/* Shared pages: the club's blue-and-white visual identity, readable long-form content. */
.page-hero{background:var(--blue);color:#fff;padding:24px 0 48px}.breadcrumb{display:flex;flex-wrap:wrap;gap:12px;font-size:14px;color:#dce7fb;margin-bottom:34px}.breadcrumb a:hover{text-decoration:underline}.page-heading{display:flex;justify-content:space-between;align-items:center;gap:36px}.page-heading h1{font-size:clamp(38px,5vw,66px);line-height:1.1;letter-spacing:-1.8px;margin:0;overflow-wrap:break-word}.page-heading .eyebrow{margin-bottom:14px;color:#c5dcff}.page-lead{font-size:20px;line-height:1.5;margin:18px 0 0;color:#e3edff}.page-heading>img{width:140px;height:140px;object-fit:contain;border-radius:50%;flex-shrink:0}.page-layout{display:grid;grid-template-columns:minmax(0,1fr) 290px;gap:76px;padding-block:56px 72px;align-items:start}.page-layout.wide{display:block}.prose{min-width:0;font-size:17px;line-height:1.85;overflow-wrap:anywhere}.prose>p:first-child{font-size:19px;color:var(--muted)}.prose h2{font-size:28px;line-height:1.3;letter-spacing:-.5px;margin:0 0 20px}.prose p{margin:0 0 18px}.prose strong{color:var(--ink)}.prose a:not(.button):not(.page-card){color:var(--blue);text-decoration:underline;text-underline-offset:4px}.prose a:hover{text-decoration-thickness:2px}.content-section{margin-top:32px;padding-top:32px;border-top:1px solid var(--line);scroll-margin-top:120px}.content-section:first-child{margin-top:0;padding-top:0;border:0}.prose ul,.prose ol{padding-left:25px;margin:0 0 24px}.prose li{margin-bottom:12px}.prose small,.small-note{font-size:14px;line-height:1.65;color:var(--muted)}.on-page{padding:24px;background:var(--light);border-radius:10px}.on-page h2,.aside-join h2{font-size:18px;letter-spacing:0;margin:0 0 15px}.on-page a{display:block;font-size:14px;line-height:1.6;padding:8px 0;border-top:1px solid var(--line);color:var(--muted)}.on-page a:hover{color:var(--blue);text-decoration:underline}.aside-join{margin-top:24px;padding:24px;border:1px solid var(--line);border-radius:10px}.aside-join p{font-size:15px;color:var(--muted);margin-bottom:16px}.aside-join a{display:block;font-size:15px;font-weight:700;color:var(--blue);margin-top:12px}.source-photo{margin:24px 0}.source-photo img{border-radius:10px;width:100%;height:auto}.source-photo figcaption{font-size:13px;margin-top:8px;color:var(--muted)}.document-link{margin-block:12px!important}.prose .document-link>a{display:flex;justify-content:space-between;align-items:center;gap:20px;padding:18px 20px;border:1px solid var(--line);border-radius:8px;text-decoration:none!important;font-weight:700;font-size:16px;line-height:1.5;background:#f7f9fd}.document-link>a:hover{border-color:var(--blue);background:#eef4ff}.file-label{font-size:13px;white-space:nowrap;color:var(--muted);font-weight:400;flex-shrink:0}.standalone-link a{display:inline-block}.page-cards{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px;margin-top:30px}.page-card{display:flex;align-items:center;gap:18px;padding:22px;border:1px solid var(--line);border-radius:10px;background:white;transition:transform .15s,border-color .15s}.page-card:hover{border-color:var(--blue);transform:translateY(-3px)}.page-card img{width:58px;height:58px;border-radius:50%;flex-shrink:0}.page-card>span:nth-child(2){flex:1;min-width:0}.page-card strong{display:block;font-size:18px}.page-card small{display:block;font-size:14px;line-height:1.5;margin-top:4px;color:var(--muted)}.extra-title{margin-top:52px!important}.related{padding-block:32px 56px;border-top:1px solid var(--line)}.related h2{font-size:25px;letter-spacing:-.4px;margin-bottom:24px}.related nav{display:flex;flex-wrap:wrap;gap:10px}.related a{padding:9px 16px;background:var(--light);border-radius:5px;font-size:15px}.related a:hover{background:var(--blue);color:white}.directory{display:grid;grid-template-columns:1.4fr 1fr 1fr .8fr;gap:34px;padding-block:30px 42px}.directory nav{display:flex;flex-direction:column;align-items:flex-start;gap:8px}.directory h2{font-size:16px;letter-spacing:0;margin-bottom:9px}.directory nav a{font-size:14px;color:var(--muted);line-height:1.7}.directory nav a:hover,.directory a[aria-current]{color:var(--blue)}.directory-brand .brand{font-size:20px}.directory-brand p{font-size:14px;color:var(--muted);margin:20px 0 10px}.directory-brand>a:last-child{font-size:14px}.footer{background:#f7f9fc;border-top:1px solid var(--line)}.footer-inner{padding-top:22px;border-top:1px solid var(--line)}.people-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:26px}.person{border:1px solid var(--line);border-radius:12px;overflow:hidden;background:white}.person>img{width:100%;aspect-ratio:3/4;object-fit:cover}.person>div{padding:25px 23px}.person .eyebrow{font-size:12px;margin-bottom:10px;letter-spacing:1px}.person h2{font-size:26px;margin-bottom:14px}.person address,.contact-page-grid address{font-style:normal;line-height:1.8;margin-bottom:20px}.person a{display:block;font-size:14px;margin:10px 0;overflow-wrap:anywhere}.member-grid{list-style:none;padding:0!important;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.member-grid li{padding:18px 20px;margin:0;border:1px solid var(--line);border-radius:7px;background:var(--light)}.note-panel{margin-top:30px;padding:26px 30px;background:var(--light);border-left:4px solid var(--blue);border-radius:0 8px 8px 0}.note-panel p:last-child{margin:0}.button-blue{background:var(--blue);color:white!important;border:1px solid var(--blue);cursor:pointer;text-decoration:none}.button-blue:hover{background:var(--dark)}.contact-page-grid{display:grid;grid-template-columns:.9fr 1.2fr;gap:70px}.contact-channels{margin:25px 0}.contact-channels a{display:block;margin:10px 0}.contact-page-grid .small-note{margin-top:22px}.message-box{padding:30px;background:var(--light);border-radius:12px}.message-box>p{font-size:16px;color:var(--muted)}form label{font-size:15px;font-weight:700;display:block;margin:18px 0 6px}form input,form textarea{width:100%;padding:12px;border:1px solid #9aaecb;border-radius:5px;font:inherit;color:var(--ink);background:white}form textarea{resize:vertical}form input:focus-visible,form textarea:focus-visible{outline:3px solid #a9c9ff;outline-offset:2px}#form-status:empty{display:none}.prose .button+.small-note{margin-top:15px}.page-historie .prose li{padding:10px 0 10px 10px}.page-historie .prose ul{border-left:3px solid #b6cae8;list-style:none}.page-satzung .prose,.page-datenschutz .prose{font-size:16px}.page-impressum .prose>p{margin-bottom:9px}
@media(max-width:1100px){.page-layout{gap:40px;grid-template-columns:minmax(0,1fr) 260px}.directory{grid-template-columns:1.2fr 1fr 1fr}.directory nav:last-child{grid-column:2/4;flex-direction:row;flex-wrap:wrap;gap:20px}.directory nav:last-child h2{flex-basis:100%;margin:0}.people-grid{gap:18px}.person>div{padding:20px 17px}.person h2{font-size:23px}.contact-page-grid{gap:35px}}
@media(max-width:800px){.page-hero{padding-bottom:35px}.page-heading>img{width:94px;height:94px}.page-heading{gap:20px}.page-heading h1{font-size:43px}.page-lead{font-size:17px}.page-layout{grid-template-columns:minmax(0,1fr) 225px;gap:26px;padding-block:38px 50px}.prose{font-size:16px}.prose h2{font-size:24px}.prose .document-link>a{flex-wrap:wrap;gap:7px;padding:16px}.file-label{display:block;width:100%}.on-page,.aside-join{padding:20px}.page-cards{gap:12px}.page-card{padding:17px;gap:12px}.page-card img{width:46px;height:46px}.page-card strong{font-size:17px}.people-grid{grid-template-columns:1fr}.person{display:grid;grid-template-columns:180px 1fr}.person>img{height:100%;object-fit:cover;min-height:260px}.member-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.contact-page-grid{grid-template-columns:1fr;gap:30px}.directory{grid-template-columns:1fr 1fr;gap:28px}.directory-brand{grid-column:1/-1}.directory nav:last-child{grid-column:1/-1}.directory .brand small{display:block}}
@media(max-width:600px){.page-layout{display:block}.page-aside{margin-top:36px}.on-page{display:none}.source-photo{max-width:320px}.page-heading>img{width:65px;height:65px;align-self:flex-start}.page-heading h1{font-size:36px;letter-spacing:-1px}.page-heading .eyebrow{font-size:12px;letter-spacing:1px}.breadcrumb{font-size:13px;margin-bottom:27px}.page-lead{font-size:16px}.page-hero{padding-top:18px}.page-cards{grid-template-columns:1fr}.page-card{padding:18px}.page-card img{width:52px;height:52px}.member-grid{grid-template-columns:1fr}.person{grid-template-columns:1fr}.person>img{height:auto;max-height:440px;object-position:top}.person>div{padding:25px}.message-box{padding:22px}.related{padding-bottom:36px}.directory{padding-top:16px}.directory-brand{margin-bottom:8px}.directory nav{gap:10px}.directory h2{font-size:16px}.directory nav a{font-size:14px}.prose .document-link>a{font-size:16px}.note-panel{padding:22px}.prose>p:first-child{font-size:17px}}
@media print{.header,.footer,.page-aside,.related,.skip{display:none}.page-hero{background:white;color:black;padding:0}.breadcrumb,.page-heading>img,.eyebrow{display:none}.page-layout{display:block;padding:25px 0}.shell{width:100%}.page-heading h1{font-size:30px}.page-lead{color:black}.prose{font-size:12pt}.content-section{break-inside:avoid}.prose a{color:black}}
.page-heading>div{min-width:0}.prose .standalone-link a[href^="tel:"],.prose .standalone-link a[href^="mailto:"]{overflow-wrap:anywhere}.page-satzung .on-page{max-height:none}.page-heading h1{hyphens:auto}
.contact-section{background:var(--light);border:0;border-radius:10px;padding:25px 28px!important}.contact-section p{margin-bottom:6px}.contact-section h2{margin-bottom:16px}.contact-section .standalone-link{margin-top:10px;margin-bottom:0}.prose a[target="_blank"]::after{content:' ↗';font-size:.9em}.source-photo a::after{content:none}

/* Startseite: das echte Hesselberg-Stadion und das freigestellte Vereinswappen. */
.hero{position:relative;isolation:isolate;background:#102f68}
.hero-stadium{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center 60%;filter:brightness(1.03) contrast(1.04);transform:scale(1.53);transform-origin:56% 64%;opacity:1;z-index:-3}
.hero::before{content:"";position:absolute;inset:0;background:transparent;z-index:-2;pointer-events:none}
.hero::after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(10,32,73,.96) 0%,rgba(18,48,98,.9) 22%,rgba(38,72,121,.82) 40%,rgba(102,128,164,.55) 56%,rgba(172,188,210,.3) 70%,rgba(220,226,234,.28) 85%,rgba(237,240,244,.38) 100%);z-index:-1;pointer-events:none}
.hero-main{grid-template-columns:minmax(0,1.25fr) minmax(0,1fr);gap:50px;padding-block:68px 62px}
.hero-copy{min-width:0}.hero-copy h1{font-size:clamp(50px,6.3vw,84px);line-height:1.04;letter-spacing:-2.5px}
.hero-description{max-width:470px;color:#e7efff}
.hero-actions{display:flex;flex-wrap:wrap;gap:12px}.hero-actions .button{gap:20px}
.button-outline{border:1px solid #b6cff2;background:rgba(15,46,100,.48);color:white}.button-outline:hover{background:#254e95;color:white}
.hero-art{display:flex;min-width:0;padding:22px 12px;perspective:1000px}
.crest-wrap{width:365px;max-width:94%;padding:0;background:transparent;border:0;border-radius:0;transform:rotate(-4deg);box-shadow:none}
.hero-crest{width:100%;height:auto;aspect-ratio:1323/1189;object-fit:contain;border-radius:0;mix-blend-mode:normal;opacity:.85}
.hero-note{color:#142a50;font-size:14px;font-weight:700;letter-spacing:1px;margin:35px 0 8px;text-align:center}
.hero-bottom{border-top-color:#bdcfee55}.hero-bottom>span:last-child{color:#142a50}
@media(max-width:1100px){.hero-main{gap:28px}.hero-copy h1{font-size:clamp(45px,6.3vw,70px)}.crest-wrap{width:310px}}
@media(max-width:800px){.hero-main{gap:20px;padding-block:42px}.hero-copy h1{font-size:clamp(38px,6.5vw,53px);letter-spacing:-1.5px}.hero-art{padding-inline:0}.crest-wrap{padding:0;border-radius:0}.hero-note{font-size:13px;letter-spacing:0}.hero-actions .button{font-size:14px;padding:13px 16px}}
@media(max-width:540px){
 .hero-main{grid-template-columns:minmax(0,1fr);gap:12px;padding-top:40px;padding-bottom:34px}
 .hero-main::before{content:none}
 .hero-art{display:flex;order:-1;padding:0;position:relative}
 .crest-wrap{width:162px;max-width:65%;padding:0;border-radius:0;box-shadow:none}
 .hero-crest{border-radius:0}.hero-note{margin:16px 0 0;font-size:12px;letter-spacing:.6px}
 .hero-copy .eyebrow{font-size:12px;letter-spacing:1.1px;margin-bottom:14px}
 .hero-copy h1{font-size:clamp(36px,10.5vw,52px);line-height:1.06;letter-spacing:-1.4px;margin-bottom:18px}
 .hero-description{font-size:16px;line-height:1.55;max-width:100%;margin-bottom:20px}
 .hero-actions{gap:10px}.hero-actions .button{font-size:14px;padding:12px 14px;gap:12px}
 .hero-stadium{height:100%;object-position:63% center;transform:none;opacity:1}
 .hero::after{background:linear-gradient(0deg,rgba(14,43,92,.76) 0%,rgba(14,43,92,.16) 36%,transparent 76%),linear-gradient(90deg,rgba(10,32,73,.96) 0%,rgba(18,48,98,.88) 40%,rgba(38,72,121,.64) 70%,rgba(141,161,190,.25) 100%)}
 .hero-bottom>span:last-child{color:#e7efff}
 .hero-bottom{font-size:12px;padding-block:16px}
}

.groundskeeper{display:flex;align-items:flex-start;gap:24px;margin-top:32px;padding:28px;border:1px solid var(--line);border-radius:10px;background:var(--light);scroll-margin-top:120px}
.groundskeeper>img{width:100px;height:100px;object-fit:contain;border-radius:50%;flex-shrink:0}
.groundskeeper>div{min-width:0}.groundskeeper h2{margin-bottom:12px}.groundskeeper h3{font-size:22px;line-height:1.35;margin:0 0 12px}.groundskeeper p{margin-bottom:14px}.groundskeeper-phone{display:inline-block;font-weight:700;padding-block:8px}
@media(max-width:600px){.groundskeeper{flex-direction:column;gap:18px;padding:22px}.groundskeeper>img{width:80px;height:80px}}

/* Einheitliche Reiter in der Hauptnavigation. */
.header nav{gap:8px;flex-shrink:0;font-size:15px}
.header nav>a{display:flex;align-items:center;justify-content:center;min-height:46px;padding:10px 14px;border:1px solid var(--line);border-radius:6px;line-height:1.5;text-align:center;white-space:nowrap;transition:background .15s,border-color .15s,color .15s}
.header nav>a:hover,.header nav>a[aria-current="page"]{color:var(--blue);background:var(--light);border-color:var(--blue);text-decoration:none}
@media(max-width:1200px){
 .header .menu-toggle{display:flex;align-items:center;gap:10px;border:1px solid var(--line);border-radius:6px;background:white;padding:10px 14px;min-height:46px;font-size:14px;color:var(--ink);flex-shrink:0}
 .header nav{display:none;position:absolute;top:100%;left:0;right:0;padding:20px;background:white;box-shadow:0 15px 22px #142a5012;flex-direction:column;align-items:stretch;gap:8px;max-height:calc(100dvh - 100px);overflow-y:auto}
 .header nav.is-open{display:flex}
 .header nav>a{justify-content:flex-start;white-space:normal;text-align:left}
}
@media(max-width:540px){.header .brand small{display:none}}

/* Mobile usability and large-text support. */
.schedule-shortcuts{display:flex;flex-wrap:wrap;gap:14px 24px;margin-top:20px}
.schedule-rules h3{margin-top:28px;margin-bottom:12px}
.schedule-rules h3:first-child{margin-top:0}
.schedule-rules ul{padding-left:24px;margin-bottom:24px}
.schedule-rules li+li{margin-top:10px}
@media(max-width:600px){
 .subpage .page-heading{display:block}
 .subpage .page-heading>img{display:none}
 .subpage .page-heading h1{font-size:clamp(1.75rem,7.5vw,2.25rem);hyphens:none;letter-spacing:-.5px}
 .subpage .page-heading .eyebrow,.breadcrumb,.file-label,.source-photo figcaption{font-size:.875rem}
 .subpage .button,.related a,.contact-channels a,.person a{min-height:44px}
 .person a{font-size:1rem;display:flex;align-items:center}
 .related a{display:flex;align-items:center}
 .message-box input,.message-box textarea{font-size:1rem}
 .message-box .button{min-height:48px;width:100%;white-space:normal}
 .page-card strong,.contact-section{overflow-wrap:anywhere}
}
@media (max-width:800px){
 .header .menu-toggle{min-height:48px;min-width:88px;font-size:1rem}
 .header nav{padding-bottom:max(20px,env(safe-area-inset-bottom));max-height:calc(100dvh - 82px)}
 .header nav>a{min-height:48px;font-size:1rem}
 .hero-actions .button{min-height:48px;font-size:1rem}
 .sport-caption{font-size:.875rem}
 .football-menu a,.club-more>div a{min-height:44px;display:flex;align-items:center}
 .footer nav a{min-height:44px;display:flex;align-items:center;padding-block:6px;font-size:.9375rem}
 .contact-details>a{min-height:44px;font-size:1rem;overflow-wrap:anywhere}
 .news-links small{font-size:.875rem}
 .brand{min-width:0}.brand>span{min-width:0}.hero-copy,.contact-details,.news-links{min-width:0}
}
@media(max-width:540px){
 .hero-description,.section-heading>p,.club-copy p,.news p:last-child,.contact p:not(.eyebrow){font-size:1rem}
 .sport-title{font-size:1.0625rem;overflow-wrap:anywhere}
 .hero-actions{display:grid;grid-template-columns:1fr;width:min(100%,340px)}
 .hero-actions .button{width:100%;justify-content:space-between}
 .hero-art{padding-top:4px}.hero-note{font-size:.875rem}
 .contact h2{font-size:2rem;overflow-wrap:anywhere}
 .directory{column-gap:20px}.directory nav{min-width:0}
 .news-links>a>span:nth-child(2){min-width:0;overflow-wrap:anywhere}
}
@media(max-width:359px){
 .brand{font-size:1.125rem}.brand img{width:38px;height:44px}
 .header-inner{gap:10px}.header .menu-toggle{padding-inline:10px;min-width:78px}
 .sport-title{font-size:1rem}.card-index{font-size:.75rem}
 .news-links>a{gap:9px}.news-links>a>span:nth-child(2){font-size:1rem}
}
