.games-page .site-masthead{position:sticky;top:0;z-index:50}
.games-page .site-masthead .navwrap{transition:padding .18s,min-height .18s}
.games-page .site-masthead.compact .navwrap{padding-top:8px;padding-bottom:8px;min-height:46px}
.games-page .site-masthead.compact .brand{font-size:13px;gap:8px}
.games-page .site-masthead.compact .brand img{width:32px;height:32px}
.games-page .site-masthead.compact .brand small{font-size:9px}
.games-page .site-masthead.compact nav .active:after{bottom:-8px}
.games-page .site-masthead.compact .next{padding:5px 9px}
.games-page .page-hero{padding-top:40px;padding-bottom:46px}
.games-page .page-hero h1{font-size:40px}
.games-page .eyebrow{font-size:9px;letter-spacing:1.8px}
.match-page{padding-top:28px;padding-bottom:44px}
.match-page .back{font-size:11px;margin-bottom:19px}
.match-page .match-card{background:#111513;border-radius:6px;border-top:4px solid var(--yellow)}
.match-page .match-heading{display:flex;align-items:center;justify-content:center;gap:9px;padding:18px 16px;font-size:10px}
.match-page .match-heading b{margin:0;font-size:11px}
.match-page .match-heading strong{font-size:10px;color:#ddd;font-weight:normal}
.match-page .match-teams{padding:25px 32px 12px;grid-template-columns:1fr .8fr 1fr}
.match-page .match-teams h2{font-size:19px;margin:12px 0 16px;letter-spacing:-.6px}
.match-page .match-teams img{width:72px;height:72px}
.match-page .match-score strong{font-size:54px;line-height:1.1}
.match-page .match-score p{font-size:10px;color:#b7b9b7;margin:10px 0 0}
.match-page .match-score .eyebrow{font-size:9px;margin-bottom:9px}
.match-page .goal-summary{padding:8px 100px 25px;gap:80px;line-height:1.25}
.match-page .goal-summary p{font-size:10px;margin:10px 0}
.match-page .goal-summary small{font-size:8px}
.match-page .goal-summary b{font-size:10px}
.match-page .match-info{margin-top:0;padding:19px;gap:44px;border-radius:0;background:#202624;text-align:center}
.match-page .match-info small{font-size:8px}
.match-page .match-info b{font-size:10px}
.match-page .match-tabs{gap:0;padding:0;margin:15px 0 24px;border-radius:4px;overflow-x:auto;white-space:nowrap;scrollbar-width:thin}
.match-tabs a{position:relative;padding:17px 20px;display:block;font-size:11px;flex-shrink:0}
.match-tabs a.active:after{content:'';position:absolute;bottom:0;left:20px;right:20px;height:3px;background:#111}
.match-page :is(#overview,#formation,#events,#stats){scroll-margin-top:130px}
.match-page .panel{border-radius:6px;padding:0;overflow:hidden;margin-bottom:0}
.match-panel-heading{padding:25px 20px 22px;border-bottom:1px solid #eee;display:flex;align-items:center;justify-content:space-between;gap:16px}
.match-panel-heading h2{font-size:20px;letter-spacing:-.8px;margin:0}
.match-panel-heading .eyebrow{margin-bottom:12px;font-size:8px}
.match-panel-heading>small{font-size:9px;color:#888}
.games-page .pitch-grid{gap:20px;margin:0;padding:24px 20px 22px}
.games-page .pitch-heading{gap:10px;margin-bottom:16px;font-size:11px;min-height:28px}
.pitch-heading>img{height:28px;width:28px;object-fit:contain}
.pitch-heading>div{flex:1;line-height:1.3}
.pitch-heading>div>b{font-weight:normal;font-size:12px}
.pitch-heading>div>small{display:block;font-size:8px;color:#888;margin-top:4px}
.games-page .pitch-heading>span{padding:8px;font-size:10px}
.games-page .pitch{aspect-ratio:1.16;background:repeating-linear-gradient(0deg,#2c5c3e 0,#2c5c3e 40px,#306344 40px,#306344 80px);border:4px solid #315a40;overflow:hidden;border-radius:4px}
.games-page .pitch:before,.games-page .pitch:after{display:none}
.pitch-lines{position:absolute;inset:2%;border:1px solid #a6c3aa40;pointer-events:none}
.pitch-lines:after{content:'';position:absolute;left:0;right:0;top:50%;border-top:1px solid #a6c3aa40}
.games-page .pitch-circle{top:40%;left:41.5%;width:17%;height:20%;border-color:#a6c3aa40}
.penalty-area,.goal-area{position:absolute;left:27%;width:46%;height:18%;border:1px solid #a6c3aa40}
.goal-area{left:38%;width:24%;height:7%}
.top-area{top:0;border-top:none}
.bottom-area{bottom:0;border-bottom:none}
.games-page .pitch-player{width:94px;transform:translate(-50%,-15%);font-size:8px;line-height:1.1;color:white}
.player-shirt{display:block;width:27px;height:30px;margin:0 auto 4px;color:#fafafa;filter:drop-shadow(0 1px 1px #0004)}
.bvb-lineup .player-shirt{color:var(--yellow)}
.games-page .pitch-player .pitch-player-name{display:block;max-width:94px;min-height:11px;margin:auto;padding:0 2px;font-weight:bold;font-size:8px;background:none;border-radius:0;white-space:normal;text-shadow:0 1px 2px #0006}
.player-markers{display:flex;gap:3px;align-items:center;justify-content:center;margin-top:4px;min-height:9px}
.player-markers i{font-size:7px;background:#f6f6f1;color:#111;box-shadow:0 1px 2px #0004;border-radius:2px;min-width:9px;padding:1px 2px;line-height:8px;font-style:normal;font-weight:bold}
.player-markers .card-marker{width:6px;min-width:6px;height:9px;padding:0;border-radius:1px}
.player-markers .yellow-card,.yellow-card{background:var(--yellow)}
.player-markers .red-card,.red-card{background:#df4038}
.starters-details{margin-top:19px}
.starters-details summary{font-size:10px;font-weight:bold;cursor:pointer;padding:4px 0 12px}
.match-lineup>div{display:flex;gap:11px;align-items:center;min-height:32px;border-bottom:1px solid #eee;font-size:11px;padding:7px 4px}
.match-lineup>div>small{font-size:9px;width:15px;color:#888;flex-shrink:0}
.match-lineup>div>span:not(.player-markers){flex:1}
.match-lineup .player-markers{margin:0;min-height:0;flex-shrink:0}
.bench-title{font-size:10px;font-weight:normal;letter-spacing:.5px;margin:24px 0 10px}
.team-manager{font-size:11px;margin:18px 0 0}.team-manager small{font-size:9px;color:#888;margin-right:10px}
.match-lower-grid{display:grid;grid-template-columns:1.18fr 1fr;gap:18px;align-items:start;margin-top:24px}
.match-lower-grid .match-panel-heading{padding:23px 17px 20px}
.timeline-team-names{display:flex;justify-content:space-between;gap:30px;font-size:9px;padding:17px 15px;border-bottom:1px solid #eee}
.timeline-team-names b{max-width:45%;font-weight:bold}
.timeline-team-names b:last-child{text-align:right}
.match-timeline{position:relative;padding:18px 14px 23px}
.match-timeline:before{content:'';position:absolute;top:20px;bottom:25px;left:50%;width:2px;background:#eeeee9;transform:translateX(-50%)}
.timeline-row{position:relative;display:grid;grid-template-columns:minmax(0,1fr) 36px minmax(0,1fr);margin-bottom:11px;align-items:start}
.timeline-minute{grid-column:2;grid-row:1;justify-self:center;margin-top:1px;background:#f3f3ef;padding:5px 6px;position:relative;z-index:1;font-size:9px;font-weight:bold;border-radius:20px;white-space:nowrap}
.timeline-card{grid-column:1;grid-row:1;background:#f7f7f2;border:1px solid #e7e7df;border-radius:3px;padding:11px 9px;min-width:0}
.away-event .timeline-card{grid-column:3}
.event-card-heading{display:flex;justify-content:space-between;align-items:center;gap:6px;margin-bottom:8px;font-size:9px;color:#7e817a}
.event-card-heading>span{display:flex;align-items:center;gap:4px}
.event-card-heading i{font-size:12px;font-style:normal;line-height:10px;display:inline-block}
.event-card-heading i:is(.yellow-card,.red-card){width:5px;height:9px}
.event-card-heading b{font-size:9px;background:var(--yellow);color:#111;padding:3px 5px;white-space:nowrap}
.timeline-card>strong{font-size:11px;line-height:1.4;display:block;font-weight:bold}
.timeline-card p{font-size:9px;line-height:1.6;color:#85877e;margin:7px 0 0}
.stats-team-names{display:flex;gap:18px;justify-content:space-between;border-bottom:1px solid #eee;padding:16px 17px}
.stats-team-names>div{display:flex;align-items:center;gap:7px;max-width:50%}
.stats-team-names img{width:23px;height:23px;object-fit:contain;flex-shrink:0}
.stats-team-names b{font-size:9px;font-weight:normal;line-height:1.4}
.stats-team-names>div:last-child{text-align:right}
.comparison-stat{padding:17px;border-bottom:1px solid #f3f3ee}
.comparison-stat>div:first-child{display:flex;justify-content:space-between;align-items:center;gap:12px;margin-bottom:10px}
.comparison-stat b{font-size:11px;min-width:28px}
.comparison-stat b:last-child{text-align:right}
.comparison-stat>div>span{font-size:10px;color:#74776e;text-align:center}
.comparison-bar{height:3px;display:flex;gap:2px;overflow:hidden;border-radius:2px;background:#eee}
.comparison-bar .home-bar{background:#252b25;height:100%;flex-shrink:1}
.comparison-bar .away-bar{background:var(--yellow);height:100%;flex-shrink:1}
.referee-info{font-size:11px;padding:17px;margin:0;line-height:1.8}
.referee-info small{display:block;font-size:8px;color:#888;letter-spacing:1px}
.match-empty{padding:25px 18px;color:#888;font-size:12px;line-height:1.5}
.match-source{font-size:10px;margin-top:28px;color:#777}
.match-source .source{font-size:10px}
.calendar-page{padding-top:28px}
.calendar-filter{margin-bottom:28px}.calendar-filter>.eyebrow{margin-bottom:10px}.calendar-filter .button{font-size:10px;padding:10px 14px}
.games-page .last-game{margin:0 0 32px;border-top-width:3px;border-radius:6px}
.last-game-heading{display:flex;justify-content:space-between;align-items:center;padding:24px 26px 0;color:var(--yellow)}
.last-game-heading h2{font-size:18px;margin:0;letter-spacing:-.5px}
.last-game-heading>span{font-size:8px;border:1px solid #3b3b36;border-radius:20px;padding:7px 11px;color:#ccc;letter-spacing:.4px}
.games-page .last-game .fixture{padding:22px 26px;border-radius:0}
.games-page .last-game .teams{padding:25px 80px 28px}
.games-page .last-game .teams>div{flex:1}
.games-page .last-game .teams img{width:73px;height:73px}
.games-page .last-game .teams b{font-size:18px}
.games-page .last-game .score{padding:19px 22px;font-size:48px;min-width:165px;text-align:center}
.games-page .last-game .fixture-bottom{font-size:8px;padding-top:15px}
.calendar-group{margin-top:32px;margin-bottom:38px}
.calendar-group-heading{display:flex;justify-content:space-between;align-items:center;margin-bottom:23px}
.calendar-group-heading h2{font-size:24px;letter-spacing:-.8px;margin:0}
.calendar-group-heading small{font-size:10px;color:#888}
.games-page .calendar-page .game-grid{gap:14px}
.games-page .calendar-page .game-grid .fixture{border-top-width:3px;padding:20px 18px;border-radius:3px}
.games-page .calendar-page .game-grid .teams{padding:26px 0 24px;gap:10px}
.games-page .calendar-page .game-grid .teams img{width:44px;height:44px}
.games-page .calendar-page .game-grid .teams b{font-size:12px;min-height:28px;display:flex;align-items:center;justify-content:center}
.games-page .calendar-page .game-grid .score{font-size:11px;padding:9px}
.games-page .calendar-page .game-grid .score.has-result{background:var(--yellow);border-radius:2px;min-width:62px;padding:11px 8px;font-size:14px}
.games-page .calendar-page .game-grid .fixture-bottom b{color:#111}
@media(max-width:760px){
 .games-page .page-hero h1{font-size:31px}
 .games-page .site-masthead.compact .navwrap{min-height:62px}
 .games-page .site-masthead.compact .brand{font-size:13px}
 .games-page .site-masthead .next{order:3;font-size:9px}
 .games-page .site-masthead.compact .next img{width:17px;height:17px}
 .games-page .site-masthead.compact .next{font-size:8px;padding:6px}
 .games-page .site-masthead.compact nav .active:after{bottom:0}
 .match-page{padding-top:22px}
 .match-page .match-heading{flex-wrap:wrap;gap:6px;font-size:9px;padding:15px 10px}
 .match-page .match-heading b{font-size:10px}
 .match-page .match-heading span{width:100%;text-align:center}
 .match-page .match-teams{padding:24px 10px 12px;grid-template-columns:1fr .8fr 1fr}
 .match-page .match-teams h2{font-size:13px;line-height:1.4;margin:10px 0}
 .match-page .match-teams img{width:52px;height:52px}
 .match-page .match-score strong{font-size:34px}
 .match-page .match-score .eyebrow{font-size:7px;letter-spacing:1px}
 .match-page .match-score p{font-size:8px}
 .match-page .goal-summary{padding:0 12px 22px;gap:14px}
 .match-page .goal-summary p{font-size:9px}.match-page .goal-summary b{font-size:9px}
 .match-page .match-info{gap:20px;padding:18px 12px}
 .match-tabs a{font-size:10px;padding:16px 14px}
 .match-tabs a.active:after{left:14px;right:14px}
 .match-panel-heading{padding:22px 16px 18px;align-items:flex-start;flex-direction:column;gap:12px}
 .match-panel-heading>small{font-size:8px}
 .games-page .pitch-grid{grid-template-columns:1fr;gap:32px;padding:20px 15px}
 .games-page .pitch-player{width:80px}.games-page .pitch-player .pitch-player-name{max-width:80px;font-size:7.5px}
 .player-shirt{width:25px;height:27px}
 .match-lower-grid{grid-template-columns:1fr;gap:22px}
 .statistics-panel{grid-row:1}
 .timeline-team-names{font-size:8px;padding:16px 12px;gap:22px}
 .match-timeline{padding:18px 10px 23px}
 .timeline-row{grid-template-columns:minmax(0,1fr) 32px minmax(0,1fr);margin-bottom:10px}
 .timeline-card{padding:10px 8px}
 .timeline-card>strong{font-size:10px}.timeline-card p{font-size:8.5px}
 .event-card-heading{font-size:8px;flex-wrap:wrap}.event-card-heading b{font-size:8px}
 .timeline-minute{font-size:8px;padding:5px 4px}
 .match-page :is(#overview,#formation,#events,#stats){scroll-margin-top:175px}
 .games-page .last-game .teams{padding:25px 0;gap:10px}
 .games-page .last-game .teams img{width:55px;height:55px}
 .games-page .last-game .teams b{font-size:13px}
 .games-page .last-game .score{font-size:30px;min-width:105px;padding:15px 10px}
 .last-game-heading{padding:22px 18px 0}.games-page .last-game .fixture{padding:22px 18px}
 .calendar-group-heading h2{font-size:21px}.calendar-group-heading small{font-size:9px}
}
@media(max-width:360px){.games-page .pitch-player .pitch-player-name{font-size:7px;max-width:72px}.games-page .pitch-player{width:72px}.match-page .match-teams h2{font-size:12px}.match-tabs a{padding:15px 12px}}
@media(prefers-reduced-motion:reduce){.games-page .site-masthead .navwrap{transition:none}}
.games-page .pitch-player>.player-markers{background:none;padding:0;border-radius:0;white-space:normal}
.games-page .last-game .fixture,.games-page .last-game .fixture:hover{color:#fff}
.goal-ball{display:inline-block;width:8px;height:8px;background:#f8faf8;border:1px solid #adb7ad;border-radius:50%;vertical-align:baseline;margin-right:3px}
