/*
Theme Name: FCBD 2026
Theme URI: https://www.fcbadduerrheim.de/
Author: FC 1919 Bad Dürrheim e.V.
Description: FCBD Club-Portal. Design-Master: Homepage V1.8.24. Daten aus FCBD Club Manager, Inhalte mit Gutenberg.
Version: 1.6.0
Text Domain: fcbd
*/
:root{--navy:#001F5B;--navy2:#00143d;--blue:#0a49a7;--red:#ED1C24;--red2:#ED1C24;--ink:#0a1224;--muted:#687386;--line:#e6eaf0;--paper:#fff;--mist:#f4f6f9;--radius:20px;--shadow:0 22px 60px rgba(4,17,45,.12)}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;color:var(--ink);background:#fff;line-height:1.45}a{color:inherit;text-decoration:none}img{display:block;max-width:100%}.wrap{width:min(1220px,calc(100% - 40px));margin:0 auto}.eyebrow{font-size:12px;font-weight:900;letter-spacing:.16em;text-transform:uppercase;color:var(--red)}.section{padding:88px 0}.section.soft{background:var(--mist)}.section.navy{background:var(--navy);color:#fff}h1,h2,h3,p{margin-top:0}h1{font-size:clamp(48px,7vw,104px);line-height:.89;letter-spacing:-.065em;margin-bottom:20px;font-weight:950}h2{font-size:clamp(34px,4vw,58px);line-height:.98;letter-spacing:-.045em;margin-bottom:16px;font-weight:930}h3{font-size:24px;letter-spacing:-.025em;margin-bottom:8px}.lede{font-size:clamp(18px,2vw,23px);color:#dce6ff;max-width:650px}.btn{display:inline-flex;align-items:center;justify-content:center;gap:10px;padding:14px 20px;border-radius:999px;font-weight:850;border:1px solid transparent;transition:.2s ease;cursor:pointer}.btn:hover{transform:translateY(-2px)}.btn.primary{background:var(--red);color:#fff}.btn.ghost{border-color:rgba(255,255,255,.72);color:#fff;background:transparent;backdrop-filter:none}.btn.dark{background:var(--navy);color:#fff}.btn.outline{border-color:var(--line);color:var(--navy);background:#fff}
.utility{height:36px;background:var(--navy2);color:#c9d7f7;font-size:12px;font-weight:700}.utility .wrap{height:100%;display:flex;align-items:center;justify-content:space-between}.utility-links{display:flex;gap:20px}.header{position:sticky;top:0;z-index:60;background:rgba(255,255,255,.94);backdrop-filter:blur(16px);border-bottom:1px solid rgba(0,31,91,.08)}.nav{height:86px;display:flex;align-items:center;gap:28px}.brand{display:flex;align-items:center;gap:13px;min-width:244px}.brand img{width:64px;height:64px;object-fit:contain}.brand-copy{font-weight:950;color:var(--navy);font-size:15px;line-height:1.05;text-transform:uppercase;letter-spacing:.02em}.brand-copy small{display:block;font-size:11px;font-weight:700;color:#73809a;margin-top:5px;letter-spacing:.08em}.navlinks{display:flex;align-items:center;gap:25px;margin-left:auto;font-size:14px;font-weight:850}.navlinks>a,.nav-trigger{padding:31px 0;background:none;border:0;font:inherit;color:inherit;cursor:pointer}.navlinks a:hover,.nav-trigger:hover{color:var(--red)}.menu-btn{display:none;margin-left:auto;width:45px;height:45px;border-radius:12px;border:1px solid var(--line);background:#fff;font-size:21px}.mega{position:absolute;left:0;right:0;top:100%;background:#fff;border-top:1px solid var(--line);border-bottom:1px solid var(--line);box-shadow:0 28px 55px rgba(4,17,45,.14);opacity:0;visibility:hidden;transform:translateY(-8px);transition:.18s ease}.mega.open{opacity:1;visibility:visible;transform:translateY(0)}.mega-inner{width:min(1220px,calc(100% - 40px));margin:auto;padding:30px 0 34px;display:grid;grid-template-columns:1.15fr repeat(3,1fr);gap:32px}.mega-feature{background:var(--navy);color:#fff;border-radius:18px;padding:24px;min-height:210px;position:relative;overflow:hidden}.mega-feature:after{content:"FCBD";position:absolute;right:-5px;bottom:-28px;font-size:85px;font-weight:1000;color:rgba(255,255,255,.06);letter-spacing:-.08em}.mega-feature h3{font-size:30px;line-height:1}.mega h4{font-size:11px;text-transform:uppercase;letter-spacing:.12em;color:#8792a7;margin:0 0 12px}.mega a{display:block;padding:7px 0;font-weight:780}.mega a:hover{color:var(--red)}
.scorebar{background:#fff;border-bottom:1px solid var(--line)}.scoregrid{display:grid;grid-template-columns:1fr 64px 1fr;align-items:center;min-height:118px}.scoreitem{display:flex;align-items:center;gap:20px;padding:18px 0}.scoreitem.right{justify-content:flex-end;text-align:right}.scorelabel{font-size:11px;letter-spacing:.14em;text-transform:uppercase;font-weight:900;color:var(--muted);margin-bottom:6px}.scoretitle{font-size:20px;font-weight:950;color:var(--navy);line-height:1.15}.scoremeta{font-size:13px;color:var(--muted);margin-top:5px}.score{font-size:38px;font-weight:950;letter-spacing:-.08em;color:var(--ink)}.vs{width:42px;height:42px;border-radius:50%;display:grid;place-items:center;margin:auto;background:var(--mist);font-weight:950;font-size:11px;color:var(--muted)}
.hero{position:relative;min-height:680px;background:
linear-gradient(to bottom,rgba(0,20,61,.58) 0%,rgba(0,20,61,.12) 40%,rgba(0,20,61,.04) 100%),
linear-gradient(95deg,rgba(0,20,61,.98) 5%,rgba(0,31,91,.92) 43%,rgba(0,31,91,.45) 72%,rgba(0,31,91,.15)),
url('https://www.fcbadduerrheim.de/wp-content/uploads/2025/10/DSC09573.jpg') center/cover no-repeat;color:#fff;overflow:hidden}.hero:after{content:"1919";position:absolute;right:-20px;bottom:-90px;font-size:min(31vw,430px);font-weight:1000;line-height:1;color:rgba(255,255,255,.045);letter-spacing:-.1em;pointer-events:none}.hero .wrap{min-height:680px;display:flex;align-items:center;position:relative;z-index:2}.hero-content{max-width:850px;padding:62px 0}.hero-actions{display:flex;gap:12px;flex-wrap:wrap;margin-top:28px}.hero-tag{display:inline-flex;align-items:center;gap:9px;padding:8px 12px;border-radius:999px;background:rgba(255,255,255,.1);border:1px solid rgba(255,255,255,.16);font-size:12px;font-weight:850;margin-bottom:20px}.hero-tag:before{content:"";width:8px;height:8px;border-radius:50%;background:var(--red)}
.page-hero{background:var(--navy);color:#fff;padding:78px 0 64px;position:relative;overflow:hidden}.page-hero:after{content:"1919";position:absolute;right:-10px;bottom:-55px;font-size:230px;font-weight:1000;color:rgba(255,255,255,.05);letter-spacing:-.08em}.page-hero h1{font-size:clamp(50px,7vw,90px);position:relative;z-index:2}.page-hero p{font-size:20px;color:#c9d7f7;max-width:680px;position:relative;z-index:2}.crumb{font-size:12px;text-transform:uppercase;letter-spacing:.12em;color:#9db0d7;margin-bottom:16px;position:relative;z-index:2}.crumb a{color:#fff}
.section-head{display:flex;align-items:flex-end;justify-content:space-between;gap:24px;margin-bottom:34px}.section-head p{max-width:620px;color:var(--muted);margin:0;font-size:17px}.newsgrid{display:grid;grid-template-columns:1.4fr .8fr .8fr;grid-template-rows:260px 260px;gap:18px}.story{position:relative;border-radius:var(--radius);overflow:hidden;background:var(--navy);min-height:230px;color:#fff;box-shadow:var(--shadow)}.story.big{grid-row:1/3}.story img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;opacity:.78;transition:.35s ease}.story:hover img{transform:scale(1.03)}.story:after{content:"";position:absolute;inset:0;background:linear-gradient(to top,rgba(2,10,27,.94),rgba(2,10,27,.07) 66%)}.story-content{position:absolute;z-index:2;left:0;right:0;bottom:0;padding:22px}.story.big .story-content{padding:30px}.story.big h3{font-size:35px;line-height:1.02;max-width:620px}.story .meta{font-size:11px;text-transform:uppercase;letter-spacing:.12em;font-weight:900;color:#dbe5ff;margin-bottom:9px}
.teamgrid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}.teamcard{position:relative;min-height:470px;border-radius:var(--radius);overflow:hidden;background:var(--navy);color:#fff;box-shadow:var(--shadow)}.teamcard img{position:absolute;width:100%;height:100%;object-fit:cover;opacity:.77;transition:.35s ease}.teamcard:hover img{transform:scale(1.035)}.teamcard:after{content:"";position:absolute;inset:0;background:linear-gradient(to top,rgba(0,20,61,.98) 0%,rgba(0,20,61,.78) 30%,rgba(0,20,61,.18) 68%,rgba(0,20,61,.04) 100%)}.teamcontent{position:absolute;z-index:2;bottom:0;left:0;right:0;padding:28px}.teamcontent h3{font-size:38px;margin:0 0 8px;letter-spacing:-.04em}.teamcontent p{color:#d6e1fb;margin:0 0 18px}
.today{display:grid;grid-template-columns:.82fr 1.18fr;gap:44px;align-items:start}.today-intro{position:sticky;top:130px}.today-intro p{font-size:18px;color:var(--muted);max-width:430px}.activity-tabs{display:flex;gap:8px;flex-wrap:wrap;margin:0 0 16px}.activity-tab{appearance:none;border:1px solid var(--line);background:#fff;color:var(--navy);font:inherit;font-size:12px;font-weight:900;text-transform:uppercase;letter-spacing:.08em;padding:9px 14px;border-radius:999px;cursor:pointer;transition:.18s ease}.activity-tab:hover{border-color:#c7d3e6}.activity-tab.active{background:var(--navy);border-color:var(--navy);color:#fff}.fixture{display:grid;grid-template-columns:95px 1fr auto;gap:20px;align-items:center;padding:22px 0;border-bottom:1px solid var(--line)}.activity-list>.fixture:first-of-type{border-top:1px solid var(--line)}.fixture[hidden]{display:none}.fixture-time{font-size:28px;font-weight:950;color:var(--navy);letter-spacing:-.04em}.fixture-team{font-size:18px;font-weight:900}.fixture-meta{font-size:13px;color:var(--muted);margin-top:4px}.pill{padding:7px 10px;border-radius:999px;background:#eef3fc;color:var(--navy);font-size:11px;font-weight:900;text-transform:uppercase;letter-spacing:.08em}.pill.red{background:#fff0f1;color:var(--red)}.pill.training{background:#fff;border:1px solid #cfd8e8;color:#687386}.activity-note{font-size:12px;color:#8a94a7;margin-top:14px}
.clubgrid{display:grid;grid-template-columns:1.2fr .8fr .8fr;gap:18px;margin-top:30px}.clubtile{padding:30px;border-radius:var(--radius);background:#fff;border:1px solid rgba(255,255,255,.18);min-height:250px;position:relative;overflow:hidden}.clubtile.main{background:var(--red);color:#fff}.clubtile.dark{background:#041b50;color:#fff}.clubtile.light{background:#fff;color:var(--navy)}.clubtile h3{font-size:30px;line-height:1.02}.clubtile p{opacity:.82;max-width:380px}.clubtile .arrow{position:absolute;right:24px;bottom:22px;width:46px;height:46px;border-radius:50%;display:grid;place-items:center;border:1px solid currentColor;font-weight:900}
.today-photo{margin-top:26px;border-radius:20px;overflow:hidden;position:relative;aspect-ratio:16/10;box-shadow:var(--shadow);background:var(--navy)}
.today-photo img{width:100%;height:100%;object-fit:cover;display:block}
.today-photo:after{content:"";position:absolute;inset:0;background:linear-gradient(to top,rgba(0,20,61,.42),transparent 58%)}
.today-photo-label{position:absolute;z-index:2;left:16px;bottom:14px;background:rgba(255,255,255,.94);color:var(--navy);padding:7px 10px;border-radius:999px;font-size:11px;font-weight:900;letter-spacing:.07em;text-transform:uppercase}
.clubtile.has-photo{padding:0;min-height:280px;color:#fff;background:var(--navy)}
.clubtile.has-photo>img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.clubtile.has-photo:before{content:"";position:absolute;inset:0;background:linear-gradient(to top,rgba(0,16,48,.94),rgba(0,16,48,.22) 70%);z-index:1}
.clubtile.has-photo .tile-copy,.clubtile.has-photo .arrow{position:relative;z-index:2}
.clubtile.has-photo .tile-copy{padding:30px}
.clubtile.has-photo .arrow{position:absolute}

.sponsor-strip{display:grid;grid-template-columns:repeat(5,1fr);gap:12px;margin-top:30px}.sponsor{height:110px;background:#fff;border:1px solid var(--line);border-radius:16px;display:grid;place-items:center;padding:22px;font-weight:950;color:#71809e;text-align:center}.sponsor img{width:100%;height:48px;max-width:150px;object-fit:contain;filter:grayscale(100%);opacity:.78}
.sponsor{transition:.18s ease}.sponsor:hover img{filter:none;opacity:1}.tabs{display:flex;gap:8px;flex-wrap:wrap;margin-bottom:32px}.tab{padding:10px 14px;border-radius:999px;background:#fff;border:1px solid var(--line);font-weight:850;font-size:13px;cursor:pointer}.tab.active{background:var(--navy);color:#fff;border-color:var(--navy)}.schedule-card{background:#fff;border:1px solid var(--line);border-radius:20px;overflow:hidden;margin-bottom:18px}.date-row{padding:13px 20px;background:var(--mist);font-size:12px;font-weight:900;text-transform:uppercase;letter-spacing:.1em;color:#667289}.match-row{display:grid;grid-template-columns:110px 1fr 90px 1fr 120px;gap:16px;align-items:center;padding:22px 20px;border-top:1px solid var(--line)}.match-row:first-of-type{border-top:0}.match-time{font-weight:950;color:var(--navy)}.match-team{font-weight:900}.match-team.right{text-align:right}.match-score{text-align:center;font-size:26px;font-weight:1000;letter-spacing:-.05em}.match-place{font-size:12px;color:var(--muted);text-align:right}.standings{width:100%;border-collapse:collapse;background:#fff;border:1px solid var(--line);border-radius:20px;overflow:hidden}.standings th,.standings td{padding:14px 16px;border-bottom:1px solid var(--line);text-align:left}.standings th{font-size:11px;text-transform:uppercase;letter-spacing:.09em;color:#6c7890;background:var(--mist)}.standings tr.highlight{background:#eef3fc;font-weight:900}.standings td.num{width:48px;font-weight:950;color:var(--navy)}
.team-hero{position:relative;background:var(--navy);min-height:560px;color:#fff;overflow:hidden}.team-hero img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;opacity:.72}.team-hero:after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(0,20,61,.96),rgba(0,31,91,.72) 48%,rgba(0,31,91,.13))}.team-hero .wrap{min-height:560px;display:flex;align-items:flex-end;position:relative;z-index:2;padding-bottom:58px}.team-hero h1{font-size:clamp(56px,8vw,100px)}.facts{display:grid;grid-template-columns:repeat(4,1fr);gap:14px;margin-top:-34px;position:relative;z-index:5}.fact{background:#fff;border-radius:18px;box-shadow:var(--shadow);padding:22px;border:1px solid var(--line)}.fact small{display:block;text-transform:uppercase;letter-spacing:.09em;font-size:10px;font-weight:900;color:var(--muted);margin-bottom:8px}.fact strong{font-size:18px;color:var(--navy)}.roster{display:grid;grid-template-columns:repeat(4,1fr);gap:18px}.player{background:#fff;border:1px solid var(--line);border-radius:20px;overflow:hidden}.player-photo{height:310px;background:#eef1f6;position:relative}.player-photo img{width:100%;height:100%;object-fit:cover;object-position:center top}.player-num{position:absolute;right:12px;bottom:10px;font-size:46px;font-weight:1000;color:#fff;text-shadow:0 3px 16px rgba(0,0,0,.45);letter-spacing:-.08em}.player-info{padding:16px}.player-info strong{font-size:20px;color:var(--navy)}.player-info span{display:block;color:var(--muted);font-size:12px;margin-top:3px}.cta-band{background:var(--red);color:#fff;border-radius:24px;padding:38px;display:flex;align-items:center;justify-content:space-between;gap:24px}.cta-band h3{font-size:38px;line-height:1;margin:0}.cta-band p{margin:8px 0 0;color:#ffe5e7}
.article-hero{padding:78px 0 34px}.article-wrap{width:min(820px,calc(100% - 40px));margin:0 auto}.article-meta{font-size:12px;text-transform:uppercase;letter-spacing:.12em;font-weight:900;color:var(--red);margin-bottom:14px}.article-hero h1{font-size:clamp(44px,6vw,76px);line-height:.96;letter-spacing:-.055em}.article-lede{font-size:21px;color:#526075;max-width:760px}.article-image{width:min(1120px,calc(100% - 40px));margin:24px auto 0;border-radius:24px;overflow:hidden;max-height:620px}.article-image img{width:100%;height:100%;object-fit:cover}.article-body{padding:54px 0 90px}.article-body p{font-size:19px;line-height:1.72;color:#273249}.article-body h2{font-size:38px;margin-top:48px}.article-box{margin:36px 0;padding:25px;border-radius:18px;background:var(--mist);border-left:5px solid var(--red)}.article-box strong{display:block;color:var(--navy);margin-bottom:7px}.share{display:flex;gap:8px;margin-top:32px}.share span{border:1px solid var(--line);padding:8px 12px;border-radius:999px;font-size:12px;font-weight:850}
footer{background:#031338;color:#fff;padding:64px 0 26px}.footergrid{display:grid;grid-template-columns:1.4fr repeat(4,1fr);gap:34px}footer h4{font-size:13px;letter-spacing:.11em;text-transform:uppercase;color:#94abd8;margin:0 0 18px}footer a{display:block;color:#fff;opacity:.84;margin:10px 0;font-size:14px}.footerbrand img{width:82px;background:#fff;border-radius:18px;padding:6px;margin-bottom:16px}.footerbrand p{max-width:300px;color:#9fb1d8}.copyright{border-top:1px solid rgba(255,255,255,.12);margin-top:45px;padding-top:22px;display:flex;justify-content:space-between;color:#8da3ce;font-size:12px}.bottom-nav{display:none}.floating-proto{position:fixed;right:18px;bottom:18px;z-index:70;background:#0a1224;color:#fff;padding:9px 13px;border-radius:999px;font-size:11px;font-weight:800;box-shadow:0 8px 30px rgba(0,0,0,.22);opacity:.85}
@media(max-width:980px){.utility{display:none}.nav{height:74px}.brand{min-width:unset}.brand img{width:52px;height:52px}.brand-copy{font-size:13px}.navlinks,.nav>.btn{display:none}.menu-btn{display:block}.navlinks.mobile-open{display:flex;position:absolute;top:74px;left:0;right:0;background:#fff;padding:20px 24px 28px;flex-direction:column;align-items:flex-start;border-bottom:1px solid var(--line);box-shadow:var(--shadow);gap:0}.navlinks.mobile-open>a,.navlinks.mobile-open .nav-trigger{padding:12px 0;width:100%;text-align:left}.mega{display:none}.scoregrid{grid-template-columns:1fr 44px 1fr}.scoreitem{gap:10px}.scoretitle{font-size:16px}.score{font-size:30px}.hero,.hero .wrap{min-height:610px}.newsgrid{grid-template-columns:1fr 1fr;grid-template-rows:430px 250px 250px}.story.big{grid-column:1/3;grid-row:auto}.teamgrid{grid-template-columns:1fr}.teamcard{min-height:420px}.today{grid-template-columns:1fr;gap:20px}.today-intro{position:relative;top:auto}.clubgrid{grid-template-columns:1fr 1fr}.clubtile.main{grid-column:1/3}.sponsor-strip{grid-template-columns:repeat(3,1fr)}.footergrid{grid-template-columns:1fr 1fr 1fr}.footerbrand{grid-column:1/4}.match-row{grid-template-columns:75px 1fr 70px 1fr}.match-place{grid-column:2/5;text-align:left}.facts{grid-template-columns:1fr 1fr}.roster{grid-template-columns:repeat(3,1fr)}}
@media(max-width:640px){.wrap{width:min(100% - 28px,1220px)}.section{padding:64px 0}.brand-copy small{display:none}.scorebar{overflow:hidden}.scoregrid{min-height:105px}.scoreitem{padding:14px 0}.scorelabel{font-size:9px}.scoretitle{font-size:13px}.scoremeta{font-size:10px}.score{font-size:26px}.hero{background-position:62% center}.hero,.hero .wrap{min-height:575px}.hero-content{padding:48px 0}.hero-actions .btn{width:100%}.section-head{align-items:flex-start;flex-direction:column}.newsgrid{display:flex;overflow-x:auto;scroll-snap-type:x mandatory;padding-bottom:8px;margin-right:-14px}.story,.story.big{min-width:82vw;height:390px;scroll-snap-align:start}.story.big h3{font-size:28px}.teamcard{min-height:390px}.fixture{grid-template-columns:72px 1fr;gap:14px}.fixture .pill{grid-column:2;justify-self:start}.fixture-time{font-size:23px}.clubgrid{grid-template-columns:1fr}.clubtile.main{grid-column:auto}.sponsor-strip{grid-template-columns:1fr 1fr}.footergrid{grid-template-columns:1fr 1fr}.footerbrand{grid-column:1/3}.copyright{padding-bottom:72px;flex-direction:column;gap:8px}.bottom-nav{display:grid;grid-template-columns:repeat(5,1fr);position:fixed;z-index:65;bottom:0;left:0;right:0;height:66px;background:rgba(255,255,255,.97);backdrop-filter:blur(15px);border-top:1px solid var(--line);box-shadow:0 -10px 30px rgba(0,0,0,.08)}.bottom-nav a{display:flex;flex-direction:column;align-items:center;justify-content:center;font-size:10px;font-weight:850;color:#536176;gap:3px}.bottom-nav a strong{font-size:20px;line-height:1}.bottom-nav a.active{color:var(--navy)}.floating-proto{bottom:78px}.match-row{grid-template-columns:58px 1fr 54px 1fr;padding:17px 12px;gap:8px}.match-time,.match-team{font-size:13px}.match-score{font-size:19px}.match-place{font-size:10px}.facts{grid-template-columns:1fr}.roster{grid-template-columns:1fr 1fr;gap:12px}.player-photo{height:230px}.cta-band{padding:28px;display:block}.cta-band h3{font-size:32px}.cta-band .btn{margin-top:20px;width:100%}.team-hero,.team-hero .wrap{min-height:460px}.article-wrap{width:min(100% - 28px,820px)}.article-image{width:min(100% - 28px,1120px)}.article-body p{font-size:17px}.page-hero{padding:58px 0 46px}}

/* V1.3 — FCBD Markenlogik: Rot führt, Blau trägt */
.utility{background:var(--red2);color:#ffe9eb}
.utility a:hover{color:#fff}
.header{border-bottom-color:rgba(227,6,19,.12)}
.header:after{content:"";position:absolute;left:0;right:0;bottom:-1px;height:2px;background:linear-gradient(90deg,var(--red) 0 18%,transparent 18% 100%);pointer-events:none}
.brand-copy{color:var(--red2)}
.btn.dark{background:var(--red);color:#fff;color:var(--red)}
.scorelabel{color:var(--red)}
.scoretitle{color:var(--ink)}
.hero{background:
  linear-gradient(90deg,rgba(237,28,36,0),rgba(237,28,36,0) 36%),
  linear-gradient(95deg,rgba(0,20,61,.97) 5%,rgba(0,31,91,.91) 43%,rgba(0,31,91,.38) 72%,rgba(0,31,91,.12)),
  url('https://www.fcbadduerrheim.de/wp-content/uploads/2025/10/DSC09573.jpg') center/cover no-repeat}
.hero-tag{border-color:rgba(227,6,19,.38);background:rgba(165,0,10,.24)}
.activity-tab:hover{border-color:rgba(227,6,19,.34);color:var(--red2)}
.activity-tab.active{background:var(--red);border-color:var(--red);color:#fff;color:var(--red2)}
.pill.training{background:#fff;border-color:#cfd8e8;color:#687386}
.teamcard:before,.story:before{content:"";position:absolute;z-index:3;left:0;top:0;width:4px;height:74px;background:var(--red);opacity:.95}
.sponsor:last-child{color:var(--red2);border-color:rgba(227,6,19,.24);background:#fff7f8}
.bottom-nav a.active{color:var(--red)!important}
.floating-proto{background:var(--red2)}
@media(max-width:640px){.header:after{height:2px;background:var(--red)}}


/* ===== V1.8.14 Feintuning ===== */

/* One official red only */
:root{
  --red:#ED1C24;
  --red2:#ED1C24;
}

/* Header stays light and readable; no extra glass layer needed */
.header{
  background:rgba(255,255,255,.97);
  backdrop-filter:blur(18px);
  -webkit-backdrop-filter:blur(18px);
}

/* Stronger top protection on the hero image, especially around bright photo areas */
.hero{
  background:
    linear-gradient(to bottom,rgba(0,20,61,.34) 0%,rgba(0,20,61,.12) 23%,rgba(0,20,61,0) 48%),
    linear-gradient(95deg,rgba(0,20,61,.98) 5%,rgba(0,31,91,.92) 43%,rgba(0,31,91,.43) 72%,rgba(0,31,91,.14)),
    url('https://www.fcbadduerrheim.de/wp-content/uploads/2025/10/DSC09573.jpg') center/cover no-repeat;
}

/* Remove leftover dark-red tint from the small hero tag */
.hero-tag{
  border-color:rgba(237,28,36,.42);
  background:rgba(0,20,61,.48);
}

/* News cards: stronger but still soft lower gradient */
.story:after{
  background:
    linear-gradient(to top,
      rgba(2,10,27,.96) 0%,
      rgba(2,10,27,.78) 28%,
      rgba(2,10,27,.34) 52%,
      rgba(2,10,27,.08) 72%,
      rgba(2,10,27,0) 100%);
}

/* Team cards: reliable text contrast even on white kits / bright backgrounds */
.teamcard:after{
  background:
    linear-gradient(to top,
      rgba(0,20,61,.98) 0%,
      rgba(0,20,61,.82) 30%,
      rgba(0,20,61,.40) 52%,
      rgba(0,20,61,.10) 74%,
      rgba(0,20,61,.02) 100%);
}

/* CTA photo cards get the same text protection */
.clubtile.has-photo:before{
  background:
    linear-gradient(to top,
      rgba(0,16,48,.96) 0%,
      rgba(0,16,48,.72) 36%,
      rgba(0,16,48,.28) 66%,
      rgba(0,16,48,.08) 100%);
}

/* Correct accidental red-on-red states from older experimental layers */
.btn.dark{
  background:var(--navy);
  color:#fff;
}
.activity-tab.active{
  background:var(--red);
  border-color:var(--red);
  color:#fff;
}
.floating-proto{
  background:var(--navy);
}

/* Slightly calmer image crop behavior */
.story img,
.teamcard img,
.clubtile.has-photo>img{
  object-position:center;
}

/* Mobile day schedule: more breathing room */
@media(max-width:640px){
  .fixture{
    padding:20px 0;
    row-gap:8px;
  }
  .fixture-team{
    line-height:1.35;
  }
  .fixture-meta{
    line-height:1.45;
  }
  .fixture-time{
    align-self:start;
    padding-top:1px;
  }
}


/* ===== V1.8.14 Final visual refinements ===== */

/* tighter overall rhythm */
.section{padding:74px 0}
.section-head{margin-bottom:28px}

/* explicit visibility for controls that previously appeared empty */
.activity-tab.active{
  background:var(--red) !important;
  border-color:var(--red) !important;
  color:#fff !important;
  opacity:1 !important;
}
.btn.dark{
  background:var(--navy) !important;
  color:#fff !important;
  border-color:var(--navy) !important;
  opacity:1 !important;
}
.btn.dark:hover{color:#fff !important}

/* stronger news-card text protection */
.story:after{
  background:linear-gradient(
    to top,
    rgba(2,10,27,.97) 0%,
    rgba(2,10,27,.82) 27%,
    rgba(2,10,27,.42) 49%,
    rgba(2,10,27,.10) 69%,
    rgba(2,10,27,0) 100%
  );
}

/* team images stay vivid; gradient lives mainly in lower third */
.teamcard img{
  filter:none;
  opacity:1;
}
.teamcard:after{
  background:linear-gradient(
    to top,
    rgba(0,20,61,.94) 0%,
    rgba(0,20,61,.72) 23%,
    rgba(0,20,61,.26) 45%,
    rgba(0,20,61,.06) 62%,
    rgba(0,20,61,0) 78%
  );
}

/* stronger CTA protection over busy photos */
.clubtile.has-photo:before{
  background:linear-gradient(
    to top,
    rgba(0,16,48,.98) 0%,
    rgba(0,16,48,.88) 35%,
    rgba(0,16,48,.52) 58%,
    rgba(0,16,48,.18) 78%,
    rgba(0,16,48,.05) 100%
  );
}
.clubtile.has-photo .tile-copy{
  text-shadow:0 1px 8px rgba(0,0,0,.22);
}

/* larger and better structured match ticker */
.scoregrid{
  grid-template-columns:1fr 1px 1fr;
  gap:34px;
  min-height:138px;
}
.scoreitem{
  padding:24px 0;
}
.scoreitem.right{
  justify-content:flex-end;
}
.scorehead{
  display:flex;
  align-items:center;
  gap:10px;
  margin-bottom:9px;
}
.scorehead.right{
  justify-content:flex-end;
}
.scorelabel{
  margin-bottom:0;
  color:#737f94;
}
.status-badge{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-width:32px;
  height:22px;
  padding:0 8px;
  border-radius:999px;
  background:var(--red);
  color:#fff;
  font-size:10px;
  font-weight:950;
  letter-spacing:.08em;
}
.scorematch{
  display:flex;
  align-items:baseline;
  gap:12px;
  font-size:19px;
}
.scorematch strong{
  font-size:31px;
  line-height:1;
  letter-spacing:-.06em;
  color:var(--ink);
  white-space:nowrap;
}
.scorematch.next strong{
  font-size:15px;
  letter-spacing:.08em;
  color:var(--red);
}
.score-divider{
  width:1px;
  height:72px;
  align-self:center;
  background:var(--line);
}
.scoremeta{
  margin-top:9px;
}

/* sponsor strip: equal visual weight, permanent grayscale, no colored hover backgrounds */
.sponsor{
  height:112px;
  background:#fff !important;
  padding:26px 24px;
  overflow:hidden;
}
.sponsor img{
  width:128px !important;
  height:40px !important;
  max-width:128px !important;
  max-height:40px !important;
  object-fit:contain !important;
  filter:grayscale(100%) contrast(.92) brightness(.98) !important;
  opacity:.72 !important;
  mix-blend-mode:multiply;
}
.sponsor:hover img{
  filter:grayscale(100%) contrast(.92) brightness(.98) !important;
  opacity:.86 !important;
}

/* prototype badge is gone */
.floating-proto{display:none !important}

/* a little less air after the hero without making the page cramped */
.hero + .section{padding-top:68px}

@media(max-width:980px){
  .scoregrid{
    gap:22px;
  }
  .scorematch{
    font-size:16px;
    gap:8px;
  }
  .scorematch strong{
    font-size:27px;
  }
}

@media(max-width:640px){
  .section{padding:54px 0}
  .hero + .section{padding-top:50px}

  .scoregrid{
    grid-template-columns:1fr;
    gap:0;
    padding:4px 0;
  }
  .score-divider{
    width:100%;
    height:1px;
  }
  .scoreitem,
  .scoreitem.right{
    justify-content:flex-start;
    text-align:left;
    padding:18px 0;
  }
  .scorehead.right{
    justify-content:flex-start;
  }
  .scorematch{
    flex-wrap:wrap;
    font-size:15px;
  }
  .scorematch strong{
    font-size:24px;
  }

  .fixture{
    padding:23px 0;
    row-gap:10px;
  }
  .fixture-time{
    line-height:1.1;
  }
  .fixture-team{
    line-height:1.4;
  }
  .fixture-meta{
    line-height:1.5;
  }

  .sponsor{
    height:100px;
    padding:22px 18px;
  }
  .sponsor img{
    width:112px !important;
    max-width:112px !important;
    height:36px !important;
    max-height:36px !important;
  }
}


/* ===== V1.8.14 / FCBD-authentischer Hero ===== */

/* zurück zu heller, freundlicher Navigation */
.header{
  background:rgba(255,255,255,.97) !important;
  color:var(--ink) !important;
  border-bottom:1px solid rgba(0,31,91,.10) !important;
  backdrop-filter:blur(14px);
  -webkit-backdrop-filter:blur(14px);
}
.header .brand-copy,
.header .brand-copy small,
.header .navlinks a,
.header .nav-trigger,
.header .menu-btn{
  color:var(--ink) !important;
}

/* Hero: emotional, aber sauber und regional statt grungy */
.hero{
  min-height:700px !important;
  background:
    linear-gradient(90deg,
      rgba(0,20,61,.96) 0%,
      rgba(0,31,91,.86) 34%,
      rgba(0,31,91,.46) 62%,
      rgba(0,31,91,.10) 100%),
    url('https://www.fcbadduerrheim.de/wp-content/uploads/2025/10/DSC09573.jpg') center 42%/cover no-repeat !important;
  position:relative;
  overflow:hidden;
}
.hero:before{
  content:"";
  position:absolute;
  inset:0;
  background:linear-gradient(to bottom,rgba(0,20,61,.16),rgba(0,20,61,0) 42%,rgba(0,20,61,.18));
  pointer-events:none;
}
.hero .wrap{
  min-height:700px !important;
  position:relative;
  z-index:2;
}
.hero-content{
  max-width:760px !important;
  padding:76px 0 68px !important;
}
.hero-tag{
  display:inline-flex;
  align-items:center;
  gap:9px;
  background:rgba(255,255,255,.10) !important;
  border:1px solid rgba(255,255,255,.18) !important;
  border-radius:999px !important;
  padding:9px 14px !important;
  color:#fff !important;
}
.hero-tag:before{
  content:"";
  width:8px;
  height:8px;
  border-radius:50%;
  background:var(--red);
}
.hero h1{
  font-size:clamp(62px,7vw,102px) !important;
  line-height:.90 !important;
  letter-spacing:-.055em !important;
  max-width:760px;
  margin-top:24px !important;
  text-transform:uppercase;
}
.hero .lede{
  max-width:560px !important;
  font-size:19px !important;
  line-height:1.55 !important;
  color:rgba(255,255,255,.88) !important;
}

/* dezente rote Markenlinie statt Sportposter-Effekt */
.hero-content:after{
  content:"";
  display:block;
  width:74px;
  height:5px;
  margin-top:32px;
  background:var(--red);
  border-radius:999px;
}

/* Buttons: klassisch FCBD, sauber */
.hero .btn.primary{
  background:var(--red) !important;
  border-color:var(--red) !important;
  color:#fff !important;
}
.hero .btn.ghost{
  background:rgba(255,255,255,.08) !important;
  border:1px solid rgba(255,255,255,.55) !important;
  color:#fff !important;
  backdrop-filter:blur(5px);
}

/* Logo ein kleines bisschen präsenter */
.header .brand img{
  width:56px !important;
  height:56px !important;
}

/* kleine rote Kante als Club-Signatur */
.hero:after{
  content:"";
  position:absolute;
  right:0;
  bottom:0;
  width:34%;
  height:8px;
  background:var(--red);
  z-index:3;
}

/* Mobile */
@media(max-width:900px){
  .hero{
    min-height:640px !important;
    background:
      linear-gradient(to top,
        rgba(0,20,61,.95) 0%,
        rgba(0,31,91,.58) 56%,
        rgba(0,31,91,.16) 100%),
      url('https://www.fcbadduerrheim.de/wp-content/uploads/2025/10/DSC09573.jpg') 60% center/cover no-repeat !important;
  }
  .hero .wrap{
    min-height:640px !important;
  }
  .hero-content{
    padding:58px 0 64px !important;
  }
  .hero h1{
    font-size:clamp(54px,14vw,82px) !important;
  }
}


/* ===== V1.8.14 / Hero-Mix aus Bild 1 + Overlay aus Bild 2 ===== */

/* Header bleibt freundlich und sauber */
.header{
  background:rgba(255,255,255,.97) !important;
  color:var(--ink) !important;
  border-bottom:1px solid rgba(0,31,91,.10) !important;
}

/* Hero with clean blue overlay like image 2 */
.hero{
  min-height:720px !important;
  position:relative;
  overflow:hidden;
  background:
    linear-gradient(90deg,
      rgba(0,31,91,.92) 0%,
      rgba(0,31,91,.84) 22%,
      rgba(0,31,91,.66) 42%,
      rgba(0,31,91,.34) 64%,
      rgba(0,31,91,.10) 100%),
    linear-gradient(to bottom,
      rgba(0,31,91,.30) 0%,
      rgba(0,31,91,.10) 30%,
      rgba(0,31,91,.18) 100%),
    url('https://www.fcbadduerrheim.de/wp-content/uploads/2024/09/WhatsApp-Bild-2024-08-31-um-22.18.14_c60349a8.jpg') center 42%/cover no-repeat !important;
}
.hero:before{
  content:"";
  position:absolute;
  inset:0;
  background:
    linear-gradient(to right, rgba(0,20,61,.12), transparent 42%),
    linear-gradient(to top, rgba(0,0,0,.18), transparent 36%);
  pointer-events:none;
}
.hero .wrap{
  min-height:720px !important;
  position:relative;
  z-index:3;
}
.hero-content{
  max-width:760px !important;
  padding:72px 0 72px !important;
}

/* Small badge like in the references */
.hero-tag{
  display:inline-flex;
  align-items:center;
  gap:10px;
  background:rgba(255,255,255,.10) !important;
  border:1px solid rgba(255,255,255,.22) !important;
  border-radius:999px !important;
  padding:10px 16px !important;
  color:#fff !important;
  font-weight:900;
}
.hero-tag:before{
  content:"";
  width:9px;
  height:9px;
  border-radius:50%;
  background:var(--red);
}

/* Headline closer to image 1, but cleaner */
.hero h1{
  position:relative;
  z-index:4;
  font-size:clamp(72px,8.4vw,126px) !important;
  line-height:.84 !important;
  letter-spacing:-.07em !important;
  text-transform:uppercase;
  margin-top:24px !important;
  max-width:820px;
}
.hero h1 .outline,
.hero-outline{
  color:transparent;
  -webkit-text-stroke:2px var(--red);
  text-stroke:2px var(--red);
}

/* If the claim is plain text only, make FCBD red through CSS by targeting last line visually is not robust.
   So keep all lines white and use the giant wordmark as red identity layer. */
.hero .lede{
  max-width:590px !important;
  font-size:18px !important;
  line-height:1.58 !important;
  color:rgba(255,255,255,.88) !important;
  margin-top:18px !important;
}
.hero-actions{
  margin-top:34px !important;
}

/* Giant outlined FCBD wordmark behind the content, inspired by image 1 */
.hero-wordmark{
  position:absolute;
  top:18px;
  left:7%;
  z-index:1;
  font-size:clamp(180px,25vw,370px);
  line-height:.76;
  font-weight:1000;
  letter-spacing:-.10em;
  color:transparent;
  -webkit-text-stroke:2px rgba(237,28,36,.50);
  text-stroke:2px rgba(237,28,36,.50);
  opacity:.72;
  user-select:none;
  pointer-events:none;
  white-space:nowrap;
}

/* Remove the red right-side bar from previous variant */
.hero:after{
  display:none !important;
}

/* Clean button styling */
.hero .btn.primary{
  background:var(--red) !important;
  border-color:var(--red) !important;
  color:#fff !important;
}
.hero .btn.ghost{
  background:rgba(255,255,255,.06) !important;
  border:1px solid rgba(255,255,255,.70) !important;
  color:#fff !important;
  backdrop-filter:blur(4px);
}

/* Slightly more compact gap below hero */
.hero + .section{
  padding-top:64px;
}

/* Mobile */
@media(max-width:900px){
  .hero{
    min-height:650px !important;
    background:
      linear-gradient(to top,
        rgba(0,31,91,.95) 0%,
        rgba(0,31,91,.68) 48%,
        rgba(0,31,91,.26) 100%),
      url('https://www.fcbadduerrheim.de/wp-content/uploads/2024/09/WhatsApp-Bild-2024-08-31-um-22.18.14_c60349a8.jpg') 60% center/cover no-repeat !important;
  }
  .hero .wrap{
    min-height:650px !important;
  }
  .hero-content{
    padding:58px 0 64px !important;
  }
  .hero h1{
    font-size:clamp(56px,15vw,88px) !important;
    line-height:.86 !important;
  }
  .hero-wordmark{
    top:72px;
    left:-8%;
    font-size:46vw;
    opacity:.58;
  }
}

@media(max-width:620px){
  .hero{
    min-height:620px !important;
  }
  .hero .wrap{
    min-height:620px !important;
  }
  .hero h1{
    font-size:clamp(48px,16vw,74px) !important;
  }
  .hero .lede{
    font-size:17px !important;
  }
  .hero-wordmark{
    top:110px;
    left:-16%;
    font-size:56vw;
  }
}


/* ===== V1.8.14 / FCBD CLUB PORTAL LAYER ===== */

:root{
  --red:#ED1C24;
  --navy:#001F5B;
}

/* Lightly angled wordmark: identity, not FC08 imitation */
.hero-wordmark{
  transform:rotate(-5deg);
  transform-origin:left top;
  left:4% !important;
  top:28px !important;
  opacity:.56 !important;
}

/* FCBD signature shape: a recurring red cut */
.match-center,
.roster-showcase,
.partner-feature{
  --cut:22px;
}
.match-center{
  position:relative;
  background:#f5f7fb;
  padding:74px 0 82px;
  border-top:1px solid #e1e6ef;
}
.match-center:before{
  content:"";
  position:absolute;
  left:0;
  top:0;
  width:118px;
  height:8px;
  background:var(--red);
  clip-path:polygon(0 0,100% 0,88% 100%,0 100%);
}
.mc-head{
  display:flex;
  justify-content:space-between;
  align-items:end;
  gap:28px;
  margin-bottom:30px;
}
.mc-head h2{
  margin-bottom:0;
}
.mc-link{
  color:var(--navy);
  font-weight:900;
  font-size:13px;
  border-bottom:2px solid var(--red);
  padding-bottom:4px;
}
.mc-grid{
  display:grid;
  grid-template-columns:1fr 1.14fr .68fr;
  gap:14px;
}
.mc-card,
.mc-table{
  position:relative;
  background:#fff;
  border:1px solid #e1e6ef;
  border-radius:20px;
  overflow:hidden;
  box-shadow:0 18px 46px rgba(0,31,91,.07);
}
.mc-card:before,
.mc-table:before{
  content:"";
  position:absolute;
  right:0;
  top:0;
  width:80px;
  height:7px;
  background:var(--red);
  clip-path:polygon(14% 0,100% 0,100% 100%,0 100%);
}
.mc-card{
  padding:26px;
}
.mc-kicker{
  font-size:10px;
  text-transform:uppercase;
  letter-spacing:.14em;
  font-weight:950;
  color:#7a8598;
  display:flex;
  align-items:center;
  gap:8px;
}
.mc-status{
  background:var(--red);
  color:#fff;
  border-radius:999px;
  padding:4px 7px;
  font-size:9px;
}
.mc-teams{
  display:grid;
  grid-template-columns:1fr auto 1fr;
  align-items:center;
  gap:18px;
  margin:26px 0 22px;
}
.mc-team{
  display:grid;
  justify-items:center;
  text-align:center;
  gap:10px;
}
.mc-team img,
.mc-opponent{
  width:74px;
  height:74px;
  object-fit:contain;
}
.mc-opponent{
  border-radius:50%;
  border:2px solid #d7dee9;
  display:grid;
  place-items:center;
  font-size:10px;
  font-weight:950;
  color:#8a94a7;
  letter-spacing:.09em;
  background:#f7f9fc;
}
.mc-team strong{
  font-size:13px;
  line-height:1.18;
}
.mc-result{
  display:flex;
  align-items:center;
  gap:8px;
  color:var(--navy);
}
.mc-result span{
  font-size:42px;
  line-height:1;
  font-weight:1000;
  letter-spacing:-.08em;
}
.mc-result em{
  font-style:normal;
  color:#9aa5b8;
  font-weight:900;
}
.mc-vs{
  display:grid;
  justify-items:center;
  gap:6px;
}
.mc-vs small{
  font-size:10px;
  color:#7e899c;
  font-weight:900;
}
.mc-vs span{
  font-size:20px;
  color:var(--red);
  letter-spacing:.02em;
}
.mc-meta{
  text-align:center;
  color:#7b879a;
  font-size:12px;
}
.mc-action{
  display:block;
  margin-top:18px;
  padding-top:16px;
  border-top:1px solid #e7ebf2;
  color:var(--navy);
  font-weight:900;
  font-size:12px;
}
.mc-countdown{
  display:grid;
  grid-template-columns:repeat(3,1fr);
  gap:8px;
  margin-top:16px;
}
.mc-countdown div{
  background:#f3f6fb;
  border-radius:12px;
  padding:10px;
  text-align:center;
}
.mc-countdown strong{
  display:block;
  font-size:21px;
  color:var(--navy);
}
.mc-countdown span{
  font-size:9px;
  text-transform:uppercase;
  letter-spacing:.08em;
  color:#8490a4;
  font-weight:900;
}
.mc-next-footer{
  display:flex;
  justify-content:space-between;
  align-items:center;
  gap:16px;
  margin-top:16px;
  padding-top:16px;
  border-top:1px solid #e7ebf2;
  font-size:11px;
  color:#7a8598;
}
.mc-next-footer a{
  color:var(--red);
  font-weight:950;
}
.mc-table{
  padding:24px;
}
.mc-position{
  padding:26px 0 20px;
  text-align:center;
}
.mc-position span,
.mc-position small{
  display:block;
  color:#8792a6;
  font-size:10px;
  text-transform:uppercase;
  letter-spacing:.1em;
  font-weight:900;
}
.mc-position strong{
  display:block;
  font-size:64px;
  color:var(--navy);
  line-height:.95;
  letter-spacing:-.08em;
  margin:5px 0 8px;
}
.mc-mini{
  border-top:1px solid #e7ebf2;
}
.mc-mini div{
  display:grid;
  grid-template-columns:30px 1fr 24px;
  gap:8px;
  align-items:center;
  padding:9px 0;
  border-bottom:1px solid #edf0f5;
  font-size:11px;
}
.mc-mini .is-fcbd{
  color:var(--navy);
  font-weight:950;
}
.mc-mini .is-fcbd b{
  color:var(--red);
}
.mc-demo-note{
  margin-top:13px;
  color:#929bad;
  font-size:10px;
}

/* Club signature: a non-card full-width rhythm break */
.club-signature{
  background:var(--navy);
  color:#fff;
}
.signature-grid{
  display:grid;
  grid-template-columns:repeat(5,1fr);
}
.signature-grid>div{
  padding:28px 22px;
  border-right:1px solid rgba(255,255,255,.12);
}
.signature-grid>div:last-child{
  border-right:0;
}
.signature-grid strong{
  display:block;
  font-size:27px;
  line-height:1;
  letter-spacing:-.05em;
}
.signature-grid span{
  display:block;
  margin-top:7px;
  color:#aebfe1;
  font-size:10px;
  text-transform:uppercase;
  letter-spacing:.1em;
  font-weight:900;
}

/* Roster cards: clear FCBD look, number typography as recognizable device */
.roster-showcase{
  background:#fff;
  position:relative;
}
.roster-showcase:before{
  content:"";
  position:absolute;
  right:0;
  top:0;
  width:31%;
  height:8px;
  background:var(--red);
  clip-path:polygon(6% 0,100% 0,100% 100%,0 100%);
}
.player-grid{
  display:grid;
  grid-template-columns:repeat(4,1fr);
  gap:14px;
}
.player-card{
  position:relative;
  min-height:410px;
  background:#eef2f8;
  border-radius:20px;
  overflow:hidden;
}
.player-card:after{
  content:"";
  position:absolute;
  inset:0;
  background:linear-gradient(to top,rgba(0,31,91,.92) 0%,rgba(0,31,91,.18) 52%,rgba(0,31,91,0) 70%);
}
.player-card img{
  position:absolute;
  inset:0;
  width:100%;
  height:100%;
  object-fit:cover;
  object-position:center top;
}
.player-number{
  position:absolute;
  z-index:2;
  right:16px;
  top:10px;
  font-size:72px;
  font-weight:1000;
  line-height:1;
  color:transparent;
  -webkit-text-stroke:2px rgba(237,28,36,.85);
  letter-spacing:-.08em;
}
.player-info{
  position:absolute;
  z-index:3;
  left:20px;
  bottom:18px;
}
.player-info span{
  display:block;
  color:#b9c9e9;
  font-size:10px;
  text-transform:uppercase;
  letter-spacing:.1em;
  font-weight:900;
}
.player-info strong{
  display:block;
  color:#fff;
  font-size:30px;
  line-height:1;
  margin-top:5px;
}
.player-cta{
  margin-top:22px;
  display:flex;
  justify-content:flex-end;
}

/* Partner hierarchy */
.partner-feature{
  display:grid;
  grid-template-columns:1.25fr .75fr;
  border-radius:22px;
  overflow:hidden;
  background:#fff;
  border:1px solid #e1e6ef;
  box-shadow:0 18px 50px rgba(0,31,91,.07);
  position:relative;
}
.partner-feature:before{
  content:"";
  position:absolute;
  left:0;
  top:0;
  width:120px;
  height:7px;
  background:var(--red);
  clip-path:polygon(0 0,100% 0,88% 100%,0 100%);
}
.partner-feature-copy{
  padding:40px;
}
.partner-feature-copy h3{
  font-size:42px;
  color:var(--navy);
  margin:8px 0 12px;
}
.partner-feature-copy p{
  color:#68758a;
  max-width:620px;
}
.partner-feature-logo{
  display:grid;
  place-items:center;
  min-height:260px;
  background:#f6f8fb;
  border-left:1px solid #e7ebf2;
}
.partner-feature-logo img{
  width:min(280px,68%);
  max-height:80px;
  object-fit:contain;
}
.partner-label{
  margin-top:30px;
  font-size:10px;
  text-transform:uppercase;
  letter-spacing:.12em;
  font-weight:950;
  color:#818b9e;
}
.sponsor-tier{
  grid-template-columns:repeat(4,1fr) !important;
}
.sponsor-tier .sponsor{
  border-radius:14px !important;
  background:#fff !important;
  height:112px !important;
}
.sponsor-tier .sponsor img{
  width:128px !important;
  height:40px !important;
  object-fit:contain !important;
  filter:grayscale(100%) contrast(.92) !important;
  opacity:.72 !important;
}

/* Tiny FCBD cuts on selected existing modules without changing the whole language */
.story.big,
.teamcard,
.clubtile.has-photo{
  position:relative;
}
.story.big:before,
.teamcard:before,
.clubtile.has-photo:after{
  content:"";
  position:absolute;
  z-index:4;
  top:0;
  right:0;
  width:54px;
  height:6px;
  background:var(--red);
  clip-path:polygon(15% 0,100% 0,100% 100%,0 100%);
  pointer-events:none;
}

/* Mobile */
@media(max-width:980px){
  .mc-grid{
    grid-template-columns:1fr 1fr;
  }
  .mc-table{
    grid-column:1/3;
  }
  .signature-grid{
    grid-template-columns:repeat(3,1fr);
  }
  .signature-grid>div{
    border-bottom:1px solid rgba(255,255,255,.12);
  }
  .player-grid{
    grid-template-columns:repeat(2,1fr);
  }
  .partner-feature{
    grid-template-columns:1fr;
  }
  .partner-feature-logo{
    border-left:0;
    border-top:1px solid #e7ebf2;
    min-height:180px;
  }
}
@media(max-width:640px){
  .match-center{
    padding:54px 0 60px;
  }
  .mc-head{
    display:block;
  }
  .mc-link{
    display:inline-block;
    margin-top:12px;
  }
  .mc-grid{
    grid-template-columns:1fr;
  }
  .mc-table{
    grid-column:auto;
  }
  .mc-teams{
    gap:10px;
  }
  .mc-team img,
  .mc-opponent{
    width:58px;
    height:58px;
  }
  .mc-result span{
    font-size:34px;
  }
  .signature-grid{
    grid-template-columns:1fr 1fr;
  }
  .signature-grid>div{
    padding:22px 16px;
  }
  .player-grid{
    grid-template-columns:1fr 1fr;
    gap:8px;
  }
  .player-card{
    min-height:300px;
    border-radius:14px;
  }
  .player-number{
    font-size:52px;
  }
  .player-info{
    left:14px;
    bottom:13px;
  }
  .player-info strong{
    font-size:22px;
  }
  .partner-feature-copy{
    padding:28px;
  }
  .sponsor-tier{
    grid-template-columns:repeat(2,1fr) !important;
  }
}


/* ===== V1.8.14 / Glaubwürdiges Club-Portal ===== */

/* Hero action photo gets slight movement on desktop, no fake video */
.hero{
  background-position:center 52% !important;
  background-size:106% auto !important;
  transition:background-position .2s linear;
}
@media(min-width:901px){
  .hero{
    animation:fcbdHeroDrift 14s ease-in-out infinite alternate;
  }
}
@keyframes fcbdHeroDrift{
  from{background-position:center 49%}
  to{background-position:center 55%}
}

/* Match center tighter and more balanced */
.mc-grid-v2{
  grid-template-columns:1fr 1fr .72fr;
}
.mc-balanced{
  display:flex;
  flex-direction:column;
  min-height:330px;
}
.mc-main{
  padding:24px 0 16px;
}
.mc-clubline{
  display:flex;
  align-items:center;
  gap:18px;
}
.mc-clubline img{
  width:82px;
  height:82px;
  object-fit:contain;
}
.mc-clubline span{
  display:block;
  color:#6f7b8f;
  font-size:12px;
  font-weight:900;
}
.mc-clubline strong{
  display:block;
  margin-top:3px;
  color:var(--navy);
  font-size:38px;
  line-height:1;
  letter-spacing:-.06em;
}
.mc-next-time{
  font-size:26px !important;
  color:var(--red) !important;
  letter-spacing:-.03em !important;
}
.mc-opponentline{
  margin-top:18px;
  padding:13px 14px;
  background:#f4f6fa;
  border-left:3px solid var(--red);
  color:#7c8799;
  font-size:11px;
  font-weight:800;
}
.mc-facts{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:8px;
  margin-top:auto;
}
.mc-facts div,
.mc-league-facts div{
  padding:12px 14px;
  background:#f5f7fb;
  border-radius:10px;
}
.mc-facts span,
.mc-league-facts span{
  display:block;
  font-size:9px;
  text-transform:uppercase;
  letter-spacing:.09em;
  color:#8b95a6;
  font-weight:900;
}
.mc-facts strong,
.mc-league-facts strong{
  display:block;
  margin-top:4px;
  color:var(--navy);
  font-size:12px;
}
.mc-compact-table{
  min-height:330px;
  display:flex;
  flex-direction:column;
}
.mc-compact-table .mc-position{
  text-align:left;
  padding:28px 0 18px;
}
.mc-compact-table .mc-position strong{
  font-size:34px;
  letter-spacing:-.05em;
  line-height:1;
  margin:8px 0 10px;
}
.mc-league-facts{
  display:grid;
  gap:8px;
  margin-top:auto;
}

/* Better real-number rhythm */
.signature-grid-v2{
  grid-template-columns:repeat(4,1fr);
}
.signature-grid-v2 strong{
  font-size:36px;
}
.signature-grid-v2 span{
  font-size:10px;
}

/* Team cards: less matte */
.teamcard img{
  filter:none !important;
  opacity:1 !important;
}
.teamcard:after{
  background:linear-gradient(
    to top,
    rgba(0,20,61,.90) 0%,
    rgba(0,20,61,.58) 24%,
    rgba(0,20,61,.18) 47%,
    rgba(0,20,61,.02) 68%,
    rgba(0,20,61,0) 80%
  ) !important;
}

/* Mitmachen: no longer text on busy photo. Image becomes upper layer, copy becomes calm navy panel. */
.clubgrid{
  align-items:stretch;
}
.clubtile.has-photo{
  min-height:390px !important;
  background:var(--navy);
  display:grid;
  grid-template-rows:58% 42%;
  overflow:hidden;
}
.clubtile.has-photo>img{
  position:relative !important;
  inset:auto !important;
  width:100%;
  height:100%;
  object-fit:cover;
  opacity:1 !important;
  grid-row:1;
}
.clubtile.has-photo:before{
  display:none !important;
}
.clubtile.has-photo .tile-copy{
  position:relative !important;
  inset:auto !important;
  grid-row:2;
  padding:22px 24px !important;
  background:var(--navy);
  text-shadow:none !important;
  display:flex;
  flex-direction:column;
  justify-content:center;
}
.clubtile.has-photo h3,
.clubtile.has-photo p{
  color:#fff;
}
.clubtile.has-photo p{
  color:#c6d1e6 !important;
}
.clubtile.has-photo .arrow{
  position:absolute;
  right:18px;
  bottom:18px;
}

/* Media / social / newsletter */
.club-media{
  background:#fff;
}
.media-grid{
  display:grid;
  grid-template-columns:1.15fr 1fr .85fr;
  gap:14px;
}
.social-panel,
.video-panel,
.newsletter-panel{
  min-height:390px;
  border-radius:20px;
  overflow:hidden;
  border:1px solid #e2e7ef;
  position:relative;
}
.social-panel{
  padding:24px;
  background:#f6f8fb;
}
.media-label{
  color:var(--red);
  font-size:10px;
  text-transform:uppercase;
  letter-spacing:.12em;
  font-weight:950;
}
.social-photo-grid{
  display:grid;
  grid-template-columns:1.1fr .9fr;
  grid-template-rows:1fr 1fr;
  gap:6px;
  height:250px;
  margin-top:18px;
}
.social-photo-grid img{
  width:100%;
  height:100%;
  object-fit:cover;
  border-radius:10px;
}
.social-photo-grid img:first-child{
  grid-row:1/3;
}
.media-copy{
  margin-top:18px;
}
.media-copy strong{
  display:block;
  color:var(--navy);
  font-size:22px;
}
.media-copy span{
  display:block;
  margin-top:5px;
  color:#7a8597;
  font-size:12px;
}
.video-panel img{
  position:absolute;
  inset:0;
  width:100%;
  height:100%;
  object-fit:cover;
}
.video-overlay{
  position:absolute;
  inset:0;
  background:linear-gradient(to top,rgba(0,20,61,.88),rgba(0,20,61,.08) 64%);
}
.play-button{
  position:absolute;
  left:50%;
  top:48%;
  transform:translate(-50%,-50%);
  width:66px;
  height:66px;
  border-radius:50%;
  border:0;
  background:var(--red);
  color:#fff;
  font-size:20px;
  cursor:pointer;
}
.video-copy{
  position:absolute;
  left:24px;
  bottom:22px;
  z-index:2;
  color:#fff;
}
.video-copy span{
  display:block;
  font-size:10px;
  text-transform:uppercase;
  letter-spacing:.12em;
  color:#c9d5eb;
  font-weight:900;
}
.video-copy strong{
  display:block;
  font-size:28px;
  margin-top:6px;
}
.newsletter-panel{
  background:var(--navy);
  color:#fff;
  padding:30px;
  display:flex;
  flex-direction:column;
  justify-content:center;
}
.newsletter-panel .media-label{
  color:#ff6067;
}
.newsletter-panel h3{
  font-size:34px;
  line-height:1.02;
  margin:10px 0 12px;
}
.newsletter-panel p{
  color:#c3cfe5;
  font-size:13px;
}
.newsletter-form{
  display:grid;
  gap:8px;
  margin-top:22px;
}
.newsletter-form input,
.newsletter-form button{
  min-height:48px;
  border-radius:10px;
  border:0;
  padding:0 14px;
  font:inherit;
}
.newsletter-form input{
  background:#fff;
  color:#1b2638;
}
.newsletter-form button{
  background:var(--red);
  color:#fff;
  font-weight:900;
  cursor:pointer;
}
.newsletter-panel small{
  margin-top:10px;
  color:#8fa0c2;
  font-size:9px;
}

/* Kader cards remain defined in CSS for future team pages, but no longer on homepage */

/* Mobile */
@media(max-width:980px){
  .mc-grid-v2{
    grid-template-columns:1fr 1fr;
  }
  .mc-compact-table{
    grid-column:1/3;
  }
  .media-grid{
    grid-template-columns:1fr 1fr;
  }
  .newsletter-panel{
    grid-column:1/3;
    min-height:300px;
  }
}
@media(max-width:640px){
  .hero{
    background-size:cover !important;
    animation:none !important;
  }
  .mc-grid-v2{
    grid-template-columns:1fr;
  }
  .mc-compact-table{
    grid-column:auto;
  }
  .mc-balanced,
  .mc-compact-table{
    min-height:auto;
  }
  .signature-grid-v2{
    grid-template-columns:1fr 1fr;
  }
  .media-grid{
    grid-template-columns:1fr;
  }
  .newsletter-panel{
    grid-column:auto;
  }
}


/* ===== V1.8.14 / Mehr echte FCBD-Bilder ===== */

/* Match center gets a visual top strip, but keeps data readable */
.mc-balanced{
  padding-top:0 !important;
}
.mc-photo{
  height:108px;
  margin:-26px -26px 20px;
  position:relative;
  overflow:hidden;
}
.mc-photo:after{
  content:"";
  position:absolute;
  inset:0;
  background:linear-gradient(to top,rgba(0,31,91,.62),rgba(0,31,91,.05));
}
.mc-photo img{
  width:100%;
  height:100%;
  object-fit:cover;
  display:block;
}
.mc-last .mc-photo img{
  object-position:center 54%;
}
.mc-next .mc-photo img{
  object-position:center 44%;
}

/* Image rhythm breaker */
.fcbd-moments{
  background:#071b47;
  padding:10px;
}
.moments-grid{
  display:grid;
  grid-template-columns:1.35fr .825fr .825fr;
  gap:10px;
  max-width:1500px;
  margin:0 auto;
}
.moments-grid figure{
  margin:0;
  position:relative;
  min-height:330px;
  overflow:hidden;
  border-radius:18px;
}
.moments-grid .moment-large{
  min-height:460px;
}
.moments-grid figure img{
  position:absolute;
  inset:0;
  width:100%;
  height:100%;
  object-fit:cover;
  transition:transform .35s ease;
}
.moments-grid figure:hover img{
  transform:scale(1.025);
}
.moments-grid figure:after{
  content:"";
  position:absolute;
  inset:0;
  background:linear-gradient(to top,rgba(0,20,61,.92),rgba(0,20,61,.06) 62%);
}
.moments-grid figcaption{
  position:absolute;
  z-index:2;
  left:24px;
  right:24px;
  bottom:22px;
  color:#fff;
}
.moments-grid figcaption span{
  display:block;
  color:#ff6a71;
  text-transform:uppercase;
  letter-spacing:.12em;
  font-size:10px;
  font-weight:950;
}
.moments-grid figcaption strong{
  display:block;
  margin-top:6px;
  font-size:24px;
  line-height:1.06;
}
.moment-large figcaption strong{
  font-size:34px;
}

/* Partner feature gets a real club photo as visual anchor */
.partner-feature{
  grid-template-columns:.65fr 1fr .65fr !important;
}
.partner-feature-photo{
  min-height:260px;
  overflow:hidden;
}
.partner-feature-photo img{
  width:100%;
  height:100%;
  object-fit:cover;
  display:block;
}
.partner-feature-copy{
  align-self:center;
}
.partner-feature-logo{
  min-height:260px;
}

/* Keep image areas vivid */
.story img,
.teamcard img,
.clubtile.has-photo>img,
.social-photo-grid img,
.video-panel img{
  filter:none !important;
  opacity:1 !important;
}

/* slightly warmer visual treatment */
.story:after{
  background:linear-gradient(to top,rgba(2,10,27,.93) 0%,rgba(2,10,27,.62) 30%,rgba(2,10,27,.12) 68%,transparent 100%) !important;
}

@media(max-width:980px){
  .moments-grid{
    grid-template-columns:1fr 1fr;
  }
  .moments-grid .moment-large{
    grid-column:1/3;
  }
  .partner-feature{
    grid-template-columns:1fr 1fr !important;
  }
  .partner-feature-photo{
    min-height:220px;
  }
  .partner-feature-copy{
    padding:32px;
  }
  .partner-feature-logo{
    grid-column:1/3;
    min-height:150px;
  }
}
@media(max-width:640px){
  .mc-photo{
    height:92px;
  }
  .moments-grid{
    grid-template-columns:1fr;
  }
  .moments-grid .moment-large{
    grid-column:auto;
    min-height:360px;
  }
  .moments-grid figure{
    min-height:280px;
  }
  .partner-feature{
    grid-template-columns:1fr !important;
  }
  .partner-feature-logo{
    grid-column:auto;
  }
}


/* ===== V1.8.14 / Kuratierte Bilder direkt aus der FCBD-Mediathek ===== */
.hero{
  background-position:center 46% !important;
}
.mc-last .mc-photo img{
  object-position:center 40% !important;
}
.mc-next .mc-photo img{
  object-position:center 44% !important;
}
.today-photo img{
  object-position:center 48% !important;
}
.clubtile.has-photo>img{
  object-position:center 42% !important;
}
.social-photo-grid img{
  object-position:center !important;
}
.partner-feature-photo img{
  object-position:center 46% !important;
}

/* Keep older phone/event photos visually coherent without making them muddy. */
.fcbd-moments img,
.social-photo-grid img{
  filter:saturate(.96) contrast(1.02) !important;
}

/* Stronger photo presence, still readable */
.fcbd-moments .moment-large img{
  object-position:center 48%;
}

@media(max-width:900px){
  .hero{
    background-position:58% center !important;
  }
}


/* ===== V1.8.14 / Hero-Hintergrund ===== */
.hero{
  background:
    linear-gradient(90deg,
      rgba(0,31,91,.92) 0%,
      rgba(0,31,91,.84) 22%,
      rgba(0,31,91,.66) 42%,
      rgba(0,31,91,.34) 64%,
      rgba(0,31,91,.10) 100%),
    linear-gradient(to bottom,
      rgba(0,31,91,.24) 0%,
      rgba(0,31,91,.08) 30%,
      rgba(0,31,91,.16) 100%),
    url('https://www.fcbadduerrheim.de/wp-content/uploads/2024/03/DSC08948-scaled.jpg') center 46%/cover no-repeat !important;
}
@media(max-width:900px){
  .hero{
    background:
      linear-gradient(to top,
        rgba(0,31,91,.95) 0%,
        rgba(0,31,91,.68) 48%,
        rgba(0,31,91,.24) 100%),
      url('https://www.fcbadduerrheim.de/wp-content/uploads/2024/03/DSC08948-scaled.jpg') 58% center/cover no-repeat !important;
  }
}


/* ===== V1.8.14 / echte Gegner + Screenshot-Teamblock ===== */

/* Current claim intentionally preserved: FUSSBALL. FREUNDE. FCBD. */

/* Match center now has two substantial real-game cards */
.mc-grid-real{
  grid-template-columns:1fr 1fr !important;
  gap:16px;
}
.real-match{
  display:grid;
  grid-template-columns:1fr auto 1fr;
  align-items:center;
  gap:18px;
  padding:22px 0;
}
.real-club{
  display:grid;
  justify-items:center;
  text-align:center;
  gap:10px;
}
.real-club img{
  width:84px;
  height:84px;
  object-fit:contain;
}
.real-club span{
  color:var(--navy);
  font-weight:950;
  font-size:13px;
  line-height:1.15;
}
.real-score{
  display:flex;
  align-items:center;
  gap:8px;
  color:var(--navy);
}
.real-score strong{
  font-size:46px;
  line-height:1;
  letter-spacing:-.08em;
}
.real-score em{
  font-style:normal;
  color:#9aa5b8;
  font-weight:950;
}
.real-score.next{
  display:grid;
  justify-items:center;
  gap:5px;
}
.real-score.next small{
  color:#7d899b;
  font-size:12px;
  font-weight:900;
}
.real-score.next strong{
  font-size:24px;
  color:var(--red);
  letter-spacing:.02em;
}

/* Full-width standings module */
.league-table-card{
  margin-top:16px;
  background:#fff;
  border:1px solid #e1e6ef;
  border-radius:20px;
  padding:26px;
  box-shadow:0 18px 46px rgba(0,31,91,.06);
}
.league-table-head{
  display:flex;
  align-items:end;
  justify-content:space-between;
  gap:24px;
  margin-bottom:18px;
}
.league-table-head h3{
  margin-top:5px;
  font-size:30px;
  color:var(--navy);
}
.league-table-head>span{
  font-size:11px;
  color:#8a95a6;
}
.league-table{
  border-top:1px solid #e4e9f1;
}
.lt-row{
  display:grid;
  grid-template-columns:54px minmax(280px,1fr) 64px 90px 64px;
  align-items:center;
  min-height:60px;
  border-bottom:1px solid #edf0f5;
  gap:8px;
  color:#536176;
}
.lt-row>b{
  text-align:center;
  color:var(--navy);
}
.lt-header{
  min-height:42px;
  text-transform:uppercase;
  letter-spacing:.08em;
  font-size:9px;
  color:#8994a6;
  font-weight:900;
}
.lt-team{
  display:flex;
  align-items:center;
  gap:13px;
  color:var(--ink);
  font-weight:800;
}
.lt-team img{
  width:34px;
  height:34px;
  object-fit:contain;
  flex:0 0 34px;
}
.lt-gap{
  min-height:38px;
  color:#9ba5b4;
  font-size:11px;
}
.lt-gap b{
  color:#9ba5b4;
}
.lt-row.is-fcbd{
  background:rgba(237,28,36,.055);
  margin:0 -12px;
  padding:0 12px;
  border-left:4px solid var(--red);
}
.lt-row.is-fcbd .lt-team,
.lt-row.is-fcbd>b{
  color:var(--navy);
  font-weight:950;
}
.league-table-foot{
  margin-top:14px;
  font-size:10px;
  color:#929cad;
}

/* Restore the teams section to the preferred earlier look */
#teams{
  background:#f4f6fa !important;
}
#teams .teamgrid{
  gap:20px !important;
}
#teams .teamcard{
  min-height:470px !important;
  border-radius:20px !important;
  overflow:hidden;
  box-shadow:0 16px 34px rgba(0,31,91,.08) !important;
}
#teams .teamcard img{
  opacity:1 !important;
  filter:none !important;
  object-position:center !important;
}
#teams .teamcard:after{
  background:linear-gradient(
    to top,
    rgba(0,20,61,.96) 0%,
    rgba(0,20,61,.80) 22%,
    rgba(0,20,61,.40) 43%,
    rgba(0,20,61,.08) 66%,
    rgba(0,20,61,0) 78%
  ) !important;
}
#teams .teamcontent{
  padding:28px !important;
}
#teams .teamcontent h3{
  font-size:38px !important;
  line-height:1 !important;
  margin:7px 0 8px !important;
}
#teams .teamcontent p{
  color:#d9e1ef !important;
  margin-bottom:16px !important;
}
#teams .teamcontent .btn{
  background:transparent !important;
  border:0 !important;
  padding:0 !important;
  min-height:auto !important;
  color:#fff !important;
  text-transform:none !important;
  letter-spacing:0 !important;
  font-size:13px !important;
}
#teams .teamcard:before{
  width:54px !important;
  height:6px !important;
  background:var(--red) !important;
}

/* Keep Herren/Frauen/Jugend image crops consistent */
#teams .teamcard:nth-child(1) img{object-position:center 44% !important}
#teams .teamcard:nth-child(2) img{object-position:center 42% !important}
#teams .teamcard:nth-child(3) img{object-position:center 45% !important}

@media(max-width:760px){
  .mc-grid-real{
    grid-template-columns:1fr !important;
  }
  .real-club img{
    width:64px;
    height:64px;
  }
  .real-score strong{
    font-size:36px;
  }
  .league-table-card{
    overflow-x:auto;
  }
  .league-table{
    min-width:650px;
  }
  .league-table-head{
    display:block;
  }
  .league-table-head>span{
    display:block;
    margin-top:7px;
  }
}


/* ===== V1.8.14 / Kompaktes Match Center wie V1.7 ===== */
.compact-matchcenter{
  padding:54px 0 62px !important;
  background:#f5f7fb;
}
.compact-mc-head{
  margin-bottom:22px !important;
}
.compact-mc-head h2{
  font-size:clamp(34px,3.5vw,50px);
  margin-bottom:0;
}
.compact-mc-grid{
  display:grid;
  grid-template-columns:1fr 1fr .62fr;
  gap:12px;
}
.compact-mc-card{
  background:#fff;
  border:1px solid #e1e6ef;
  border-radius:18px;
  padding:22px;
  min-height:220px;
  box-shadow:0 12px 30px rgba(0,31,91,.055);
  position:relative;
  overflow:hidden;
}
.compact-mc-card:before{
  content:"";
  position:absolute;
  right:0;
  top:0;
  width:58px;
  height:6px;
  background:var(--red);
  clip-path:polygon(16% 0,100% 0,100% 100%,0 100%);
}
.compact-mc-kicker{
  text-transform:uppercase;
  letter-spacing:.12em;
  font-size:9px;
  font-weight:950;
  color:#7d899b;
}
.compact-date{
  margin-top:7px;
  color:var(--navy);
  font-weight:950;
  font-size:14px;
}
.compact-versus{
  display:grid;
  grid-template-columns:1fr auto 1fr;
  align-items:center;
  gap:12px;
  margin:20px 0 14px;
}
.compact-club{
  display:grid;
  justify-items:center;
  text-align:center;
  gap:8px;
}
.compact-club img{
  width:58px;
  height:58px;
  object-fit:contain;
}
.compact-club strong{
  font-size:12px;
  line-height:1.15;
  color:var(--ink);
}
.compact-vs{
  font-size:11px;
  font-weight:1000;
  color:var(--red);
  letter-spacing:.08em;
}
.compact-meta{
  text-align:center;
  color:#748096;
  font-size:10px;
  border-top:1px solid #edf0f5;
  padding-top:12px;
}
.compact-table-card{
  display:flex;
  flex-direction:column;
  justify-content:center;
}
.compact-position{
  text-align:center;
  margin:16px 0 14px;
}
.compact-position strong{
  display:block;
  font-size:58px;
  line-height:.9;
  color:var(--navy);
  letter-spacing:-.08em;
}
.compact-position span{
  display:block;
  margin-top:7px;
  font-size:9px;
  text-transform:uppercase;
  letter-spacing:.1em;
  color:#7f8a9c;
  font-weight:900;
}
.compact-stats{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:6px;
}
.compact-stats div{
  background:#f4f6fa;
  border-radius:9px;
  padding:9px;
  text-align:center;
}
.compact-stats strong{
  display:block;
  color:var(--navy);
  font-size:17px;
}
.compact-stats span{
  display:block;
  margin-top:2px;
  color:#8b95a6;
  font-size:8px;
  text-transform:uppercase;
  letter-spacing:.08em;
  font-weight:900;
}
.compact-league{
  margin-top:10px;
  text-align:center;
  font-size:9px;
  color:#7f899b;
  font-weight:800;
}
@media(max-width:900px){
  .compact-mc-grid{grid-template-columns:1fr 1fr}
  .compact-table-card{grid-column:1/3;min-height:170px}
}
@media(max-width:640px){
  .compact-matchcenter{padding:42px 0 48px !important}
  .compact-mc-grid{grid-template-columns:1fr}
  .compact-table-card{grid-column:auto}
  .compact-mc-card{min-height:auto}
}

/* Hide legacy large match-center pieces if any old styles survive */
.mc-grid-real,.league-table-card{display:none !important;}


/* ===== V1.8.14 / Matchcenter kompakter ===== */
.compact-mc-card{
  min-height:188px !important;
  padding:20px !important;
}
.compact-versus{
  margin:16px 0 11px !important;
}
.compact-club img{
  width:52px !important;
  height:52px !important;
}
.compact-meta{
  padding-top:10px !important;
}
.compact-table-card{
  justify-content:center !important;
}
.simple-position-card .compact-position{
  margin:18px 0 10px !important;
}
.simple-position-card .compact-position strong{
  font-size:60px !important;
}
.simple-position-card .compact-league{
  margin-top:6px !important;
}
@media(max-width:640px){
  .compact-mc-card{
    min-height:auto !important;
  }
}


/* ===== V1.8.14 / Vier Karten im Matchcenter ===== */
.compact-mc-grid-four{
  grid-template-columns:1fr 1fr 1fr .78fr !important;
  gap:12px !important;
}
.compact-mc-grid-four .compact-mc-card{
  min-height:196px !important;
}
.score-versus{
  grid-template-columns:1fr auto 1fr !important;
}
.compact-score{
  font-size:42px;
  line-height:1;
  font-weight:1000;
  color:var(--navy);
  letter-spacing:-.08em;
}
.compact-score small{
  display:block;
  text-align:center;
  font-size:9px;
  color:#8a94a6;
}
@media(max-width:1180px){
  .compact-mc-grid-four{
    grid-template-columns:1fr 1fr !important;
  }
  .compact-mc-grid-four .simple-position-card{
    grid-column:2;
  }
}
@media(max-width:640px){
  .compact-mc-grid-four{
    grid-template-columns:1fr !important;
  }
  .compact-mc-grid-four .simple-position-card{
    grid-column:auto;
  }
}


/* ===== V1.8.14 / 3er Matchcenter + Spieltyp ===== */
.compact-mc-grid-three{
  grid-template-columns:1fr 1fr .78fr !important;
  gap:12px !important;
}
.compact-mc-grid-three .compact-mc-card{
  min-height:210px !important;
}
.compact-matchtype{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  margin-top:10px;
  padding:5px 9px;
  border-radius:999px;
  background:#f4f6fa;
  color:var(--navy);
  font-size:9px;
  font-weight:950;
  text-transform:uppercase;
  letter-spacing:.08em;
}
.simple-position-card{
  justify-content:center !important;
}
@media(max-width:980px){
  .compact-mc-grid-three{
    grid-template-columns:1fr 1fr !important;
  }
  .compact-mc-grid-three .simple-position-card{
    grid-column:1 / 3;
  }
}
@media(max-width:640px){
  .compact-mc-grid-three{
    grid-template-columns:1fr !important;
  }
  .compact-mc-grid-three .simple-position-card{
    grid-column:auto;
  }
}


/* ===== V1.8.14 / Feinschliff aus Review ===== */

/* Hero: stronger left gradient while keeping the chosen FCBD image */
.hero{
  background:
    linear-gradient(90deg,
      rgba(0,31,91,.96) 0%,
      rgba(0,31,91,.91) 24%,
      rgba(0,31,91,.72) 43%,
      rgba(0,31,91,.36) 66%,
      rgba(0,31,91,.08) 100%),
    linear-gradient(to bottom,
      rgba(0,31,91,.18) 0%,
      rgba(0,31,91,.04) 36%,
      rgba(0,31,91,.14) 100%),
    url('https://www.fcbadduerrheim.de/wp-content/uploads/2024/03/DSC08948-scaled.jpg') center 46%/cover no-repeat !important;
}
.hero-tag{
  max-width:100%;
  flex-wrap:wrap;
}
.hero-tag-sep{opacity:.5}
.hero-textlink{
  display:inline-flex;
  align-items:center;
  color:#fff;
  font-weight:900;
  font-size:13px;
  padding:14px 4px;
  border-bottom:2px solid rgba(255,255,255,.72);
}

/* Match center: stronger result, clearer fallback crest, slightly more breathing room */
.compact-mc-card{
  padding:23px !important;
}
.compact-score{
  font-size:48px !important;
  color:var(--red) !important;
}
.club-fallback-logo{
  width:52px;
  height:52px;
  border-radius:50%;
  display:grid;
  place-items:center;
  background:#eef1f6;
  border:2px solid #d2d9e4;
  color:var(--navy);
  font-size:12px;
  font-weight:1000;
  letter-spacing:.03em;
}
.match-countdown{
  display:inline-flex;
  margin-left:8px;
  padding:4px 7px;
  border-radius:999px;
  background:#fff0f1;
  color:var(--red);
  font-size:9px;
  text-transform:uppercase;
  letter-spacing:.07em;
  font-weight:950;
}

/* Stats strip: keep only verified data, but make it read stronger */
.signature-grid-v2 strong{
  font-size:40px !important;
}
.signature-grid-v2 span{
  font-size:11px !important;
  color:#c2d0eb !important;
}

/* Photo strip: same tone treatment */
.moments-grid figure img{
  filter:saturate(.90) contrast(1.04) brightness(.92) !important;
}
.moments-grid figure:before{
  content:"";
  position:absolute;
  inset:0;
  z-index:1;
  background:rgba(0,31,91,.10);
  pointer-events:none;
}

/* News: category pills + date/context */
.story-meta-row{
  display:flex;
  align-items:center;
  gap:9px;
  flex-wrap:wrap;
  margin-bottom:10px;
}
.story-tag{
  display:inline-flex;
  align-items:center;
  min-height:25px;
  padding:0 9px;
  border-radius:999px;
  background:var(--red);
  color:#fff;
  font-size:9px;
  text-transform:uppercase;
  letter-spacing:.09em;
  font-weight:950;
}
.story-meta-row time{
  color:#e3eaff;
  font-size:10px;
  font-weight:850;
}

/* Training toolbar */
.activity-toolbar{
  display:flex;
  align-items:flex-start;
  justify-content:space-between;
  gap:16px;
  margin-bottom:14px;
}
.calendar-link{
  flex:0 0 auto;
  color:var(--navy);
  font-size:11px;
  font-weight:900;
  border-bottom:2px solid var(--red);
  padding:8px 0 5px;
}

/* Mitmachen: text panel already separated, make it even calmer */
.clubtile.has-photo .tile-copy{
  background:#001F5B !important;
}
.clubtile.has-photo p{
  color:#d1dbed !important;
}

/* Partner hierarchy */
.partner-actions{
  display:flex;
  align-items:center;
  gap:16px;
  flex-wrap:wrap;
  margin-top:22px;
}
.partner-cta-link{
  color:var(--red);
  font-size:12px;
  font-weight:950;
  border-bottom:2px solid var(--red);
  padding-bottom:4px;
}
.sponsor-tier .sponsor{
  background:#fff !important;
  display:grid !important;
  place-items:center !important;
}
.sponsor-tier .sponsor img{
  width:130px !important;
  height:42px !important;
  max-width:130px !important;
  max-height:42px !important;
  filter:grayscale(100%) contrast(.95) !important;
  opacity:.76 !important;
}
.sponsor-tier .sponsor:hover img{
  filter:none !important;
  opacity:1 !important;
}

/* Footer contact block */
.footer-contact{
  margin-top:16px;
  display:grid;
  gap:5px;
  color:#b6c6e5;
  font-size:12px;
}

@media(max-width:760px){
  .activity-toolbar{
    display:block;
  }
  .calendar-link{
    display:inline-block;
    margin-bottom:14px;
  }
}


/* ===== V1.8.14 / Heimspiel hervorheben + Formkurve ===== */

/* little utility row above each match */
.compact-topline{
  display:flex;
  align-items:center;
  gap:8px;
  margin-top:10px;
  flex-wrap:wrap;
}
.compact-matchtype{
  margin-top:0 !important;
}

.venue-badge{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-height:24px;
  padding:0 9px;
  border-radius:999px;
  font-size:9px;
  font-weight:950;
  text-transform:uppercase;
  letter-spacing:.08em;
}
.venue-badge.home{
  background:#fff1f2;
  color:#ED1C24;
  border:1px solid rgba(237,28,36,.18);
  box-shadow:0 0 0 1px rgba(237,28,36,.03) inset;
}
.venue-badge.away{
  background:#eef4ff;
  color:#001F5B;
  border:1px solid rgba(0,31,91,.10);
}

/* Make home context in the last-game meta slightly stronger */
.compact-meta{
  position:relative;
}
.compact-meta::before{
  content:"";
  display:block;
  width:44px;
  height:3px;
  border-radius:999px;
  background:rgba(237,28,36,.30);
  margin:0 auto 10px;
}

/* Form widget in league card */
.form-widget{
  margin:14px 0 10px;
  text-align:center;
}
.form-label{
  margin-bottom:8px;
  color:#7f8a9c;
  font-size:9px;
  text-transform:uppercase;
  letter-spacing:.10em;
  font-weight:950;
}
.form-strip{
  display:flex;
  align-items:center;
  justify-content:center;
  gap:6px;
  flex-wrap:wrap;
}
.form-chip{
  width:28px;
  height:28px;
  border-radius:999px;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  font-size:10px;
  font-weight:1000;
  letter-spacing:.04em;
  box-shadow:0 6px 14px rgba(0,0,0,.04);
}
.form-chip.win{
  background:#e8f7ec;
  color:#11853b;
  border:1px solid rgba(17,133,59,.10);
}
.form-chip.draw{
  background:#f2f4f7;
  color:#667085;
  border:1px solid rgba(102,112,133,.10);
}
.form-chip.loss{
  background:#fff0f1;
  color:#d92d20;
  border:1px solid rgba(217,45,32,.10);
}

/* slightly better vertical rhythm in league card */
.simple-position-card .compact-position{
  margin-bottom:12px !important;
}
.simple-position-card .compact-league{
  margin-top:10px !important;
}

/* mobile */
@media(max-width:640px){
  .compact-topline{
    gap:6px;
  }
  .form-chip{
    width:26px;
    height:26px;
  }
}


/* ===== V1.8.14 / echter FCBD-Claim ===== */
.hero .lede strong{
  color:#fff;
  font-size:19px;
  font-weight:950;
}
.hero .lede span{
  display:inline-block;
  margin-top:4px;
  color:rgba(255,255,255,.80);
}
.hero h1{
  max-width:900px !important;
  font-size:clamp(66px,7.4vw,112px) !important;
}
@media(max-width:640px){
  .hero h1{
    font-size:clamp(48px,14vw,72px) !important;
  }
}


/* ===== V1.8.14 / Rot stärker, Blau zurücknehmen ===== */

/* Hero overlay slightly less blue-heavy, more neutral depth so red accents stand out */
.hero{
  background:
    linear-gradient(90deg,
      rgba(12,16,28,.90) 0%,
      rgba(10,20,48,.82) 22%,
      rgba(8,24,74,.58) 43%,
      rgba(8,24,74,.24) 66%,
      rgba(8,24,74,.06) 100%),
    linear-gradient(to bottom,
      rgba(237,28,36,.06) 0%,
      rgba(0,31,91,.02) 36%,
      rgba(237,28,36,.04) 100%),
    url('https://www.fcbadduerrheim.de/wp-content/uploads/2024/03/DSC08948-scaled.jpg') center 46%/cover no-repeat !important;
}

/* Red as leading accent in hero */
.hero-content:after{
  width:92px !important;
  height:6px !important;
  background:var(--red) !important;
}
.hero .btn.primary{
  background:var(--red) !important;
  border-color:var(--red) !important;
  box-shadow:0 10px 28px rgba(237,28,36,.20) !important;
}
.hero .btn.primary:hover{
  transform:translateY(-1px);
  box-shadow:0 14px 32px rgba(237,28,36,.26) !important;
}

/* bring back second button, but with subtle red-led treatment */
.hero-secondary{
  background:rgba(255,255,255,.06) !important;
  border:1.5px solid rgba(255,255,255,.78) !important;
  color:#fff !important;
  box-shadow:none !important;
}
.hero-secondary:hover{
  border-color:rgba(237,28,36,.70) !important;
  background:rgba(237,28,36,.10) !important;
}
.hero-textlink{ display:none !important; }

/* Eyebrows and small accents should clearly feel FCBD-red */
.eyebrow,
.hero-tag,
.compact-mc-head .eyebrow{
  color:var(--red) !important;
}
.hero-tag{
  background:rgba(255,255,255,.12) !important;
  border:1px solid rgba(255,255,255,.22) !important;
}
.hero-tag:before{
  background:var(--red) !important;
}

/* Section titles get a subtle red accent bar */
.section-head h2,
.mc-head h2,
.today-intro h2{
  position:relative;
}
.section-head h2:before,
.mc-head h2:before,
.today-intro h2:before{
  content:"";
  position:absolute;
  left:0;
  top:-16px;
  width:54px;
  height:4px;
  border-radius:999px;
  background:var(--red);
}

/* Matchcenter: a bit more red-led */
.compact-mc-card:before{
  height:7px !important;
  width:72px !important;
}
.compact-score{
  color:var(--red) !important;
}
.compact-vs{
  color:var(--red) !important;
}
.venue-badge.home{
  background:#fff1f2 !important;
  color:var(--red) !important;
}
.match-countdown{
  background:#fff1f2 !important;
  color:var(--red) !important;
}
.club-fallback-logo{
  border-color:rgba(237,28,36,.25) !important;
  color:var(--red) !important;
  background:#fff7f7 !important;
}

/* Activity/Filter buttons: active state clearly red */
.activity-tab.active{
  background:var(--red) !important;
  color:#fff !important;
  border-color:var(--red) !important;
}
.activity-tab{
  border:1px solid rgba(237,28,36,.18) !important;
}

/* Story pills */
.story-tag{
  background:var(--red) !important;
  box-shadow:0 6px 14px rgba(237,28,36,.14);
}

/* Team cards and image sections: reduce blue overlay strength a bit */
.teamcard:after{
  background:linear-gradient(
    to top,
    rgba(6,18,48,.78) 0%,
    rgba(6,18,48,.42) 24%,
    rgba(6,18,48,.12) 47%,
    rgba(6,18,48,.02) 68%,
    rgba(6,18,48,0) 80%
  ) !important;
}
.moments-grid figure:after{
  background:linear-gradient(to top,rgba(14,20,42,.82),rgba(14,20,42,.10) 62%) !important;
}
.moments-grid figure:before{
  background:rgba(237,28,36,.06) !important;
}

/* Partner CTA stronger */
.partner-cta-link{
  color:var(--red) !important;
  border-bottom-color:var(--red) !important;
}
.newsletter-form button{
  background:var(--red) !important;
}

/* Footer contact less blue-dominant */
.footer-contact{
  color:#d4d9e4 !important;
}

/* Mobile spacing so the two CTAs still sit nicely */
@media(max-width:640px){
  .hero-actions{
    gap:10px !important;
  }
  .hero-secondary{
    padding-left:18px !important;
    padding-right:18px !important;
  }
}


/* ===== V1.8.14 / Visual polish on V1.8.13 ===== */

/* 1) FCBD photo strip: same blue treatment across all three images */
.fcbd-moments .moments-grid figure:after{
  background:
    linear-gradient(to bottom, rgba(0,31,91,.20), rgba(0,31,91,.16) 45%, rgba(0,31,91,.48) 100%),
    linear-gradient(to top, rgba(0,20,61,.84), rgba(0,20,61,.03) 64%) !important;
}
.fcbd-moments .moments-grid figure img{
  filter:saturate(.92) contrast(1.02) brightness(.96) !important;
}
.fcbd-moments .moments-grid figure:hover img{
  filter:saturate(.96) contrast(1.03) brightness(.98) !important;
}

/* 2) Stats strip: labels larger, brighter, easier to scan */
.club-signature{
  background:var(--navy) !important;
  border-top:1px solid rgba(255,255,255,.08);
  border-bottom:1px solid rgba(255,255,255,.08);
}
.signature-grid-v2 > div{
  padding:30px 24px !important;
  position:relative;
}
.signature-grid-v2 > div:before{
  content:"";
  position:absolute;
  left:24px;
  top:0;
  width:34px;
  height:3px;
  background:var(--red);
  opacity:.95;
}
.signature-grid-v2 strong{
  font-size:40px !important;
  color:#fff !important;
  line-height:.95 !important;
}
.signature-grid-v2 span{
  margin-top:10px !important;
  color:#d7e2f5 !important;
  font-size:12px !important;
  line-height:1.2 !important;
  letter-spacing:.08em !important;
  opacity:1 !important;
}

/* 3) Partner logos: stronger, normalized visual weight */
.sponsor-tier{
  gap:12px !important;
}
.sponsor-tier .sponsor{
  height:118px !important;
  padding:24px 20px !important;
  background:#fff !important;
  border:1px solid #e2e7ef !important;
  border-radius:14px !important;
  box-shadow:none !important;
}
.sponsor-tier .sponsor img{
  width:74% !important;
  height:46px !important;
  max-width:150px !important;
  max-height:46px !important;
  object-fit:contain !important;
  filter:grayscale(100%) contrast(1.16) brightness(.82) !important;
  opacity:1 !important;
  mix-blend-mode:multiply;
  transform:none !important;
}
.sponsor-tier .sponsor:hover img{
  filter:grayscale(100%) contrast(1.22) brightness(.78) !important;
  opacity:1 !important;
}

/* Fine visual balancing by actual logo shape */
.sponsor-tier .sponsor img[alt="REIFF"]{
  width:64% !important;
  max-width:128px !important;
}
.sponsor-tier .sponsor img[alt="Volksbank"]{
  width:82% !important;
  max-width:158px !important;
}
.sponsor-tier .sponsor img[alt="Autowelt Schuler"]{
  width:72% !important;
  max-width:142px !important;
}
.sponsor-tier .sponsor img[alt="Energiedienst"]{
  width:76% !important;
  max-width:148px !important;
}

/* 4) Rhythm: Mitmachen no longer mirrors the 3-column Teams block */
#verein .clubgrid{
  display:grid !important;
  grid-template-columns:1.35fr .65fr !important;
  grid-template-rows:1fr 1fr !important;
  gap:14px !important;
  align-items:stretch;
}
#verein .clubtile-feature{
  grid-column:1 !important;
  grid-row:1 / 3 !important;
  min-height:520px !important;
  display:block !important;
}
#verein .clubtile-side{
  grid-column:2 !important;
  min-height:252px !important;
  display:grid !important;
  grid-template-columns:42% 58% !important;
  grid-template-rows:1fr !important;
}
#verein .clubtile-feature > img{
  height:62% !important;
  width:100% !important;
  object-fit:cover !important;
}
#verein .clubtile-feature .tile-copy{
  position:absolute !important;
  left:0;
  right:0;
  bottom:0;
  min-height:42%;
  padding:30px 32px !important;
  display:flex;
  flex-direction:column;
  justify-content:center;
}
#verein .clubtile-feature h3{
  font-size:42px !important;
}
#verein .clubtile-side > img{
  grid-column:1 !important;
  width:100% !important;
  height:100% !important;
  object-fit:cover !important;
  position:relative !important;
}
#verein .clubtile-side .tile-copy{
  grid-column:2 !important;
  position:relative !important;
  inset:auto !important;
  width:100% !important;
  height:100% !important;
  padding:24px 22px !important;
  background:#001F5B !important;
  display:flex;
  flex-direction:column;
  justify-content:center;
}
#verein .clubtile-side h3{
  font-size:27px !important;
  margin-bottom:8px !important;
}
#verein .clubtile-side p{
  font-size:13px !important;
  line-height:1.48 !important;
  margin:0 !important;
}
#verein .clubtile-side .arrow{
  right:16px !important;
  bottom:16px !important;
  width:38px !important;
  height:38px !important;
}
#verein .clubtile-side:before,
#verein .clubtile-feature:before{
  display:none !important;
}

/* Keep Teams clearly as the clean three-poster system */
#teams .teamgrid{
  gap:20px !important;
}

/* Mobile rhythm stays simple and useful */
@media(max-width:900px){
  #verein .clubgrid{
    grid-template-columns:1fr !important;
    grid-template-rows:auto !important;
  }
  #verein .clubtile-feature,
  #verein .clubtile-side{
    grid-column:auto !important;
    grid-row:auto !important;
  }
  #verein .clubtile-feature{
    min-height:430px !important;
  }
  #verein .clubtile-side{
    min-height:220px !important;
    grid-template-columns:40% 60% !important;
  }
}
@media(max-width:620px){
  .signature-grid-v2 strong{
    font-size:34px !important;
  }
  .signature-grid-v2 span{
    font-size:11px !important;
  }
  #verein .clubtile-side{
    grid-template-columns:1fr !important;
    grid-template-rows:150px auto !important;
  }
  #verein .clubtile-side > img,
  #verein .clubtile-side .tile-copy{
    grid-column:1 !important;
  }
  #verein .clubtile-side > img{
    grid-row:1 !important;
  }
  #verein .clubtile-side .tile-copy{
    grid-row:2 !important;
  }
}


/* ===== V1.8.15 FIXES ===== */

/* 1) Eyebrows: Rot nur auf hellem Grund. Auf Foto/Navy weiß bzw. helles Rot.
      (Das globale "color:var(--red) !important" hat die Inline-Farben überschrieben.) */
.teamcard .eyebrow,
.clubtile .eyebrow,
.story .eyebrow,
.section.navy .eyebrow,
.mega .eyebrow{
  color:#fff !important;
  text-shadow:0 1px 8px rgba(0,16,48,.55);
}
.section.navy > .wrap > .eyebrow,
.mega .eyebrow{
  color:#ff6b75 !important;
  text-shadow:none;
}

/* 2) Roter Akzentbalken kollidierte mit dem Eyebrow direkt darüber.
      Eyebrow bekommt Luft, der Balken sitzt mittig dazwischen. */
.section-head .eyebrow,
.mc-head .eyebrow,
.today-intro .eyebrow,
.compact-mc-head .eyebrow{
  display:block;
  margin-bottom:30px;
}
.section-head h2:before,
.mc-head h2:before,
.today-intro h2:before{
  top:-17px;
}

/* 3) Hero-Badge: Text war rot auf rot-getöntem Foto. Jetzt weiß auf dunklem Glas. */
.hero-tag{
  color:#fff !important;
  background:rgba(0,16,48,.62) !important;
  border:1px solid rgba(255,255,255,.28) !important;
  backdrop-filter:blur(6px);
  -webkit-backdrop-filter:blur(6px);
  text-shadow:none;
}

/* 4) Mitmachen: Seitenkacheln wie die Hauptkachel (Foto vollflächig + Verlauf),
      statt kleinem Bildstreifen neben Textblock. */
#verein .clubgrid{
  grid-template-columns:1.15fr .85fr !important;
}
#verein .clubtile-side{
  display:block !important;
  min-height:252px !important;
  background:var(--navy) !important;
}
#verein .clubtile-side > img{
  position:absolute !important;
  inset:0 !important;
  width:100% !important;
  height:100% !important;
  object-fit:cover !important;
}
#verein .clubtile-side:before{
  display:block !important;
  content:"";
  position:absolute;
  inset:0;
  z-index:1;
  background:linear-gradient(to top,rgba(0,16,48,.95) 8%,rgba(0,16,48,.35) 70%,rgba(0,16,48,.15) 100%) !important;
}
#verein .clubtile-side .tile-copy{
  position:absolute !important;
  inset:auto 0 0 0 !important;
  z-index:2;
  width:auto !important;
  height:auto !important;
  background:transparent !important;
  padding:24px 78px 24px 26px !important;
  display:block;
}
#verein .clubtile-side .arrow{ z-index:3; }
@media(max-width:900px){
  #verein .clubgrid{ grid-template-columns:1fr !important; }
  #verein .clubtile-side{ display:block !important; min-height:240px !important; }
}
@media(max-width:620px){
  #verein .clubtile-side{ display:block !important; grid-template-columns:none !important; grid-template-rows:none !important; }
  #verein .clubtile-side > img{ grid-row:auto !important; }
  #verein .clubtile-side .tile-copy{ grid-row:auto !important; grid-column:auto !important; }
}


/* ===== V1.8.18 / Zahlen -> klare Mannschaftsbereiche ===== */
.team-overview-visual{
  background:#f4f6f9;
  padding:72px 0 78px;
}
.team-overview-head{
  display:flex;
  align-items:flex-end;
  justify-content:space-between;
  gap:36px;
  margin-bottom:30px;
}
.team-overview-head h2{
  margin:8px 0 0;
  max-width:700px;
}
.team-overview-head p{
  max-width:470px;
  margin:0 0 5px;
  color:var(--muted);
  font-size:17px;
}
.team-overview-grid{
  display:grid;
  grid-template-columns:repeat(3,1fr);
  gap:16px;
}
.team-overview-card{
  position:relative;
  min-height:470px;
  overflow:hidden;
  border-radius:22px;
  background:var(--navy);
  color:#fff;
  box-shadow:0 18px 44px rgba(4,17,45,.10);
}
.team-overview-card:before{
  content:"";
  position:absolute;
  z-index:4;
  top:0;
  right:0;
  width:58px;
  height:6px;
  background:var(--red);
  clip-path:polygon(14% 0,100% 0,100% 100%,0 100%);
}
.team-overview-card img{
  position:absolute;
  inset:0;
  width:100%;
  height:100%;
  object-fit:cover;
  object-position:center;
  transition:transform .35s ease;
}
.team-overview-card:hover img{
  transform:scale(1.025);
}
.team-overview-shade{
  position:absolute;
  inset:0;
  z-index:1;
  background:
    linear-gradient(to top,
      rgba(0,20,61,.96) 0%,
      rgba(0,20,61,.80) 27%,
      rgba(0,31,91,.34) 53%,
      rgba(0,31,91,.08) 76%,
      rgba(0,31,91,.04) 100%);
}
.team-overview-copy{
  position:absolute;
  z-index:2;
  left:0;
  right:0;
  bottom:0;
  padding:28px;
}
.team-overview-copy span{
  display:block;
  color:#ff6b75;
  font-size:10px;
  line-height:1;
  font-weight:950;
  letter-spacing:.13em;
  text-transform:uppercase;
  margin-bottom:9px;
}
.team-overview-copy h3{
  color:#fff;
  font-size:38px;
  line-height:1;
  margin:0 0 9px;
  letter-spacing:-.045em;
}
.team-overview-copy p{
  color:#d8e3f7;
  margin:0 0 20px;
  font-size:14px;
  line-height:1.45;
  max-width:310px;
}
.team-overview-copy b{
  display:inline-block;
  color:#fff;
  font-size:13px;
  font-weight:900;
  border-bottom:2px solid var(--red);
  padding-bottom:4px;
}

@media(max-width:900px){
  .team-overview-head{
    align-items:flex-start;
    flex-direction:column;
    gap:12px;
  }
  .team-overview-grid{
    grid-template-columns:1fr;
  }
  .team-overview-card{
    min-height:390px;
  }
}
@media(max-width:620px){
  .team-overview-visual{
    padding:54px 0 58px;
  }
  .team-overview-card{
    min-height:350px;
  }
  .team-overview-copy{
    padding:23px;
  }
  .team-overview-copy h3{
    font-size:33px;
  }
}


/* ===== V1.8.19 / UX-Feinschliff ===== */

/* 1) Hero: stronger text hierarchy and a subtle local contrast field */
.hero .lede{
  display:inline-block;
  max-width:620px !important;
  margin-top:20px !important;
  margin-left:-14px;
  padding:12px 18px 13px 14px;
  font-size:20px !important;
  line-height:1.62 !important;
  color:#fff !important;
  background:linear-gradient(90deg,rgba(0,20,61,.58),rgba(0,20,61,.24) 62%,rgba(0,20,61,0));
  border-radius:10px;
  text-shadow:0 1px 8px rgba(0,0,0,.18);
}
.hero .lede strong{
  font-weight:950;
}
.hero .lede span{
  color:rgba(255,255,255,.92);
}

/* 2) Give match center and stats a clearer visual breath */
.compact-matchcenter{
  padding-bottom:90px !important;
}
.club-signature{
  position:relative;
}
.club-signature:before{
  content:"";
  position:absolute;
  left:0;
  right:0;
  top:-28px;
  height:28px;
  background:#f5f7fb;
}

/* 3) Today section: both columns terminate at roughly the same visual height */
.today{
  align-items:stretch !important;
}
.today-intro{
  height:100%;
  display:flex;
  flex-direction:column;
}
.today-intro > p{
  flex:0 0 auto;
}
.today-photo{
  flex:1 1 auto;
  min-height:390px;
  aspect-ratio:auto !important;
}
.today-photo img{
  height:100% !important;
}
.activity-list{
  display:flex;
  flex-direction:column;
  height:100%;
}
.activity-list .fixture{
  flex:1 0 auto;
  min-height:96px;
}

/* 4) Image roles: keep content photography vivid but avoid repeated posed-team feel */
.story img,
.social-photo-grid img,
.partner-feature-photo img{
  filter:none !important;
}
.partner-feature-photo img{
  object-position:center !important;
}

/* 5) One clear CTA system */
.btn.primary,
.newsletter-form button,
.partner-actions .btn.primary{
  background:var(--red) !important;
  border-color:var(--red) !important;
  color:#fff !important;
}
.btn.dark{
  background:var(--navy) !important;
  border-color:var(--navy) !important;
  color:#fff !important;
}
.partner-actions .partner-cta-link{
  color:var(--navy) !important;
  border-bottom-color:var(--red) !important;
}
.newsletter-form button:hover,
.partner-actions .btn.primary:hover{
  transform:translateY(-2px);
}

/* Preserve cleaner rhythm on smaller screens */
@media(max-width:900px){
  .compact-matchcenter{
    padding-bottom:68px !important;
  }
  .club-signature:before{
    top:-20px;
    height:20px;
  }
  .today-intro{
    height:auto;
  }
  .today-photo{
    min-height:320px;
    aspect-ratio:16/10 !important;
  }
  .activity-list .fixture{
    min-height:auto;
  }
}
@media(max-width:620px){
  .hero .lede{
    margin-left:-10px;
    padding:10px 14px 11px 10px;
    font-size:18px !important;
    line-height:1.55 !important;
  }
  .compact-matchcenter{
    padding-bottom:58px !important;
  }
  .club-signature:before{
    top:-14px;
    height:14px;
  }
  .today-photo{
    min-height:260px;
  }
}


/* ===== V1.8.20 / finaler Struktur- und Spacing-Schliff ===== */

/* Mehr Luft zwischen Match-Center und Zahlenleiste */
.compact-matchcenter{
  padding-bottom:122px !important;
}
.club-signature{
  margin-top:0 !important;
}
.club-signature:before{
  top:-32px !important;
  height:32px !important;
  background:#f5f7fb !important;
}

/* News bewusst früher und etwas dynamischer anschließen */
#news{
  padding-top:76px !important;
  padding-bottom:76px !important;
}
#teams{
  padding-top:72px !important;
}

/* Tagesplan: echte gemeinsame Höhe statt Sticky-Asymmetrie */
.today{
  align-items:stretch !important;
}
.today-intro{
  position:relative !important;
  top:auto !important;
  height:100% !important;
  display:flex !important;
  flex-direction:column !important;
}
.today-intro .today-photo{
  flex:1 1 auto !important;
  min-height:0 !important;
  height:auto !important;
  aspect-ratio:auto !important;
}
.today-intro .today-photo img{
  position:absolute !important;
  inset:0 !important;
  width:100% !important;
  height:100% !important;
  object-fit:cover !important;
}
.activity-list{
  height:100% !important;
}
.activity-list .fixture{
  min-height:0 !important;
  padding:18px 0 !important;
}
.activity-toolbar{
  margin-bottom:8px !important;
}

/* Desktop: left image gets a meaningful minimum so both columns feel balanced */
@media(min-width:901px){
  .today-intro .today-photo{
    min-height:330px !important;
  }
}

/* Mobile: natural document flow */
@media(max-width:900px){
  .compact-matchcenter{
    padding-bottom:82px !important;
  }
  .club-signature:before{
    top:-22px !important;
    height:22px !important;
  }
  .today-intro{
    height:auto !important;
  }
  .today-intro .today-photo{
    min-height:300px !important;
    aspect-ratio:16/10 !important;
  }
  .activity-list .fixture{
    padding:20px 0 !important;
  }
}
@media(max-width:620px){
  .compact-matchcenter{
    padding-bottom:68px !important;
  }
  .club-signature:before{
    top:-16px !important;
    height:16px !important;
  }
  #news,
  #teams{
    padding-top:54px !important;
    padding-bottom:54px !important;
  }
  .today-intro .today-photo{
    min-height:250px !important;
  }
}


/* ===== V1.8.21 / kompakter + zeitgesteuerter Tagesplan ===== */
.today-dynamic{
  align-items:start !important;
}
.today-dynamic .today-intro{
  position:relative !important;
  top:auto !important;
  height:auto !important;
  display:block !important;
}
.today-dynamic .today-photo{
  height:350px !important;
  min-height:350px !important;
  max-height:350px !important;
  aspect-ratio:auto !important;
  margin-top:24px !important;
}
.today-dynamic .today-photo img{
  position:relative !important;
  inset:auto !important;
  width:100% !important;
  height:100% !important;
  object-fit:cover !important;
}
.today-dynamic .activity-list{
  display:block !important;
  height:auto !important;
}
.today-dynamic .activity-list .fixture{
  min-height:0 !important;
  padding:15px 0 !important;
  display:grid !important;
  grid-template-columns:108px 1fr auto !important;
  gap:20px !important;
  align-items:center !important;
  flex:none !important;
}
.today-dynamic .fixture-time{
  font-size:28px !important;
  line-height:1 !important;
}
.today-dynamic .fixture-team{
  font-size:17px !important;
  line-height:1.25 !important;
}
.today-dynamic .fixture-meta{
  font-size:12px !important;
  margin-top:3px !important;
}
.today-dynamic .activity-toolbar{
  margin-bottom:10px !important;
}
.activity-dayline{
  display:flex;
  align-items:baseline;
  justify-content:space-between;
  gap:18px;
  padding:14px 0 10px;
  border-bottom:1px solid var(--line);
}
.activity-dayline strong{
  color:var(--navy);
  font-size:18px;
  font-weight:950;
}
.activity-dayline span{
  color:#7b8798;
  font-size:12px;
}
.activity-live{
  display:flex;
  align-items:flex-start;
  gap:12px;
  margin:18px 0 20px;
  padding:14px 16px;
  border:1px solid #dfe6ef;
  border-radius:14px;
  background:#fff;
}
.activity-live .live-dot{
  width:10px;
  height:10px;
  margin-top:5px;
  flex:0 0 10px;
  border-radius:50%;
  background:#9aa5b5;
}
.activity-live.is-live{
  border-color:rgba(31,167,74,.30);
  background:#f5fff8;
}
.activity-live.is-live .live-dot{
  background:#1fa74a;
  box-shadow:0 0 0 0 rgba(31,167,74,.50);
  animation:fcbdLivePulse 1.6s infinite;
}
.activity-live.is-next .live-dot{
  background:var(--red);
}
.activity-live strong{
  display:block;
  color:var(--navy);
  font-size:14px;
  line-height:1.25;
}
.activity-live span:not(.live-dot){
  display:block;
  color:#778399;
  font-size:12px;
  margin-top:3px;
}
@keyframes fcbdLivePulse{
  0%{box-shadow:0 0 0 0 rgba(31,167,74,.48)}
  70%{box-shadow:0 0 0 9px rgba(31,167,74,0)}
  100%{box-shadow:0 0 0 0 rgba(31,167,74,0)}
}
.fixture.is-live{
  position:relative;
  background:linear-gradient(90deg,rgba(31,167,74,.065),rgba(31,167,74,0) 68%);
}
.fixture.is-live:before{
  content:"";
  position:absolute;
  left:-15px;
  top:50%;
  width:8px;
  height:8px;
  margin-top:-4px;
  border-radius:50%;
  background:#1fa74a;
  box-shadow:0 0 0 0 rgba(31,167,74,.48);
  animation:fcbdLivePulse 1.6s infinite;
}
.fixture.is-live .pill{
  border-color:#1fa74a !important;
  color:#117e35 !important;
  background:#f3fff6 !important;
}
.fixture.is-past{
  opacity:.48;
}
.fixture.is-next{
  background:rgba(237,28,36,.025);
}
.fixture .pill.now{
  background:#1fa74a !important;
  color:#fff !important;
  border-color:#1fa74a !important;
}
.activity-empty{
  padding:34px 24px;
  text-align:center;
  border-bottom:1px solid var(--line);
}
.activity-empty strong{
  display:block;
  color:var(--navy);
  font-size:17px;
}
.activity-empty span{
  display:block;
  color:#7b8798;
  font-size:13px;
  margin-top:5px;
}

@media(max-width:900px){
  .today-dynamic .today-photo{
    height:310px !important;
    min-height:310px !important;
  }
}
@media(max-width:640px){
  .today-dynamic .activity-list .fixture{
    grid-template-columns:72px 1fr !important;
    gap:12px !important;
    padding:15px 0 !important;
  }
  .today-dynamic .fixture .pill{
    grid-column:2 !important;
    justify-self:start !important;
  }
  .today-dynamic .fixture-time{
    font-size:23px !important;
  }
  .today-dynamic .today-photo{
    height:260px !important;
    min-height:260px !important;
  }
  .activity-dayline{
    align-items:flex-start;
    flex-direction:column;
    gap:3px;
  }
}


/* ===== V1.8.22 / Detailpolitur Tagesplan ===== */

.today-title{
  font-size:clamp(42px,4.7vw,68px) !important;
  line-height:.96 !important;
  max-width:520px;
}

/* quieter live card: status first, less duplicate information */
.activity-live{
  padding:13px 15px !important;
  gap:11px !important;
}
.activity-live-label{
  display:block;
  color:#16843b !important;
  font-size:9px !important;
  line-height:1 !important;
  font-weight:950 !important;
  text-transform:uppercase;
  letter-spacing:.12em;
  margin:0 0 5px !important;
}
.activity-live strong{
  font-size:15px !important;
}
.activity-live span:not(.live-dot):not(.activity-live-label){
  font-size:11px !important;
  margin-top:4px !important;
}

/* Live rows: no large green wash; use a clean signal rail instead */
.fixture.is-live{
  background:transparent !important;
}
.fixture.is-live:after{
  content:"";
  position:absolute;
  left:-1px;
  top:12px;
  bottom:12px;
  width:3px;
  border-radius:999px;
  background:#1fa74a;
}
.fixture.is-live:before{
  left:-16px !important;
}
.fixture.is-live .fixture-team{
  color:var(--navy);
}
.fixture.is-live .pill.now{
  box-shadow:none !important;
}

/* Same kickoff time is shown once visually for grouped rows */
.fixture-time.is-group-duplicate{
  color:transparent !important;
  position:relative;
}
.fixture-time.is-group-duplicate:after{
  content:"";
  position:absolute;
  left:0;
  top:50%;
  width:32px;
  height:1px;
  background:#dfe4ec;
}

/* Calendar is an actual control rather than a lost text link */
.calendar-button{
  display:inline-flex !important;
  align-items:center;
  gap:7px;
  border:1px solid #d7dfeb !important;
  border-bottom:1px solid #d7dfeb !important;
  border-radius:999px;
  padding:8px 12px !important;
  background:#fff;
  color:var(--navy) !important;
  line-height:1;
  white-space:nowrap;
}
.calendar-button span{
  color:var(--red);
  font-size:15px;
  font-weight:950;
}
.calendar-button:hover{
  border-color:var(--red) !important;
}

/* Smaller primary jump button in this utility section */
.today-intro > .btn.dark{
  padding:12px 17px !important;
  font-size:13px !important;
  width:auto !important;
}

/* Better crop: show more of the actual training activity */
.today-dynamic .today-photo img{
  object-position:center 68% !important;
}

/* Slightly tighter list */
.today-dynamic .activity-list .fixture{
  padding:13px 0 !important;
}
.today-dynamic .fixture-time{
  font-size:27px !important;
}
.today-dynamic .fixture-team{
  font-size:16px !important;
}

/* current block is visually calmer */
.activity-live.is-live{
  background:#f8fffa !important;
  border-color:rgba(31,167,74,.24) !important;
}

@media(max-width:640px){
  .today-title{
    font-size:clamp(40px,14vw,58px) !important;
  }
  .activity-toolbar{
    gap:10px;
  }
  .calendar-button{
    margin-top:10px;
  }
  .fixture-time.is-group-duplicate:after{
    width:22px;
  }
}


/* ===== V1.8.23 / Live-Liste zurück zur bevorzugten Variante ===== */

/* bevorzugter Look: laufende Einheiten wieder dezent grün hinterlegt */
.fixture.is-live{
  background:linear-gradient(
    90deg,
    rgba(31,167,74,.065) 0%,
    rgba(31,167,74,.035) 58%,
    rgba(31,167,74,0) 100%
  ) !important;
}

/* die zusätzliche grüne Seitenlinie aus V1.8.22 wieder entfernen */
.fixture.is-live:after{
  display:none !important;
}

/* Puls-Punkt sauber auf die linke Achse des Wochentags setzen */
.activity-dayline{
  position:relative;
}
.fixture.is-live:before{
  left:0 !important;
  top:50% !important;
  width:9px !important;
  height:9px !important;
  margin-top:-4.5px !important;
  z-index:3;
}

/* Inhalt der Terminzeile beginnt auf derselben Textachse wie Montag */
.today-dynamic .activity-list .fixture{
  padding-left:0 !important;
}
.today-dynamic .fixture-time{
  padding-left:0 !important;
}

/* Punkt liegt links auf der Achse; Zeit bekommt dafür etwas Luft */
.fixture.is-live .fixture-time{
  padding-left:22px !important;
}

/* gleiche Uhrzeiten wieder vollständig anzeigen */
.fixture-time.is-group-duplicate{
  color:var(--navy) !important;
}
.fixture-time.is-group-duplicate:after{
  display:none !important;
}

/* Wochentag / Datum als klare dynamische Kopfzeile */
.activity-dayline strong{
  color:var(--navy);
  font-size:20px !important;
  font-weight:950;
}
.activity-dayline span{
  color:#7c899c;
  font-size:13px !important;
  font-variant-numeric:tabular-nums;
}

/* Live-Badge wie in der bevorzugten Version */
.fixture.is-live .pill.now{
  background:#1fa74a !important;
  border-color:#1fa74a !important;
  color:#fff !important;
  box-shadow:none !important;
}

/* Mobile: gleiche Achsenlogik */
@media(max-width:640px){
  .fixture.is-live:before{
    left:0 !important;
  }
  .fixture.is-live .fixture-time{
    padding-left:18px !important;
  }
}


/* ===== V1.8.24 / Live-Punkt mit mehr Abstand zum grünen Balken ===== */
.activity-list{
  overflow:visible !important;
}
.fixture{
  overflow:visible !important;
}
.fixture.is-live:before{
  left:-2px !important;          /* weiter nach links aus dem Balken raus */
  width:10px !important;
  height:10px !important;
  margin-top:-5px !important;
}
.fixture.is-live .fixture-time{
  padding-left:28px !important;  /* etwas mehr Luft zwischen Punkt und Uhrzeit */
}
@media(max-width:640px){
  .fixture.is-live:before{
    left:-1px !important;
  }
  .fixture.is-live .fixture-time{
    padding-left:24px !important;
  }
}


/* =========================================================
   WORDPRESS / CLUB-MANAGER INTEGRATION
   Diese Regeln ergänzen nur Funktionalität. Der visuelle
   Homepage-Master V1.8.24 darüber bleibt die Designbasis.
   ========================================================= */

body.admin-bar .header{top:32px}
@media(max-width:782px){body.admin-bar .header{top:46px}}

.skip-link{
  position:absolute;left:-9999px;top:auto;width:1px;height:1px;overflow:hidden;
}
.skip-link:focus{
  left:14px;top:14px;width:auto;height:auto;padding:10px 14px;z-index:9999;
  background:#fff;color:var(--navy);border-radius:8px;
}

/* Multi-mega menu in exact V1.8.24 visual language */
.header{overflow:visible}
.navlinks{position:static}
.nav-trigger{
  display:flex;align-items:center;gap:6px;position:relative;
}
.nav-trigger .chev{
  font-size:10px;transition:transform .18s ease;
}
.nav-trigger.is-open .chev{transform:rotate(180deg)}
.mega-shell{
  position:absolute;left:0;right:0;top:100%;z-index:80;
  background:#fff;border-top:1px solid var(--line);border-bottom:1px solid var(--line);
  box-shadow:0 28px 55px rgba(4,17,45,.14);
  opacity:0;visibility:hidden;transform:translateY(-8px);transition:.18s ease;
}
.mega-shell.open{opacity:1;visibility:visible;transform:translateY(0)}
.mega-panel{display:none}
.mega-panel.active{display:block}
.mega-panel .mega-inner{padding:30px 0 34px}
.mega-col h4{font-size:11px;text-transform:uppercase;letter-spacing:.12em;color:#8792a7;margin:0 0 12px}
.mega-col a{display:block;padding:7px 0;font-weight:780}
.mega-col a:hover{color:var(--red)}
.mega-col a small{display:block;color:#8b95a6;font-size:10px;font-weight:650;margin-top:2px}
.mega-feature p{color:#c9d7f7;max-width:310px}

/* premium mobile nav, keeping the master colors/type */
.mobile-drawer{
  display:none;position:fixed;inset:0;z-index:110;background:var(--navy2);color:#fff;
  overflow-y:auto;
}
.mobile-drawer.open{display:block}
.mobile-drawer-top{
  min-height:76px;padding:10px 18px;display:flex;align-items:center;justify-content:space-between;
  border-bottom:1px solid rgba(255,255,255,.12)
}
.mobile-drawer-brand{display:flex;align-items:center;gap:10px;font-weight:950;text-transform:uppercase}
.mobile-drawer-brand img{width:50px;height:50px;object-fit:contain}
.mobile-drawer-close{
  width:42px;height:42px;border:1px solid rgba(255,255,255,.18);border-radius:50%;
  background:rgba(255,255,255,.05);color:#fff;font-size:25px
}
.mobile-sections{padding:14px 20px 90px}
.mobile-acc{border-bottom:1px solid rgba(255,255,255,.12)}
.mobile-acc>button{
  width:100%;min-height:58px;display:flex;align-items:center;justify-content:space-between;
  padding:0;border:0;background:none;color:#fff;font:inherit;font-size:20px;font-weight:950;text-align:left
}
.mobile-acc>button span{color:var(--red);font-size:25px;font-weight:400}
.mobile-acc-panel{display:none;padding:0 0 12px}
.mobile-acc.open .mobile-acc-panel{display:block}
.mobile-acc.open>button span{transform:rotate(45deg)}
.mobile-acc-panel a{display:block;padding:8px 0 8px 13px;color:#c5d3ef;font-size:13px;font-weight:760}
.mobile-primary{
  margin-top:20px;display:flex!important;justify-content:space-between;
  padding:15px 16px!important;border-radius:12px;background:var(--red);color:#fff!important;font-weight:950
}

/* Section navigation on internal pages */
.section-subnav{
  background:#fff;border-bottom:1px solid var(--line);box-shadow:0 8px 20px rgba(4,17,45,.035)
}
.section-subnav-inner{
  min-height:52px;display:flex;align-items:center;gap:3px;overflow-x:auto;scrollbar-width:none
}
.section-subnav-inner::-webkit-scrollbar{display:none}
.section-subnav a{
  position:relative;flex:0 0 auto;padding:18px 14px 16px;font-size:11px;font-weight:900;color:#69758a;white-space:nowrap
}
.section-subnav a.is-active,.section-subnav a:hover{color:var(--navy)}
.section-subnav a.is-active:after{
  content:"";position:absolute;left:14px;right:14px;bottom:-1px;height:2px;background:var(--red)
}

/* Gutenberg page content */
.fcbd-page-content{max-width:1100px}
.fcbd-page-content.prose{font-size:16px;line-height:1.72}
.fcbd-page-content.prose>p,.fcbd-page-content.prose>ul,.fcbd-page-content.prose>ol{max-width:820px}
.fcbd-page-content .fcbd-lead{font-size:clamp(19px,2vw,24px);line-height:1.55;color:#33415b;max-width:900px}
.fcbd-page-content .wp-block-heading{margin-top:44px}
.content-grid{display:grid;grid-template-columns:minmax(0,1fr) 320px;gap:46px;align-items:start}
.sidebar-card{background:#fff;border:1px solid var(--line);border-radius:18px;padding:22px;margin-bottom:16px}
.sidebar-card h3{color:var(--navy)}
.soft{background:var(--mist)}

/* Internal template compatibility */
.page-hero-inner{position:relative;z-index:2}
.breadcrumbs{font-size:12px;text-transform:uppercase;letter-spacing:.12em;color:#9db0d7;margin-bottom:16px}
.breadcrumbs a{color:#fff}
.team-hero-inner{position:relative;z-index:2}
.team-hero-meta{font-size:17px;color:#d6e1fb;margin-top:8px}
.team-hero-actions{display:flex;gap:10px;margin-top:22px}
.team-subnav{background:#fff;border-bottom:1px solid var(--line)}
.team-subnav .wrap{display:flex;gap:22px;overflow:auto}
.team-subnav a{padding:16px 0;font-size:12px;font-weight:900;color:var(--navy)}
.team-facts{background:#f5f7fb;padding-bottom:24px}
.facts-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:14px;margin-top:-28px;position:relative;z-index:5}
.fact span{display:block;text-transform:uppercase;letter-spacing:.09em;font-size:10px;font-weight:900;color:var(--muted);margin-bottom:8px}
.training-panel{display:grid;grid-template-columns:1fr 1fr;background:var(--navy);color:#fff;border-radius:22px;overflow:hidden}
.training-image{min-height:430px;background-size:cover;background-position:center}
.training-copy{padding:38px}
.training-copy h2{color:#fff}
.training-slot{display:grid;grid-template-columns:105px 1fr auto;gap:15px;align-items:center;padding:16px 0;border-bottom:1px solid rgba(255,255,255,.14)}
.training-time{font-size:24px;font-weight:950}
.training-desc span{display:block;color:#b7c7e7;font-size:12px;margin-top:3px}
.training-status{font-size:9px;text-transform:uppercase;letter-spacing:.1em;border:1px solid rgba(255,255,255,.25);border-radius:999px;padding:7px 9px}
.empty-state{padding:16px;border:1px solid rgba(255,255,255,.15);border-radius:12px;color:#c8d4ec}

/* Club manager dynamic grids */
.team-directory{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}
.team-directory .team-card{
  position:relative;min-height:350px;border-radius:20px;overflow:hidden;background:var(--navy);color:#fff
}
.team-directory .team-card img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.team-directory .team-card:after{content:"";position:absolute;inset:0;background:linear-gradient(to top,rgba(0,20,61,.96),rgba(0,20,61,.08) 70%)}
.team-card-copy{position:absolute;z-index:2;left:0;right:0;bottom:0;padding:24px}
.team-card-copy span{font-size:10px;text-transform:uppercase;letter-spacing:.1em;color:#c9d7f7}
.team-card-copy h3{font-size:30px;margin:5px 0}
.team-card-copy p{color:#d4def1}
.team-card-copy b{font-size:12px}

/* Footer master gets real WordPress links */
.footer-contact{display:grid;gap:5px;color:#9fb1d8;font-size:12px}

/* Bottom nav icons without emoji dependence */
.bottom-nav strong{font-size:18px}

/* keep mobile matchcenter from becoming too tall */
@media(max-width:640px){
  .compact-matchcenter{padding-top:44px!important;padding-bottom:46px!important}
  .compact-mc-grid-three{display:grid!important;grid-template-columns:1fr!important;gap:9px!important}
  .compact-mc-grid-three>.compact-mc-card{min-height:0!important}
  .compact-mc-grid-three>.compact-mc-card:not(.simple-position-card){padding:14px!important}
  .compact-versus{margin:10px 0!important}
  .compact-club img,.club-fallback-logo{width:42px!important;height:42px!important}
  .compact-score{font-size:30px!important}
  .simple-position-card{
    display:grid!important;grid-template-columns:1fr auto!important;align-items:center!important;padding:13px 15px!important
  }
  .simple-position-card .compact-position{margin:0!important;text-align:right!important}
  .simple-position-card .compact-position span:first-child{display:none!important}
  .simple-position-card .compact-position strong{font-size:28px!important}
  .simple-position-card .form-widget{margin:8px 0 0!important}
}

@media(max-width:980px){
  .navlinks,.nav>.btn{display:none!important}
  .menu-btn{display:block!important}
  .mega-shell{display:none!important}
  .content-grid{grid-template-columns:1fr}
  .facts-grid{grid-template-columns:1fr 1fr}
  .training-panel{grid-template-columns:1fr}
  .training-image{min-height:300px}
  .team-directory{grid-template-columns:1fr 1fr}
}
@media(max-width:640px){
  .team-directory{grid-template-columns:1fr}
  .facts-grid{grid-template-columns:1fr}
  .training-copy{padding:26px}
  .training-slot{grid-template-columns:85px 1fr}
  .training-status{grid-column:2}
}


/* ============================================================
   FCBD 1.6.0 — TEAM PAGE PRO
   Scoped redesign: does not modify homepage modules.
   ============================================================ */

.fcbd-team-pro{
  --team-navy:#001F5B;
  --team-navy-deep:#00143d;
  --team-red:#ED1C24;
  --team-surface:#f4f6f9;
  --team-line:#e2e7ef;
  --team-muted:#6d788c;
}

/* HERO */
.fcbd-team-pro .pro-team-hero{
  position:relative;
  min-height:510px;
  overflow:hidden;
  background:var(--team-navy-deep);
  color:#fff;
}
.fcbd-team-pro .pro-team-hero-media{
  position:absolute;
  inset:0;
}
.fcbd-team-pro .pro-team-hero-media img{
  width:100%;
  height:100%;
  object-fit:cover;
  object-position:center 45%;
  opacity:1;
}
.fcbd-team-pro .pro-team-hero-media:after{
  content:"";
  position:absolute;
  inset:0;
  background:
    linear-gradient(to bottom,rgba(0,15,48,.12) 0%,rgba(0,15,48,.02) 35%,rgba(0,15,48,.34) 100%),
    linear-gradient(90deg,rgba(0,20,61,.97) 0%,rgba(0,31,91,.86) 31%,rgba(0,31,91,.43) 57%,rgba(0,31,91,.08) 82%);
}
.fcbd-team-pro .pro-team-hero:after{
  content:"FCBD";
  position:absolute;
  left:-18px;
  bottom:-42px;
  z-index:1;
  font-size:190px;
  line-height:.78;
  font-weight:1000;
  letter-spacing:-.09em;
  color:rgba(255,255,255,.045);
  pointer-events:none;
}
.fcbd-team-pro .pro-team-hero-inner{
  position:relative;
  z-index:3;
  min-height:510px;
  display:flex;
  flex-direction:column;
  justify-content:flex-end;
  padding-top:74px;
  padding-bottom:52px;
}
.fcbd-team-pro .pro-team-breadcrumb{
  display:flex;
  align-items:center;
  gap:8px;
  margin-bottom:auto;
  padding-top:22px;
  font-size:10px;
  font-weight:850;
  text-transform:uppercase;
  letter-spacing:.1em;
  color:#d4e0f7;
}
.fcbd-team-pro .pro-team-breadcrumb a{
  color:#fff;
}
.fcbd-team-pro .pro-team-breadcrumb span{
  opacity:.55;
}
.fcbd-team-pro .pro-team-kicker{
  display:flex;
  align-items:center;
  flex-wrap:wrap;
  gap:9px;
  margin-bottom:13px;
  font-size:11px;
  font-weight:900;
  letter-spacing:.13em;
  text-transform:uppercase;
  color:#ff767d;
}
.fcbd-team-pro .pro-team-kicker i{
  width:5px;
  height:5px;
  border-radius:50%;
  background:var(--team-red);
}
.fcbd-team-pro .pro-team-title-row{
  display:flex;
  align-items:center;
  flex-wrap:wrap;
  gap:14px;
}
.fcbd-team-pro .pro-team-title-row h1{
  max-width:860px;
  margin:0;
  font-size:clamp(48px,6vw,78px);
  line-height:.94;
  letter-spacing:-.055em;
}
.fcbd-team-pro .pro-team-age{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-width:58px;
  height:34px;
  padding:0 13px;
  border:1px solid rgba(255,255,255,.35);
  border-radius:999px;
  background:rgba(255,255,255,.09);
  backdrop-filter:blur(10px);
  font-size:12px;
  font-weight:900;
}
.fcbd-team-pro .pro-team-competition{
  margin-top:13px;
  color:#d7e2f5;
  font-size:17px;
  font-weight:680;
}
.fcbd-team-pro .pro-team-actions{
  display:flex;
  gap:10px;
  flex-wrap:wrap;
  margin-top:23px;
}
.fcbd-team-pro .pro-team-actions .btn{
  min-height:45px;
  padding-inline:19px;
  font-size:12px;
}

/* ONE LOCAL NAV ONLY */
.fcbd-team-pro .pro-team-nav{
  position:sticky;
  top:122px;
  z-index:45;
  background:rgba(255,255,255,.97);
  backdrop-filter:blur(15px);
  border-bottom:1px solid var(--team-line);
  box-shadow:0 8px 25px rgba(0,31,91,.05);
}
.fcbd-team-pro .pro-team-nav-inner{
  min-height:64px;
  display:flex;
  align-items:center;
  gap:28px;
}
.fcbd-team-pro .pro-team-nav-id{
  flex:0 0 auto;
  display:flex;
  align-items:center;
  gap:9px;
  padding-right:26px;
  border-right:1px solid var(--team-line);
  color:var(--team-navy);
  font-size:13px;
  font-weight:950;
}
.fcbd-team-pro .pro-team-nav-id:before{
  content:"";
  width:8px;
  height:8px;
  border-radius:50%;
  background:var(--team-red);
}
.fcbd-team-pro .pro-team-nav-links{
  display:flex;
  align-items:center;
  gap:4px;
  overflow-x:auto;
  scrollbar-width:none;
}
.fcbd-team-pro .pro-team-nav-links::-webkit-scrollbar{
  display:none;
}
.fcbd-team-pro .pro-team-nav-links a{
  position:relative;
  flex:0 0 auto;
  padding:23px 13px 21px;
  color:#657188;
  font-size:11px;
  font-weight:900;
  white-space:nowrap;
}
.fcbd-team-pro .pro-team-nav-links a:hover{
  color:var(--team-navy);
}
.fcbd-team-pro .pro-team-nav-links a:after{
  content:"";
  position:absolute;
  left:13px;
  right:13px;
  bottom:0;
  height:2px;
  background:var(--team-red);
  transform:scaleX(0);
  transition:.18s ease;
}
.fcbd-team-pro .pro-team-nav-links a:hover:after{
  transform:scaleX(1);
}

/* TOP DASHBOARD */
.fcbd-team-pro .pro-team-overview{
  padding:58px 0 72px;
  background:#fff;
}
.fcbd-team-pro .pro-team-dashboard{
  display:grid;
  grid-template-columns:1.25fr 1fr .82fr;
  gap:16px;
  align-items:stretch;
}
.fcbd-team-pro .pro-match-card,
.fcbd-team-pro .pro-team-facts-card{
  border-radius:18px;
  border:1px solid var(--team-line);
  background:#fff;
  overflow:hidden;
}
.fcbd-team-pro .pro-match-card{
  position:relative;
  min-height:260px;
  padding:24px;
  display:flex;
  flex-direction:column;
}
.fcbd-team-pro .pro-match-card.is-next{
  background:var(--team-navy);
  color:#fff;
  border-color:var(--team-navy);
}
.fcbd-team-pro .pro-match-card.is-next:after{
  content:"FCBD";
  position:absolute;
  right:-18px;
  bottom:-25px;
  font-size:90px;
  line-height:1;
  font-weight:1000;
  color:rgba(255,255,255,.045);
  letter-spacing:-.08em;
}
.fcbd-team-pro .pro-card-label{
  position:relative;
  z-index:2;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:12px;
  min-height:24px;
  margin-bottom:18px;
  font-size:9px;
  font-weight:950;
  letter-spacing:.12em;
  text-transform:uppercase;
  color:#758197;
}
.fcbd-team-pro .is-next .pro-card-label{
  color:#bdcae3;
}
.fcbd-team-pro .pro-card-label strong{
  color:var(--team-red);
}
.fcbd-team-pro .pro-match-date{
  position:relative;
  z-index:2;
  margin-bottom:17px;
  font-size:13px;
  font-weight:850;
}
.fcbd-team-pro .pro-match-teams{
  position:relative;
  z-index:2;
  display:grid;
  grid-template-columns:1fr auto 1fr;
  gap:10px;
  align-items:center;
  margin:auto 0;
}
.fcbd-team-pro .pro-match-team{
  font-size:17px;
  font-weight:930;
  line-height:1.18;
}
.fcbd-team-pro .pro-match-team:last-child{
  text-align:right;
}
.fcbd-team-pro .pro-match-score{
  min-width:62px;
  text-align:center;
  font-size:30px;
  line-height:1;
  font-weight:1000;
  letter-spacing:-.06em;
}
.fcbd-team-pro .is-next .pro-match-score{
  font-size:13px;
  letter-spacing:.1em;
  color:#ff7d84;
}
.fcbd-team-pro .pro-match-meta{
  position:relative;
  z-index:2;
  margin-top:17px;
  padding-top:13px;
  border-top:1px solid var(--team-line);
  color:#7b8698;
  font-size:10px;
  font-weight:750;
}
.fcbd-team-pro .is-next .pro-match-meta{
  border-top-color:rgba(255,255,255,.14);
  color:#bdcae3;
}

.fcbd-team-pro .pro-team-facts-card{
  padding:24px;
}
.fcbd-team-pro .pro-team-facts-card h3{
  margin:2px 0 17px;
  color:var(--team-navy);
  font-size:20px;
}
.fcbd-team-pro .pro-team-fact{
  padding:12px 0;
  border-bottom:1px solid var(--team-line);
}
.fcbd-team-pro .pro-team-fact:last-child{
  border-bottom:0;
}
.fcbd-team-pro .pro-team-fact span{
  display:block;
  margin-bottom:3px;
  color:#8893a5;
  font-size:9px;
  font-weight:900;
  text-transform:uppercase;
  letter-spacing:.1em;
}
.fcbd-team-pro .pro-team-fact strong{
  display:block;
  color:var(--team-navy);
  font-size:13px;
  line-height:1.35;
}
.fcbd-team-pro .pro-team-intro{
  display:grid;
  grid-template-columns:minmax(0,1.4fr) .6fr;
  gap:48px;
  align-items:start;
  margin-top:52px;
}
.fcbd-team-pro .pro-team-intro h2{
  max-width:700px;
}
.fcbd-team-pro .pro-team-intro .fcbd-lead{
  margin-bottom:0;
}
.fcbd-team-pro .pro-team-editor{
  margin-top:28px;
}
.fcbd-team-pro .pro-team-contact{
  padding:20px;
  border-left:3px solid var(--team-red);
  background:var(--team-surface);
}
.fcbd-team-pro .pro-team-contact span{
  display:block;
  margin-bottom:6px;
  color:#8792a5;
  font-size:9px;
  font-weight:900;
  text-transform:uppercase;
  letter-spacing:.1em;
}
.fcbd-team-pro .pro-team-contact strong{
  color:var(--team-navy);
  font-size:14px;
}

/* SECTION SYSTEM */
.fcbd-team-pro .pro-section{
  padding:78px 0;
}
.fcbd-team-pro .pro-section.is-soft{
  background:var(--team-surface);
}
.fcbd-team-pro .pro-section.is-navy{
  background:var(--team-navy-deep);
  color:#fff;
}
.fcbd-team-pro .pro-section-head{
  display:flex;
  align-items:flex-end;
  justify-content:space-between;
  gap:28px;
  margin-bottom:31px;
}
.fcbd-team-pro .pro-section-head h2{
  margin-bottom:0;
}
.fcbd-team-pro .pro-section-head p{
  max-width:520px;
  margin:0;
  color:var(--team-muted);
  font-size:15px;
}
.fcbd-team-pro .is-navy .pro-section-head p{
  color:#aebdde;
}

/* STAFF */
.fcbd-team-pro .pro-staff-grid{
  display:grid;
  grid-template-columns:1.25fr repeat(3,1fr);
  gap:16px;
}
.fcbd-team-pro .pro-staff-card{
  min-height:340px;
  position:relative;
  overflow:hidden;
  border-radius:18px;
  background:#fff;
  border:1px solid var(--team-line);
}
.fcbd-team-pro .pro-staff-card.is-lead{
  min-height:420px;
  grid-row:span 1;
}
.fcbd-team-pro .pro-person-photo{
  position:absolute;
  inset:0;
  background:#e8edf5;
}
.fcbd-team-pro .pro-person-photo img{
  width:100%;
  height:100%;
  object-fit:cover;
  object-position:center top;
}
.fcbd-team-pro .pro-person-placeholder{
  width:100%;
  height:100%;
  display:grid;
  place-items:center;
  color:#c0cad9;
  font-size:64px;
  font-weight:1000;
  letter-spacing:-.08em;
  background:
    linear-gradient(135deg,#eef2f7,#dce4ef);
}
.fcbd-team-pro .pro-staff-card:after{
  content:"";
  position:absolute;
  inset:0;
  background:linear-gradient(to top,rgba(0,20,61,.96),rgba(0,20,61,.08) 70%);
}
.fcbd-team-pro .pro-person-copy{
  position:absolute;
  z-index:2;
  left:0;
  right:0;
  bottom:0;
  padding:19px;
  color:#fff;
}
.fcbd-team-pro .pro-person-copy span{
  display:block;
  margin-bottom:5px;
  color:#ff7b82;
  font-size:9px;
  font-weight:950;
  text-transform:uppercase;
  letter-spacing:.11em;
}
.fcbd-team-pro .pro-person-copy strong{
  display:block;
  font-size:21px;
  line-height:1.08;
}

/* PLAYERS */
.fcbd-team-pro .pro-position-group + .pro-position-group{
  margin-top:42px;
}
.fcbd-team-pro .pro-position-title{
  display:flex;
  align-items:center;
  gap:12px;
  margin-bottom:15px;
  color:var(--team-navy);
  font-size:13px;
  font-weight:950;
  text-transform:uppercase;
  letter-spacing:.09em;
}
.fcbd-team-pro .pro-position-title:before{
  content:"";
  width:28px;
  height:3px;
  background:var(--team-red);
}
.fcbd-team-pro .pro-player-grid{
  display:grid;
  grid-template-columns:repeat(4,1fr);
  gap:14px;
}
.fcbd-team-pro .pro-player-card{
  position:relative;
  min-height:350px;
  overflow:hidden;
  border-radius:17px;
  background:#e9eef5;
  border:1px solid var(--team-line);
}
.fcbd-team-pro .pro-player-card img{
  position:absolute;
  inset:0;
  width:100%;
  height:100%;
  object-fit:cover;
  object-position:center top;
}
.fcbd-team-pro .pro-player-card:after{
  content:"";
  position:absolute;
  inset:0;
  background:linear-gradient(to top,rgba(0,20,61,.96),rgba(0,20,61,.08) 66%);
}
.fcbd-team-pro .pro-player-card .pro-person-placeholder{
  position:absolute;
  inset:0;
}
.fcbd-team-pro .pro-player-number{
  position:absolute;
  z-index:2;
  top:12px;
  right:14px;
  color:rgba(255,255,255,.92);
  font-size:40px;
  font-weight:1000;
  line-height:1;
  letter-spacing:-.07em;
  text-shadow:0 3px 16px rgba(0,0,0,.18);
}
.fcbd-team-pro .pro-player-card .pro-person-copy strong{
  font-size:20px;
}

/* FIXTURES */
.fcbd-team-pro .pro-fixtures{
  display:grid;
  gap:9px;
}
.fcbd-team-pro .pro-fixture{
  display:grid;
  grid-template-columns:115px minmax(140px,1fr) 82px minmax(140px,1fr) 170px;
  gap:16px;
  align-items:center;
  min-height:82px;
  padding:12px 17px;
  border:1px solid var(--team-line);
  border-radius:13px;
  background:#fff;
}
.fcbd-team-pro .pro-fixture.is-upcoming{
  border-left:4px solid var(--team-red);
}
.fcbd-team-pro .pro-fixture-date{
  color:#6f7c91;
  font-size:11px;
  font-weight:850;
}
.fcbd-team-pro .pro-fixture-team{
  color:var(--team-navy);
  font-size:14px;
  font-weight:900;
}
.fcbd-team-pro .pro-fixture-team.is-away{
  text-align:right;
}
.fcbd-team-pro .pro-fixture-score{
  text-align:center;
  color:var(--team-navy);
  font-size:23px;
  font-weight:1000;
}
.fcbd-team-pro .pro-fixture.is-upcoming .pro-fixture-score{
  color:var(--team-red);
  font-size:11px;
  letter-spacing:.08em;
}
.fcbd-team-pro .pro-fixture-place{
  text-align:right;
  color:#8490a3;
  font-size:10px;
  font-weight:700;
}

/* TRAINING */
.fcbd-team-pro .pro-training-stage{
  display:grid;
  grid-template-columns:.72fr 1.28fr;
  overflow:hidden;
  border-radius:20px;
  background:var(--team-navy);
  color:#fff;
}
.fcbd-team-pro .pro-training-side{
  padding:34px;
  background:
    linear-gradient(145deg,rgba(237,28,36,.15),transparent 45%),
    var(--team-navy-deep);
}
.fcbd-team-pro .pro-training-side h2{
  margin:8px 0 13px;
  color:#fff;
  font-size:42px;
}
.fcbd-team-pro .pro-training-side p{
  color:#afbfde;
}
.fcbd-team-pro .pro-training-side .btn{
  margin-top:17px;
}
.fcbd-team-pro .pro-training-list{
  padding:18px 30px;
}
.fcbd-team-pro .pro-training-row{
  display:grid;
  grid-template-columns:145px 1fr auto;
  gap:16px;
  align-items:center;
  min-height:80px;
  padding:12px 0;
  border-bottom:1px solid rgba(255,255,255,.13);
}
.fcbd-team-pro .pro-training-row:last-child{
  border-bottom:0;
}
.fcbd-team-pro .pro-training-day{
  color:#ff858b;
  font-size:10px;
  font-weight:950;
  text-transform:uppercase;
  letter-spacing:.1em;
}
.fcbd-team-pro .pro-training-time{
  margin-top:3px;
  font-size:22px;
  font-weight:950;
}
.fcbd-team-pro .pro-training-place{
  color:#c3d0e8;
  font-size:12px;
}
.fcbd-team-pro .pro-training-badge{
  padding:7px 10px;
  border:1px solid rgba(255,255,255,.22);
  border-radius:999px;
  color:#fff;
  font-size:9px;
  font-weight:900;
  text-transform:uppercase;
  letter-spacing:.08em;
}

/* CTA */
.fcbd-team-pro .pro-team-cta-wrap{
  padding:0 0 82px;
  background:#fff;
}
.fcbd-team-pro .pro-team-cta{
  position:relative;
  overflow:hidden;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:28px;
  padding:38px 42px;
  border-radius:20px;
  background:var(--team-red);
  color:#fff;
}
.fcbd-team-pro .pro-team-cta:after{
  content:"FCBD";
  position:absolute;
  right:-10px;
  bottom:-35px;
  font-size:120px;
  line-height:1;
  font-weight:1000;
  color:rgba(255,255,255,.09);
  letter-spacing:-.08em;
}
.fcbd-team-pro .pro-team-cta-copy{
  position:relative;
  z-index:2;
}
.fcbd-team-pro .pro-team-cta h2{
  max-width:700px;
  margin:0;
  color:#fff;
  font-size:clamp(31px,4vw,49px);
}
.fcbd-team-pro .pro-team-cta p{
  max-width:650px;
  margin:10px 0 0;
  color:#ffe4e6;
}
.fcbd-team-pro .pro-team-cta .btn{
  position:relative;
  z-index:2;
  flex:0 0 auto;
  background:#fff;
  color:var(--team-red);
}

/* BRAND LOGO FALLBACK */
.brand-logo-fallback,
.footer-logo-fallback{
  display:none;
  place-items:center;
  flex:0 0 auto;
  width:64px;
  height:64px;
  border-radius:50%;
  background:var(--navy);
  color:#fff;
  font-size:11px;
  font-weight:1000;
  letter-spacing:.02em;
}
.footer-logo-fallback{
  width:82px;
  height:82px;
  margin-bottom:16px;
  background:#fff;
  color:var(--navy);
}

/* RESPONSIVE */
@media(max-width:1100px){
  .fcbd-team-pro .pro-team-dashboard{
    grid-template-columns:1fr 1fr;
  }
  .fcbd-team-pro .pro-team-facts-card{
    grid-column:1/-1;
  }
  .fcbd-team-pro .pro-staff-grid{
    grid-template-columns:repeat(3,1fr);
  }
  .fcbd-team-pro .pro-staff-card.is-lead{
    grid-column:span 2;
  }
  .fcbd-team-pro .pro-player-grid{
    grid-template-columns:repeat(3,1fr);
  }
}
@media(max-width:980px){
  .fcbd-team-pro .pro-team-nav{
    top:74px;
  }
  .fcbd-team-pro .pro-team-intro{
    grid-template-columns:1fr;
    gap:24px;
  }
  .fcbd-team-pro .pro-fixture{
    grid-template-columns:88px 1fr 65px 1fr;
  }
  .fcbd-team-pro .pro-fixture-place{
    grid-column:2/5;
    text-align:left;
  }
  .fcbd-team-pro .pro-training-stage{
    grid-template-columns:1fr;
  }
}
@media(max-width:700px){
  .fcbd-team-pro .pro-team-hero,
  .fcbd-team-pro .pro-team-hero-inner{
    min-height:430px;
  }
  .fcbd-team-pro .pro-team-hero-inner{
    padding-top:32px;
    padding-bottom:34px;
  }
  .fcbd-team-pro .pro-team-hero-media img{
    object-position:center 38%;
  }
  .fcbd-team-pro .pro-team-hero-media:after{
    background:
      linear-gradient(to top,rgba(0,20,61,.98) 0%,rgba(0,31,91,.64) 45%,rgba(0,31,91,.12) 78%),
      linear-gradient(90deg,rgba(0,31,91,.65),rgba(0,31,91,.08));
  }
  .fcbd-team-pro .pro-team-breadcrumb{
    padding-top:12px;
  }
  .fcbd-team-pro .pro-team-title-row h1{
    font-size:48px;
  }
  .fcbd-team-pro .pro-team-competition{
    font-size:14px;
  }
  .fcbd-team-pro .pro-team-nav-inner{
    min-height:58px;
    gap:12px;
  }
  .fcbd-team-pro .pro-team-nav-id{
    display:none;
  }
  .fcbd-team-pro .pro-team-nav-links a{
    padding:20px 10px 18px;
  }
  .fcbd-team-pro .pro-team-overview{
    padding:40px 0 54px;
  }
  .fcbd-team-pro .pro-team-dashboard{
    grid-template-columns:1fr;
  }
  .fcbd-team-pro .pro-team-facts-card{
    grid-column:auto;
  }
  .fcbd-team-pro .pro-match-card{
    min-height:220px;
  }
  .fcbd-team-pro .pro-team-intro{
    margin-top:38px;
  }
  .fcbd-team-pro .pro-section{
    padding:58px 0;
  }
  .fcbd-team-pro .pro-section-head{
    display:block;
  }
  .fcbd-team-pro .pro-section-head p{
    margin-top:12px;
  }
  .fcbd-team-pro .pro-staff-grid{
    grid-template-columns:1fr 1fr;
    gap:10px;
  }
  .fcbd-team-pro .pro-staff-card,
  .fcbd-team-pro .pro-staff-card.is-lead{
    grid-column:auto;
    min-height:300px;
  }
  .fcbd-team-pro .pro-player-grid{
    grid-template-columns:1fr 1fr;
    gap:9px;
  }
  .fcbd-team-pro .pro-player-card{
    min-height:290px;
  }
  .fcbd-team-pro .pro-fixtures{
    gap:8px;
  }
  .fcbd-team-pro .pro-fixture{
    grid-template-columns:68px 1fr 55px 1fr;
    gap:7px;
    padding:11px 10px;
  }
  .fcbd-team-pro .pro-fixture-date{
    font-size:9px;
  }
  .fcbd-team-pro .pro-fixture-team{
    font-size:11px;
  }
  .fcbd-team-pro .pro-fixture-score{
    font-size:18px;
  }
  .fcbd-team-pro .pro-fixture-place{
    font-size:9px;
  }
  .fcbd-team-pro .pro-training-side,
  .fcbd-team-pro .pro-training-list{
    padding:24px;
  }
  .fcbd-team-pro .pro-training-row{
    grid-template-columns:105px 1fr;
  }
  .fcbd-team-pro .pro-training-badge{
    grid-column:2;
    justify-self:start;
  }
  .fcbd-team-pro .pro-team-cta-wrap{
    padding-bottom:72px;
  }
  .fcbd-team-pro .pro-team-cta{
    display:block;
    padding:30px 25px;
  }
  .fcbd-team-pro .pro-team-cta .btn{
    margin-top:22px;
    width:100%;
  }
}
@media(max-width:420px){
  .fcbd-team-pro .pro-team-title-row h1{
    font-size:42px;
  }
  .fcbd-team-pro .pro-player-card{
    min-height:255px;
  }
  .fcbd-team-pro .pro-person-copy{
    padding:13px;
  }
  .fcbd-team-pro .pro-person-copy strong{
    font-size:16px;
  }
  .fcbd-team-pro .pro-player-number{
    font-size:32px;
  }
}
