.season-photo.season-photo-feature{position:relative;isolation:isolate;width:100%;max-width:none;margin:0 0 20px;overflow:hidden;border:0;border-radius:6px;background:#1d252c;box-shadow:0 3px 12px #11111114}
.season-photo.season-photo-feature .match-photo-open{display:block;position:relative;height:280px;background:#1d252c;color:#fff}
.season-photo.season-photo-feature .match-photo-open img{display:block;width:100%;height:100%;max-height:none;object-fit:cover;object-position:center top}
.season-photo.season-photo-feature .match-photo-open::after{content:"";position:absolute;inset:0;pointer-events:none;background:linear-gradient(90deg,#0c131c9e 0%,#0c131c24 70%),linear-gradient(0deg,#0c131ce6 0%,#0c131c26 65%,transparent 100%)}
.season-photo.season-photo-feature .season-photo-copy{position:absolute;z-index:1;left:26px;right:26px;bottom:24px;display:flex;flex-direction:column;align-items:flex-start;gap:7px;padding:0;margin:0;border:0;background:none;color:#fff;pointer-events:none;text-shadow:0 1px 5px #0008}
.season-photo.season-photo-feature .season-photo-club{display:block;font-size:.7rem;font-weight:700;letter-spacing:.14em;text-transform:uppercase;line-height:1.4;color:#fff}
.season-photo.season-photo-feature .season-photo-title{display:block;margin:0;font-size:3.5rem;line-height:1;font-weight:800;letter-spacing:-.04em;color:#fff}
.season-photo.season-photo-feature .season-photo-division{display:block;max-width:100%;font-size:.82rem;font-weight:500;line-height:1.5;color:#f0f2f4}
.season-photo.season-photo-feature .season-photo-expand{position:absolute;z-index:2;top:14px;right:14px;bottom:auto;display:flex;align-items:center;gap:8px;min-height:38px;padding:8px 11px;border:1px solid #ffffff70;border-radius:4px;background:#111a22b8;color:#fff;font-size:.7rem;font-weight:600;line-height:1.3;text-shadow:none}
.season-photo.season-photo-feature .match-photo-open:hover .season-photo-expand,.season-photo.season-photo-feature .match-photo-open:focus-visible .season-photo-expand{background:#fff;color:#17212a;border-color:#fff}
.season-photo.season-photo-feature .match-photo-open:focus-visible{outline:3px solid #fff;outline-offset:-5px}
.season-photo.season-photo-feature .season-photo-expand svg{flex-shrink:0}
@media(max-width:640px){.season-photo.season-photo-feature{margin-bottom:16px}.season-photo.season-photo-feature .match-photo-open{height:220px}.season-photo.season-photo-feature .season-photo-copy{left:18px;right:18px;bottom:19px;gap:6px}.season-photo.season-photo-feature .season-photo-title{font-size:2.75rem}.season-photo.season-photo-feature .season-photo-division{font-size:.75rem}.season-photo.season-photo-feature .season-photo-expand{top:10px;right:10px;min-height:36px;padding:7px 9px;font-size:.65rem}}

.season-photo-empty{height:280px;background:linear-gradient(120deg,#151b22,#303742)!important;border-left:5px solid var(--accent,var(--gold,#aab4bf))!important}
.season-photo-empty .season-photo-copy{position:absolute}
.season-key-players{overflow:hidden}
.season-people-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,230px),1fr));gap:12px;padding:14px}
.season-person{display:block;position:relative;isolation:isolate;overflow:hidden;min-width:0;min-height:205px;border-radius:4px;background:#202832;color:#fff;text-decoration:none}
.season-person-image{position:absolute;inset:0 0 0 auto;width:62%;height:100%;object-fit:cover;object-position:center top;opacity:.95}
.season-person.with-photo::after{content:"";position:absolute;inset:0;z-index:-1;background:linear-gradient(90deg,#18212cf5 0%,#18212c80 62%,#18212c14),linear-gradient(0deg,#18212cdc,transparent 85%)}
.season-person.with-photo .season-person-image{z-index:-2}
.season-person-copy{position:relative;display:flex;min-height:205px;flex-direction:column;justify-content:flex-end;align-items:flex-start;padding:20px;gap:7px}
.season-person-label{font-size:.68rem;letter-spacing:.08em;text-transform:uppercase;font-weight:600;line-height:1.5}
.season-person .season-person-copy h3{font-size:1.35rem;line-height:1.15;color:#fff;margin:0;max-width:90%;text-wrap:balance}
.season-person-total{margin:0;line-height:1.3;font-size:.8rem}
.season-person-total strong{font-size:1.9rem;font-variant-numeric:tabular-nums}
.season-person:visited{color:#fff}
a.season-person:hover,a.season-person:focus-visible{color:#fff;outline:3px solid var(--accent,var(--gold,#aab4bf));outline-offset:-3px;text-decoration:none}
a.season-person:hover h3,a.season-person:focus-visible h3{text-decoration:underline}
.season-person.without-photo{min-height:0;background:#f5f6f7;border:1px solid #e2e4e7;color:#242b33}
.season-person.without-photo .season-person-copy{min-height:0;padding:16px}
.season-person.without-photo .season-person-copy h3{color:#242b33;font-size:1.15rem}
.season-person.without-photo:visited{color:#242b33}
.season-person.without-photo .season-person-total strong{font-size:1.5rem}
.season-manager-cards{padding:14px;display:grid;gap:16px}
.season-manager-person,.season-manager-person .season-person-copy{min-height:185px}
.season-manager-person .season-person-image{width:70%}
.season-manager-detail{padding:10px 2px 0;color:var(--muted,#61656c);font-size:.76rem;line-height:1.5}
.season-manager-detail p{margin:0 0 5px}
.season-completion{margin-top:24px}
@media(max-width:640px){.season-photo-empty{height:220px}.season-people-grid,.season-manager-cards{padding:12px}.season-person,.season-person-copy{min-height:185px}.season-person-copy{padding:16px}.season-person .season-person-copy h3{font-size:1.25rem}.season-person.without-photo,.season-person.without-photo .season-person-copy{min-height:0}}

.season-person.without-photo:hover,.season-person.without-photo:focus-visible{color:#242b33}

.season-person-entry{min-width:0}
.season-photo-credit{padding:9px 2px 2px;font-size:.65rem;line-height:1.45;color:var(--muted,#61656c)}
.season-photo-credit p{margin:4px 0 0}
.season-crowd-stats{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin:0;padding:16px}
.season-crowd-stats dt{font-size:.7rem;color:var(--muted,#61656c);line-height:1.45}
.season-crowd-stats dd{margin:5px 0 0;font-size:1.7rem;font-weight:750;font-variant-numeric:tabular-nums;line-height:1.15}
.season-crowd-matches{padding:0 16px 12px;margin:0;list-style:none}
.season-crowd-matches li{display:flex;flex-direction:column;gap:4px;padding:11px 0;border-bottom:1px solid #e5e7e9;font-size:.76rem;line-height:1.5}
.season-crowd-matches li:last-child{border-bottom:0}
.season-kit-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;padding:14px}
.season-kit{display:flex;min-width:0;flex-direction:column;gap:5px;font-size:.8rem;text-align:center;text-decoration:none}
.season-kit img{width:100%;height:160px;object-fit:contain;background:#f5f6f7;border-radius:4px}
.season-kit span{color:var(--muted,#61656c);font-size:.7rem}
.season-detail-main,.season-detail-sidebar{min-width:0}
.season-manager-stats{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px;margin:12px 0;padding:12px;background:#f4f6f8;border-radius:4px}
.season-manager-stats dt{font-size:.68rem;font-weight:500}
.season-manager-stats dd{margin:5px 0 0;font-size:1.25rem;font-weight:700;color:#192c40}
.season-manager-rate{font-weight:600}
@media(max-width:640px){.season-photo.season-photo-feature .season-photo-title{font-size:clamp(2rem,10vw,2.75rem)}.season-crowd-stats{padding:12px;gap:10px}.season-crowd-stats dd{font-size:1.5rem}}
