/* FCV Theme 0.2.0 – Vereinsblau #065194 und Weiß */
@font-face{font-family:"Barlow Condensed";font-weight:600;font-style:normal;font-display:swap;src:url(../fonts/barlow-condensed-latin-600-normal.woff2) format("woff2")}
@font-face{font-family:"Barlow Condensed";font-weight:800;font-style:normal;font-display:swap;src:url(../fonts/barlow-condensed-latin-800-normal.woff2) format("woff2")}
@font-face{font-family:"DM Sans";font-weight:400;font-style:normal;font-display:swap;src:url(../fonts/dm-sans-latin-400-normal.woff2) format("woff2")}
@font-face{font-family:"DM Sans";font-weight:500;font-style:normal;font-display:swap;src:url(../fonts/dm-sans-latin-500-normal.woff2) format("woff2")}
@font-face{font-family:"DM Sans";font-weight:700;font-style:normal;font-display:swap;src:url(../fonts/dm-sans-latin-700-normal.woff2) format("woff2")}

:root{--b:#065194;--w:#fff;--ease:cubic-bezier(.23,1,.32,1);--pad:clamp(20px,4vw,64px)}
*,*::before,*::after{box-sizing:border-box}
html{scroll-behavior:smooth}
body.fcv{margin:0;background:#fff;color:var(--b);font-family:"DM Sans",system-ui,sans-serif;font-size:17px;line-height:1.55;overflow-x:hidden;min-width:320px}
:where(.fcv) a{color:inherit;text-decoration:none}
:where(.fcv) img{max-width:100%;height:auto}
:where(.fcv) :where(ul,ol){margin:0;padding:0;list-style:none}
.fcv-content ul,.fcv-content ol{margin:1em 0;padding-left:1.4em}
.fcv-content ul{list-style:disc}.fcv-content ol{list-style:decimal}
.fcv :focus-visible{outline:3px solid var(--b);outline-offset:3px}
.fcv-hero :focus-visible,.fcv-teamsec :focus-visible,.fcv-footer :focus-visible,.fcv-pagehead :focus-visible,.fcv-solid:focus-visible{outline-color:#fff}
.fcv-skip{position:absolute;left:-999px;top:8px;background:#fff;color:var(--b);padding:10px 16px;z-index:100;border-radius:8px}
.fcv-skip:focus{left:8px}
.fcv-d{font-family:"Barlow Condensed","Arial Narrow",sans-serif;font-weight:800;text-transform:uppercase;line-height:.84;margin:0}
.fcv-wrap{max-width:1680px;margin:0 auto;padding:0 var(--pad)}
.fcv-h2{font-size:clamp(52px,7vw,96px)}
.fcv-h1{font-size:clamp(64px,10vw,150px);line-height:.88}
.fcv-out-w{color:transparent;-webkit-text-stroke:3px #fff}
.fcv-grain{position:absolute;inset:0;width:100%;height:100%;pointer-events:none;opacity:.16;mix-blend-mode:overlay}
.fcv-dot{width:9px;height:9px;border-radius:50%;background:var(--b);display:inline-block}
.fcv-dot-b{background:var(--b)}

/* Buttons */
.fcv-btn{display:inline-flex;align-items:center;gap:10px;min-height:56px;padding:0 32px;border-radius:999px;font-weight:700;font-size:17px;cursor:pointer;border:0;font-family:inherit;transition:transform .2s var(--ease),background .2s,color .2s}
.fcv-btn:active,.fcv-tile:active{transform:scale(.97)}
.fcv-btn-blue{background:var(--b);color:#fff!important}
.fcv-btn-white{background:#fff;color:var(--b)!important}
.fcv-btn-line{border:2px solid var(--b)}
.fcv-btn-line-w{border:2px solid #fff;color:#fff!important}
.fcv-btn-s{min-height:48px;padding:0 24px}
@media (hover:hover) and (pointer:fine){.fcv-btn:hover{transform:translateY(-4px)}a.fcv-tile:hover{transform:translateY(-6px) rotate(-.6deg)}}

/* Header */
.fcv-header{position:relative;z-index:30;background:#fff}
.fcv-header-in{display:flex;align-items:center;justify-content:space-between;gap:12px 28px;padding-top:16px;padding-bottom:16px}
.fcv-brand{display:flex;align-items:center;gap:14px}
.fcv-brand img{width:60px;height:60px;object-fit:contain}
.fcv-brand-t{font-size:26px;line-height:.95;letter-spacing:.04em}
.fcv-nav .fcv-menu{display:flex;flex-wrap:wrap;gap:2px}
.fcv-nav .fcv-menu>li{position:relative}
.fcv-nav a{padding:10px 14px;font-weight:700;border-radius:999px;display:inline-flex;align-items:center;min-height:44px;transition:background .2s,color .2s}
.fcv-nav a:hover,.fcv-nav .current-menu-item>a,.fcv-nav .current-menu-ancestor>a{background:var(--b);color:#fff}
.fcv-nav .sub-menu{position:absolute;left:0;top:100%;min-width:240px;background:#fff;border:3px solid var(--b);border-radius:24px;padding:8px;display:none;z-index:40}
.fcv-nav li:hover>.sub-menu,.fcv-nav li:focus-within>.sub-menu{display:block}
.fcv-nav .sub-menu a{display:flex;width:100%}
.fcv-burger{display:none;align-items:center;gap:10px;min-height:48px;padding:0 20px;border-radius:999px;border:0;background:var(--b);color:#fff;font:700 16px "DM Sans",sans-serif;cursor:pointer}
.fcv-burger-i{width:18px;height:2px;background:#fff;box-shadow:0 6px #fff,0 -6px #fff}
@media (max-width:980px){
	.fcv-header-cta{display:none}
	.fcv-burger{display:inline-flex}
	.fcv-nav{display:none;flex-basis:100%;order:3}
	.fcv-nav-open .fcv-nav{display:block}
	.fcv-nav .fcv-menu{flex-direction:column}
	.fcv-nav .sub-menu{position:static;display:block;border:0;padding:0 0 0 16px;min-width:0}
	.fcv-nav a{width:100%}
}

/* Hero */
.fcv-hero{position:relative;background:var(--b);color:#fff;clip-path:polygon(0 0,100% 0,100% calc(100% - 90px),0 100%);padding:48px 0 200px;overflow:hidden}
.fcv-stripes{position:absolute;inset:0;background:repeating-linear-gradient(90deg,rgba(255,255,255,.05) 0,rgba(255,255,255,.05) 110px,rgba(255,255,255,0) 110px,rgba(255,255,255,0) 220px)}
.fcv-lines{position:absolute;inset:0;width:100%;height:100%}
.fcv-hero-in{position:relative}
.fcv-chip{display:inline-flex;align-items:center;gap:10px;margin:0;padding:8px 18px;background:#fff;color:var(--b);border-radius:999px;font-weight:700;font-size:14px;letter-spacing:.1em;text-transform:uppercase}
.fcv-hero-row{display:flex;flex-wrap:wrap;align-items:center;gap:40px 56px;margin-top:28px}
.fcv-hero-text{flex:1 1 560px;min-width:0}
.fcv-hero-h{font-size:clamp(96px,13vw,190px);letter-spacing:-.005em}
.fcv-ln{display:block;overflow:hidden;padding:.06em 0 .1em;margin:-.06em 0 -.1em}
.fcv-ln>span{display:inline-block;animation:fcv-lineup .9s var(--ease) both}
.fcv-ln:nth-child(2)>span{animation-delay:.12s}
.fcv-lead{max-width:520px;margin:32px 0 0;font-size:21px}
.fcv-actions{display:flex;flex-wrap:wrap;gap:16px;margin-top:32px}
.fcv-in{animation:fcv-fadeup .7s var(--ease) both}
.fcv-in1{animation-delay:.05s}.fcv-in2{animation-delay:.4s}.fcv-in3{animation-delay:.5s}.fcv-in4{animation-delay:.3s;animation-name:fcv-goalin}
@keyframes fcv-lineup{from{transform:translateY(108%) rotate(3deg)}to{transform:none}}
@keyframes fcv-fadeup{from{opacity:0;transform:translateY(28px)}to{opacity:1;transform:none}}
@keyframes fcv-goalin{from{opacity:0;transform:translateY(80px) scale(.94)}to{opacity:1;transform:none}}

/* Tor mit Netz und Anzeigetafel */
.fcv-goal{flex:0 1 460px;min-width:min(300px,100%);position:relative;padding:18px 18px 0;border:14px solid #fff;border-bottom:none;border-radius:10px 10px 0 0;background-color:rgba(6,81,148,.55);background-image:linear-gradient(45deg,rgba(255,255,255,.28) 1px,transparent 1px),linear-gradient(-45deg,rgba(255,255,255,.28) 1px,transparent 1px);background-size:22px 22px;margin-bottom:-4px}
.fcv-roll{background:#fff;color:var(--b);border-radius:18px;padding:22px 24px 20px;box-shadow:0 14px 0 rgba(4,40,80,.3)}
.fcv-roll-head{display:flex;justify-content:space-between;align-items:center;gap:12px;font-weight:700;font-size:13px;letter-spacing:.14em;text-transform:uppercase}
.fcv-roll-tag{display:inline-flex;align-items:center;gap:6px}
.fcv-rwin{height:216px;overflow:hidden;border-radius:12px;background:var(--b);color:#fff;margin-top:14px}
.fcv-rtrack{animation:fcv-rollup 24s linear infinite}
.fcv-roll:hover .fcv-rtrack,.fcv-roll:focus-within .fcv-rtrack,.fcv-roll:has(input:checked) .fcv-rtrack{animation-play-state:paused}
.fcv-rrow{height:108px;padding:12px 16px;display:grid;grid-template-columns:1fr auto;grid-template-areas:"team time" "match time" "meta meta";align-content:center;gap:2px 12px;border-bottom:2px solid rgba(255,255,255,.35)}
.fcv-rteam{grid-area:team;font-weight:700;font-size:12px;letter-spacing:.14em;text-transform:uppercase}
.fcv-rtime{grid-area:time;font-size:42px;line-height:.9;letter-spacing:.04em;align-self:center}
.fcv-rmatch{grid-area:match;font-size:16px}
.fcv-rmeta{grid-area:meta;font-size:14px;font-weight:500}
.fcv-pause{display:inline-flex;align-items:center;gap:8px;margin-top:12px;min-height:44px;font-weight:700;font-size:14px;cursor:pointer}
.fcv-pause input{width:20px;height:20px;accent-color:var(--b)}
@keyframes fcv-rollup{from{transform:translateY(0)}to{transform:translateY(-50%)}}

/* Laufband */
.fcv-ticker{margin-top:-60px;position:relative;z-index:2;background:#fff;color:var(--b);border-top:3px solid var(--b);border-bottom:3px solid var(--b);overflow:hidden}
.fcv-track{display:flex;width:max-content;font-size:36px;line-height:1;padding:14px 0;white-space:nowrap;animation:fcv-marquee 30s linear infinite}
.fcv-track span{padding-right:40px}
@keyframes fcv-marquee{from{transform:translateX(0)}to{transform:translateX(-50%)}}

/* Große Zahlen */
.fcv-numbers{padding-top:96px;display:flex;flex-wrap:wrap;gap:24px 56px;justify-content:space-between;align-items:flex-end}
.fcv-num{font-size:clamp(72px,9vw,128px);font-variant-numeric:tabular-nums}
.fcv-numbers p{margin:8px 0 0;font-weight:700;letter-spacing:.14em;text-transform:uppercase;font-size:14px}

/* Mittellinie */
.fcv-mid{max-width:1680px;margin:0 auto;padding:96px var(--pad) 0}
.fcv-mid-0{padding-top:0}
.fcv-mid svg{display:block;width:100%;height:auto;overflow:visible}
.fcv-mid *{fill:none;stroke:var(--b);stroke-width:4;vector-effect:non-scaling-stroke}
.fcv-mid .fcv-mid-dot{fill:var(--b);stroke:none}
@keyframes fcv-reveal{from{clip-path:inset(-10px 50% -10px 50%)}to{clip-path:inset(-10px -10px -10px -10px)}}
@supports (animation-timeline:view()){.fcv-mid svg{animation:fcv-reveal linear both;animation-timeline:view();animation-range:entry 0% entry 100%}}

/* Einblenden beim Scrollen */
@keyframes fcv-rise{from{opacity:0;transform:translateY(48px)}to{opacity:1;transform:none}}
@supports (animation-timeline:view()){.fcv-rv{animation:fcv-rise linear both;animation-timeline:view();animation-range:entry 0% entry 45%}}

/* Abschnitte, Kacheln */
.fcv-sec{padding-top:128px}
.fcv-sec-partner{padding-top:40px}
.fcv-sec-head{display:flex;flex-wrap:wrap;align-items:flex-end;justify-content:space-between;gap:16px;margin-bottom:40px}
.fcv-tile{border-radius:36px;padding:32px;position:relative;overflow:hidden;transition:transform .2s var(--ease),background .2s,color .2s}
.fcv-solid{background:var(--b);color:#fff}
.fcv-outlined{border:3px solid var(--b)}
.fcv-bento{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));gap:20px}
.fcv-tile-big{grid-column:span 5;grid-row:span 2;min-height:560px;display:flex;flex-direction:column;justify-content:flex-end;padding:44px}
.fcv-tile-table{grid-column:span 7;border:3px solid var(--b)}
.fcv-tile-s1{grid-column:span 4;min-height:260px;display:flex;flex-direction:column;justify-content:flex-end}
.fcv-tile-s2{grid-column:span 3;min-height:260px;display:flex;flex-direction:column;justify-content:flex-end}
.fcv-tile-meta{font-size:13px;font-weight:700;letter-spacing:.1em;text-transform:uppercase}
.fcv-tile-t{margin-top:8px;line-height:.92}
.fcv-tag{align-self:flex-start;background:#fff;color:var(--b);padding:6px 16px;border-radius:999px;font-weight:700;font-size:13px;letter-spacing:.1em;text-transform:uppercase}
.fcv-big-t{font-size:clamp(48px,6vw,92px);margin-top:20px;line-height:.9}
.fcv-big-p{margin:16px 0 0;max-width:520px;font-size:18px}
.fcv-table-head{display:flex;justify-content:space-between;align-items:center;gap:12px;margin-bottom:16px}
.fcv-table-head h3{font-size:44px;line-height:.9}
.fcv-pills{display:flex;gap:6px;font-size:13px;font-weight:700}
.fcv-pill{padding:6px 14px;border-radius:999px;border:2px solid var(--b)}
.fcv-pill-on{background:var(--b);color:#fff}
.fcv-table{display:flex;flex-direction:column;gap:6px}
.fcv-table li{display:flex;gap:14px;padding:10px 16px;border-radius:999px;border:2px solid var(--b)}
.fcv-table li>span:first-child{width:20px}
.fcv-table li>span:nth-child(2){flex:1}
.fcv-table .fcv-me{background:var(--b);color:#fff;font-weight:700}

/* Teams (vollflächig blau) */
.fcv-teamsec{margin-top:140px;position:relative;background:var(--b);color:#fff;clip-path:polygon(0 90px,100% 0,100% calc(100% - 90px),0 100%);padding:200px 0 220px}
.fcv-teamsec-in{position:relative}
.fcv-rows{margin-top:64px;border-top:3px solid #fff}
.fcv-row{display:flex;align-items:baseline;gap:24px;padding:20px 8px;border-bottom:3px solid #fff;transition:background .2s,color .2s}
.fcv-row:hover{background:#fff;color:var(--b)}
.fcv-row:hover .fcv-out-w{-webkit-text-stroke-color:var(--b)}
.fcv-row-n{font-size:56px;min-width:80px}
.fcv-row-t{font-size:clamp(40px,5.5vw,76px);flex:1}
.fcv-row-m{font-weight:700;font-size:15px;letter-spacing:.14em;text-transform:uppercase}
.fcv-chips{display:flex;flex-wrap:wrap;gap:10px;margin-top:32px}

/* Partner */
.fcv-partners{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px}
.fcv-partners li{height:150px;display:flex;align-items:center;justify-content:center;text-align:center;border-radius:28px;border:3px solid var(--b);font-weight:700}
.fcv-partners li.fcv-solid{border-color:var(--b)}
.fcv-partners li{overflow:hidden;padding:0}
.fcv-partners li:not(:has(a)){padding:12px}
.fcv-partners li a{display:flex;align-items:center;justify-content:center;width:100%;height:100%;min-height:44px;padding:18px 22px;box-sizing:border-box}
.fcv-partners li img{max-width:100%;max-height:100%;width:auto;height:auto;object-fit:contain}
.fcv-partners li.fcv-solid img{background:#fff;border-radius:16px;padding:8px;box-sizing:border-box}

/* Mitglied + Shop */
.fcv-cta-grid{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));gap:20px}
.fcv-cta{grid-column:span 8;padding:clamp(32px,5vw,64px);min-height:460px;display:flex;flex-direction:column;justify-content:flex-end}
.fcv-cta-logo{position:absolute;right:-100px;top:-100px;width:520px;height:520px;object-fit:contain;opacity:.1;filter:grayscale(1) brightness(3)}
.fcv-cta-h{font-size:clamp(48px,6vw,88px);position:relative}
.fcv-cta-p{margin:24px 0 0;max-width:480px;font-size:19px;position:relative}
.fcv-cta-b{margin-top:28px;position:relative}
.fcv-shop{grid-column:span 4;display:flex;flex-direction:column;justify-content:space-between;min-height:460px;padding:36px}
.fcv-kicker-s{font-size:14px;font-weight:700;letter-spacing:.14em;text-transform:uppercase}
.fcv-shop-t{font-size:clamp(52px,5.4vw,88px);display:block}
.fcv-shop-l{display:inline-block;margin-top:20px;font-weight:700}

/* Footer */
.fcv-footer{position:relative;margin-top:140px;background:var(--b);color:#fff;clip-path:polygon(0 60px,100% 0,100% 100%,0 100%);padding:130px 0 40px}
.fcv-footer-in{position:relative}
.fcv-footer-top{display:flex;flex-wrap:wrap;gap:32px;justify-content:space-between;align-items:center}
.fcv-footer-brand{display:flex;align-items:center;gap:16px}
.fcv-footer-brand img{width:72px;height:72px;object-fit:contain;background:#fff;border-radius:50%}
.fcv-footer-name{font-size:36px;line-height:.95}
.fcv-footer .fcv-menu{display:flex;flex-wrap:wrap;gap:12px 32px;font-weight:700}
.fcv-footer-bottom{display:flex;flex-wrap:wrap;gap:12px 32px;justify-content:space-between;margin-top:48px;padding-top:24px;border-top:2px solid #fff;font-size:15px}
.fcv-footer-bottom .fcv-menu{gap:24px;font-weight:400}
.fcv-footer a:hover{text-decoration:underline;text-underline-offset:4px}


/* Innenseiten */
.fcv-pagehead{position:relative;background:var(--b);color:#fff;clip-path:polygon(0 0,100% 0,100% calc(100% - 60px),0 100%);padding:56px 0 130px;overflow:hidden}
.fcv-pagehead .fcv-wrap{position:relative}
.fcv-kicker{margin:0 0 16px;font-weight:700;font-size:14px;letter-spacing:.14em;text-transform:uppercase}
.fcv-inner{padding-top:56px;min-height:40vh}
.fcv-article{max-width:820px;margin:0 auto}
.fcv-media{margin:0 0 32px}
.fcv-media img{display:block;width:100%;border-radius:28px}
.fcv-content{font-size:18px}
.fcv-content h2,.fcv-content h3{font-family:"Barlow Condensed","Arial Narrow",sans-serif;font-weight:800;text-transform:uppercase;line-height:.95;margin:2em 0 .5em}
.fcv-content h2{font-size:clamp(36px,5vw,56px)}
.fcv-content h3{font-size:clamp(28px,4vw,40px)}
.fcv-content a{text-decoration:underline;text-underline-offset:3px}
.fcv-content img{border-radius:20px}
.fcv-content blockquote{margin:2em 0;padding:8px 0 8px 24px;border-left:6px solid var(--b);font-size:1.15em;font-weight:500}
.fcv-content table{border-collapse:collapse;width:100%}
.fcv-content th,.fcv-content td{border-bottom:2px solid var(--b);padding:10px 12px;text-align:left}
.fcv-postnav{display:flex;justify-content:space-between;gap:16px;margin-top:56px;font-weight:700}
.fcv-news-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:20px}
.fcv-card{border:3px solid var(--b);border-radius:36px;overflow:hidden;transition:background .2s,color .2s}
.fcv-card:hover{background:var(--b);color:#fff}
.fcv-card-link{display:flex;flex-direction:column;gap:8px;padding:28px;height:100%}
.fcv-card-img{margin:-28px -28px 12px}
.fcv-card-img img{display:block;width:100%;aspect-ratio:16/9;object-fit:cover}
.fcv-card-t{font-size:40px;line-height:.92}
.fcv-card-p{font-size:16px}
.fcv-team-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:14px}
.fcv-team-tile{display:flex;flex-direction:column;justify-content:space-between;gap:20px;min-height:120px;padding:18px 20px;border-radius:20px;border:2px solid var(--b);background:#fff;color:var(--b);transition:background .2s,color .2s,transform .2s var(--ease)}
.fcv-team-tile .fcv-row-m{font-size:12px;opacity:.8}
.fcv-team-tile:hover,.fcv-team-tile:focus-visible{background:var(--b);color:#fff}
@media (hover:hover) and (pointer:fine){.fcv-team-tile:hover{transform:translateY(-3px)}}
.fcv-team-tile-t{font-size:30px;line-height:.95;overflow-wrap:break-word;hyphens:auto}
.fcv-lead-d{font-size:21px}
.fcv-empty{opacity:.8}
.navigation.pagination{margin-top:48px}
.nav-links{display:flex;flex-wrap:wrap;gap:8px;font-weight:700}
.page-numbers{display:inline-flex;align-items:center;justify-content:center;min-width:48px;min-height:48px;padding:0 16px;border-radius:999px;border:2px solid var(--b)}
.page-numbers.current{background:var(--b);color:#fff}
.fcv input[type=text],.fcv input[type=email],.fcv input[type=search],.fcv input[type=tel],.fcv textarea,.fcv select{width:100%;min-height:52px;padding:12px 18px;border:2px solid var(--b);border-radius:20px;font:inherit;color:var(--b);background:#fff}
.fcv input[type=submit],.fcv button[type=submit]{min-height:56px;padding:0 32px;border-radius:999px;border:0;background:var(--b);color:#fff;font:700 17px "DM Sans",sans-serif;cursor:pointer}

/* Plugin FCV Verein (Mannschaftsseiten) */
.fcv-content .fcv-section{margin-top:3rem}
.fcv-content .fcv-section h2{margin-top:0}
.fcv-liga{font-weight:700;letter-spacing:.14em;text-transform:uppercase;opacity:1}
.fcv-training li{background:transparent;border:3px solid var(--b);border-radius:999px;padding:14px 24px}
.fcv-day,.fcv-time{font-weight:700}
.fcv-team-card{background:var(--b);border-radius:28px;color:#fff!important;text-decoration:none!important}
.fcv-trainer-photo img{border-radius:20px}
.fcv-widget{border-radius:20px;overflow-x:auto;border:3px solid var(--b);padding:12px;background:#fff}

/* Mobil */
.fcv-appbar{display:none}
@media (max-width:900px){
	.fcv-tile-big,.fcv-tile-table,.fcv-tile-s1,.fcv-tile-s2,.fcv-cta,.fcv-shop{grid-column:1/-1}
	.fcv-tile-big{min-height:420px;padding:28px}
	.fcv-partners{grid-template-columns:repeat(2,minmax(0,1fr))}
	.fcv-sec{padding-top:88px}
	.fcv-hero{padding-bottom:150px}
	.fcv-rtime{font-size:34px}
	.fcv-roll{padding:18px 16px 16px}
	.fcv-teamsec{padding:150px 0 160px}
	.fcv-row{flex-wrap:wrap}
	.fcv-row-n{min-width:0;font-size:40px}
	.fcv-row-m{flex-basis:100%}
	.fcv-footer-name{font-size:28px}
	.fcv-appbar{display:flex;position:fixed;left:12px;right:12px;bottom:12px;z-index:50;background:var(--b);border-radius:999px;padding:6px;box-shadow:0 10px 30px rgba(4,40,80,.35)}
	.fcv-appbar a{flex:1;text-align:center;color:#fff;font-weight:700;font-size:14px;padding:12px 4px;border-radius:999px;min-height:44px}
	.fcv-appbar a:active{background:#fff;color:var(--b)}
	body.fcv{padding-bottom:84px}
}

@media (prefers-reduced-motion:reduce){
	html{scroll-behavior:auto}
	.fcv-ln>span,.fcv-in,.fcv-rv,.fcv-track{animation:none}
	.fcv-rtrack{animation:none}
	.fcv-rwin{overflow-y:auto}
	.fcv-btn,.fcv-tile,.fcv-row,.fcv-card{transition:none}
	.fcv-mid svg{animation:none!important;clip-path:none}
}
.fcv-rwidget{margin-top:14px;max-height:380px;overflow:auto;color:var(--b)}

/* Lange oder fremde Texte aus dem Backend brechen um, statt das Layout zu sprengen */
.fcv-tile-t,.fcv-big-t,.fcv-row-t,.fcv-cta-h,.fcv-shop-t,.fcv-hero-h span,.fcv-h2,.fcv-rmatch,.fcv-rteam{overflow-wrap:break-word;hyphens:auto}
.fcv-rwidget{overscroll-behavior:contain;-webkit-overflow-scrolling:touch}
@media (max-width:600px){.fcv-rwidget{max-height:320px}}
/* Hoher Kontrast: Umrissschrift wird zu normaler Schrift */
@media (forced-colors:active){.fcv-out-w{color:CanvasText;-webkit-text-stroke:0}}
.fcv-partners li{overflow-wrap:break-word;hyphens:auto;font-size:15px}

/* Sponsoren: alle gleichberechtigt in einer Slideshow */
.fcv-pshow{min-width:0;display:flex;flex-direction:column}
.fcv-pwin{overflow:hidden;border:3px solid var(--b);border-radius:28px;flex:1;display:flex;align-items:center;min-height:150px}
.fcv-ptrack{display:flex;width:max-content;animation:fcv-pslide var(--d,30s) linear infinite}
.fcv-pshow:hover .fcv-ptrack,.fcv-pshow:focus-within .fcv-ptrack,.fcv-pshow:has(input:checked) .fcv-ptrack{animation-play-state:paused}
.fcv-ptrack li{flex:0 0 auto;width:200px;height:120px;display:flex;align-items:center;justify-content:center;padding:0 12px}
.fcv-ptrack a,.fcv-ptrack .fcv-pl-s{display:flex;align-items:center;justify-content:center;width:100%;height:100%;min-height:44px;color:var(--b);font-weight:700;text-align:center;overflow-wrap:break-word;hyphens:auto;font-size:15px}
.fcv-ptrack img{max-width:100%;max-height:96px;width:auto;height:auto;object-fit:contain}
@keyframes fcv-pslide{from{transform:translateX(0)}to{transform:translateX(-50%)}}
@media (max-width:700px){.fcv-ptrack li{width:160px}}
@media (prefers-reduced-motion:reduce){.fcv-ptrack{animation:none}.fcv-pwin{overflow-x:auto}.fcv-ptrack li[aria-hidden="true"]{display:none}}
/* Tabellen-Widget in der Kachel: feste Höhe, der Rest scrollt, damit die News-Kachel nicht in die Länge wächst */
.fcv-tile-table .fcv-widget{max-height:400px;overflow-y:auto;overflow-x:auto;border:0;padding:0;border-radius:12px;overscroll-behavior:contain}

/* News: Tabelle links, drei Beiträge mit Bild rechts */
.fcv-news{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));gap:20px;align-items:stretch}
.fcv-news .fcv-tile-table{grid-column:span 5;align-self:start}
.fcv-newslist{grid-column:span 7;display:grid;grid-template-rows:repeat(3,1fr);gap:16px}
.fcv-ncard{display:grid;grid-template-columns:minmax(120px,38%) 1fr;height:100%;min-height:150px;border-radius:28px;overflow:hidden;background:var(--b);color:#fff;transition:transform .2s var(--ease)}
.fcv-nimg{display:block;background:#fff;position:relative;min-height:100%}
.fcv-nimg img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.fcv-nimg img.fcv-nlogo{inset:18%;width:64%;height:64%;object-fit:contain}
.fcv-nbody{display:flex;flex-direction:column;justify-content:center;gap:6px;padding:20px 26px;min-width:0}
.fcv-nt{font-size:clamp(26px,2.6vw,38px);line-height:.95;overflow-wrap:break-word;hyphens:auto;display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}
.fcv-nl{font-weight:700;font-size:14px;margin-top:4px}
@media (hover:hover) and (pointer:fine){.fcv-ncard:hover{transform:translateY(-4px)}}
@media (max-width:900px){.fcv-news .fcv-tile-table,.fcv-newslist{grid-column:1/-1}.fcv-newslist{grid-template-rows:none}.fcv-ncard{grid-template-columns:110px 1fr;min-height:120px}.fcv-nbody{padding:14px 18px}}

/* 0.3.14 – mehr Pepp: schräges Vollblau-Band, riesige Zahlen, harte Schatten, Bewegung */
html{overflow-x:clip}
.fcv-ticker{background:var(--b);color:#fff;border:0;width:106%;margin:-70px -3% 0;transform:rotate(-2deg);box-shadow:0 14px 0 #fff,0 18px 0 var(--b)}
.fcv-track{font-size:clamp(44px,6vw,84px);padding:18px 0;animation-duration:24s}
.fcv-track span{padding-right:56px}
.fcv-numbers{padding-top:150px}
.fcv-num{font-size:clamp(88px,12vw,200px);line-height:.85;color:transparent;-webkit-text-stroke:3px var(--b)}
.fcv-num .fcv-suf{color:var(--b);-webkit-text-stroke:0}
.fcv-numbers p{font-size:16px;margin-top:14px;padding-top:12px;border-top:6px solid var(--b)}
.fcv-btn{font-size:18px;min-height:60px;padding:0 36px;text-transform:uppercase;letter-spacing:.04em}
.fcv-btn-blue{box-shadow:6px 6px 0 #fff,6px 6px 0 2px var(--b)}
.fcv-btn-white{box-shadow:6px 6px 0 rgba(255,255,255,.35)}
.fcv-tile-table{box-shadow:10px 10px 0 var(--b)}
.fcv-ncard{box-shadow:8px 8px 0 rgba(6,81,148,.18)}
.fcv-nimg img{transition:transform .5s var(--ease)}
.fcv-nt{text-transform:uppercase}
@media (hover:hover) and (pointer:fine){
.fcv-btn:hover{transform:translate(-3px,-3px) rotate(-1deg)}
.fcv-ncard:hover{transform:translateY(-6px) rotate(-.8deg)}
.fcv-ncard:hover .fcv-nimg img{transform:scale(1.08)}
}
@media (prefers-reduced-motion:reduce){.fcv-btn:hover,.fcv-ncard:hover{transform:none}}
@media (max-width:700px){.fcv-ticker{transform:rotate(-3deg);margin-top:-40px}.fcv-num{-webkit-text-stroke-width:2px}}

/* 0.3.15 – Zahlen füllen sich wie mit Flüssigkeit (Wellenkante, --f = Füllstand 0 bis 1.1) */
.fcv-num{--f:1.1;--y:calc((1 - var(--f)) * .85em);-webkit-background-clip:text;background-clip:text;
background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 100 12' preserveAspectRatio='none'%3E%3Cpath d='M0 6Q25 0 50 6T100 6V12H0Z' fill='%23065194'/%3E%3C/svg%3E"),linear-gradient(var(--b),var(--b));
background-repeat:repeat-x,no-repeat;background-size:.6em .12em,100% 100%;
background-position:0 var(--y),0 calc(var(--y) + .1em)}
@keyframes fcv-wave{to{background-position:.6em var(--y),0 calc(var(--y) + .1em)}}
.fcv-num.is-fill{animation:fcv-wave 1.4s linear infinite}
@media (prefers-reduced-motion:reduce){.fcv-num.is-fill{animation:none}}

/* 0.3.17 – Mannschaftsseite: Foto-Titelbild, Info-Kacheln, Widget-Kacheln */
.fcv-teamhero{position:relative;background:var(--b);color:#fff;clip-path:polygon(0 0,100% 0,100% calc(100% - 70px),0 100%);min-height:clamp(320px,46vw,560px);display:flex;align-items:flex-end;overflow:hidden}
.fcv-teamhero-img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.fcv-teamhero.has-photo::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(6,81,148,.3) 0,rgba(6,81,148,.55) 45%,rgba(6,81,148,.95) 100%)}
.fcv-teamhero-in{position:relative;z-index:1;padding-top:120px;padding-bottom:120px;width:100%}
.fcv-teamhero-h{font-size:clamp(64px,11vw,168px);line-height:.88;margin:0;text-transform:uppercase}
.fcv-teampage{padding-top:48px;padding-bottom:96px}
.fcv-teamintro{max-width:760px;margin-bottom:32px;font-size:19px}
.fcv-infogrid{display:flex;flex-wrap:wrap;gap:20px}
.fcv-info{flex:1 1 380px;min-width:0;border-radius:32px;padding:clamp(24px,3vw,40px);border:3px solid var(--b);background:#fff;color:var(--b)}
.fcv-info.fcv-solid{background:var(--b);color:#fff;box-shadow:10px 10px 0 rgba(6,81,148,.18)}
.fcv-info-t{font-size:clamp(36px,4vw,56px);line-height:.9;margin:0 0 20px;text-transform:uppercase}
.fcv-info .fcv-training{list-style:none;margin:0;padding:0;display:grid;gap:10px}
.fcv-info .fcv-training li{display:flex;flex-wrap:wrap;gap:4px 14px;align-items:baseline;border:2px solid #fff;border-radius:20px;padding:14px 20px;background:transparent}
.fcv-info .fcv-day{font-family:'Barlow Condensed',sans-serif;font-weight:800;font-size:28px;text-transform:uppercase;line-height:1}
.fcv-info .fcv-time{font-weight:700;font-size:20px}
.fcv-info .fcv-place,.fcv-info .fcv-place a{color:inherit}
.fcv-info .fcv-addr{opacity:.8;font-size:14px}
.fcv-info .fcv-empty{margin:0;opacity:.85}
.fcv-info .fcv-trainer-list{display:flex;flex-wrap:wrap;gap:20px}
.fcv-info .fcv-trainer{flex:1 1 160px;max-width:240px}
.fcv-info .fcv-trainer-photo img{width:100%;aspect-ratio:1;object-fit:cover;border-radius:24px;display:block}
.fcv-info .fcv-trainer-name{margin-top:10px;font-family:'Barlow Condensed',sans-serif;font-weight:800;font-size:28px;line-height:1;text-transform:uppercase}
.fcv-info .fcv-trainer a{color:inherit;font-weight:700}
.fcv-wdgrid{display:flex;flex-wrap:wrap;gap:20px;margin-top:20px}
.fcv-wtile{flex:1 1 100%;min-width:0;border:3px solid var(--b);border-radius:32px;padding:clamp(20px,3vw,36px);background:#fff;color:var(--b);box-shadow:10px 10px 0 rgba(6,81,148,.18)}
.fcv-wtile-team-matches,.fcv-wtile-table{flex:1 1 480px}
.fcv-wtile-team-matches .fcv-widget,.fcv-wtile-table .fcv-widget{max-height:560px;overflow:auto}
.fcv-wtile .fcv-widget{max-width:100%}
.fcv-teamback{margin-top:40px}
@media (max-width:700px){.fcv-teamhero{clip-path:polygon(0 0,100% 0,100% calc(100% - 40px),0 100%)}.fcv-teamhero-in{padding-bottom:70px}}

/* 0.3.18 – Mannschaftsfoto unter dem Kopf, in angemessener Größe, überlappt die schräge Kante */
.fcv-teamhero{min-height:0}
.fcv-teamhero-in{padding-top:64px;padding-bottom:150px}
.fcv-teamhero-h{font-size:clamp(56px,9vw,140px)}
.fcv-teamhero.has-photo::after{display:none}
.fcv-teampage.has-photo{padding-top:0}
.fcv-teamphoto{position:relative;z-index:2;margin:-100px 0 40px;max-width:1100px;border-radius:32px;overflow:hidden;border:3px solid var(--b);background:#fff;box-shadow:10px 10px 0 rgba(6,81,148,.18)}
.fcv-teamphoto img{display:block;width:100%;height:auto;max-height:70vh;object-fit:cover}
@media (max-width:700px){.fcv-teamhero-in{padding-bottom:90px}.fcv-teamphoto{margin-top:-60px;border-radius:22px}}

/* 0.3.20 – Mannschaftsseite deutlich kompakter und ruhiger */
.fcv-teamhero-in{padding-top:36px;padding-bottom:84px}
.fcv-teamhero-h{font-size:clamp(40px,5.5vw,76px)}
.fcv-teamhero .fcv-kicker{margin-bottom:8px;font-size:13px}
.fcv-teamhero{clip-path:polygon(0 0,100% 0,100% calc(100% - 40px),0 100%)}
.fcv-teamphoto{margin:-52px 0 24px;max-width:720px;border-width:2px;border-radius:20px;box-shadow:none}
.fcv-teamphoto img{max-height:48vh}
.fcv-teampage{padding-bottom:56px}
.fcv-infogrid,.fcv-wdgrid{gap:14px}
.fcv-wdgrid{margin-top:14px}
.fcv-info,.fcv-wtile{border-width:2px;border-radius:22px;padding:18px 22px;box-shadow:none!important}
.fcv-info{flex:1 1 300px}
.fcv-info-t{font-size:clamp(24px,2.4vw,32px);margin-bottom:12px}
.fcv-info .fcv-training{gap:8px}
.fcv-info .fcv-training li{padding:8px 16px;border-radius:14px;gap:2px 12px}
.fcv-info .fcv-day{font-size:20px}
.fcv-info .fcv-time{font-size:16px}
.fcv-info .fcv-trainer-list{gap:14px}
.fcv-info .fcv-trainer{flex:0 1 120px}
.fcv-info .fcv-trainer-photo img{border-radius:14px}
.fcv-info .fcv-trainer-name{font-size:20px;margin-top:6px}
.fcv-wtile-team-matches,.fcv-wtile-table{flex:1 1 380px}
.fcv-wtile .fcv-widget{max-height:420px;overflow:auto}
.fcv-teamback{margin-top:24px}
.fcv-teamback .fcv-btn{min-height:44px;font-size:15px;padding:0 22px}
.fcv-wtile{border:0;padding:0;background:none;border-radius:0}
.fcv-wtile .fcv-info-t{margin-bottom:8px}

/* 0.3.21 – Reihenfolge: Nächstes Spiel, Tabelle und Kader nebeneinander, Nächste Spiele */
.fcv-wtile-team-matches{flex:1 1 100%}
.fcv-wtile-table,.fcv-wtile-squad{flex:1 1 380px}

/* 0.3.22 – Überschriften kleiner und mit mehr Zeilenabstand (Hero-Schlagzeile bleibt) */
.fcv-d{line-height:1.05}
.fcv-hero-h{line-height:.9}
.fcv-h1{font-size:clamp(36px,5vw,68px);line-height:1.05}
.fcv-h2{font-size:clamp(30px,3.6vw,52px);line-height:1.05}
.fcv-big-t{font-size:clamp(30px,3.6vw,52px);line-height:1.05}
.fcv-cta-h{font-size:clamp(30px,3.4vw,50px);line-height:1.08}
.fcv-shop-t{font-size:clamp(28px,2.6vw,40px);line-height:1.1}
.fcv-nt{font-size:clamp(20px,1.9vw,28px);line-height:1.1}
.fcv-team-tile-t{line-height:1.05}
.fcv-teamhero-h{line-height:1.05}
.fcv-info-t{line-height:1.1}
.fcv-pagehead{padding:44px 0 110px}

/* 0.3.23 – Wappen in der Fanshop-Kachel */
.fcv-shop-logo{display:block;width:min(56%,200px);height:auto;aspect-ratio:1;object-fit:contain;margin:0 auto;transition:transform .4s var(--ease)}
@media (hover:hover) and (pointer:fine){a.fcv-shop:hover .fcv-shop-logo{transform:rotate(-6deg) scale(1.05)}}

/* 0.3.24 – Personenliste (Schiedsrichter, Trainer) auf normalen Seiten */
.fcv-content .fcv-trainer-list{display:grid;grid-template-columns:repeat(auto-fill,minmax(180px,1fr));gap:14px;margin:24px 0;align-items:start}
.fcv-content .fcv-trainer{border:2px solid var(--b);border-radius:22px;padding:14px;background:#fff;color:var(--b)}
.fcv-content .fcv-trainer-photo img{display:block;width:100%;aspect-ratio:1;object-fit:cover;border-radius:14px}
.fcv-content .fcv-trainer-name{margin-top:10px;font-family:'Barlow Condensed',sans-serif;font-weight:800;font-size:24px;line-height:1.1;text-transform:uppercase}
.fcv-content .fcv-trainer-phone,.fcv-content .fcv-trainer-mail{margin-top:4px;font-size:15px;overflow-wrap:anywhere}

/* 0.3.25 – Text zur Person (Trainer, Schiedsrichter) */
.fcv-trainer-text{margin-top:6px;font-size:15px;line-height:1.45}

/* 0.3.26 – Mobiles Menü: volle Breite unter der Kopfzeile, große Zeilen, Mitglied-Button */
.fcv-nav .fcv-nav-cta{display:none}
@media (max-width:980px){
	.fcv-header{position:sticky;top:0}
	.fcv-header-in{flex-wrap:wrap}
	.fcv-nav{flex:0 0 100%;width:100%;order:3;max-height:calc(100vh - 110px);max-height:calc(100dvh - 110px);overflow-y:auto;padding:8px 0 96px}
	.fcv-nav .fcv-menu{display:flex;flex-direction:column;flex-wrap:nowrap;gap:0}
	.fcv-nav .fcv-menu>li{border-top:2px solid rgba(6,81,148,.16)}
	.fcv-nav .fcv-menu>li:first-child{border-top:0}
	.fcv-nav a{width:100%;border-radius:12px;padding:14px 6px;min-height:52px;font-size:20px}
	.fcv-nav a:hover,.fcv-nav .current-menu-item>a,.fcv-nav .current-menu-ancestor>a{background:transparent;color:var(--b);text-decoration:underline;text-underline-offset:6px;text-decoration-thickness:3px}
	.fcv-nav .sub-menu{position:static;display:block;border:0;border-radius:0;padding:0 0 10px 14px;min-width:0;background:transparent}
	.fcv-nav .sub-menu a{font-size:17px;font-weight:500;min-height:44px;padding:10px 6px}
	.fcv-nav .fcv-nav-cta{display:flex;justify-content:center;margin-top:16px;width:100%}
	.fcv-nav .fcv-nav-cta{box-shadow:none;padding:0 36px;font-size:18px;color:#fff!important;text-decoration:none}
}

/* 0.3.27 Mobil: Team-Chips als ordentliches 2-Spalten-Raster */
@media (max-width:700px){
	.fcv-chips{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px 14px;margin-top:28px}
	.fcv-chips .fcv-btn{width:100%;justify-content:center;text-align:center;min-height:54px;padding:0 10px;font-size:15px;letter-spacing:.04em;box-shadow:0 4px 0 rgba(255,255,255,.35)}
	.fcv-chips .fcv-btn:last-child:nth-child(odd){grid-column:1 / -1}
}

/* 0.3.28 Aktive Seite in der App-Leiste, Dauerläufer pausieren außerhalb des Bilds, leichteres Mobil */
.fcv-track.is-off,.fcv-rtrack.is-off,.fcv-ptrack.is-off{animation-play-state:paused}
@media (max-width:980px){
	.fcv-appbar a{touch-action:manipulation;-webkit-tap-highlight-color:transparent}
	.fcv-appbar a[aria-current="page"]{background:#fff;color:var(--b)}
}
@media (max-width:700px){
	.fcv-grain{display:none}
}
