@font-face{font-family:Oswald;src:url("/assets/fonts/Oswald.ttf") format("truetype");font-style:normal;font-weight:200 700;font-display:swap}
@font-face{font-family:Manrope;src:url("/assets/fonts/Manrope.ttf") format("truetype");font-style:normal;font-weight:200 800;font-display:swap}
:root{--navy:#07143f;--ink:#07143f;--blue:#263ba6;--blue-dark:#111f6b;--yellow:#f8e800;--paper:#f5f3eb;--white:#fff;--muted:#59637c;--line:rgba(7,20,63,.16);--max:1240px;--pad:clamp(20px,4vw,64px)}
*{box-sizing:border-box}
html{scroll-behavior:smooth;scroll-padding-top:88px}
body{margin:0;background:var(--navy);color:var(--white);font-family:Manrope,Arial,sans-serif;font-size:16px;line-height:1.65;overflow-x:hidden}
body.menu-open{overflow:hidden}
img{max-width:100%;display:block}
a{color:inherit;text-decoration:none}
button,input,textarea,select{font:inherit}
button,a{touch-action:manipulation}
:focus-visible{outline:3px solid var(--yellow);outline-offset:4px}
.container{width:min(100% - (2 * var(--pad)),var(--max));margin-inline:auto}
.skip{position:fixed;left:20px;top:-100px;z-index:1000;background:var(--yellow);color:var(--navy);padding:10px 16px;font-weight:800}
.skip:focus{top:18px}
.header{position:fixed;z-index:100;inset:0 0 auto;min-height:86px;display:flex;align-items:center;padding:10px var(--pad);gap:32px;border-bottom:1px solid rgba(255,255,255,.16);transition:background .25s,box-shadow .25s}
.header.solid{background:rgba(7,20,63,.96);box-shadow:0 8px 30px rgba(0,0,0,.18);backdrop-filter:blur(12px)}
.brand-logo{display:block;width:105px;flex:0 0 auto}
.brand-logo img{width:100%;height:64px;object-fit:contain;filter:drop-shadow(0 5px 10px rgba(0,0,0,.18))}
.navigation{display:flex;align-items:center;justify-content:center;gap:clamp(16px,2vw,32px);margin:auto}
.navigation a,.header-tag,.menu-toggle{font-family:Oswald,Arial,sans-serif;font-weight:600;letter-spacing:.08em;text-transform:uppercase}
.navigation a{font-size:.88rem;padding:7px 0;border-bottom:2px solid transparent}
.navigation a:hover,.navigation a.active{color:var(--yellow);border-color:var(--yellow)}
.header-tag{font-size:.72rem;white-space:nowrap;color:var(--yellow)}
.menu-toggle{display:none;border:0;background:var(--yellow);color:var(--navy);padding:10px 13px;font-size:.86rem;font-weight:700}
.hero{position:relative;min-height:780px;height:100svh;display:flex;align-items:center;overflow:hidden}
.hero-photo,.team-photo{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.hero-photo{object-position:center 35%}
.hero-shade{position:absolute;inset:0;background:linear-gradient(90deg,rgba(7,20,63,.96) 0%,rgba(7,20,63,.74) 40%,rgba(7,20,63,.12) 78%),linear-gradient(0deg,rgba(7,20,63,.8),transparent 42%)}
.hero::after{content:"";position:absolute;right:-8vw;top:0;width:32vw;height:100%;background:rgba(248,232,0,.88);mix-blend-mode:multiply;clip-path:polygon(62% 0,100% 0,42% 100%,0 100%)}
.hero-content{position:relative;z-index:2;padding-top:85px}
.eyebrow{margin:0 0 18px;color:var(--blue);font:650 .85rem Oswald,Arial,sans-serif;letter-spacing:.14em;text-transform:uppercase}
.hero .eyebrow,.match-section .eyebrow,.team-section .eyebrow{color:var(--yellow)}
.eyebrow i{display:inline-block;width:30px;height:3px;margin-right:10px;background:currentColor;vertical-align:middle}
h1,h2,h3{font-family:Oswald,Arial,sans-serif;line-height:.92;text-transform:uppercase;margin:0;letter-spacing:-.025em}
h1 span,h2 span,h3 span{color:var(--yellow)}
.light h1 span,.light h2 span,.light h3 span,.venue h3 span,.article-main h1 span{color:var(--blue)}
.hero h1{font-size:clamp(5.5rem,15vw,12.5rem);font-weight:650;letter-spacing:-.06em}
.hero-statement{margin:2px 0 16px;font:600 clamp(1.5rem,3.1vw,3rem)/1.05 Oswald,Arial,sans-serif;letter-spacing:.045em}
.founders{margin:0;color:#dfe4f8;font-size:clamp(.78rem,1.1vw,.95rem);font-weight:650;letter-spacing:.11em}
.founders b{color:var(--yellow);padding:0 8px}
.actions{display:flex;gap:12px;flex-wrap:wrap;margin-top:36px}
.button{display:inline-flex;align-items:center;justify-content:space-between;gap:28px;min-width:225px;background:var(--yellow);color:var(--navy);padding:14px 17px;font:650 .9rem Oswald,Arial,sans-serif;letter-spacing:.08em;text-transform:uppercase;border:2px solid var(--yellow)}
.button:hover{background:#fff35b;border-color:#fff35b}
.button.outline{color:var(--white);background:transparent;border-color:rgba(255,255,255,.55)}
.button.outline:hover{border-color:var(--yellow);color:var(--yellow)}
.hero-note{position:absolute;z-index:3;right:var(--pad);top:25%;writing-mode:vertical-rl;font:600 .72rem Oswald,Arial,sans-serif;letter-spacing:.1em}
.hero-note p{margin:16px 0;color:rgba(255,255,255,.72)}
.region-strip{position:absolute;z-index:3;bottom:22px;left:50%;transform:translateX(-50%);display:flex;align-items:center;gap:18px;font:600 .72rem Oswald,Arial,sans-serif;letter-spacing:.13em}
.region-strip i{width:5px;height:5px;background:var(--yellow);border-radius:50%}
.region-strip a{margin-left:auto;color:var(--yellow)}
.match-section{background:var(--blue);padding:clamp(80px,9vw,135px) 0;color:#fff}
.section-top{display:flex;align-items:flex-end;justify-content:space-between;gap:30px;margin-bottom:38px}
.season,.tiny-label,.status-label{font:650 .75rem Oswald,Arial,sans-serif;letter-spacing:.12em;text-transform:uppercase}
.season,.tiny-label{color:var(--muted)}
.match-section .season,.team-section .tiny-label{color:#d5daf7}
.match-grid{display:grid;grid-template-columns:1.05fr 1.25fr 1fr;gap:clamp(25px,5vw,75px);align-items:center;padding:35px 0 48px;border-block:1px solid rgba(255,255,255,.25)}
.match-grid h2,.section h2,.team-content h2{font-size:clamp(3.3rem,7vw,6.5rem)}
.status-label{display:inline-block;margin-top:20px;background:var(--yellow);color:var(--navy);padding:6px 9px}
.match-teams{display:grid;grid-template-columns:120px 48px minmax(0,1fr);align-items:center;gap:15px}
.match-teams img{width:120px;height:90px;object-fit:contain;background:transparent;padding:0}
.versus{font:600 1rem Oswald,Arial,sans-serif;color:var(--yellow)}
.opponent{font:600 clamp(1.5rem,3vw,2.7rem)/1.05 Oswald,Arial,sans-serif;text-transform:uppercase}
.match-meta{padding-left:25px;border-left:1px solid rgba(255,255,255,.25)}
.match-meta>strong{display:block;font:600 clamp(1.25rem,2vw,1.8rem) Oswald,Arial,sans-serif;color:var(--yellow)}
.match-meta p{margin:4px 0;color:#e4e7f7}
.countdown{display:flex;gap:8px;margin-top:20px}
.countdown div{min-width:62px;padding:8px;text-align:center;background:rgba(7,20,63,.42)}
.countdown b{display:block;font:600 1.3rem Oswald,Arial,sans-serif}
.countdown small{font-size:.6rem;letter-spacing:.08em}
.last-match{margin:18px 0 0;font:600 .85rem Oswald,Arial,sans-serif;letter-spacing:.06em}
.source-note{display:flex;flex-wrap:wrap;gap:10px 25px;margin:12px 0 35px;color:#d5daf7;font-size:.76rem}
.source-note a{text-decoration:underline;text-underline-offset:3px}
.source-warning{color:var(--yellow)}
.matchday-hub{background:var(--yellow);color:var(--navy)}
.matchday-hub .eyebrow,.matchday-hub .tiny-label{color:var(--blue)}
.matchday-hub h2 span{color:var(--blue)}
.matchday-grid{display:grid;grid-template-columns:1fr 1fr;gap:24px}
.matchday-card{min-height:300px;padding:clamp(26px,4vw,52px);background:var(--paper);color:var(--navy);position:relative}
.matchday-card h3{font-size:clamp(2rem,4vw,4rem);max-width:520px}
.vote-options{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-top:38px}
.vote-option{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;min-height:72px;padding:14px;border:2px solid var(--navy);background:transparent;color:var(--navy);text-align:left;cursor:pointer}
.vote-option:hover,.vote-option:focus-visible{background:var(--navy);color:var(--yellow)}
.vote-option strong{font:650 1.1rem Oswald,Arial,sans-serif;text-transform:uppercase}
.vote-option span{font-size:.75rem;white-space:nowrap}
.vote-note{margin:20px 0 0;font-size:.8rem;color:var(--muted)}
.moment-card{background:var(--navy);color:#fff;overflow:hidden}
.moment-card .eyebrow{color:var(--yellow)}
.moment-card .muted{color:#d5daf7;max-width:520px;margin-top:28px}
.moment-card img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;opacity:.42}
.moment-card>*:not(img){position:relative;z-index:1}
.matchday-loading{grid-column:1/-1;padding:25px;border:2px dashed rgba(7,20,63,.45)}
.schedule{border-top:1px solid rgba(255,255,255,.25)}
.schedule summary{display:flex;justify-content:space-between;align-items:center;padding:18px 0;cursor:pointer;list-style:none;font:600 1rem Oswald,Arial,sans-serif;letter-spacing:.08em}
.schedule summary::-webkit-details-marker{display:none}
.schedule summary b{font-size:1.5rem;color:var(--yellow);transition:transform .2s}
.schedule[open] summary b{transform:rotate(45deg)}
.schedule-controls{display:flex;gap:8px;padding:12px 0 20px}
.schedule-controls button{border:1px solid rgba(255,255,255,.45);background:transparent;color:#fff;padding:8px 13px;cursor:pointer}
.schedule-controls button.active{background:var(--yellow);border-color:var(--yellow);color:var(--navy);font-weight:700}
.fixture-list{list-style:none;margin:0;padding:0}
.fixture{display:grid;grid-template-columns:135px minmax(0,1fr) 105px;align-items:center;gap:22px;padding:16px;border-top:1px solid rgba(255,255,255,.16)}
.fixture.our-fixture{background:rgba(248,232,0,.1);border-left:4px solid var(--yellow)}
.fixture-date{font:600 .87rem Oswald,Arial,sans-serif;text-transform:uppercase}
.fixture-date small,.fixture-pair small{display:block;color:rgba(255,255,255,.65);font:500 .67rem Manrope,Arial,sans-serif}
.fixture-pair{display:grid;grid-template-columns:1fr 1fr;gap:5px 22px}
.fixture-pair small{grid-column:1/-1}
.jura-name{color:var(--yellow);font-weight:800}
.fixture-score{justify-self:end;font:650 1rem Oswald,Arial,sans-serif;white-space:nowrap}
.loading-row,.empty-row,.news-empty{padding:22px;border:1px dashed currentColor;color:inherit}
.section{padding:clamp(85px,10vw,145px) 0}
.section.light{background:var(--paper);color:var(--ink)}
.section-copy{max-width:580px;margin:28px 0 10px;font-size:clamp(1.05rem,1.5vw,1.3rem);font-weight:650}
.muted{color:var(--muted)}
.region-grid{display:grid;grid-template-columns:1fr 1fr;gap:clamp(50px,9vw,130px);align-items:center}
.identity{background:#fff;padding:clamp(22px,4vw,50px);box-shadow:0 25px 70px rgba(7,20,63,.1)}
.parent-clubs{display:grid;grid-template-columns:1fr 30px 1fr;gap:20px;align-items:center;text-align:center}
.parent-clubs>div{min-width:0}
.parent-clubs img{width:145px;height:145px;margin:12px auto 0;object-fit:contain}
.parent-clubs small,.identity-result small{display:block;font:650 .67rem Oswald,Arial,sans-serif;letter-spacing:.1em;color:var(--muted)}
.parent-clubs>b{font:600 2rem Oswald,Arial,sans-serif;color:var(--blue)}
.identity-line{height:1px;background:var(--line);margin:32px 0;position:relative}
.identity-line::after{content:"";position:absolute;width:10px;height:10px;background:var(--yellow);border-radius:50%;left:50%;top:50%;transform:translate(-50%,-50%)}
.identity-result img{width:180px;height:115px;object-fit:contain;margin:auto}
.identity-result{text-align:center}
.scores{background:var(--navy)}
.score-grid{display:grid;grid-template-columns:1.15fr .85fr;gap:clamp(50px,7vw,100px)}
.scores .season,.scores .tiny-label{color:#aab2d2}
.table-scroll{max-width:100%;overflow-x:auto}
.standings{width:100%;border-collapse:collapse;min-width:520px}
.standings caption{text-align:left;color:#aab2d2;font-size:.72rem;padding:0 0 12px}
.standings th,.standings td{padding:13px 10px;border-bottom:1px solid rgba(255,255,255,.16);text-align:left}
.standings th{font:600 .7rem Oswald,Arial,sans-serif;letter-spacing:.09em;color:#aab2d2}
.standings td{font-size:.88rem}
.standings th:first-child,.standings td:first-child{width:48px}
.standings .highlight{background:var(--yellow);color:var(--navy);font-weight:800}
.scores .fixture{grid-template-columns:105px 1fr 80px;padding-inline:0}
.scores .fixture-pair{grid-template-columns:1fr}
.text-link{display:inline-flex;gap:12px;align-items:center;margin-top:25px;color:var(--blue);font:650 .78rem Oswald,Arial,sans-serif;letter-spacing:.09em;text-transform:uppercase;border-bottom:2px solid currentColor}
.scores .text-link{color:var(--yellow)}
.team-section{position:relative;min-height:850px;display:flex;align-items:flex-end;overflow:hidden}
.team-photo{object-position:center 38%}
.team-shade{position:absolute;inset:0;background:linear-gradient(90deg,rgba(7,20,63,.96),rgba(7,20,63,.34) 70%),linear-gradient(0deg,rgba(7,20,63,.96),transparent 60%)}
.team-content{position:relative;z-index:1;padding-block:100px}
.team-top{display:flex;justify-content:space-between}
.team-content h2{margin-top:80px}
.team-motto{font:500 clamp(1.2rem,2vw,1.7rem) Oswald,Arial,sans-serif;letter-spacing:.04em}
.roster{max-width:620px;margin-top:55px}
.roster p{color:#dfe4f8}
.news-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:24px}
.news-card{display:flex;flex-direction:column;background:#fff;min-width:0;box-shadow:0 14px 40px rgba(7,20,63,.08)}
.news-image{width:100%;height:230px;object-fit:cover;background:var(--navy)}
.news-image-empty{display:grid;place-items:center;color:var(--yellow);font:650 2.3rem Oswald,Arial,sans-serif}
.news-card>p,.news-card>h3,.news-card>.news-link{margin-inline:22px}
.news-category{margin-block:22px 7px!important;color:var(--blue);font:650 .7rem Oswald,Arial,sans-serif;letter-spacing:.08em;text-transform:uppercase}
.news-card h3{font-size:clamp(1.65rem,2.2vw,2.35rem);line-height:1.05}
.news-card .muted{margin-block:14px 22px}
.news-link{align-self:flex-start;margin-top:auto!important;margin-bottom:23px!important;color:var(--blue);font:650 .75rem Oswald,Arial,sans-serif;letter-spacing:.09em;border-bottom:2px solid currentColor}
.news-empty{grid-column:1/-1;color:var(--muted)}
.venues-grid{display:grid;grid-template-columns:1fr 1fr;border-top:1px solid rgba(255,255,255,.2)}
.venue{display:grid;grid-template-columns:70px 1fr;gap:20px;padding:45px 35px;border-bottom:1px solid rgba(255,255,255,.2)}
.venue+ .venue{border-left:1px solid rgba(255,255,255,.2)}
.venue-number{font:600 .8rem Oswald,Arial,sans-serif;color:var(--yellow)}
.venue h3{font-size:clamp(3rem,5vw,5rem)}
.venue p:not(.eyebrow){color:#c4cae0}
.partner-placeholder{border:1px solid var(--line);padding:clamp(35px,6vw,75px);text-align:center;background:#fff}
.partner-placeholder strong{font:600 clamp(1.8rem,3vw,3rem) Oswald,Arial,sans-serif}
.partner-placeholder .text-link{justify-content:center}
.footer{padding:65px 0 25px;background:#040b25}
.footer-main{display:grid;grid-template-columns:180px 1fr auto;align-items:center;gap:50px}
.footer-brand{width:160px}
.footer-brand img{height:105px;object-fit:contain}
.footer-links{display:flex;gap:25px;flex-wrap:wrap;font-size:.84rem}
.footer-links a:hover{color:var(--yellow)}
.footer-motto{font:600 1.2rem Oswald,Arial,sans-serif;color:var(--yellow);text-transform:uppercase}
.footer-bottom{display:flex;justify-content:space-between;gap:20px;margin-top:42px;padding-top:20px;border-top:1px solid rgba(255,255,255,.16);font-size:.66rem;letter-spacing:.09em;color:#9da5c2}
.article-page{background:var(--paper);color:var(--ink)}
.article-header{min-height:92px;display:flex;justify-content:space-between;align-items:center;padding:12px var(--pad);background:var(--navy);color:#fff}
.article-header>a:last-child{font:600 .8rem Oswald,Arial,sans-serif;letter-spacing:.07em;text-transform:uppercase}
.article-main{width:min(100% - (2 * var(--pad)),860px);margin:0 auto;padding:clamp(60px,8vw,110px) 0}
.article-main h1{font-size:clamp(3.3rem,8vw,6.4rem);overflow-wrap:anywhere}
.article-hero{width:100%;max-height:520px;object-fit:cover;margin-bottom:38px}
.article-teaser{font-size:clamp(1.15rem,2vw,1.4rem);font-weight:700;color:var(--blue);margin:30px 0}
.article-body{font-size:1.05rem;white-space:normal}
/* Fertige Hauptseite: klare Markenflächen und das vollständige Mannschaftsfoto. */
[hidden]{display:none!important}
.brand-logo,.footer-brand{background:transparent;padding:0;transform:none}
.brand-logo img,.footer-brand img{transform:none}
.header{background:rgba(7,20,63,.8);gap:22px}
.header-tag{display:none}
.opponent,.fixture-pair,.matchday-card h3{overflow-wrap:break-word;hyphens:auto}
.opponent{font-size:clamp(1.4rem,2.5vw,2.4rem)}
.match-grid>*{min-width:0}
.match-actions{display:flex;flex-wrap:wrap;gap:12px;margin-top:20px}
.match-actions a,.retry-button{border:1px solid currentColor;background:transparent;color:var(--yellow);padding:8px 12px;font:600 .88rem Oswald,Arial,sans-serif;cursor:pointer}
.countdown small,.fixture-date small,.fixture-pair small{font-size:.75rem}
.standings th[scope=row]{font:inherit;color:inherit;letter-spacing:0;text-transform:none}
.standings th[scope=col]{font-size:.8rem}
.team-section{min-height:0;display:block;background:var(--blue-dark)}
.team-content{padding-block:0}
.team-content h2{margin-top:0}
.team-portrait{margin:0;background:var(--navy)}
.team-portrait img{width:100%;height:auto}
.team-portrait figcaption{padding:16px 22px;color:#d5daf7;font-size:.85rem}
.team-section .text-link{color:var(--yellow)}
.team-motto{margin:0;color:#d5daf7}
.news-more{margin-top:32px;cursor:pointer}
.news-category,.news-link,.text-link{font-size:.85rem}
.vote-option{flex-direction:column;position:relative;overflow:hidden;isolation:isolate}
.vote-option::before{content:"";position:absolute;inset:0 auto 0 0;width:var(--vote-share,0%);background:rgba(38,59,166,.12);z-index:-1}
.vote-option:disabled{cursor:default;opacity:1}
.vote-option:disabled:hover{background:transparent;color:var(--navy)}
.vote-option:focus-visible,.light :focus-visible,.matchday-hub :focus-visible{outline-color:var(--blue)}
.matchday-card .text-link{color:var(--yellow)}
.noscript-note{margin:90px 20px 20px;padding:20px;background:var(--yellow);color:var(--navy)}
.noscript-note a{text-decoration:underline}
.data-notice{padding:16px 20px;border-left:4px solid var(--yellow);background:var(--navy);color:#fff;margin-bottom:28px}
.sticky-actions{position:fixed;right:24px;bottom:max(24px,env(safe-area-inset-bottom));z-index:110;display:flex;flex-direction:column;align-items:flex-end;gap:12px}
.sticky-action,.privacy-toggle{position:relative;display:grid;place-items:center;width:54px;height:54px;border:1px solid rgba(255,255,255,.6);border-radius:50%;box-shadow:0 6px 22px rgba(7,20,63,.24);cursor:pointer;transition:transform .2s;background:var(--navy);color:#fff}
.sticky-action:hover,.privacy-toggle:hover{transform:translateY(-3px)}
.sticky-member{background:var(--yellow);color:var(--navy);border-color:var(--navy)}
.sticky-contact{background:var(--blue)}
.privacy-toggle{position:fixed;bottom:max(24px,env(safe-area-inset-bottom));left:24px;z-index:110;background:var(--paper);color:var(--navy);border-color:var(--line);width:48px;height:48px}
.sticky-label{position:absolute;right:calc(100% + 12px);background:var(--paper);color:var(--navy);padding:7px 12px;box-shadow:0 4px 14px rgba(7,20,63,.14);font:600 .85rem Oswald,Arial,sans-serif;letter-spacing:.03em;white-space:nowrap;opacity:0;pointer-events:none;transition:opacity .15s}
.privacy-toggle .sticky-label{left:calc(100% + 12px);right:auto}
.sticky-action:hover .sticky-label,.sticky-action:focus-visible .sticky-label,.privacy-toggle:hover .sticky-label,.privacy-toggle:focus-visible .sticky-label{opacity:1}
.menu-open .sticky-actions,.menu-open .privacy-toggle{visibility:hidden}
.footer-bottom{padding-bottom:72px}
.article-page{padding-bottom:110px}
.ui-modal-open{overflow:hidden}
.privacy-dialog{width:min(720px,calc(100% - 32px));max-height:calc(100dvh - 40px);padding:0;border:0;background:var(--paper);color:var(--navy);overflow:hidden;box-shadow:0 25px 100px rgba(0,0,0,.35)}
.privacy-dialog::backdrop{background:rgba(4,11,37,.8);backdrop-filter:blur(4px)}
.privacy-panel{padding:clamp(22px,4vw,40px);display:flex;flex-direction:column;max-height:calc(100dvh - 40px)}
.privacy-body{overflow:auto;min-height:0;margin-top:12px;padding-right:4px;overscroll-behavior:contain}
.privacy-heading,.privacy-buttons{flex-shrink:0}
.privacy-panel h2{font-size:clamp(1.7rem,4vw,2.8rem);line-height:1.08;max-width:95%}
.privacy-panel p{font-size:.88rem;line-height:1.65}
.privacy-heading{position:relative;padding-right:25px}
.privacy-close{position:absolute;right:-12px;top:-12px;border:1px solid var(--line);background:#fff;color:var(--navy);width:40px;height:40px;font-size:1.6rem;cursor:pointer}
.privacy-option{display:flex;gap:20px;align-items:center;background:#fff;border:1px solid var(--line);padding:18px;margin-top:14px}
.privacy-option p{margin:5px 0 0;color:var(--muted)}
.privacy-option input{width:24px;height:24px;flex:0 0 auto;accent-color:var(--blue)}
.privacy-required{font-size:.75rem;white-space:nowrap;font-weight:800;color:var(--blue)}
.privacy-note{color:var(--muted)}
.privacy-links,.privacy-buttons{display:flex;gap:12px;flex-wrap:wrap}
.privacy-buttons{padding-top:16px}
.privacy-links a,.legal-content a,.legal-navigation a,.legal-toc a{color:var(--blue);text-decoration:underline;text-underline-offset:4px}
.privacy-buttons button{flex:1 1 140px;padding:12px;border:1px solid var(--navy);background:transparent;color:var(--navy);font:600 .9rem Oswald,Arial,sans-serif;cursor:pointer}
.privacy-buttons button[data-privacy=accept]{background:var(--navy);color:var(--yellow)}
.privacy-buttons button:hover{background:var(--yellow);color:var(--navy)}
.privacy-panel :focus-visible{outline-color:var(--blue)}
.privacy-feedback{color:#8b2020;font-weight:700}
.vote-activate{margin-top:22px;cursor:pointer;white-space:normal;min-width:0}
.legal-draft{padding:22px 24px;border-left:4px solid var(--blue);background:#fff;margin:30px 0}
.legal-draft p{margin-bottom:0}
.legal-content section{margin-top:38px;scroll-margin-top:24px}
.legal-content h2{font-size:clamp(1.4rem,3vw,2rem);line-height:1.2;letter-spacing:0}
.legal-content p{line-height:1.8}
.legal-facts{display:grid;grid-template-columns:minmax(150px,.8fr) 1.2fr;gap:15px 24px;padding:22px;background:#fff}
.legal-facts dt{font-weight:800}.legal-facts dd{margin:0}
.legal-pending{color:#6a4300;background:#fff5d4;padding:12px 15px;line-height:1.7}
.legal-toc,.legal-navigation{display:flex;gap:14px 24px;flex-wrap:wrap;padding-block:22px;border-block:1px solid var(--line);margin-top:32px}
.legal-content code{font-size:.85em;overflow-wrap:anywhere}
@media(max-width:780px){.sticky-actions{right:16px;gap:9px}.sticky-action{width:46px;height:46px}.privacy-toggle{left:16px;width:44px;height:44px}.legal-facts{grid-template-columns:1fr;gap:8px}.legal-facts dd{margin-bottom:12px}.privacy-option{gap:12px}.privacy-required{white-space:normal}.sticky-label{max-width:calc(100vw - 100px);white-space:normal;width:max-content}}
@media(min-width:781px) and (max-width:1100px){.navigation{gap:12px}.navigation a{font-size:.8rem}.header{gap:18px}}
@media(max-width:1050px){
  .header-tag{display:none}
  .navigation{gap:16px}
  .match-grid{grid-template-columns:1fr 1fr}.match-meta{grid-column:1/-1;border-left:0;border-top:1px solid rgba(255,255,255,.2);padding:25px 0 0}
  .score-grid{grid-template-columns:1fr}
}
@media(max-width:780px){
  :root{--pad:20px}
  .header{min-height:74px}.brand-logo{width:86px}.brand-logo img{height:53px}
  .menu-toggle{display:block;margin-left:auto}
  .navigation{position:absolute;inset:100% 0 auto;height:calc(100svh - 74px);display:flex;flex-direction:column;justify-content:flex-start;align-items:stretch;gap:0;padding:25px var(--pad);background:var(--navy);transform:translateX(100%);transition:transform .25s;overflow:auto}
  .navigation{visibility:hidden;pointer-events:none}
  .navigation.open{visibility:visible;pointer-events:auto;transform:none}
  .navigation a{font-size:1.8rem;padding:15px 0;border-bottom:1px solid rgba(255,255,255,.17)}
  .hero{min-height:720px}.hero h1{font-size:clamp(5rem,26vw,8.5rem)}.hero-shade{background:linear-gradient(90deg,rgba(7,20,63,.92),rgba(7,20,63,.38)),linear-gradient(0deg,rgba(7,20,63,.9),transparent)}
  .hero::after,.hero-note{display:none}.region-strip{gap:10px}.region-strip a{display:none}
  .match-grid,.region-grid,.news-grid,.venues-grid,.footer-main,.matchday-grid{grid-template-columns:minmax(0,1fr)}
  .score-grid>div{min-width:0}
  .match-teams{grid-template-columns:92px 36px 1fr}.match-teams img{width:92px;height:75px}
  .fixture{grid-template-columns:85px 1fr;gap:12px}.fixture-score{grid-column:2;justify-self:start}.fixture-pair{grid-template-columns:1fr}
  .vote-options{grid-template-columns:1fr}
  .parent-clubs{gap:10px}.parent-clubs img{width:105px;height:105px}
  .team-section{min-height:720px}.team-content h2{margin-top:150px}
  .venues-grid{border-top:0}.venue{padding-inline:0;border-top:1px solid rgba(255,255,255,.2)}.venue+ .venue{border-left:0}
  .footer-main{gap:25px}.footer-bottom{flex-direction:column}.footer-motto{margin:0}
}
@media(max-width:430px){
  .hero h1{font-size:22vw}.hero-statement{font-size:1.5rem}.founders{max-width:290px}
  .button{width:100%}.match-grid h2,.section h2,.team-content h2{font-size:3.25rem}
  .section-top{align-items:flex-start;flex-direction:column}.section-top .text-link{margin-top:0}
  .fixture{padding-inline:4px}.countdown div{min-width:56px}
  .parent-clubs{grid-template-columns:1fr}.parent-clubs>b{transform:rotate(90deg)}
}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}
/* Lokale Spielerporträts und kompakte Steckbriefe */
.players{margin:48px 0 38px;min-width:0}
.players-heading{display:flex;align-items:end;justify-content:space-between;gap:20px}
.players h3{font:600 clamp(30px,4vw,48px)/1.1 Oswald,sans-serif;margin:8px 0;color:var(--white)}
.players h3 span{color:var(--yellow)}
.players #players-note{font-size:.85rem;color:rgba(255,255,255,.75);margin:14px 0 24px}
.players-controls{display:flex;gap:8px;flex-shrink:0}
.players-controls button{width:44px;height:44px;border:1px solid rgba(255,255,255,.35);background:transparent;color:var(--white);cursor:pointer;font-size:22px}
.players-controls button:hover{background:var(--yellow);color:var(--navy)}
.players-controls button:disabled{opacity:.3;cursor:default}
.players-track{display:flex;gap:20px;overflow-x:auto;scroll-snap-type:x mandatory;align-items:start;padding:5px 4px 18px;scrollbar-color:var(--yellow) var(--blue-dark);scrollbar-width:thin}
.player-card{flex:0 0 calc((100% - 60px)/4);min-width:225px;scroll-snap-align:start;color:var(--navy)}
.player-flip{height:350px;perspective:1100px;cursor:pointer;border-radius:4px;position:relative}
.player-flip-inner{position:relative;width:100%;height:100%;transform-style:preserve-3d;transition:transform .65s cubic-bezier(.2,.75,.25,1)}
.player-flip.is-flipped .player-flip-inner{transform:rotateY(180deg)}
.player-front,.player-back{position:absolute;inset:0;border-radius:4px;backface-visibility:hidden;-webkit-backface-visibility:hidden;overflow:hidden}
.player-visual{background:linear-gradient(145deg,var(--blue),var(--navy))}
.player-visual:before{content:'HG JURA';position:absolute;bottom:8px;right:-6px;font:700 58px Oswald,sans-serif;color:rgba(255,255,255,.08);transform:rotate(-8deg)}
.player-visual img{position:absolute;inset:0;width:100%;height:100%;object-fit:contain;object-position:center bottom}
.player-silhouette{position:absolute;inset:34px 18px 0;color:rgba(255,255,255,.2)}
.player-silhouette svg{width:100%;height:100%}
.player-number{position:absolute;top:12px;left:12px;background:var(--yellow);color:var(--navy);padding:4px 10px;font:600 24px Oswald,sans-serif}
.player-position{position:absolute;top:12px;right:12px;max-width:65%;padding:7px 9px;background:var(--navy);color:var(--white);font:500 14px Oswald,sans-serif;text-transform:uppercase;letter-spacing:.05em;text-align:right;overflow-wrap:anywhere}
.player-body{padding:14px 2px;color:var(--white)}
.player-body h4{font:500 27px/1.2 Oswald,sans-serif;margin:0}
.player-back{transform:rotateY(180deg);background:var(--yellow);color:var(--navy);padding:22px;overflow-y:auto;overscroll-behavior:contain}
.player-back-label{font-size:.65rem;font-weight:800;letter-spacing:.1em;margin:0 0 8px}
.player-back h4{font:600 28px/1.2 Oswald,sans-serif;margin:0 0 18px}
.player-back p{font-size:.85rem}
.player-back dl{margin:0 0 16px}
.player-back dt{font-size:.65rem;text-transform:uppercase;margin-top:13px;opacity:.7}
.player-back dd{margin:3px 0 0;font-size:.85rem;font-weight:800;overflow-wrap:anywhere}
.player-flip-hint{display:block;font-size:.65rem;margin-top:20px;opacity:.7}
@media(max-width:1000px){.player-card{flex-basis:calc((100% - 40px)/3)}}
@media(max-width:700px){.player-card{flex-basis:78%;min-width:0}.player-flip{height:360px}.players-heading{align-items:center}.players-controls button{width:38px;height:38px}.players h3{font-size:30px}}
@media(prefers-reduced-motion:reduce){.player-flip-inner{transition:none}}

/* Kurzer Einlauf: ohne Ladebildschirm, alle Links sofort bedienbar. */
.hero-entry-stripe{position:absolute;inset:-10% auto -10% 0;width:18%;background:var(--yellow);transform:translateX(-160%) skewX(-18deg);pointer-events:none;z-index:2;animation:hero-stripe 1.35s cubic-bezier(.65,0,.25,1) both}
.hero-content{z-index:3}
.hero-content>.eyebrow{animation:hero-enter .65s .1s both}
.hero-content>h1{animation:hero-enter .8s .2s both}
.hero-statement{animation:hero-enter .8s .4s both}
.hero-content>.founders{animation:hero-enter .7s .6s both}
.hero-content>.actions{animation:hero-enter .7s .75s both}
.hero-photo{animation:hero-photo-entry 1.5s ease-out both,hero-photo-zoom 12s 1.5s ease-out forwards}
.hero-note,.region-strip{animation:hero-enter .7s .8s both}
@keyframes hero-enter{from{opacity:0;transform:translateY(22px)}to{opacity:1;transform:translateY(0)}}
@keyframes hero-stripe{0%{transform:translateX(-160%) skewX(-18deg);opacity:1}75%{opacity:1}100%{transform:translateX(760%) skewX(-18deg);opacity:0}}
@keyframes hero-photo-entry{from{clip-path:inset(0 100% 0 0)}to{clip-path:inset(0 0 0 0)}}
@keyframes hero-photo-zoom{from{transform:scale(1)}to{transform:scale(1.035)}}
@media(max-width:700px){.hero-entry-stripe{width:26%;animation-duration:1s}.hero-photo{animation:hero-photo-entry 1s ease-out both}.hero-content>h1,.hero-statement{animation-duration:.5s}.hero-content>.actions{animation-delay:.5s}}
@media(prefers-reduced-motion:reduce){.hero-entry-stripe{display:none}.hero-photo,.hero-content>*,.hero-note,.region-strip{animation:none!important;clip-path:none;transform:none;opacity:1}}

/* Ergebnisse: Innenabstand auch neben dem gelben Rand, flexible Spalten. */
.scores .fixture{grid-template-columns:90px minmax(0,1fr) auto;gap:18px;padding:20px 18px;align-items:center}
.scores .fixture-pair{gap:7px;line-height:1.45;min-width:0}
.scores .fixture-pair small{margin-top:4px;line-height:1.5}
.scores .fixture-score{min-width:58px;text-align:right}
.legal-content h3{font:600 1.1rem/1.4 Oswald,Arial,sans-serif;letter-spacing:.02em;margin:24px 0 10px}
@media(max-width:600px){.scores .fixture{grid-template-columns:minmax(0,1fr) auto;gap:10px 16px;padding:18px 16px}.scores .fixture-date{grid-column:1/-1}.scores .fixture-pair{grid-column:1;grid-row:2}.scores .fixture-score{grid-column:2;grid-row:2;align-self:center}}

/* Trainingszeiten an den jeweiligen Hallen. */
.training-time{margin:22px 0;padding:16px 18px;border-left:3px solid var(--yellow);background:rgba(255,255,255,.06)}
.training-time>span{display:block;font:500 .85rem/1.5 Oswald,Arial,sans-serif;letter-spacing:.06em;text-transform:uppercase;color:#d4daf0}
.training-time>strong{display:block;font:500 clamp(1.3rem,2.5vw,1.65rem)/1.5 Oswald,Arial,sans-serif;color:var(--yellow);margin-top:3px}

/* Vereinslogos: unverzerrt auf heller Fläche, Vereinsname bleibt immer sichtbar. */
.club-name{display:flex;align-items:center;gap:10px;min-width:0}
.club-name-text{min-width:0;overflow-wrap:anywhere}
.club-logo{flex:0 0 auto;width:34px;height:34px;object-fit:contain;background:#fff;border-radius:6px;padding:4px;box-sizing:border-box}
.fixture-pair .club-logo{width:27px;height:27px;padding:3px}
.standings .club-logo{width:32px;height:32px}
.opponent{display:flex;flex-direction:column;align-items:flex-start;gap:12px;min-width:0}
.match-teams .opponent-logo{width:90px;height:90px;padding:10px;background:#fff;border-radius:10px}
@media(max-width:780px){.match-teams .opponent-logo{width:70px;height:70px;padding:8px}.club-name{gap:8px}.standings .club-logo{width:28px;height:28px}}
.standings .highlight .jura-name{color:inherit}
