/* Homepage campaign hero and integrated match panel. */
.hero { position:relative; background:var(--color-ink); }
.hero__carousel { position:relative; min-height:clamp(35rem,68vh,46rem); background:var(--color-surface); outline:none; }
.hero__slides, .hero__slide { min-height:inherit; }
.hero__slide { position:absolute; inset:0; display:grid; align-items:end; overflow:hidden; opacity:0; pointer-events:none; transition:opacity 900ms ease; }
.hero__slide.is-active { position:relative; opacity:1; pointer-events:auto; }
.hero__media, .hero__wash { position:absolute; inset:0; }
.hero__media img { width:100%; height:100%; object-fit:cover; object-position:var(--hero-focal-x,50%) var(--hero-focal-y,50%); filter:saturate(.8) contrast(1.08) brightness(.76); }
.hero__poster-picture{position:absolute;inset:0;display:block}.hero__video{position:absolute;inset:0;width:100%;height:100%;border:0;object-fit:cover;object-position:var(--hero-focal-x,50%) var(--hero-focal-y,50%);opacity:0;transition:opacity .45s ease}.hero__video.is-playing{opacity:1}.hero__youtube{overflow:hidden;background:transparent}.hero__youtube iframe{position:absolute;top:50%;left:50%;width:auto;height:auto;min-width:100%;min-height:100%;aspect-ratio:16/9;border:0;pointer-events:none;transform:translate(-50%,-50%)}
.hero__wash { background:radial-gradient(ellipse at 69% 67%,rgb(36 184 93 / 18%),transparent 25%),linear-gradient(90deg,rgb(3 5 4 / 98%) 0%,rgb(3 5 4 / 84%) 42%,rgb(3 5 4 / 22%) 78%),linear-gradient(0deg,rgb(3 5 4 / 82%),transparent 48%); }
.hero__content { position:relative; z-index:1; display:flex; align-items:center; min-height:inherit; padding-block:var(--space-7); }
.hero__copy { width:100%; min-width:0; max-width:min(44rem,94%); text-align:left; }
.hero__title { display:-webkit-box; width:100%; max-width:100%; margin-bottom:var(--space-3); padding-bottom:.08em; overflow:hidden; font-size:clamp(2.2rem,3.8vw,4.8rem); letter-spacing:.005em; line-height:1.02; overflow-wrap:break-word; word-break:normal; hyphens:auto; -webkit-box-orient:vertical; -webkit-line-clamp:4; }
.hero__description { display:-webkit-box; max-width:27rem; margin-bottom:var(--space-4); overflow:hidden; color:var(--color-text-muted); font-size:var(--text-sm); line-height:1.45; -webkit-box-orient:vertical; -webkit-line-clamp:3; }
.hero__actions { display: flex; flex-wrap: wrap; gap: var(--space-3); }
.hero__actions .button { border-radius:10px; }
.hero__actions .button span, .match-card__cta span { margin-left: var(--space-3); }
.hero__controls { position:absolute; z-index:4; right:0; bottom:var(--space-5); left:0; display:flex; align-items:center; justify-content:space-between; }
.hero__control-cluster,.hero__pagination, .hero__arrows { display:flex; align-items:center; }
.hero__control-cluster{gap:var(--space-4)}
.hero__pagination,.hero__arrows{gap:var(--space-1)}
.hero__pagination-button{display:grid;width:2rem;height:2rem;padding:0;place-items:center;border:0;background:transparent;cursor:pointer}
.hero__pagination-button span{position:relative;display:block;width:8px;height:8px;overflow:hidden;border-radius:999px;background:var(--color-text-dim);transition:width var(--transition-fast),background var(--transition-fast),box-shadow var(--transition-fast)}
.hero__pagination-button span::after{position:absolute;inset:0;background:var(--color-accent-bright);content:"";transform:scaleX(0);transform-origin:left center}
.hero__pagination-button.is-active span{width:24px;background:rgb(245 247 244 / .24);box-shadow:0 0 .6rem rgb(87 221 135 / .22)}
.hero__carousel.is-progressing .hero__pagination-button.is-active span::after{animation:hero-indicator-progress var(--hero-autoplay-duration,12000ms) linear forwards}
.hero__carousel.is-autoplay-paused .hero__pagination-button.is-active span::after{animation-play-state:paused}
.hero__carousel.is-autoplay-disabled .hero__pagination-button.is-active span::after{animation:none;transform:scaleX(1)}
@keyframes hero-indicator-progress{to{transform:scaleX(1)}}
.hero__pagination-button:hover span,.hero__pagination-button:focus-visible span{background:var(--color-accent-bright)}
.hero__pagination-button:focus-visible{outline:2px solid var(--color-accent-bright);outline-offset:1px;border-radius:8px}
.hero__arrow { display: grid; width: 2.5rem; height: 2.5rem; place-items: center; border: var(--border-width) solid var(--color-border-strong); border-radius:2px; background: transparent; color: var(--color-text); cursor: pointer; transition: border-color var(--transition-fast), color var(--transition-fast),background var(--transition-fast); }
.hero__arrow:hover, .hero__arrow:focus-visible { border-color: var(--color-accent); background:rgb(36 184 93 / .1); color: var(--color-accent-bright); }
.hero__match-panel-wrap { position:absolute; z-index:3; top:0; right:0; bottom:0; left:0; display:grid; grid-template-columns:minmax(0,1fr) minmax(18rem,42%); pointer-events:none; }
.hero-match-panel { grid-column:2; display:grid; grid-template-rows:minmax(0,1.35fr) minmax(0,.9fr); height:100%; border-inline:1px solid rgb(245 247 244 / .1); background:linear-gradient(155deg,rgb(11 20 14 / .94),rgb(3 7 4 / .96)); box-shadow:-1.5rem 0 4rem rgb(0 0 0 / .15),inset 0 1px 0 rgb(87 221 135 / .08); pointer-events:auto; backdrop-filter:blur(.8rem); }
.hero-match-panel__next { display:grid; align-content:center; padding:clamp(1.3rem,2.8vw,3rem); border-bottom:1px solid var(--color-border); }
.hero-match-panel__heading { display:grid; grid-template-columns:1fr auto 1fr; align-items:center; gap:var(--space-3); margin-bottom:var(--space-4); color:var(--color-accent-bright); font-size:.62rem; font-weight:var(--font-weight-bold); letter-spacing:var(--tracking-label); line-height:1; text-align:center; text-transform:uppercase; }
.hero-match-panel__heading span { grid-column:2; }
.hero-match-panel__heading > span { display:inline-flex; align-items:center; justify-content:center; gap:.45rem; }
.hero-match-panel__heading small { grid-column:3; justify-self:end; color:var(--color-text-dim); font-size:inherit; }
.hero-match-panel__teams { display:grid; grid-template-columns:1fr auto 1fr; align-items:center; gap:var(--space-3); }
.hero-match-panel__teams > div { display:grid; justify-items:center; gap:var(--space-2); min-width:0; }
.hero-match-panel__teams p { width:100%; margin:0; overflow:hidden; font-family:var(--font-display); font-size:var(--text-xs); font-weight:var(--font-weight-bold); line-height:1; text-align:center; text-overflow:ellipsis; text-transform:uppercase; white-space:nowrap; }
.hero-match-panel__teams .team-logo { width:3.65rem; height:3.65rem; }
.hero-match-panel__teams .match-card__versus { color:var(--color-text); font-size:var(--text-md); }
.hero-match-panel__match-link { display:block; padding:.2rem; border-radius:var(--radius-sm); color:inherit; text-decoration:none; transition:background var(--transition-fast),box-shadow var(--transition-fast); }
.hero-match-panel__match-link:hover { background:rgb(87 221 135 / .035); }
.hero-match-panel__match-link:focus-visible { outline:0; box-shadow:0 0 0 2px var(--color-accent-bright); }
.hero-match-panel__date { margin:var(--space-4) 0 var(--space-1); font-family:var(--font-display); font-size:clamp(1.05rem,1.55vw,1.5rem); font-weight:var(--font-weight-bold); letter-spacing:.01em; line-height:1; text-align:center; text-transform:uppercase; }
.hero-match-panel__broadcast { justify-self:center; margin:var(--space-2) 0 0; color:var(--color-text-muted); }
.hero-match-panel__venue { margin:var(--space-3) 0 0; color:var(--color-text-muted); font-size:.62rem; letter-spacing:.06em; text-align:center; text-transform:uppercase; }
.hero-match-panel__venue:last-child { margin-bottom:var(--space-4); }
.hero-match-panel__countdown{margin:var(--space-4) 0 0;padding-top:var(--space-3);border-top:1px solid var(--color-border)}.hero-match-panel__countdown>p{margin:0 0 var(--space-2);color:var(--color-text-dim);font-size:.58rem;font-weight:var(--font-weight-bold);letter-spacing:var(--tracking-label);text-align:center;text-transform:uppercase}.hero-match-panel__countdown-values{display:flex;align-items:flex-start;justify-content:center;gap:.35rem}.hero-match-panel__countdown-values span{display:grid;gap:.2rem;justify-items:center;min-width:2.2rem}.hero-match-panel__countdown-values b{color:var(--color-accent-bright);font-family:var(--font-display);font-size:clamp(1.1rem,1.8vw,1.55rem);line-height:1}.hero-match-panel__countdown-values i{margin-top:.02rem;color:var(--color-text-dim);font-style:normal}.hero-match-panel__countdown-values small{color:var(--color-text-dim);font-size:.48rem;font-weight:var(--font-weight-bold);letter-spacing:.03em;text-transform:uppercase}.hero-match-panel__countdown.is-waiting .hero-match-panel__countdown-values{opacity:.5}
.hero-match-panel__waiting{justify-self:center;margin:var(--space-4) 0 0;padding-top:var(--space-3);border-top:1px solid var(--color-border);color:var(--color-text-dim);font-size:.58rem;font-weight:var(--font-weight-bold);letter-spacing:var(--tracking-label);text-align:center;text-transform:uppercase}
.hero-match-panel__cta { display:inline-flex; align-items:center; justify-self:center; gap:var(--space-2); margin-top:var(--space-4); padding:.7rem 1rem; background:linear-gradient(105deg,var(--color-accent-bright),var(--color-accent)); color:var(--color-ink); font-family:var(--font-display); font-size:.62rem; font-weight:var(--font-weight-bold); letter-spacing:.08em; line-height:1; text-transform:uppercase; }
.hero-match-panel__cta:hover { box-shadow:var(--shadow-glow); }
.hero-match-panel__ticket-wrap { display:grid; justify-items:center; gap:.35rem; }
.hero-match-panel__ticket-price { color:var(--color-text-muted); font-size:.63rem; font-weight:var(--font-weight-bold); letter-spacing:.03em; line-height:1; }
.hero-match-panel__results { padding:0 clamp(1.3rem,2.8vw,3rem) clamp(1.1rem,2vw,2rem); }
.hero-match-panel__results .hero-match-panel__heading { margin:0; padding:var(--space-4) 0; }
.hero-match-result { display:grid; grid-template-columns:minmax(0,1fr) auto minmax(0,1fr); align-items:center; column-gap:var(--space-2); padding:var(--space-2); border-top:1px solid var(--color-border); border-radius:var(--radius-sm); color:inherit; text-decoration:none; transition:background var(--transition-fast),box-shadow var(--transition-fast); }
.hero-match-result:hover { background:rgb(87 221 135 / .06); }
.hero-match-result:focus-visible { outline:0; box-shadow:0 0 0 2px var(--color-accent-bright); }
.hero-match-result__team { display:flex; align-items:center; gap:var(--space-2); min-width:0; font-family:var(--font-display); font-size:.62rem; font-weight:var(--font-weight-bold); line-height:1; text-transform:uppercase; }
.hero-match-result__team--away { justify-content:flex-end; text-align:right; }
.hero-match-result__team span { overflow:hidden; text-overflow:ellipsis; white-space:nowrap; }
.hero-match-result .team-logo { flex:0 0 auto; width:1.65rem; height:1.65rem; }
.hero-match-result strong { color:var(--color-accent-bright); font-family:var(--font-display); font-size:1.2rem; letter-spacing:var(--tracking-display); }
.hero-match-result time { grid-column:1 / -1; margin-top:.2rem; color:var(--color-text-dim); font-size:.55rem; font-weight:var(--font-weight-bold); letter-spacing:.06em; text-align:center; text-transform:uppercase; }
.hero-match-panel__empty { margin:0; color:var(--color-text-muted); font-size:var(--text-xs); line-height:1.5; text-align:center; }
.hero-match-panel .match-card__live { justify-self:center; margin:0 0 var(--space-3); }
.match-scoreboard { display: grid; grid-template-columns: minmax(0, 1fr) minmax(20rem, .95fr); border: var(--border-width) solid var(--color-border-strong); background: linear-gradient(112deg, rgb(5 9 6 / 96%), rgb(10 17 12 / 94%)); box-shadow: 0 1.8rem 4rem rgb(0 0 0 / 48%), inset 0 1px 0 rgb(87 221 135 / 12%); backdrop-filter: blur(.75rem); }
.match-scoreboard__results { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); }
.match-card, .match-scoreboard__empty { position: relative; min-height: 14rem; padding: var(--space-5); border-right: var(--border-width) solid var(--color-border); }
.match-card::before { position: absolute; top: 1rem; left: var(--space-5); width: 2.5rem; height: 1px; background: var(--color-accent); content: ""; opacity: .72; }
.match-scoreboard__next .match-card, .match-scoreboard__next .match-scoreboard__empty { min-height: 100%; border: 0; background: linear-gradient(145deg, rgb(17 25 19 / 94%), rgb(5 10 7 / 96%)); }
.match-card__meta { margin: var(--space-3) 0 var(--space-5); color: var(--color-accent-bright); font-size: var(--text-xs); font-weight: var(--font-weight-bold); letter-spacing: var(--tracking-label); line-height: 1; text-transform: uppercase; }
.match-card__environment { position: absolute; top: var(--space-3); right: var(--space-4); color: var(--color-text-dim); font-size: .56rem; font-weight: var(--font-weight-bold); letter-spacing: .1em; }
.match-card__live { display: inline-flex; align-items: center; gap: .35rem; margin: calc(var(--space-3) * -1) 0 var(--space-3); color: var(--color-accent-bright); font-size: var(--text-xs); font-weight: var(--font-weight-bold); letter-spacing: var(--tracking-label); }
.match-card__live::before { width: .42rem; height: .42rem; border-radius: 50%; background: var(--color-accent-bright); box-shadow: 0 0 .65rem rgb(36 184 93 / 70%); content: ""; }
.match-card--live { box-shadow: inset 0 0 0 1px rgb(36 184 93 / 28%); }
.match-card--live .match-card__versus { color: var(--color-accent-bright); font-size: var(--text-lg); }
.match-card__teams { display: grid; grid-template-columns: 1fr auto 1fr; align-items: center; gap: var(--space-3); text-align: center; }
.match-card__teams > div { display: grid; gap: var(--space-2); justify-items: center; }
.match-card__team-name { margin: 0; font-family: var(--font-display); font-size: var(--text-sm); font-weight: var(--font-weight-bold); line-height: 1; text-transform: uppercase; }
.team-logo { display:grid; width:3.25rem; height:3.25rem; place-items:center; padding:.32rem; border:1px solid rgb(18 25 19 / .16); border-radius:.42rem; background:linear-gradient(145deg,#f7f7f3,#d9ddd5); box-shadow:0 .35rem .85rem rgb(0 0 0 / .16),inset 0 0 0 1px rgb(255 255 255 / .55); }
.team-logo img { width:100%; height:100%; max-height:100%; object-fit:contain; }
.team-logo__fallback { display:grid; width:100%; height:100%; place-items:center; border-radius:.22rem; color:var(--color-accent-deep); font-family:var(--font-display); font-size:var(--text-sm); font-weight:var(--font-weight-bold); }
.match-card__versus { color: var(--color-text-dim); font-family: var(--font-display); font-size: var(--text-sm); font-weight: var(--font-weight-bold); }
.match-card__date { margin: var(--space-4) 0 var(--space-2); color: var(--color-text); font-family: var(--font-display); font-size: var(--text-md); font-weight: var(--font-weight-bold); letter-spacing: .01em; line-height: 1; text-align: center; text-transform: uppercase; }
.match-card__venue { margin: 0; color: var(--color-text-muted); font-size: var(--text-xs); letter-spacing: .04em; text-align: center; text-transform: uppercase; }
.match-card__cta { margin-top: var(--space-4); width: 100%; min-height: 2.5rem; font-size: var(--text-xs); }
.match-card__result { display: grid; grid-template-columns: minmax(0, 1fr) auto minmax(0, 1fr); align-items: center; gap: var(--space-2); }
.match-card__club, .match-card__opponent { display: grid; gap: var(--space-2); font-family: var(--font-display); font-size: var(--text-sm); line-height: 1; text-transform: uppercase; }
.match-card__opponent { text-align: right; }
.match-card__location { color: var(--color-text-dim); font-size: var(--text-xs); letter-spacing: .06em; }
.match-card__score { color: var(--color-text); font-family: var(--font-display); font-size: var(--text-xl); letter-spacing: var(--tracking-display); line-height: .7; }
.match-card--win .match-card__score { color: var(--color-accent-bright); }
.match-card__result--placeholder .team-logo { margin-top: var(--space-2); }
.match-card__result--placeholder .match-card__opponent .team-logo { justify-self: end; }
.match-card--placeholder .match-card__score { color: var(--color-text-muted); font-size: clamp(1.8rem, 2.5vw, 2.7rem); }
.match-card--placeholder .match-card__cta { opacity: .78; cursor: not-allowed; }
.match-card__empty { display: grid; align-content: center; color: var(--color-text-muted); font-size: var(--text-sm); }
.match-card__empty p:last-child { margin-bottom: 0; }

@media (max-width: 63.99rem) {
  .hero__carousel { min-height:clamp(34rem,72vh,42rem); }
  .hero__copy { max-width:94%; }
  .hero__match-panel-wrap { grid-template-columns:minmax(0,1fr) minmax(17rem,43%); }
  .hero-match-panel__next { padding:var(--space-5); }
  .hero-match-panel__results { padding:0 var(--space-5) var(--space-4); }
  .match-scoreboard { grid-template-columns: 1fr; }
  .match-scoreboard__next { border-top: var(--border-width) solid var(--color-border); }
}
@media (max-width: 47.99rem) {
  .hero__carousel { min-height:0; }
  .hero__slides, .hero__slide { min-height:min(36rem,calc(100svh - 4.5rem)); }
  .hero__wash { background: radial-gradient(ellipse at 80% 62%, rgb(36 184 93 / 18%), transparent 32%), linear-gradient(0deg, var(--color-ink) 0%, rgb(3 5 4 / 74%) 52%, rgb(3 5 4 / 24%) 100%); }
  .hero__content { align-items:center; padding:var(--space-6) var(--gutter) 6rem; }
  .hero__copy { max-width: 100%; }
  .hero__title { max-width:100%; font-size:clamp(2.2rem,10.5vw,3.7rem); line-height:1.02; -webkit-line-clamp:5; }
  .hero__description { font-size: var(--text-base); }
  .hero__actions .button { flex: 1 1 auto; }
  .hero__controls { bottom:var(--space-4); }
  .hero__match-panel-wrap { position:relative; display:block; width:100%; min-height:0; padding:0; }
  .hero-match-panel { display:block; border-inline:0; }
  .hero-match-panel__next { padding:var(--space-6) var(--gutter); }
  .hero-match-panel__results { padding:0 var(--gutter) var(--space-5); border-top:1px solid var(--color-border); }
  .hero-match-result { padding-block:var(--space-3); }
  .hero__scoreboard-wrap { width: 100%; margin-top: 0; }
  .match-scoreboard { border-inline: 0; }
  .match-scoreboard__next { order: -1; }
  .match-scoreboard__results { grid-template-columns: 1fr; }
  .match-scoreboard__results .match-card + .match-card { border-top: var(--border-width) solid var(--color-border); }
  .match-card, .match-scoreboard__empty { min-height: auto; padding: var(--space-5) var(--gutter); border-right: 0; }
  .match-card--upcoming { padding-block: var(--space-6); }
}
@media (prefers-reduced-motion: reduce) {
  .hero__slide, .hero__pagination-button, .content-card, .content-card__media img, .homepage-match-card, .squad-player { transition: none; }
	.hero__video{display:none}
	.hero__pagination-button.is-active span::after{animation:none!important;transform:scaleX(1)}
  .homepage-match-card:hover, .homepage-match-card:focus-within, .squad-player:hover, .squad-player:focus-within { transform:none; }
}

/* Compact homepage editorial, season and match modules. */
.season-stats { position:relative; overflow:hidden; border-block:1px solid rgb(87 221 135 / .32); background:linear-gradient(105deg,#0a5630 0%,#137c3c 42%,#0b3c24 100%); box-shadow:inset 0 1px 0 rgb(255 255 255 / .12), inset 0 -1px 0 rgb(0 0 0 / .28); }
.season-stats::before { position:absolute; inset:-55% 30% auto -15%; height:180%; background:radial-gradient(ellipse,rgb(130 255 170 / .23),transparent 56%); content:""; pointer-events:none; }
.season-stats__inner { position:relative; }
.season-stats__items { display:grid; grid-template-columns:repeat(5,minmax(0,1fr)); }
.season-stat { display:grid; grid-template-columns:auto 1fr; grid-template-rows:auto auto; align-content:center; column-gap:var(--space-3); min-width:0; min-height:6.7rem; padding:var(--space-4) var(--space-5); border-left:1px solid rgb(255 255 255 / .16); }
.season-stat__icon { grid-row:span 2; align-self:center; color:rgb(235 255 239 / .62); font-family:var(--font-display); font-size:1.15rem; line-height:1; }
.season-stat__value { overflow:hidden; color:#fff; font-family:var(--font-display); font-size:clamp(1.5rem,2.15vw,2.35rem); font-weight:var(--font-weight-black); letter-spacing:var(--tracking-display); line-height:.9; text-overflow:ellipsis; white-space:nowrap; }
.season-stat:last-child .season-stat__value { font-size:clamp(.9rem,1.15vw,1.2rem); letter-spacing:-.03em; }
.season-stat__label { margin-top:var(--space-1); color:rgb(235 255 239 / .68); font-size:.55rem; font-weight:var(--font-weight-bold); letter-spacing:var(--tracking-label); line-height:1.2; text-transform:uppercase; }
.season-stats__test { position:absolute; top:var(--space-3); right:0; color:rgb(235 255 239 / .66); font-size:.56rem; font-weight:var(--font-weight-bold); letter-spacing:.12em; }
.homepage-matches { padding-block:var(--homepage-section-space); background:radial-gradient(circle at 75% 3%,var(--color-accent-glow),transparent 18%),var(--color-ink); }
.homepage-matches__heading { display:flex; align-items:end; justify-content:space-between; gap:var(--space-5); margin-bottom:var(--space-6); }
.homepage-matches__heading h2 { margin:0; font-size:clamp(2rem,4vw,4.5rem); }
.homepage-matches__tabs { display:flex; gap:var(--space-2); border-bottom:1px solid var(--color-border); }
.homepage-matches__tabs button { padding:0 0 var(--space-3); border:0; border-bottom:2px solid transparent; background:transparent; color:var(--color-text-dim); font-family:var(--font-display); font-size:var(--text-xs); font-weight:var(--font-weight-bold); letter-spacing:var(--tracking-label); text-transform:uppercase; cursor:pointer; }
.homepage-matches__tabs button + button { margin-left:var(--space-4); }
.homepage-matches__tabs button[aria-selected="true"] { border-color:var(--color-accent-bright); color:var(--color-text); }
.homepage-match-rail { display:grid; grid-auto-columns:minmax(16rem,1fr); grid-auto-flow:column; gap:var(--space-3); overflow-x:auto; overscroll-behavior-inline:contain; margin-inline:calc(var(--gutter) * -1); padding:.85rem calc(var(--gutter) + .85rem) calc(var(--space-3) + .85rem); scroll-padding-inline:calc(var(--gutter) + .85rem); scroll-snap-type:x proximity; scrollbar-color:var(--color-accent-deep) transparent; }
.homepage-match-rail:focus-visible { outline:2px solid var(--color-accent-bright); outline-offset:4px; }
.homepage-match-card { position:relative; display:grid; align-content:start; min-height:12.25rem; padding:var(--space-5); border:1px solid rgb(245 247 244 / .14); border-radius:var(--radius-lg); background:linear-gradient(145deg,rgb(20 33 23 / .72),rgb(4 8 5 / .86)); box-shadow:inset 0 1px 0 rgb(255 255 255 / .06); scroll-snap-align:start; transition:border-color var(--transition-base),transform var(--transition-base),box-shadow var(--transition-base),background var(--transition-base); }
.homepage-match-card:hover, .homepage-match-card:focus-within { border-color:rgb(87 221 135 / .5); background:linear-gradient(145deg,rgb(25 43 30 / .84),rgb(5 13 8 / .92)); box-shadow:0 .9rem 1.8rem rgb(0 0 0 / .2),0 0 1.7rem rgb(36 184 93 / .12),inset 0 1px 0 rgb(255 255 255 / .09); transform:scale(1.012); }
.homepage-match-card__detail-link { position:absolute; z-index:2; inset:0; border-radius:inherit; }
.homepage-match-card__detail-link:focus-visible { outline:2px solid var(--color-accent-bright); outline-offset:2px; }
@supports (backdrop-filter: blur(1px)) { .homepage-match-card { backdrop-filter:blur(12px); } }
.homepage-match-card__meta { display:flex; align-items:flex-start; justify-content:space-between; gap:var(--space-3); margin:var(--space-2) 0 var(--space-1); color:var(--color-accent-bright); font-size:.56rem; font-weight:var(--font-weight-bold); letter-spacing:var(--tracking-label); line-height:1.25; text-transform:uppercase; }
.homepage-match-card__meta > span:first-child { min-width:0; }
.homepage-match-card__meta small { color:var(--color-text-dim); font-size:inherit; white-space:nowrap; }
.homepage-match-card__location { display:inline-flex; flex:0 0 auto; align-items:center; gap:.3rem; padding:.25rem .38rem; border:1px solid var(--color-border); border-radius:2px; font-size:.52rem; line-height:1; white-space:nowrap; }
.homepage-match-card__location svg { width:.8rem; height:.8rem; fill:none; stroke:currentColor; stroke-linecap:round; stroke-linejoin:round; stroke-width:1.8; }
.homepage-match-card__location.is-home { border-color:rgb(87 221 135 / .35); background:rgb(36 184 93 / .1); color:var(--color-accent-bright); }
.homepage-match-card__location.is-away { border-color:rgb(185 199 210 / .22); background:rgb(185 199 210 / .05); color:#b7c3cc; }
.homepage-match-card__date { margin:0 0 var(--space-4); color:var(--color-text-muted); font-size:.68rem; font-weight:var(--font-weight-bold); letter-spacing:.04em; }
.homepage-match-card__teams { display:grid; grid-template-columns:minmax(0,1fr) auto minmax(0,1fr); align-items:center; gap:var(--space-2); }
.homepage-match-card__teams > div { display:grid; justify-items:center; gap:var(--space-2); min-width:0; }
.homepage-match-card__teams p { width:100%; margin:0; overflow:hidden; font-family:var(--font-display); font-size:var(--text-sm); font-weight:var(--font-weight-bold); letter-spacing:0; line-height:1; text-align:center; text-overflow:ellipsis; text-transform:uppercase; white-space:nowrap; }
.homepage-match-card__teams strong { color:var(--color-accent-bright); font-family:var(--font-display); font-size:clamp(1.4rem,2vw,2rem); letter-spacing:var(--tracking-display); line-height:1; white-space:nowrap; }
.homepage-match-card__teams .team-logo { width:2.75rem; height:2.75rem; }
.homepage-match-card__venue { margin:var(--space-3) 0 0; color:var(--color-text-dim); font-size:.6rem; letter-spacing:.04em; text-align:center; text-transform:uppercase; }
.homepage-match-card__broadcast{justify-self:center;margin:.35rem 0 0;color:var(--color-text-dim);text-align:center}
.homepage-match-card__home-badge { justify-self:start; margin:var(--space-3) 0 0; padding:.34rem .5rem; border:1px solid rgb(87 221 135 / .42); border-radius:2px; background:rgb(36 184 93 / .13); color:var(--color-accent-bright); font-size:.55rem; font-weight:var(--font-weight-bold); letter-spacing:var(--tracking-label); line-height:1; text-transform:uppercase; }
.homepage-match-card--home { border-color:rgb(87 221 135 / .38); background:linear-gradient(145deg,rgb(20 54 32 / .82),rgb(4 15 8 / .92)); box-shadow:0 0 1.75rem rgb(36 184 93 / .09),inset 0 1px 0 rgb(127 245 164 / .12); }
.homepage-match-card__action { display:inline-flex; align-items:center; justify-content:center; gap:.35rem; align-self:end; margin-top:var(--space-3); padding:.65rem .78rem; border-radius:2px; background:var(--gradient-accent); color:var(--color-ink); font-family:var(--font-display); font-size:.6rem; font-weight:var(--font-weight-bold); letter-spacing:var(--tracking-label); line-height:1; text-align:center; text-transform:uppercase; }
.homepage-match-card__action:hover, .homepage-match-card__action:focus-visible { box-shadow:var(--shadow-glow); }
.homepage-match-card__ticket-wrap { display:grid; justify-items:center; gap:.35rem; align-self:end; }
.homepage-match-card__ticket-price { color:var(--color-text-muted); font-size:.63rem; font-weight:var(--font-weight-bold); line-height:1; }
.homepage-matches__empty { padding:var(--space-6); border:1px solid var(--color-border); color:var(--color-text-muted); }
@media (min-width:64rem) { .homepage-match-rail { grid-auto-columns:calc((100% - (var(--space-3) * 3)) / 4); } }
@media (max-width:63.99rem) { .season-stat { padding-inline:var(--space-3); } .season-stats__test { right:0; } }
@media (max-width:47.99rem) { .season-stats__items { grid-template-columns:repeat(2,minmax(0,1fr)); } .season-stat { min-height:5.9rem; padding:var(--space-3); } .season-stat:nth-child(odd) { border-left:0; } .season-stat:nth-child(n+3) { border-top:1px solid rgb(255 255 255 / .16); } .season-stat:last-child { grid-column:span 2; } .homepage-matches { padding-block:var(--space-6); } .homepage-matches__heading { align-items:flex-start; flex-direction:column; margin-bottom:var(--space-4); } .homepage-match-rail { grid-auto-columns:minmax(16.5rem,82vw); } .homepage-match-card__meta { gap:var(--space-2); } .homepage-match-card__location { font-size:.5rem; } }

/* Structural hero split: slide artwork and match information are sibling regions. */
.hero__shell { display:grid; grid-template-columns:minmax(0,59%) minmax(19rem,41%); min-height:clamp(35rem,68vh,46rem); background:var(--color-ink); }
.hero__shell > .hero__carousel { min-width:0; min-height:inherit; overflow:hidden; }
.hero__shell > .hero__match-panel-wrap { position:relative; z-index:2; display:block; min-width:0; min-height:inherit; padding:0; }
.hero__shell .hero-match-panel { display:grid; grid-column:auto; height:100%; }
.hero__shell .hero__controls { right:auto; width:100%; padding-right:clamp(1.5rem,2vw,2.5rem); justify-content:flex-end; }
@media (max-width:63.99rem) { .hero__shell { grid-template-columns:minmax(0,57%) minmax(17rem,43%); } }
@media (max-width:47.99rem) {
  .hero__shell { display:block; min-height:0; }
  .hero__shell > .hero__carousel { min-height:0; overflow:visible; }
  .hero__shell > .hero__match-panel-wrap { min-height:0; }
  .hero__shell .hero-match-panel { display:block; }
}

/* Carousel copy is editorially constrained: it cannot change the composed hero height. */
@media (min-width:48rem) {
  .hero__shell { height:auto; min-height:clamp(35rem,68vh,46rem); max-height:none; }
  .hero__shell > .hero__carousel { height:100%; min-height:inherit; max-height:none; }
  .hero__shell .hero-match-panel { grid-template-rows:max-content minmax(min-content,1fr); min-height:100%; align-content:start; }
  .hero__shell .hero-match-panel__next { align-content:start; }
  .hero__shell .hero__slides, .hero__shell .hero__slide { height:100%; min-height:0; max-height:100%; }
  .hero__shell .hero__slide { overflow:hidden; }
  .hero__shell .hero__content { min-height:0; height:100%; overflow:hidden; }
  .hero__shell .hero__copy { max-height:calc(100% - 7.5rem); overflow:hidden; }
  .hero__shell .hero__slide--long-content .hero__content { align-items:flex-start; padding-top:clamp(3rem,8vh,5rem); padding-bottom:6.5rem; }
  .hero__shell .hero__slide--long-content .hero__copy { max-height:100%; }
  .hero__shell .hero__title { display:-webkit-box; overflow:hidden; -webkit-box-orient:vertical; -webkit-line-clamp:4; line-height:1.02; }
  .hero__shell .hero__description { display:-webkit-box; overflow:hidden; -webkit-box-orient:vertical; -webkit-line-clamp:3; line-height:1.45; }
}
@media (max-width:47.99rem) {
  .hero__shell > .hero__carousel { overflow:hidden; }
  .hero__shell .hero__slide--long-content .hero__content { align-items:flex-start; padding-top:clamp(2.75rem,8svh,4rem); }
  .hero__shell .hero__title { display:-webkit-box; overflow:hidden; -webkit-box-orient:vertical; -webkit-line-clamp:5; line-height:1.02; }
  .hero__shell .hero__description { display:-webkit-box; overflow:hidden; -webkit-box-orient:vertical; -webkit-line-clamp:3; line-height:1.45; }
}

/* Homepage squad rail: intentionally native-scroll rather than slider-driven. */
.homepage-squad { position:relative; overflow:hidden; padding-block:var(--homepage-section-space); border-top:1px solid var(--color-border); background:radial-gradient(circle at 13% 10%,var(--color-accent-glow),transparent 25%),linear-gradient(145deg,var(--color-ink),var(--color-surface)); }
.homepage-squad__heading { display:flex; align-items:center; justify-content:space-between; gap:var(--space-5); margin-bottom:var(--space-5); }
.homepage-squad__heading h2, .homepage-matches__heading h2, .homepage-standings h2, .homepage-retail h2, .homepage-partners h2 { letter-spacing:.01em; }
.homepage-squad__heading h2 { margin:0; font-size:clamp(2rem,4vw,4.5rem); }
.homepage-squad__rail { --rail-effect-buffer:.8rem; display:grid; width:calc(100% + (var(--rail-effect-buffer) * 2)); grid-auto-flow:column; grid-auto-columns:minmax(9rem,1fr); gap:var(--space-3); overflow-x:auto; margin-inline:calc(var(--rail-effect-buffer) * -1); padding:.8rem var(--rail-effect-buffer) calc(.8rem + var(--space-2)); background:transparent; scroll-padding-inline:var(--rail-effect-buffer); scroll-snap-type:x proximity; scrollbar-color:var(--color-accent-deep) transparent; }
.homepage-squad__rail:focus-visible { outline:2px solid var(--color-accent-bright); outline-offset:4px; }
.squad-player { display:grid; grid-template-rows:minmax(0,1fr) auto; min-height:18rem; overflow:hidden; border:1px solid rgb(245 247 244 / .11); border-radius:var(--radius-lg); background:linear-gradient(155deg,rgb(17 26 19 / .88),rgb(4 8 5 / .96)); box-shadow:inset 0 1px 0 rgb(255 255 255 / .05); scroll-snap-align:start; transition:border-color var(--transition-base),transform var(--transition-base),box-shadow var(--transition-base); }
.squad-player:hover, .squad-player:focus-within { border-color:rgb(87 221 135 / .5); background:linear-gradient(155deg,rgb(24 42 29 / .94),rgb(5 13 8 / .98)); box-shadow:0 .9rem 1.8rem rgb(0 0 0 / .2),0 0 1.6rem rgb(36 184 93 / .12); transform:scale(1.012); }
.squad-player__portrait { position:relative; min-height:13rem; overflow:hidden; background:radial-gradient(ellipse at 50% 15%,rgb(76 223 127 / .28),transparent 48%),linear-gradient(165deg,#193322,#071008); }
.squad-player__portrait::after { position:absolute; inset:0; background:linear-gradient(0deg,rgb(4 8 5 / .5),transparent 45%); content:""; pointer-events:none; }
.squad-player__portrait img { display:block; width:100%; height:100%; object-fit:cover; object-position:var(--player-card-focal-x,50%) var(--player-card-focal-y,50%); filter:saturate(.85) contrast(1.05); transform:scale(var(--player-card-zoom,1)); transform-origin:var(--player-card-focal-x,50%) var(--player-card-focal-y,50%); }
.squad-player__portrait-fallback { position:absolute; bottom:-12%; left:50%; width:65%; height:84%; border:1px solid rgb(87 221 135 / .28); border-radius:48% 48% 12% 12%; background:linear-gradient(145deg,rgb(83 220 128 / .4),rgb(8 30 15 / .05)); box-shadow:0 0 3rem rgb(36 184 93 / .2); transform:translateX(-50%); }
.squad-player__portrait-fallback::before { position:absolute; top:-1.9rem; left:50%; width:3.6rem; height:3.6rem; border:1px solid rgb(87 221 135 / .32); border-radius:50%; background:#12331d; content:""; transform:translateX(-50%); }
.squad-player__details { position:relative; min-height:5rem; padding:var(--space-3); border-top:1px solid rgb(255 255 255 / .06); }
.squad-player__number { display:block; margin-bottom:.2rem; color:var(--color-accent-bright); font-family:var(--font-display); font-size:1.65rem; font-weight:var(--font-weight-black); letter-spacing:var(--tracking-display); line-height:.8; }
.squad-player h3 { margin:0; color:var(--color-text); font-family:var(--font-display); font-size:var(--text-sm); font-weight:var(--font-weight-bold); letter-spacing:-.025em; line-height:.95; }
.squad-player p { margin:var(--space-2) 0 0; color:var(--color-text-dim); font-size:.56rem; font-weight:var(--font-weight-bold); letter-spacing:var(--tracking-label); line-height:1.1; text-transform:uppercase; }
.homepage-squad__empty { margin:0; padding:var(--space-6); border:1px solid var(--color-border); color:var(--color-text-muted); }
@media (min-width:64rem) { .homepage-squad__rail { grid-auto-columns:calc((100% - 7px) / 8); } }
@media (max-width:47.99rem) { .homepage-squad { padding-block:var(--space-6); } .homepage-squad__heading { align-items:flex-start; flex-direction:column; margin-bottom:var(--space-4); } .homepage-squad__rail { width:calc(100% + var(--gutter) + (var(--rail-effect-buffer) * 2)); grid-auto-columns:minmax(9rem,42vw); margin-right:calc((var(--gutter) + var(--rail-effect-buffer)) * -1); padding-right:calc(var(--gutter) + var(--rail-effect-buffer)); } .squad-player { min-height:17rem; } }
