:root {
  --ink: #0b0c0f;
  --ink-2: #15171b;
  --ink-3: #22252b;
  --paper: #ffffff;
  --paper-2: #f5f6f7;
  --paper-3: #eceef0;
  --line: #dfe2e6;
  --muted: #6c737d;
  --muted-dark: #aab0b8;
  --accent: #d4af37;
  --accent-ink: #171205;
  --success: #d4af37;
  --danger: #e94f64;
  --warning: #d4af37;
  --shadow-sm: 0 10px 26px rgba(10,12,15,.08);
  --shadow-md: 0 22px 60px rgba(10,12,15,.13);
  --radius-sm: 12px;
  --radius: 20px;
  --radius-lg: 30px;
  --shell: 1240px;
  --section-y: 68px;
  --dock-h: 76px;
  --transition: 180ms ease;
}

* { box-sizing: border-box; }
html { scroll-behavior: smooth; scrollbar-color: #747b85 #111317; scrollbar-width: thin; }
body {
  margin: 0;
  background: var(--paper-2);
  color: var(--ink);
  font-family: Inter, ui-sans-serif, -apple-system, BlinkMacSystemFont, "Segoe UI", Arial, sans-serif;
  font-size: 15px;
  line-height: 1.65;
  padding-bottom: calc(var(--dock-h) + env(safe-area-inset-bottom));
  overflow-x: hidden;
}
body.sheet-open { overflow: hidden; }
body::-webkit-scrollbar, .table-scroll::-webkit-scrollbar, .horizontal-scroll::-webkit-scrollbar { width: 9px; height: 7px; }
body::-webkit-scrollbar-track, .table-scroll::-webkit-scrollbar-track, .horizontal-scroll::-webkit-scrollbar-track { background: #111317; }
body::-webkit-scrollbar-thumb, .table-scroll::-webkit-scrollbar-thumb, .horizontal-scroll::-webkit-scrollbar-thumb { background: #747b85; border-radius: 999px; border: 2px solid #111317; }
body::-webkit-scrollbar-thumb:hover, .table-scroll::-webkit-scrollbar-thumb:hover, .horizontal-scroll::-webkit-scrollbar-thumb:hover { background: var(--accent); }
img { max-width: 100%; display: block; }
a { color: inherit; text-decoration: none; }
button, input, textarea, select { font: inherit; }
button { color: inherit; }
svg.icon { width: 20px; height: 20px; flex: 0 0 auto; }

.skip-link { position: fixed; left: 12px; top: -80px; z-index: 9999; background: var(--paper); color: var(--ink); padding: 10px 14px; border-radius: 8px; box-shadow: var(--shadow-sm); }
.skip-link:focus { top: 12px; }
.shell { width: min(calc(100% - 32px), var(--shell)); margin-inline: auto; }
.narrow-shell { width: min(calc(100% - 32px), 880px); margin-inline: auto; }
.section { padding-block: var(--section-y); position: relative; }
.section--white { background: var(--paper); }
.section--dark { background: var(--ink); color: var(--paper); }
.section--tight { padding-block: 48px; }
.stack { display: grid; gap: 22px; }

.eyebrow {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  margin-bottom: 10px;
  color: #606772;
  font-size: 11px;
  line-height: 1;
  font-weight: 850;
  text-transform: uppercase;
  letter-spacing: .16em;
}
.section--dark .eyebrow, .dark-card .eyebrow { color: var(--muted-dark); }
.eyebrow::before { content: ""; width: 22px; height: 2px; background: var(--accent); border-radius: 999px; }
h1, h2, h3, h4, p { margin-top: 0; }
h1, h2, h3, h4 { line-height: 1.08; letter-spacing: -.035em; }
h1 { font-size: clamp(2.25rem, 10vw, 4.4rem); margin-bottom: 18px; }
h2 { font-size: clamp(1.8rem, 7vw, 3.25rem); margin-bottom: 14px; }
h3 { font-size: 1.18rem; margin-bottom: 10px; }
p { margin-bottom: 0; color: #5f6670; }
.section--dark p, .dark-card p { color: #bdc2c9; }
.lead { font-size: 1.05rem; line-height: 1.75; }
.section-heading { display: flex; align-items: end; justify-content: space-between; gap: 24px; margin-bottom: 30px; }
.section-heading > div { max-width: 760px; }
.section-heading h2 { margin-bottom: 12px; }
.section-heading p { max-width: 650px; }
.text-link { display: inline-flex; align-items: center; gap: 8px; white-space: nowrap; font-weight: 800; font-size: 13px; }
.text-link .icon { width: 17px; height: 17px; transition: transform var(--transition); }
.text-link:hover .icon { transform: translateX(4px); }

.button {
  min-height: 48px;
  padding: 0 18px;
  border: 1px solid transparent;
  border-radius: 999px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 9px;
  cursor: pointer;
  font-weight: 850;
  font-size: 13px;
  line-height: 1;
  transition: transform var(--transition), background var(--transition), border-color var(--transition), color var(--transition);
}
.button:hover { transform: translateY(-2px); }
.button--dark { background: var(--ink); color: var(--paper); }
.button--dark:hover { background: var(--ink-3); }
.button--accent { background: var(--accent); color: var(--accent-ink); }
.button--accent:hover { background: #e3c65c; }
.button--light { background: var(--paper); color: var(--ink); }
.button--outline { border-color: #c9cdd2; background: transparent; color: var(--ink); }
.button--outline:hover { border-color: var(--ink); }
.section--dark .button--outline { color: var(--paper); border-color: #444950; }
.hero .button--outline { color: var(--paper); border-color: rgba(255,255,255,.62); }
.hero .button--outline:hover { color: var(--paper); border-color: var(--paper); background: rgba(255,255,255,.1); }
.button--block { width: 100%; }
.icon-button { width: 44px; height: 44px; padding: 0; border: 0; border-radius: 50%; background: transparent; display: inline-flex; align-items: center; justify-content: center; cursor: pointer; position: relative; }
.icon-button:hover { background: rgba(255,255,255,.08); }
.icon-button--dark { color: var(--ink); background: var(--paper-2); }
.icon-button--dark:hover { background: var(--paper-3); }
.icon-button--bag .bag-count { position: absolute; right: 0; top: 0; min-width: 18px; height: 18px; padding: 0 4px; border-radius: 999px; background: var(--accent); color: var(--accent-ink); display: grid; place-items: center; font-size: 10px; font-weight: 900; border: 2px solid var(--ink); }

.club-strip { display: none; background: #050607; color: #aeb4bd; font-size: 11px; }
.club-strip__inner { min-height: 35px; display: flex; align-items: center; justify-content: space-between; gap: 20px; }
.club-strip__status, .club-strip__links, .club-strip__links a { display: flex; align-items: center; gap: 8px; }
.club-strip__links { gap: 20px; }
.club-strip .icon { width: 14px; height: 14px; }
.status-dot { width: 6px; height: 6px; border-radius: 50%; background: var(--success); box-shadow: 0 0 0 4px rgba(51,200,121,.12); }

.site-header { position: sticky; top: 0; z-index: 1000; background: rgba(11,12,15,.96); color: var(--paper); border-bottom: 1px solid rgba(255,255,255,.08); backdrop-filter: blur(18px); }
.site-header__inner { min-height: 72px; display: flex; align-items: center; justify-content: space-between; gap: 14px; }
.brand { display: inline-flex; align-items: center; gap: 11px; min-width: 0; }
.brand__crest { width: 46px; height: 46px; flex: 0 0 46px; border-radius: 50%; background: var(--paper); padding: 3px; overflow: hidden; }
.brand__crest img { width: 100%; height: 100%; object-fit: contain; }
.brand__copy { min-width: 0; display: grid; gap: 1px; }
.brand__copy strong { font-size: 14px; line-height: 1.05; white-space: nowrap; }
.brand__copy small { font-size: 9px; color: #9aa0a8; line-height: 1.1; white-space: nowrap; }
.desktop-nav { display: none; }
.header-actions { display: flex; align-items: center; gap: 2px; }
.header-ticket { display: none; min-height: 42px; padding-inline: 16px; }
.header-actions .icon-button { color: var(--paper); }

.mobile-context-bar { height: 38px; padding-inline: 16px; display: flex; align-items: center; justify-content: center; gap: 12px; overflow: hidden; background: var(--paper); border-bottom: 1px solid var(--line); font-size: 10px; font-weight: 800; text-transform: uppercase; letter-spacing: .05em; white-space: nowrap; }
.mobile-context-bar span { width: 3px; height: 3px; border-radius: 50%; background: #aeb4bb; }

.mobile-dock {
  position: fixed;
  z-index: 1200;
  left: 0; right: 0; bottom: 0;
  height: calc(var(--dock-h) + env(safe-area-inset-bottom));
  padding: 7px 8px env(safe-area-inset-bottom);
  display: grid;
  grid-template-columns: repeat(5, 1fr);
  gap: 2px;
  background: rgba(10,11,13,.97);
  color: #949aa3;
  border-top: 1px solid rgba(255,255,255,.1);
  backdrop-filter: blur(20px);
}
.mobile-dock__item { border: 0; background: transparent; color: inherit; display: flex; flex-direction: column; align-items: center; justify-content: center; gap: 5px; min-width: 0; cursor: pointer; border-radius: 12px; font-size: 10px; font-weight: 750; }
.mobile-dock__item .icon { width: 22px; height: 22px; }
.mobile-dock__item.is-active, .mobile-dock__item:active { color: var(--paper); background: rgba(255,255,255,.06); }
.mobile-dock__item.is-active .icon { color: var(--accent); }

.search-overlay, .more-sheet { position: fixed; inset: 0; z-index: 1600; pointer-events: none; visibility: hidden; }
.search-overlay.is-open, .more-sheet.is-open { pointer-events: auto; visibility: visible; }
.search-overlay__backdrop, .more-sheet__backdrop { position: absolute; inset: 0; background: rgba(0,0,0,.62); opacity: 0; transition: opacity 220ms ease; backdrop-filter: blur(3px); }
.search-overlay.is-open .search-overlay__backdrop, .more-sheet.is-open .more-sheet__backdrop { opacity: 1; }
.search-panel { position: absolute; left: 0; right: 0; top: 0; background: var(--paper); border-radius: 0 0 28px 28px; padding: 28px 16px 24px; transform: translateY(-105%); transition: transform 280ms cubic-bezier(.2,.8,.2,1); box-shadow: var(--shadow-md); }
.search-overlay.is-open .search-panel { transform: translateY(0); }
.search-panel__top, .more-sheet__head { display: flex; align-items: center; justify-content: space-between; gap: 16px; margin-bottom: 22px; }
.search-panel__top h2, .more-sheet__head h2 { font-size: 1.5rem; margin: 0; }
.site-search { min-height: 56px; border: 1px solid #cfd3d8; background: var(--paper-2); border-radius: 16px; display: flex; align-items: center; gap: 10px; padding-inline: 16px; }
.site-search input { flex: 1; border: 0; outline: 0; min-width: 0; background: transparent; font-size: 16px; }
.search-suggestions { display: grid; gap: 8px; margin-top: 14px; }
.search-suggestions > a { display: flex; align-items: center; gap: 13px; padding: 13px; border-radius: 14px; border: 1px solid var(--line); }
.search-suggestions > a > .icon { width: 22px; height: 22px; }
.search-suggestions span { display: grid; gap: 1px; }
.search-suggestions small { color: var(--muted); }
.more-sheet__panel { position: absolute; left: 0; right: 0; bottom: 0; background: var(--paper); border-radius: 28px 28px 0 0; padding: 10px 16px calc(24px + env(safe-area-inset-bottom)); transform: translateY(105%); transition: transform 280ms cubic-bezier(.2,.8,.2,1); max-height: min(86vh, 760px); overflow-y: auto; }
.more-sheet.is-open .more-sheet__panel { transform: translateY(0); }
.more-sheet__handle { width: 44px; height: 4px; margin: 0 auto 18px; border-radius: 999px; background: #d4d7da; }
.more-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 9px; }
.more-grid a { min-height: 92px; display: flex; flex-direction: column; justify-content: center; align-items: center; gap: 9px; text-align: center; border-radius: 17px; background: var(--paper-2); border: 1px solid var(--line); font-size: 11px; font-weight: 800; }
.more-grid .icon { width: 24px; height: 24px; }
.more-sheet__socials { margin-top: 18px; border-top: 1px solid var(--line); padding-top: 18px; display: flex; justify-content: space-between; align-items: center; font-size: 12px; font-weight: 800; }
.more-sheet__socials > div { display: flex; gap: 7px; }
.more-sheet__socials a { width: 38px; height: 38px; border-radius: 50%; display: grid; place-items: center; background: var(--ink); color: var(--paper); }

.hero { position: relative; background: var(--ink); color: var(--paper); overflow: hidden; }
.hero-slider { position: relative; min-height: 620px; }
.hero-slide { position: absolute; inset: 0; display: grid; align-items: end; opacity: 0; pointer-events: none; transition: opacity .6s ease; }
.hero-slide.is-active { opacity: 1; pointer-events: auto; }
.hero-slide__media { position: absolute; inset: 0; }
.hero-slide__media img { width: 100%; height: 100%; object-fit: cover; }
.hero-slide__media::after { content: ""; position: absolute; inset: 0; background: linear-gradient(180deg, rgba(7,8,10,.08) 5%, rgba(7,8,10,.25) 35%, rgba(7,8,10,.94) 92%), linear-gradient(90deg, rgba(7,8,10,.38), transparent 70%); }
.hero-slide__content { position: relative; z-index: 2; padding: 118px 0 82px; }
.hero-slide__content-inner { max-width: 820px; }
.hero-kicker { display: inline-flex; align-items: center; gap: 8px; margin-bottom: 14px; padding: 7px 10px; border-radius: 999px; background: rgba(255,255,255,.12); backdrop-filter: blur(12px); font-size: 10px; font-weight: 850; letter-spacing: .08em; text-transform: uppercase; }
.hero-kicker::before { content: ""; width: 7px; height: 7px; border-radius: 50%; background: var(--accent); }
.hero h1 { color: var(--paper); max-width: 840px; text-wrap: balance; }
.hero p { color: #d6dae0; max-width: 680px; font-size: 1rem; }
.hero-actions { margin-top: 26px; display: flex; flex-wrap: wrap; gap: 10px; }
.hero-controls { position: absolute; z-index: 3; bottom: 24px; left: 16px; right: 16px; display: flex; align-items: center; justify-content: space-between; }
.hero-dots { display: flex; gap: 7px; }
.hero-dot { width: 24px; height: 3px; border: 0; padding: 0; background: rgba(255,255,255,.38); border-radius: 999px; cursor: pointer; transition: width var(--transition), background var(--transition); }
.hero-dot.is-active { width: 44px; background: var(--accent); }
.hero-arrows { display: none; gap: 7px; }
.hero-arrow { width: 44px; height: 44px; border-radius: 50%; border: 1px solid rgba(255,255,255,.22); background: rgba(0,0,0,.25); color: var(--paper); cursor: pointer; display: grid; place-items: center; }

.quick-actions { margin-top: -28px; position: relative; z-index: 10; }
.quick-actions__grid { display: grid; grid-template-columns: repeat(2, 1fr); gap: 9px; padding: 11px; background: rgba(255,255,255,.92); border: 1px solid rgba(255,255,255,.7); box-shadow: var(--shadow-md); border-radius: 20px; backdrop-filter: blur(18px); }
.quick-action { min-height: 70px; display: flex; align-items: center; gap: 11px; padding: 12px; border-radius: 15px; background: var(--paper-2); }
.quick-action .icon { width: 23px; height: 23px; }
.quick-action span { display: grid; line-height: 1.2; }
.quick-action strong { font-size: 12px; }
.quick-action small { margin-top: 4px; color: var(--muted); font-size: 9px; }

.match-strip { display: grid; gap: 14px; }
.feature-match { border-radius: var(--radius); overflow: hidden; background: var(--paper); border: 1px solid var(--line); box-shadow: var(--shadow-sm); }
.feature-match__label { padding: 13px 16px; display: flex; justify-content: space-between; gap: 14px; border-bottom: 1px solid var(--line); font-size: 10px; text-transform: uppercase; letter-spacing: .08em; font-weight: 850; color: #6d747d; }
.feature-match__label strong { color: var(--ink); }
.feature-match__body { padding: 24px 16px 20px; display: grid; grid-template-columns: 1fr auto 1fr; gap: 12px; align-items: center; }
.feature-match__team { min-width: 0; display: grid; justify-items: center; gap: 10px; text-align: center; }
.feature-match__team img { width: 58px; height: 58px; object-fit: contain; }
.feature-match__team strong { font-size: 12px; line-height: 1.25; }
.feature-match__score { min-width: 72px; display: grid; justify-items: center; gap: 4px; }
.feature-match__score strong { font-size: 1.7rem; line-height: 1; }
.feature-match__score span { font-size: 9px; text-transform: uppercase; color: var(--muted); letter-spacing: .08em; font-weight: 800; }
.feature-match__footer { border-top: 1px solid var(--line); padding: 13px 16px; display: flex; align-items: center; justify-content: space-between; gap: 12px; }
.feature-match__footer > span { display: flex; align-items: center; gap: 6px; color: var(--muted); font-size: 10px; }
.feature-match__footer .icon { width: 14px; height: 14px; }
.feature-match__footer a { font-size: 11px; font-weight: 850; display: flex; align-items: center; gap: 5px; }

.news-layout { display: grid; gap: 14px; }
.news-feature, .news-card { overflow: hidden; border-radius: var(--radius); background: var(--paper); border: 1px solid var(--line); box-shadow: var(--shadow-sm); }
.news-feature { position: relative; min-height: 440px; display: flex; align-items: end; color: var(--paper); }
.news-feature__media { position: absolute; inset: 0; }
.news-feature__media img { width: 100%; height: 100%; object-fit: cover; }
.news-feature__media::after { content: ""; position: absolute; inset: 0; background: linear-gradient(180deg, transparent 20%, rgba(5,6,7,.9) 96%); }
.news-feature__body { position: relative; z-index: 2; padding: 24px; }
.news-feature__body p { color: #d1d5da; }
.news-feature__meta, .news-card__meta { display: flex; gap: 8px; flex-wrap: wrap; align-items: center; margin-bottom: 10px; font-size: 10px; font-weight: 800; text-transform: uppercase; letter-spacing: .05em; }
.news-feature__meta span:first-child, .news-card__meta span:first-child { color: var(--accent); }
.news-feature h3 { font-size: clamp(1.65rem, 7vw, 2.55rem); margin-bottom: 12px; }
.news-grid { display: grid; gap: 14px; }
.news-card { display: grid; grid-template-columns: 125px 1fr; min-height: 130px; }
.news-card__media { height: 100%; min-height: 130px; background: #ddd; }
.news-card__media img { width: 100%; height: 100%; object-fit: cover; }
.news-card__body { padding: 16px; min-width: 0; }
.news-card__body h3 { font-size: 1rem; line-height: 1.18; margin-bottom: 8px; }
.news-card__body p { display: none; font-size: 13px; }
.news-card__meta { color: var(--muted); margin-bottom: 7px; font-size: 9px; }

.horizontal-scroll { display: grid; grid-auto-flow: column; grid-auto-columns: minmax(250px, 82%); gap: 12px; overflow-x: auto; overflow-y: hidden; padding: 2px 2px 12px; scroll-snap-type: x proximity; overscroll-behavior-inline: contain; }
.horizontal-scroll > * { scroll-snap-align: start; }
.team-card { position: relative; min-height: 330px; overflow: hidden; border-radius: var(--radius); background: var(--ink); color: var(--paper); box-shadow: var(--shadow-sm); }
.team-card__media { position: absolute; inset: 0; }
.team-card__media img { width: 100%; height: 100%; object-fit: cover; }
.team-card__media::after { content: ""; position: absolute; inset: 0; background: linear-gradient(180deg, transparent 30%, rgba(7,8,10,.93) 96%); }
.team-card__content { position: absolute; z-index: 2; inset: auto 18px 18px; }
.team-card__content span { font-size: 9px; color: var(--accent); text-transform: uppercase; font-weight: 850; letter-spacing: .08em; }
.team-card__content h3 { margin: 5px 0 10px; font-size: 1.35rem; }
.team-card__content a { display: inline-flex; align-items: center; gap: 7px; font-size: 11px; font-weight: 850; }

.tables-grid { align-items: start; }
.table-card { background: var(--paper); border: 1px solid var(--line); border-radius: var(--radius); overflow: hidden; box-shadow: var(--shadow-sm); }
.table-card__header { min-height: 72px; padding: 18px; display: flex; align-items: center; justify-content: space-between; gap: 16px; border-bottom: 1px solid var(--line); }
.table-card__header h3 { margin: 0; font-size: 1.1rem; }
.table-card__header span { font-size: 10px; color: var(--muted); display: block; margin-top: 4px; }
.table-tabs { display: flex; gap: 6px; padding: 6px; border-radius: 999px; background: var(--paper-2); }
.table-tab { border: 0; background: transparent; cursor: pointer; border-radius: 999px; padding: 8px 11px; font-size: 10px; font-weight: 850; }
.table-tab.is-active { background: var(--ink); color: var(--paper); }
.table-panel { display: none; }
.table-panel.is-active { display: block; }
.table-scroll { overflow-x: auto; -webkit-overflow-scrolling: touch; }
.league-table { width: 100%; min-width: 720px; border-collapse: collapse; font-size: 12px; }
.league-table--compact { min-width: 560px; }
.league-table th, .league-table td { padding: 12px 11px; border-bottom: 1px solid #eceef0; text-align: center; white-space: nowrap; }
.league-table th { background: #f7f8f9; font-size: 9px; letter-spacing: .07em; text-transform: uppercase; color: #747b84; }
.league-table th:nth-child(2), .league-table td:nth-child(2) { text-align: left; }
.league-table tbody tr:last-child td { border-bottom: 0; }
.league-table tbody tr.is-club { background: #fff7dc; }
.table-team { display: flex; align-items: center; gap: 9px; min-width: 180px; font-weight: 650; }
.mini-crest { width: 26px; height: 26px; border-radius: 50%; display: grid; place-items: center; background: var(--paper); border: 1px solid #d9dce0; flex: 0 0 26px; overflow: hidden; padding: 2px; }
.mini-crest img { width: 100%; height: 100%; object-fit: contain; }
.mini-crest--blank { background: #e5e7ea; }
.table-note { padding: 12px 18px; font-size: 10px; color: var(--muted); border-top: 1px solid var(--line); }

.stats-band { display: grid; grid-template-columns: repeat(2, 1fr); gap: 1px; border-radius: var(--radius); overflow: hidden; background: #30333a; }
.stat-block { min-height: 138px; padding: 20px; background: var(--ink-2); display: flex; flex-direction: column; justify-content: space-between; }
.stat-block span { color: #9fa5ae; font-size: 10px; text-transform: uppercase; letter-spacing: .08em; font-weight: 850; }
.stat-block strong { color: var(--paper); font-size: 2.2rem; line-height: 1; }
.stat-block small { color: var(--accent); font-size: 10px; font-weight: 800; }

.shop-grid { display: grid; grid-template-columns: repeat(2, 1fr); gap: 10px; }
.product-card { overflow: hidden; background: var(--paper); border-radius: 16px; border: 1px solid var(--line); box-shadow: var(--shadow-sm); }
.product-card__media { aspect-ratio: 1/1; overflow: hidden; background: #f0f1f2; position: relative; }
.product-card__media img { width: 100%; height: 100%; object-fit: cover; transition: transform .35s ease; }
.product-card:hover .product-card__media img { transform: scale(1.035); }
.product-card__badge { position: absolute; top: 10px; left: 10px; z-index: 2; background: var(--ink); color: var(--paper); padding: 5px 8px; border-radius: 999px; font-size: 8px; font-weight: 850; text-transform: uppercase; }
.product-card__body { padding: 13px; }
.product-card__body small { color: var(--muted); text-transform: uppercase; font-weight: 800; font-size: 8px; letter-spacing: .05em; }
.product-card__body h3 { font-size: .96rem; line-height: 1.2; margin: 6px 0 10px; min-height: 37px; }
.product-card__bottom { display: flex; align-items: center; justify-content: space-between; gap: 8px; }
.product-card__bottom strong { font-size: .92rem; }
.quick-add { width: 34px; height: 34px; border-radius: 50%; border: 0; background: var(--ink); color: var(--paper); display: grid; place-items: center; cursor: pointer; }
.quick-add .icon { width: 16px; height: 16px; }

.partner-wall { background: var(--paper); border: 1px solid var(--line); border-radius: var(--radius); padding: 18px; display: grid; grid-template-columns: repeat(3, 1fr); gap: 8px; box-shadow: var(--shadow-sm); }
.partner-logo { min-height: 86px; display: grid; place-items: center; padding: 12px; background: #fafafa; border: 1px solid #eff0f1; border-radius: 12px; overflow: hidden; }
.partner-logo--dark { background: #202328; border-color: #30343a; }
.partner-logo img { max-width: 100%; max-height: 58px; object-fit: contain; filter: grayscale(1) drop-shadow(0 1px 1px rgba(0,0,0,.18)); opacity: .88; transition: filter var(--transition), opacity var(--transition), transform var(--transition); }
.partner-logo--dark img { filter: grayscale(1) drop-shadow(0 1px 2px rgba(0,0,0,.35)); opacity: 1; }
.partner-logo:hover img { filter: none drop-shadow(0 1px 2px rgba(0,0,0,.16)); opacity: 1; transform: scale(1.05); }

.cta-panel { position: relative; overflow: hidden; min-height: 360px; border-radius: var(--radius-lg); background: var(--ink); color: var(--paper); display: flex; align-items: end; box-shadow: var(--shadow-md); }
.cta-panel__media { position: absolute; inset: 0; }
.cta-panel__media img { width: 100%; height: 100%; object-fit: cover; opacity: .6; }
.cta-panel__media::after { content: ""; position: absolute; inset: 0; background: linear-gradient(90deg, rgba(5,6,7,.96), rgba(5,6,7,.25)), linear-gradient(180deg, transparent, rgba(5,6,7,.55)); }
.cta-panel__body { position: relative; z-index: 2; padding: 28px; max-width: 660px; }
.cta-panel__body h2 { color: var(--paper); }
.cta-panel__body p { color: #d4d8dd; }
.cta-panel__actions { margin-top: 22px; display: flex; flex-wrap: wrap; gap: 9px; }

.social-grid { display: grid; gap: 10px; }
.social-card { min-height: 138px; border-radius: var(--radius); padding: 20px; background: var(--paper); border: 1px solid var(--line); display: flex; flex-direction: column; justify-content: space-between; box-shadow: var(--shadow-sm); }
.social-card__top { display: flex; align-items: center; justify-content: space-between; gap: 14px; }
.social-card__icon { width: 44px; height: 44px; border-radius: 14px; background: var(--ink); color: var(--paper); display: grid; place-items: center; }
.social-card__icon .icon { width: 21px; height: 21px; }
.social-card span { color: var(--muted); font-size: 10px; text-transform: uppercase; font-weight: 850; letter-spacing: .06em; }
.social-card strong { margin-top: 4px; display: block; }

.page-hero { background: var(--ink); color: var(--paper); padding: 54px 0 42px; position: relative; overflow: hidden; }
.page-hero::after { content: "LAJFC"; position: absolute; right: -10px; bottom: -42px; font-size: 28vw; font-weight: 950; line-height: .7; letter-spacing: -.08em; color: rgba(255,255,255,.025); pointer-events: none; }
.page-hero__content { position: relative; z-index: 2; max-width: 820px; }
.page-hero h1 { margin-bottom: 14px; color: var(--paper); }
.page-hero p { color: #c8cdd3; max-width: 680px; }
.breadcrumbs { display: flex; align-items: center; gap: 7px; color: #aeb4bd; margin-bottom: 18px; font-size: 10px; font-weight: 750; }
.breadcrumbs .icon { width: 12px; height: 12px; }

.filter-bar { display: flex; gap: 7px; overflow-x: auto; padding-bottom: 8px; margin-bottom: 28px; scrollbar-width: none; }
.filter-bar::-webkit-scrollbar { display: none; }
.filter-chip { border: 1px solid #d7dade; background: var(--paper); border-radius: 999px; padding: 9px 13px; white-space: nowrap; font-size: 10px; font-weight: 850; cursor: pointer; }
.filter-chip.is-active { background: var(--ink); color: var(--paper); border-color: var(--ink); }
.news-list-grid { display: grid; gap: 14px; }
.news-list-grid .news-card { display: block; min-height: 0; }
.news-list-grid .news-card__media { aspect-ratio: 16/10; min-height: 0; }
.news-list-grid .news-card__body { padding: 18px; }
.news-list-grid .news-card__body p { display: block; }

.article-hero { background: var(--ink); color: var(--paper); }
.article-hero__media {
  width: 100%;
  overflow: visible;
  background: #0b0c0e;
  display: flex;
  justify-content: center;
  align-items: center;
}
.article-hero__media img {
  display: block;
  width: 100%;
  height: auto;
  object-fit: contain;
  object-position: center;
}
.article-head { padding: 34px 0; }
.article-head h1 { font-size: clamp(2rem, 9vw, 4rem); margin-bottom: 14px; }
.article-meta { color: #aeb4bd; font-size: 11px; display: flex; gap: 8px; flex-wrap: wrap; text-transform: uppercase; font-weight: 800; }
.article-copy { font-size: 1rem; }
.article-copy p { margin-bottom: 22px; color: #424850; }
.article-copy h2 { margin-top: 38px; font-size: 1.75rem; }
.article-copy blockquote { margin: 30px 0; padding: 24px; border-left: 4px solid var(--accent); background: var(--paper); border-radius: 0 16px 16px 0; font-size: 1.12rem; font-weight: 700; }
.share-row { display: flex; align-items: center; justify-content: space-between; gap: 16px; padding: 18px 0; margin-top: 28px; border-top: 1px solid var(--line); }
.share-row__buttons { display: flex; gap: 7px; }
.share-row__buttons a { width: 39px; height: 39px; display: grid; place-items: center; border-radius: 50%; background: var(--ink); color: var(--paper); }

.team-hero { position: relative; min-height: 480px; background: var(--ink); color: var(--paper); display: flex; align-items: end; overflow: hidden; }
.team-hero__media { position: absolute; inset: 0; }
.team-hero__media img { width: 100%; height: 100%; object-fit: cover; }
.team-hero__media::after { content: ""; position: absolute; inset: 0; background: linear-gradient(180deg, rgba(0,0,0,.12), rgba(0,0,0,.88) 95%); }
.team-hero__content { position: relative; z-index: 2; padding: 90px 0 38px; }
.team-hero__content h1 { color: var(--paper); margin-bottom: 12px; }
.team-hero__content p { color: #d2d6dc; max-width: 620px; }
.team-tabs { background: var(--paper); border-bottom: 1px solid var(--line); position: sticky; top: 72px; z-index: 40; }
.team-tabs__inner { display: flex; overflow-x: auto; scrollbar-width: none; }
.team-tabs__inner::-webkit-scrollbar { display: none; }
.team-tabs a { min-height: 52px; padding: 0 14px; display: inline-flex; align-items: center; white-space: nowrap; font-size: 10px; font-weight: 850; color: #777e87; border-bottom: 3px solid transparent; }
.team-tabs a.is-active { color: var(--ink); border-bottom-color: var(--ink); }
.team-section-grid { display: grid; gap: 10px; }
.team-section-card { min-height: 82px; padding: 16px; display: grid; grid-template-columns: 42px 1fr auto; align-items: center; gap: 13px; background: var(--paper); border: 1px solid var(--line); border-radius: 16px; box-shadow: var(--shadow-sm); }
.team-section-card > .icon:first-child { width: 22px; height: 22px; justify-self: center; }
.team-section-card > .icon:last-child { width: 17px; height: 17px; color: var(--muted); transition: transform var(--transition); }
.team-section-card:hover > .icon:last-child { transform: translateX(4px); }
.team-section-card span { display: grid; gap: 2px; }
.team-section-card strong { font-size: 13px; }
.team-section-card small { color: var(--muted); font-size: 10px; }
.team-empty { min-height: 220px; padding: 28px; display: flex; align-items: center; justify-content: center; gap: 18px; text-align: left; background: var(--paper); border: 1px dashed #cbd0d6; border-radius: var(--radius); }
.team-empty__icon { width: 54px; height: 54px; flex: 0 0 54px; border-radius: 16px; display: grid; place-items: center; background: var(--ink); color: var(--paper); }
.team-empty__icon .icon { width: 24px; height: 24px; }
.team-empty h3 { margin-bottom: 6px; }
.team-empty p { max-width: 640px; }
.roster-grid { display: grid; grid-template-columns: repeat(2, 1fr); gap: 10px; }
.player-card { position: relative; overflow: hidden; min-height: 270px; border-radius: 16px; background: #dfe1e4; }
.player-card img { width: 100%; height: 100%; object-fit: cover; object-position: center top; }
.player-card::after { content: ""; position: absolute; inset: 35% 0 0; background: linear-gradient(transparent, rgba(4,5,6,.9)); }
.player-card__number { position: absolute; z-index: 3; top: 10px; right: 11px; left: auto; font-size: 2.2rem; font-weight: 950; color: rgba(255,255,255,.88); line-height: 1; text-shadow: 0 2px 12px rgba(0,0,0,.25); }
.player-card__info { position: absolute; z-index: 3; left: 13px; right: 13px; bottom: 13px; color: var(--paper); }
.player-card__info small { color: var(--accent); font-weight: 850; text-transform: uppercase; font-size: 8px; letter-spacing: .08em; }
.player-card__info strong { display: block; font-size: 1rem; line-height: 1.15; margin-top: 4px; }

.player-hero { background: var(--ink); color: var(--paper); padding: 30px 0 34px; overflow: hidden; }
.player-hero__layout {
  display: grid;
  grid-template-columns: minmax(0,1.15fr) minmax(118px,.85fr);
  grid-template-areas:
    "info image"
    "facts facts";
  align-items: end;
  gap: 22px 12px;
}
.player-hero__info { grid-area: info; min-width: 0; padding: 16px 0 4px; position: relative; z-index: 2; }
.player-hero__image {
  grid-area: image;
  align-self: stretch;
  min-height: 280px;
  max-height: 340px;
  display: flex;
  align-items: end;
  justify-content: center;
  overflow: hidden;
  border-radius: 24px 24px 0 0;
  background: linear-gradient(180deg,rgba(255,255,255,.035),rgba(255,255,255,.01));
}
.player-hero__image img { display:block; max-width:100%; height:100%; width:100%; object-fit:contain; object-position:center bottom; }
.player-number { color: var(--accent); font-size: clamp(4.25rem,18vw,6rem); font-weight: 950; line-height: .82; margin: 14px 0 18px; }
.player-hero h1 { color: var(--paper); margin-bottom: 12px; font-size: clamp(2.25rem,10vw,4.2rem); overflow-wrap:anywhere; }
.player-hero p { color: #c0c5cb; }
.player-nationality-line { display:flex; align-items:center; gap:10px; min-width:0; }
.player-nationality-line span { min-width:0; line-height:1.35; }
 .player-facts {
  grid-area: facts;
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 1px;
  background: #33363b;
  border-radius: 20px;
  overflow: hidden;
  margin-top: 0;
  position: relative;
  z-index: 3;
}
.player-fact { padding: 17px; background: #17191d; }
.player-fact span { display: block; color: #8f969e; font-size: 8px; text-transform: uppercase; font-weight: 850; letter-spacing: .08em; }
.player-fact strong { display: block; color: var(--paper); margin-top: 5px; font-size:1.35rem; }

.match-list { display: grid; gap: 12px; }
.match-card { background: var(--paper); border: 1px solid var(--line); border-radius: var(--radius); overflow: hidden; box-shadow: var(--shadow-sm); }
.match-card__top { min-height: 48px; padding: 10px 14px; display: flex; justify-content: space-between; align-items: center; gap: 16px; border-bottom: 1px solid var(--line); color: var(--muted); font-size: 9px; text-transform: uppercase; font-weight: 800; letter-spacing: .05em; }
.match-card__top strong { color: var(--ink); }
.match-card__body { padding: 20px 14px; display: grid; grid-template-columns: 1fr auto 1fr; gap: 8px; align-items: center; }
.match-team { min-width: 0; display: grid; justify-items: center; text-align: center; gap: 8px; }
.match-team img { width: 48px; height: 48px; object-fit: contain; }
.match-team span { font-size: 10px; font-weight: 750; line-height: 1.2; }
.match-vs, .match-score { min-width: 68px; display: grid; place-items: center; text-align: center; }
.match-vs strong { font-size: 1.25rem; }
.match-vs span { font-size: 8px; color: var(--muted); text-transform: uppercase; font-weight: 800; }
.match-score { grid-template-columns: 1fr auto 1fr; gap: 5px; }
.match-score strong { font-size: 1.75rem; }
.match-score small { grid-column: 1 / -1; font-size: 8px; color: var(--muted); font-weight: 850; }
.match-card__bottom { min-height: 46px; padding: 10px 14px; display: flex; justify-content: space-between; align-items: center; gap: 12px; border-top: 1px solid var(--line); }
.match-card__bottom > span, .match-card__bottom a { display: flex; align-items: center; gap: 5px; font-size: 9px; color: var(--muted); }
.match-card__bottom a { color: var(--ink); font-weight: 850; }
.match-card__bottom .icon { width: 13px; height: 13px; }

.match-centre { background: var(--ink); color: var(--paper); padding: 48px 0; }
.match-centre__meta { text-align: center; margin-bottom: 28px; }
.match-centre__meta span { color: var(--accent); font-size: 10px; text-transform: uppercase; font-weight: 850; letter-spacing: .08em; }
.match-centre__meta h1 { font-size: 1.8rem; margin: 6px 0 8px; }
.match-centre__meta p { color: #989fa8; }
.match-centre__scoreboard { display: grid; grid-template-columns: 1fr auto 1fr; align-items: center; gap: 12px; text-align: center; }
.score-team { display: grid; justify-items: center; gap: 10px; }
.score-team img { width: 76px; height: 76px; object-fit: contain; }
.score-team strong { font-size: 12px; line-height: 1.2; }
.scoreline { display: grid; grid-template-columns: 1fr auto 1fr; align-items: center; gap: 8px; min-width: 110px; }
.scoreline strong { font-size: 2.8rem; line-height: 1; }
.scoreline small { grid-column: 1 / -1; color: #9ca3ab; font-size: 9px; text-transform: uppercase; font-weight: 850; }
.demo-chip { display: inline-flex; align-items: center; padding: 6px 9px; border-radius: 999px; background: rgba(212,175,55,.14); color: var(--accent); font-size: 8px; text-transform: uppercase; font-weight: 900; letter-spacing: .08em; }
.match-stat-grid { display: grid; grid-template-columns: repeat(2, 1fr); gap: 9px; }
.match-stat { background: var(--paper); border-radius: 15px; padding: 16px; border: 1px solid var(--line); }
.match-stat span { display: block; color: var(--muted); font-size: 9px; text-transform: uppercase; font-weight: 850; }
.match-stat strong { display: block; font-size: 1.8rem; margin-top: 5px; }
.timeline { display: grid; gap: 10px; }
.timeline-event { display: grid; grid-template-columns: 48px 1fr; gap: 10px; align-items: stretch; }
.timeline-event__time { display: grid; place-items: center; border-radius: 12px; background: var(--ink); color: var(--paper); font-weight: 850; font-size: 11px; }
.timeline-event__body { border: 1px solid var(--line); background: var(--paper); border-radius: 14px; padding: 13px 15px; }
.timeline-event__body strong { display: block; }
.timeline-event__body small { color: var(--muted); }
.event-icon { display: inline-block; width: 8px; height: 11px; border-radius: 2px; margin-right: 7px; background: var(--warning); vertical-align: -1px; }
.event-icon--red { background: var(--danger); }
.event-icon--goal { width: 11px; height: 11px; border-radius: 50%; background: var(--ink); }

.form-card { background: var(--paper); border: 1px solid var(--line); border-radius: var(--radius); padding: 20px; box-shadow: var(--shadow-sm); }
.form-grid { display: grid; gap: 16px; }
.form-row { display: grid; gap: 7px; }
.form-row label { font-size: 10px; text-transform: uppercase; letter-spacing: .07em; font-weight: 850; color: #606772; }
.form-row input, .form-row textarea, .form-row select { width: 100%; border: 1px solid #cfd3d7; background: #fbfbfc; color: var(--ink); border-radius: 12px; padding: 13px 14px; outline: none; transition: border var(--transition), box-shadow var(--transition); }
.form-row textarea { min-height: 150px; resize: vertical; }
.form-row input:focus, .form-row textarea:focus, .form-row select:focus { border-color: var(--ink); box-shadow: 0 0 0 3px rgba(11,12,15,.08); }
.form-grid--2 { display: grid; gap: 16px; }
.check-row { display: flex; align-items: flex-start; gap: 10px; color: #606772; font-size: 12px; }
.check-row input { margin-top: 4px; }
.info-card { background: var(--ink); color: var(--paper); border-radius: var(--radius); padding: 22px; }
.info-card h3 { margin-bottom: 12px; }
.info-card p { color: #c0c5cc; }
.info-list { display: grid; gap: 14px; margin-top: 22px; }
.info-list__item { display: flex; gap: 11px; }
.info-list__icon { width: 38px; height: 38px; border-radius: 12px; background: rgba(255,255,255,.08); color: var(--accent); display: grid; place-items: center; }
.info-list__icon .icon { width: 18px; height: 18px; }
.info-list__item span { display: grid; gap: 2px; }
.info-list__item small { color: #8f969e; font-size: 9px; text-transform: uppercase; font-weight: 850; }
.info-list__item strong { font-size: 12px; }

.documents-grid, .role-grid, .sponsor-grid { display: grid; gap: 12px; }
.document-card { min-height: 120px; padding: 18px; border: 1px solid var(--line); background: var(--paper); border-radius: 16px; display: flex; align-items: center; gap: 14px; box-shadow: var(--shadow-sm); }
.document-card__icon { width: 48px; height: 48px; flex: 0 0 48px; border-radius: 14px; display: grid; place-items: center; background: var(--ink); color: var(--paper); }
.document-card__copy { min-width: 0; flex: 1; }
.document-card__copy small { color: var(--muted); font-size: 9px; text-transform: uppercase; font-weight: 850; }
.document-card__copy strong { display: block; margin-top: 3px; line-height: 1.3; }
.document-card__download { width: 38px; height: 38px; flex: 0 0 38px; display: grid; place-items: center; border-radius: 50%; background: var(--paper-2); }
.role-card { padding: 20px; background: var(--paper); border: 1px solid var(--line); border-radius: var(--radius); box-shadow: var(--shadow-sm); }
.role-card__top { display: flex; justify-content: space-between; gap: 14px; align-items: start; margin-bottom: 18px; }
.role-card__role { color: var(--muted); font-size: 9px; text-transform: uppercase; font-weight: 850; letter-spacing: .07em; }
.role-card__name { font-size: 1.35rem; font-weight: 900; margin-top: 4px; }
.role-card__badge { width: 44px; height: 44px; border-radius: 14px; background: var(--ink); color: var(--accent); display: grid; place-items: center; }
.role-card ul { margin: 16px 0 0; padding-left: 18px; color: #59616a; font-size: 13px; }
.role-card li + li { margin-top: 6px; }
.sponsor-card { min-height: 230px; background: var(--paper); border: 1px solid var(--line); border-radius: var(--radius); padding: 22px 18px 18px; display: grid; grid-template-rows: minmax(100px,1fr) auto; align-items: stretch; gap: 16px; box-shadow: var(--shadow-sm); overflow: hidden; }
.sponsor-card--dark { background: #202328; border-color: #30343a; }
.sponsor-card__logo { min-height: 100px; display: grid; place-items: center; border-radius: 14px; }
.sponsor-card img { max-width: 88%; max-height: 90px; object-fit: contain; filter: drop-shadow(0 1px 1px rgba(0,0,0,.14)); }
.sponsor-card--dark img { filter: drop-shadow(0 1px 2px rgba(0,0,0,.35)); }
.sponsor-card__content { width: 100%; display: grid; gap: 12px; align-self: end; }
.sponsor-card__name { width: 100%; text-align: center; color: var(--muted); font-size: 9px; font-weight: 850; letter-spacing: .08em; text-transform: uppercase; }
.sponsor-card__button { min-height: 44px; font-size: 11px; }
.sponsor-card--dark .sponsor-card__name { color: #aeb4bd; }

.product-detail { display: grid; gap: 24px; }
.product-gallery { border-radius: var(--radius); overflow: hidden; background: var(--paper); border: 1px solid var(--line); }
.product-gallery img { width: 100%; aspect-ratio: 1/1; object-fit: cover; }
.product-info { align-self: center; }
.product-info h1 { font-size: clamp(2rem, 9vw, 3.7rem); margin-bottom: 14px; }
.product-price { display: block; font-size: 1.35rem; font-weight: 900; margin: 15px 0; }
.product-options { display: grid; gap: 14px; margin: 22px 0; }
.product-options select { width: 100%; min-height: 48px; border: 1px solid #cfd3d7; border-radius: 12px; background: var(--paper); padding: 0 13px; }
.quantity-row { display: flex; gap: 9px; }
.quantity { height: 48px; min-width: 112px; border: 1px solid #cfd3d7; border-radius: 999px; display: grid; grid-template-columns: 34px 1fr 34px; align-items: center; overflow: hidden; }
.quantity button { border: 0; background: transparent; cursor: pointer; display: grid; place-items: center; }
.quantity input { min-width: 0; width: 100%; border: 0; text-align: center; outline: none; font-weight: 850; }
.product-bullets { margin: 20px 0 0; padding: 0; list-style: none; display: grid; gap: 9px; }
.product-bullets li { display: flex; gap: 9px; align-items: start; color: #575f68; }
.product-bullets li::before { content: "✓"; width: 20px; height: 20px; flex: 0 0 20px; border-radius: 50%; background: #eef6c9; display: grid; place-items: center; font-size: 11px; font-weight: 950; }

.basket-layout { display: grid; gap: 18px; }
.basket-card, .order-summary { background: var(--paper); border: 1px solid var(--line); border-radius: var(--radius); padding: 18px; box-shadow: var(--shadow-sm); }
.basket-item { display: grid; grid-template-columns: 82px 1fr auto; gap: 12px; align-items: center; }
.basket-item img { width: 82px; height: 82px; border-radius: 12px; object-fit: cover; }
.basket-item__copy strong { display: block; line-height: 1.25; }
.basket-item__copy small { color: var(--muted); }
.order-summary { display: grid; gap: 14px; }
.summary-row { display: flex; justify-content: space-between; gap: 20px; padding-bottom: 12px; border-bottom: 1px solid var(--line); }
.summary-row--total { font-size: 1.15rem; font-weight: 900; border-bottom: 0; }

.empty-state { min-height: 300px; background: var(--paper); border: 1px solid var(--line); border-radius: var(--radius); padding: 32px 22px; display: grid; place-items: center; text-align: center; box-shadow: var(--shadow-sm); }
.empty-state__icon { width: 68px; height: 68px; border-radius: 22px; background: var(--ink); color: var(--accent); display: grid; place-items: center; margin: 0 auto 18px; }
.empty-state__icon .icon { width: 30px; height: 30px; }
.empty-state h2 { font-size: 1.6rem; }
.empty-state p { max-width: 480px; margin: 0 auto 20px; }

.site-footer { background: #08090b; color: var(--paper); padding: 54px 0 24px; }
.footer-main { display: grid; gap: 34px; }
.footer-brand { display: flex; align-items: center; gap: 15px; }
.footer-brand img { width: 76px; height: 76px; object-fit: contain; }
.footer-brand strong { display: block; font-size: 1.1rem; }
.footer-brand p { color: #8f969e; font-size: 11px; margin-top: 3px; }
.footer-brand span { color: var(--accent); font-size: 10px; font-weight: 850; text-transform: uppercase; letter-spacing: .07em; }
.footer-links { display: grid; grid-template-columns: repeat(2, 1fr); gap: 26px; }
.footer-links h3 { font-size: 11px; text-transform: uppercase; color: #8f969e; letter-spacing: .08em; margin-bottom: 10px; }
.footer-links a { display: block; color: #e0e3e7; font-size: 12px; padding-block: 4px; }
.footer-partners { margin-top: 34px; padding-top: 24px; border-top: 1px solid #24272b; }
.footer-partners > span { color: #818892; text-transform: uppercase; font-weight: 850; font-size: 9px; letter-spacing: .08em; }
.footer-partners__logos { margin-top: 14px; display: grid; grid-template-columns: repeat(3, 1fr); gap: 6px; }
.footer-partner-logo { width: 100%; height: 48px; display: grid; place-items: center; background: var(--paper); border-radius: 8px; padding: 6px; overflow: hidden; }
.footer-partner-logo--dark { background: #202328; border: 1px solid #30343a; }
.footer-partner-logo img { width: 100%; height: 100%; object-fit: contain; filter: grayscale(1) drop-shadow(0 1px 1px rgba(0,0,0,.16)); }
.footer-partner-logo--dark img { filter: grayscale(1) drop-shadow(0 1px 2px rgba(0,0,0,.35)); }
.footer-bottom { margin-top: 28px; padding-top: 18px; border-top: 1px solid #24272b; display: flex; flex-direction: column; gap: 9px; color: #7f8690; font-size: 9px; }
.footer-bottom p { color: inherit; }
.footer-bottom > div { display: flex; gap: 14px; }

.toast { position: fixed; z-index: 2000; left: 16px; right: 16px; bottom: calc(var(--dock-h) + 14px + env(safe-area-inset-bottom)); padding: 13px 16px; background: var(--ink); color: var(--paper); border: 1px solid #2c3035; border-radius: 14px; box-shadow: var(--shadow-md); transform: translateY(30px); opacity: 0; pointer-events: none; transition: opacity 200ms ease, transform 200ms ease; font-size: 12px; font-weight: 750; }
.toast.is-visible { opacity: 1; transform: translateY(0); }

@media (min-width: 560px) {
  .shell { width: min(calc(100% - 48px), var(--shell)); }
  .narrow-shell { width: min(calc(100% - 48px), 880px); }
  .quick-actions__grid { grid-template-columns: repeat(4, 1fr); }
  .news-card { grid-template-columns: 180px 1fr; }
  .shop-grid { grid-template-columns: repeat(3, 1fr); gap: 14px; }
  .partner-wall { grid-template-columns: repeat(4, 1fr); }
  .social-grid { grid-template-columns: repeat(3, 1fr); }
  .roster-grid { grid-template-columns: repeat(3, 1fr); }
  .form-grid--2 { grid-template-columns: repeat(2, 1fr); }
  .documents-grid, .role-grid, .sponsor-grid { grid-template-columns: repeat(2, 1fr); }
  .footer-links { grid-template-columns: repeat(3, 1fr); }
}

@media (min-width: 900px) {
  :root { --section-y: 86px; }
  body { font-size: 16px; padding-bottom: 0; }
  .shell { width: min(calc(100% - 64px), var(--shell)); }
  .narrow-shell { width: min(calc(100% - 64px), 880px); }
  .club-strip { display: block; }
  .mobile-context-bar, .mobile-dock { display: none; }
  .site-header { top: 0; }
  .site-header__inner { min-height: 86px; }
  .brand__crest { width: 58px; height: 58px; flex-basis: 58px; }
  .brand__copy strong { font-size: 16px; }
  .brand__copy small { font-size: 10px; }
  .desktop-nav { display: flex; align-items: stretch; align-self: stretch; margin-left: auto; }
  .desktop-nav__item { position: relative; display: flex; align-items: stretch; }
  .desktop-nav__link { min-height: 100%; padding-inline: 14px; display: inline-flex; align-items: center; position: relative; font-size: 12px; font-weight: 850; }
  .desktop-nav__link::after { content: ""; position: absolute; left: 14px; right: 14px; bottom: 0; height: 3px; background: var(--accent); transform: scaleX(0); transition: transform var(--transition); }
  .desktop-nav__link:hover::after, .desktop-nav__link.is-active::after { transform: scaleX(1); }
  .nav-popover { position: absolute; top: calc(100% - 1px); left: 0; width: 520px; padding: 12px; border-radius: 0 0 18px 18px; display: grid; grid-template-columns: 1.05fr 1fr; gap: 12px; background: var(--paper); color: var(--ink); box-shadow: var(--shadow-md); opacity: 0; visibility: hidden; transform: translateY(8px); transition: opacity var(--transition), transform var(--transition), visibility var(--transition); }
  .desktop-nav__item:hover .nav-popover, .desktop-nav__item:focus-within .nav-popover { opacity: 1; visibility: visible; transform: translateY(0); }
  .nav-popover--compact { width: 300px; grid-template-columns: 1fr; }
  .nav-popover__lead { border-radius: 13px; background: var(--ink); color: var(--paper); padding: 20px; }
  .nav-popover__lead strong { display: block; font-size: 1.15rem; line-height: 1.15; }
  .nav-popover__lead p { color: #aeb4bc; margin-top: 8px; font-size: 12px; }
  .nav-popover__links { display: grid; align-content: start; gap: 4px; }
  .nav-popover__links a { min-height: 46px; padding: 0 12px; display: flex; justify-content: space-between; align-items: center; gap: 12px; border-radius: 10px; font-size: 12px; font-weight: 750; }
  .nav-popover__links a:hover { background: var(--paper-2); }
  .nav-popover__links .icon { width: 16px; height: 16px; }
  .header-ticket { display: inline-flex; }
  .header-actions { gap: 4px; }
  .search-panel { left: 50%; right: auto; width: min(760px, calc(100% - 64px)); top: 70px; border-radius: 24px; padding: 28px; transform: translate(-50%, -30px); opacity: 0; }
  .search-overlay.is-open .search-panel { transform: translate(-50%, 0); opacity: 1; }
  .more-sheet { display: none; }

  .hero-slider { min-height: 700px; }
  .hero-slide__content { padding: 160px 0 100px; }
  .hero p { font-size: 1.08rem; }
  .hero-controls { left: max(32px, calc((100vw - var(--shell)) / 2)); right: max(32px, calc((100vw - var(--shell)) / 2)); bottom: 36px; }
  .hero-arrows { display: flex; }
  .quick-actions { margin-top: -42px; }
  .quick-actions__grid { padding: 12px; border-radius: 24px; gap: 10px; }
  .quick-action { min-height: 84px; padding: 16px; }
  .quick-action strong { font-size: 13px; }
  .quick-action small { font-size: 10px; }

  .match-strip { grid-template-columns: repeat(2, 1fr); gap: 18px; }
  .feature-match__team img { width: 72px; height: 72px; }
  .feature-match__body { padding: 30px 20px 26px; }
  .feature-match__team strong { font-size: 14px; }
  .feature-match__score strong { font-size: 2rem; }

  .news-layout { grid-template-columns: minmax(0, 1.45fr) minmax(360px, .8fr); gap: 18px; }
  .news-feature { min-height: 600px; }
  .news-feature__body { padding: 36px; }
  .news-grid { grid-template-rows: repeat(3, 1fr); gap: 12px; }
  .news-card { grid-template-columns: 185px 1fr; min-height: 0; }
  .news-card__body { padding: 20px; }
  .news-card__body h3 { font-size: 1.1rem; }
  .news-card__body p { display: block; font-size: 12px; line-height: 1.5; }

  .horizontal-scroll { grid-auto-flow: initial; grid-auto-columns: initial; grid-template-columns: repeat(4, minmax(0, 1fr)); overflow: visible; padding-bottom: 0; gap: 16px; }
  .team-card { min-height: 390px; }
  .team-card__content { inset: auto 24px 24px; }
  .team-card__content h3 { font-size: 1.55rem; }

  .tables-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 18px; align-items: start; }
  .stats-band { grid-template-columns: repeat(4, 1fr); }
  .stat-block { min-height: 168px; padding: 26px; }
  .stat-block strong { font-size: 3rem; }

  .shop-grid { grid-template-columns: repeat(4, 1fr); gap: 16px; }
  .product-card { border-radius: 20px; }
  .product-card__body { padding: 18px; }
  .product-card__body h3 { font-size: 1.05rem; min-height: 44px; }
  .partner-wall { grid-template-columns: repeat(7, 1fr); padding: 20px; gap: 10px; }
  .partner-logo { min-height: 110px; }
  .cta-panel { min-height: 500px; }
  .cta-panel__body { padding: 52px; }
  .social-card { min-height: 170px; padding: 26px; }

  .page-hero { padding: 82px 0 70px; }
  .page-hero::after { font-size: 20vw; }
  .filter-bar { margin-bottom: 34px; }
  .news-list-grid { grid-template-columns: repeat(3, 1fr); gap: 18px; }
  .news-list-grid .news-card__body { padding: 22px; }
  .article-head { padding: 48px 0; }
  .article-copy { font-size: 1.08rem; line-height: 1.8; }

  .team-hero { min-height: 600px; }
  .team-hero__content { padding: 140px 0 55px; }
  .team-tabs { top: 86px; }
  .team-tabs a { min-height: 58px; padding-inline: 20px; font-size: 11px; }
  .roster-grid { grid-template-columns: repeat(4, 1fr); gap: 16px; }
  .player-card { min-height: 410px; border-radius: 20px; }
  .player-card__number { top: 16px; right: 18px; left: auto; font-size: 3.4rem; }
  .player-card__info { left: 20px; right: 20px; bottom: 20px; }
  .player-card__info strong { font-size: 1.2rem; }

  .player-hero { padding: 54px 0 0; }
  .player-hero__layout {
    grid-template-columns: minmax(0,.92fr) minmax(430px,1.08fr);
    grid-template-areas:
      "info image"
      "facts image";
    column-gap: 46px;
    row-gap: 28px;
    align-items: end;
    min-height: 610px;
  }
  .player-hero__info { padding: 36px 0 0; align-self:end; }
  .player-hero__image {
    min-height: 570px;
    max-height: 610px;
    height: 100%;
    border-radius: 32px 32px 0 0;
    background: linear-gradient(180deg,rgba(255,255,255,.055),rgba(255,255,255,.01));
  }
  .player-hero__image img { max-width: 92%; margin-inline:auto; }
  .player-number { font-size: 7rem; margin-top:20px; }
  .player-hero h1 { font-size:clamp(3.8rem,5.4vw,6.4rem); }
  .player-facts { grid-template-columns: repeat(5, 1fr); margin-bottom:58px; border-radius:22px; }
  .player-fact { min-height:112px; padding:20px; }
  .player-fact strong { font-size:1.7rem; }

  .match-list { gap: 16px; }
  .match-card__top { padding: 12px 22px; }
  .match-card__body { padding: 26px 24px; }
  .match-team { grid-template-columns: 62px minmax(0,1fr); justify-items: start; text-align: left; gap: 14px; }
  .match-team:last-child { grid-template-columns: minmax(0,1fr) 62px; text-align: right; }
  .match-team:last-child img { order: 2; }
  .match-team img { width: 62px; height: 62px; }
  .match-team span { font-size: 14px; }
  .match-vs strong { font-size: 1.5rem; }
  .match-score strong { font-size: 2.2rem; }
  .match-card__bottom { padding: 11px 22px; }
  .match-card__bottom > span, .match-card__bottom a { font-size: 10px; }

  .match-centre { padding: 72px 0; }
  .match-centre__meta h1 { font-size: 2.6rem; }
  .score-team img { width: 110px; height: 110px; }
  .score-team strong { font-size: 16px; }
  .scoreline { min-width: 180px; }
  .scoreline strong { font-size: 4.5rem; }
  .match-stat-grid { grid-template-columns: repeat(4, 1fr); gap: 14px; }
  .match-stat { padding: 22px; }
  .match-stat strong { font-size: 2.35rem; }

  .contact-layout { display: grid; grid-template-columns: minmax(0, 1.4fr) minmax(320px, .6fr); gap: 20px; align-items: start; }
  .form-card { padding: 30px; }
  .info-card { padding: 30px; }
  .documents-grid { grid-template-columns: repeat(2, 1fr); gap: 16px; }
  .role-grid { grid-template-columns: repeat(2, 1fr); gap: 18px; }
  .team-section-grid { grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 14px; }
  .team-section-card { min-height: 96px; padding: 20px; }
  .sponsor-grid { grid-template-columns: repeat(4, 1fr); gap: 16px; }
  .product-detail { grid-template-columns: 1.05fr .95fr; gap: 54px; align-items: center; }
  .product-info h1 { font-size: 3.5rem; }
  .basket-layout { grid-template-columns: minmax(0,1.4fr) 380px; align-items: start; gap: 22px; }

  .footer-main { grid-template-columns: .8fr 1.2fr; align-items: start; }
  .footer-brand img { width: 96px; height: 96px; }
  .footer-partners__logos { grid-template-columns: repeat(6, 1fr); }
  .footer-bottom { flex-direction: row; align-items: center; justify-content: space-between; }
  .toast { left: auto; right: 24px; bottom: 24px; width: 340px; }
}

@media (min-width: 1180px) {
  .desktop-nav__link { padding-inline: 18px; }
  .header-actions { margin-left: 8px; }
  .brand { margin-right: 14px; }
}

@media (prefers-reduced-motion: reduce) {
  *, *::before, *::after { animation-duration: .01ms !important; animation-iteration-count: 1 !important; transition-duration: .01ms !important; scroll-behavior: auto !important; }
}

/* v1.2 mobile standings + footer partner refinements */
.tables-grid {
  display: grid;
  gap: 30px;
  align-items: start;
}

@media (max-width: 899px) {
  .table-card {
    width: 100%;
    min-width: 0;
  }

  .table-scroll {
    width: 100%;
    max-width: 100%;
    overflow-x: hidden;
  }

  .league-table,
  .league-table--compact {
    width: 100%;
    min-width: 0;
    table-layout: fixed;
    font-size: 10px;
  }

  .league-table th,
  .league-table td {
    padding: 11px 3px;
    white-space: normal;
    line-height: 1.25;
  }

  .league-table .col-pos { width: 11%; }
  .league-table .col-team { width: 51%; }
  .league-table .col-p { width: 11%; }
  .league-table .col-gd { width: 13%; }
  .league-table .col-pts { width: 14%; }
  .league-table .col-extra { display: none; }

  .table-team {
    min-width: 0;
    width: 100%;
    gap: 6px;
    font-size: 10.5px;
    font-weight: 700;
    line-height: 1.2;
  }

  .table-team > span:last-child {
    min-width: 0;
    overflow-wrap: anywhere;
  }

  .mini-crest {
    width: 22px;
    height: 22px;
    flex-basis: 22px;
  }

  .table-card__header {
    padding: 16px;
    gap: 10px;
  }

  .table-card__header h3 { font-size: 1rem; }
  .table-card__header .text-link { font-size: 9px; white-space: nowrap; }
}

.footer-partners__logos {
  gap: 10px;
}

.footer-partner-logo {
  min-width: 0;
  height: 72px;
  padding: 10px 12px;
  overflow: hidden;
}

.footer-partner-logo img {
  display: block;
  width: auto;
  height: auto;
  max-width: 94%;
  max-height: 52px;
  object-fit: contain;
  filter: none;
  opacity: 1;
}

.footer-partner-logo--dark img {
  filter: none;
}

@media (min-width: 900px) {
  .tables-grid { gap: 18px; }

  .footer-partner-logo {
    height: 82px;
    padding: 12px 16px;
  }

  .footer-partner-logo img {
    max-width: 92%;
    max-height: 58px;
  }
}


/* v1.3 sponsor directory + profile pages */
.button--disabled {
  opacity: .5;
  cursor: not-allowed;
  pointer-events: none;
}
.sponsor-profile-section { padding-top: 34px; }
.sponsor-profile { display: grid; gap: 22px; align-items: start; }
.sponsor-profile__aside { display: grid; gap: 14px; }
.sponsor-profile__logo {
  min-height: 230px;
  border: 1px solid var(--line);
  border-radius: var(--radius);
  background: var(--paper);
  display: grid;
  place-items: center;
  padding: 30px;
  box-shadow: var(--shadow-sm);
  overflow: hidden;
}
.sponsor-profile__logo--dark { background: #202328; border-color: #30343a; }
.sponsor-profile__logo img { width: min(280px, 82%); max-height: 150px; object-fit: contain; }
.sponsor-profile__actions { display: grid; gap: 10px; }
.sponsor-profile__note { border-radius: 16px; background: var(--paper-2); border: 1px solid var(--line); padding: 18px; }
.sponsor-profile__note strong { display: block; margin-bottom: 6px; font-size: 12px; }
.sponsor-profile__note p { font-size: 12px; line-height: 1.65; color: var(--muted); }
.sponsor-profile__main { display: grid; gap: 18px; min-width: 0; }
.sponsor-content-card { background: var(--paper); border: 1px solid var(--line); border-radius: var(--radius); padding: 24px 20px; box-shadow: var(--shadow-sm); }
.sponsor-content-card h2 { margin: 8px 0 15px; }
.sponsor-content-card .lead { color: #515963; }
.sponsor-offers { display: grid; gap: 11px; margin-top: 20px; }
.sponsor-offer { display: grid; grid-template-columns: 42px minmax(0,1fr); gap: 12px; align-items: center; background: var(--paper-2); border: 1px solid var(--line); border-radius: 15px; padding: 14px; }
.sponsor-offer__icon { width: 42px; height: 42px; display: grid; place-items: center; border-radius: 12px; background: var(--ink); color: var(--accent); }
.sponsor-offer__icon .icon { width: 18px; height: 18px; }
.sponsor-offer p { font-size: 13px; line-height: 1.55; color: #545d67; }
.sponsor-cta-card { background: var(--ink); color: var(--paper); border-radius: var(--radius); padding: 25px 20px; display: grid; gap: 20px; align-items: center; overflow: hidden; }
.sponsor-cta-card h2 { margin: 8px 0 11px; }
.sponsor-cta-card p { color: #bdc2c9; max-width: 720px; }
.sponsor-cta-card .button--outline { color: var(--paper); border-color: #444950; }

@media (min-width: 700px) {
  .sponsor-cta-card { grid-template-columns: minmax(0,1fr) auto; padding: 30px; }
}
@media (min-width: 900px) {
  .sponsor-profile-section { padding-top: 58px; }
  .sponsor-profile { grid-template-columns: minmax(260px,.65fr) minmax(0,1.35fr); gap: 30px; }
  .sponsor-profile__aside { position: sticky; top: 112px; }
  .sponsor-profile__logo { min-height: 300px; }
  .sponsor-content-card { padding: 34px; }
  .sponsor-offers { grid-template-columns: repeat(2, minmax(0,1fr)); }
  .sponsor-offer:last-child:nth-child(odd) { grid-column: 1 / -1; }
}


/* v1.4 sponsor profiles + uncropped article media */
.article-hero__media {
  aspect-ratio: auto;
  max-height: none;
  overflow: visible;
}
.article-hero__media img {
  width: 100%;
  height: auto;
  max-height: none;
  object-fit: contain;
}

/* v1.5 premium article hero */
.article-hero {
  position: relative;
  display: flex;
  flex-direction: column;
  overflow: hidden;
  background:
    radial-gradient(circle at 84% 24%, rgba(212,175,55,.055), transparent 28%),
    linear-gradient(180deg, #0b0c0f 0%, #101216 100%);
  color: var(--paper);
}
.article-hero::after {
  content: "NEWS";
  position: absolute;
  right: -18px;
  bottom: -18px;
  z-index: 0;
  color: rgba(255,255,255,.018);
  font-size: clamp(8rem, 24vw, 20rem);
  font-weight: 950;
  line-height: .7;
  letter-spacing: -.08em;
  pointer-events: none;
}
.article-hero__media {
  position: relative;
  z-index: 2;
  width: 100%;
  overflow: visible;
  background: #0b0c0e;
  display: flex;
  justify-content: center;
  align-items: center;
}
.article-hero__media-frame {
  width: 100%;
  display: flex;
  justify-content: center;
  align-items: center;
  overflow: hidden;
  background: #0b0c0e;
}
.article-hero__media img {
  display: block;
  width: 100%;
  height: auto;
  max-height: none;
  object-fit: contain;
  object-position: center;
}
.article-head {
  position: relative;
  z-index: 2;
  padding: 32px 0 38px;
}
.article-breadcrumbs {
  display: flex;
  align-items: center;
  flex-wrap: wrap;
  gap: 7px;
  margin-bottom: 18px;
  color: #858d98;
  font-size: 10px;
  line-height: 1.4;
  font-weight: 800;
  text-transform: uppercase;
  letter-spacing: .08em;
}
.article-breadcrumbs a { transition: color var(--transition); }
.article-breadcrumbs a:hover { color: var(--paper); }
.article-breadcrumbs .icon { width: 12px; height: 12px; color: #555c66; }
.article-meta {
  margin-bottom: 14px;
  display: flex;
  align-items: center;
  gap: 10px;
  flex-wrap: wrap;
  color: #aeb4bd;
  font-size: 10px;
  line-height: 1;
  text-transform: uppercase;
  font-weight: 850;
  letter-spacing: .07em;
}
.article-category {
  display: inline-flex;
  align-items: center;
  min-height: 28px;
  padding: 0 10px;
  border-radius: 999px;
  background: var(--accent);
  color: var(--accent-ink);
}
.article-meta__item {
  display: inline-flex;
  align-items: center;
  gap: 10px;
}
.article-meta__item + .article-meta__item::before {
  content: "";
  width: 3px;
  height: 3px;
  border-radius: 50%;
  background: #626974;
}
.article-head h1 {
  max-width: 900px;
  margin-bottom: 16px;
  color: var(--paper);
  font-size: clamp(2rem, 9vw, 4rem);
  text-wrap: balance;
}
.article-standfirst {
  max-width: 760px;
  color: #c7ccd3;
  font-size: 1rem;
  line-height: 1.7;
}

@media (min-width: 900px) {
  .article-hero {
    padding-bottom: 62px;
  }
  .article-hero__media {
    order: 2;
    width: min(calc(100% - 128px), 1080px);
    margin-inline: auto;
    background: transparent;
  }
  .article-hero__media-frame {
    width: 100%;
    min-height: 320px;
    padding: 14px;
    border: 1px solid rgba(255,255,255,.1);
    border-radius: 24px;
    background: #14161a;
    box-shadow: 0 28px 80px rgba(0,0,0,.32);
  }
  .article-hero__media img {
    width: auto;
    max-width: 100%;
    height: auto;
    max-height: 620px;
    border-radius: 14px;
  }
  .article-head {
    order: 1;
    width: min(calc(100% - 128px), 980px);
    padding: 62px 0 38px;
    margin-inline: auto;
  }
  .article-breadcrumbs { margin-bottom: 24px; }
  .article-meta { margin-bottom: 18px; font-size: 11px; }
  .article-head h1 {
    max-width: 920px;
    margin-bottom: 20px;
    font-size: clamp(3rem, 5vw, 5.2rem);
    line-height: 1.01;
  }
  .article-standfirst {
    max-width: 790px;
    font-size: 1.12rem;
    line-height: 1.75;
  }
}

@media (min-width: 1300px) {
  .article-hero__media {
    width: min(calc(100% - 180px), 1040px);
  }
  .article-hero__media img {
    max-height: 600px;
  }
}

/* v2.0 investor review - gold identity, tighter rhythm, match/team/news systems */
:root {
  --accent: #d4af37;
  --accent-ink: #171205;
  --section-y: 50px;
}

.button--accent:hover { background: #e3c65c; }
.league-table tbody tr.is-club { background: #fff7dc; }
.demo-chip { background: rgba(212,175,55,.14); }
.article-hero { background: radial-gradient(circle at 84% 24%, rgba(212,175,55,.07), transparent 28%), linear-gradient(180deg,#0b0c0f 0%,#101216 100%); }

/* Top next-match ticker */
.match-ticker {
  min-height: 34px;
  display: grid;
  grid-template-columns: auto minmax(0,1fr) 34px;
  align-items: center;
  background: #050607;
  color: #e8e9eb;
  border-bottom: 1px solid #202328;
  overflow: hidden;
  position: relative;
  z-index: 1001;
  font-size: 10px;
}
.match-ticker__label { align-self: stretch; display: flex; align-items: center; padding: 0 12px; background: var(--accent); color: var(--accent-ink); text-transform: uppercase; font-weight: 950; letter-spacing: .06em; white-space: nowrap; }
.match-ticker__viewport { overflow: hidden; min-width: 0; }
.match-ticker__track { display: flex; width: max-content; animation: lajfcTicker 24s linear infinite; }
.match-ticker__track > span { display: inline-flex; align-items: center; gap: 9px; padding-inline: 18px; white-space: nowrap; color: #bfc4cb; }
.match-ticker__track strong { color: var(--paper); }
.match-ticker__track b { color: var(--accent); }
.match-ticker > a { height: 34px; display: grid; place-items: center; border-left: 1px solid #22252a; color: var(--accent); }
.match-ticker > a .icon { width: 15px; height: 15px; }
@keyframes lajfcTicker { to { transform: translateX(-50%); } }

/* Tighter mobile hero and page rhythm */
.hero-slider { min-height: 410px; }
.hero-slide__content { padding: 58px 0 50px; }
.hero-actions { margin-top: 20px; }
.hero-controls { bottom: 16px; }
.quick-actions { margin-top: -20px; }
.section-heading { align-items: flex-start; }
.section-heading > div { width: 100%; max-width: none; }
.section-heading h2 { max-width: 100%; text-wrap: pretty; }
.section-heading p { max-width: 720px; }
.page-hero { padding: 44px 0 36px; }
.page-hero--compact { padding: 36px 0 30px; }
.page-hero__content { max-width: none; }
.page-hero__content > p { max-width: 680px; }
.home-section + .home-section { margin-top: 0; }

@media (max-width: 899px) {
  .section-heading { display: block; margin-bottom: 22px; }
  .section-heading .text-link { margin-top: 16px; }
  .section-heading h2 { font-size: clamp(1.85rem,8.5vw,2.65rem); line-height: 1.02; }
  .section-heading p { font-size: .98rem; line-height: 1.6; }
  .page-hero h1 { font-size: clamp(2.2rem,13vw,3.35rem); }
  .page-hero p { line-height: 1.55; }
  .hero h1 { font-size: clamp(2.05rem,10vw,3rem); }
  .hero p { font-size: .92rem; line-height: 1.55; }
  .hero-slide__content-inner { max-width: 92%; }
}

/* Homepage match switchers */
.home-match-panels { display: grid; gap: 16px; }
.match-tab-card { min-width: 0; }
.match-tab-card__head { display: flex; align-items: flex-end; justify-content: space-between; gap: 14px; margin-bottom: 13px; }
.match-tab-card__head .eyebrow { margin-bottom: 6px; }
.match-tab-card__head h3 { margin: 0; font-size: 1.15rem; }
.compact-tabs { display: inline-flex; padding: 4px; border-radius: 999px; background: #e9ebee; gap: 3px; flex: 0 0 auto; }
.compact-tabs button { border: 0; border-radius: 999px; background: transparent; min-height: 34px; padding: 0 12px; font-size: 9px; font-weight: 900; cursor: pointer; }
.compact-tabs button.is-active { background: var(--ink); color: var(--paper); }
.tab-panel { display: none; }
.tab-panel.is-active { display: block; }

/* Homepage/news title-on-image treatment */
.home-news-grid { display: grid; gap: 12px; }
.news-overlay-card { position: relative; min-height: 230px; border-radius: var(--radius); overflow: hidden; background: var(--ink); color: var(--paper); box-shadow: var(--shadow-sm); }
.news-overlay-card img { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; }
.news-overlay-card__shade { position: absolute; inset: 0; background: linear-gradient(180deg,rgba(0,0,0,.02) 25%,rgba(5,6,7,.94) 100%); }
.news-overlay-card__content { position: absolute; z-index: 2; left: 18px; right: 18px; bottom: 16px; }
.news-overlay-card__meta { display: flex; flex-wrap: wrap; gap: 8px; color: #d2d6db; font-size: 9px; text-transform: uppercase; font-weight: 850; letter-spacing: .05em; margin-bottom: 7px; }
.news-overlay-card__meta span:first-child { color: var(--accent); }
.news-overlay-card h3 { font-size: 1.22rem; margin: 0; color: var(--paper); }

.news-directory-grid { display: grid; gap: 16px; }
.news-directory-card { background: var(--paper); border: 1px solid var(--line); border-radius: var(--radius); overflow: hidden; box-shadow: var(--shadow-sm); min-width: 0; }
.news-directory-card__media { position: relative; display: block; aspect-ratio: 16/10; overflow: hidden; background: #dfe2e5; }
.news-directory-card__media img { width: 100%; height: 100%; object-fit: cover; transition: transform .35s ease; }
.news-directory-card:hover .news-directory-card__media img { transform: scale(1.025); }
.news-directory-card__shade { position: absolute; inset: 0; background: linear-gradient(180deg,transparent 35%,rgba(5,6,7,.92)); }
.news-directory-card__title { position: absolute; left: 18px; right: 18px; bottom: 16px; color: var(--paper); }
.news-directory-card__title > span { display: block; margin-bottom: 6px; color: var(--accent); font-size: 9px; font-weight: 900; text-transform: uppercase; letter-spacing: .08em; }
.news-directory-card__title h2 { margin: 0; font-size: 1.45rem; line-height: 1.08; }
.news-directory-card__body { padding: 18px; display: grid; gap: 14px; }
.news-directory-card__body p { font-size: 13px; line-height: 1.6; }
.news-directory-card__meta { display: flex; align-items: center; flex-wrap: wrap; gap: 10px 14px; color: var(--muted); font-size: 10px; font-weight: 750; }
.news-directory-card__meta > span { display: inline-flex; align-items: center; gap: 5px; }
.news-directory-card__meta .icon { width: 14px; height: 14px; }
.news-like, .article-like { border: 0; background: transparent; color: var(--ink); display: inline-flex; align-items: center; gap: 5px; padding: 0; cursor: pointer; font-weight: 850; }
.news-like .icon, .article-like .icon { width: 15px; height: 15px; }
.news-like.is-liked, .article-like.is-liked { color: #b58816; }
.news-read-more { width: max-content; min-height: 42px; }
.article-like { color: #d7dbe0; }
.article-like.is-liked { color: var(--accent); }
.article-views { display: inline-flex; align-items: center; gap: 5px; }
.article-views .icon { width: 14px; height: 14px; }

/* Birthday */
.section--birthday { background: #eee8d7; }
.birthday-card { position: relative; overflow: hidden; min-height: 150px; border-radius: var(--radius); background: var(--ink); color: var(--paper); display: grid; grid-template-columns: 92px minmax(0,1fr); align-items: center; gap: 18px; padding: 18px; box-shadow: var(--shadow-md); }
.birthday-card__portrait { width: 92px; height: 112px; border-radius: 16px; background: var(--paper); padding: 10px; overflow: hidden; }
.birthday-card__portrait img { width: 100%; height: 100%; object-fit: contain; }
.birthday-card__tag { color: var(--accent); text-transform: uppercase; letter-spacing: .08em; font-size: 9px; font-weight: 900; }
.birthday-card h3 { font-size: 1.5rem; margin: 7px 0 5px; }
.birthday-card p { color: #bdc2c9; }
.birthday-card__number { position: absolute; right: -4px; bottom: -28px; font-size: 8rem; font-weight: 950; line-height: 1; color: rgba(255,255,255,.035); }
.stats-band--home { margin-top: 22px; }

/* Sponsor marquee made for 30+ partners */
.sponsors-home { overflow: hidden; }
.sponsor-marquee { width: 100%; overflow: hidden; padding: 2px 0 10px; }
.sponsor-marquee__track { width: max-content; display: flex; gap: 12px; padding-inline: 12px; animation: sponsorRail 42s linear infinite; }
.sponsor-marquee:hover .sponsor-marquee__track { animation-play-state: paused; }
.sponsor-marquee__item { width: 190px; min-height: 110px; flex: 0 0 190px; background: var(--paper); border: 1px solid var(--line); border-radius: 16px; display: grid; grid-template-rows: 68px auto; place-items: center; gap: 5px; padding: 12px; box-shadow: var(--shadow-sm); }
.sponsor-marquee__item--dark { background: #202328; border-color: #30343a; }
.sponsor-marquee__item img { max-width: 90%; max-height: 64px; object-fit: contain; }
.sponsor-marquee__item span { max-width: 100%; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; color: var(--muted); font-size: 8px; text-transform: uppercase; font-weight: 850; letter-spacing: .05em; }
.sponsor-marquee__item--dark span { color: #aeb4bd; }
@keyframes sponsorRail { to { transform: translateX(calc(-50% - 6px)); } }

/* Matches hub + team switches */
.matches-toolbar { display: grid; gap: 16px; margin-bottom: 24px; }
.matches-toolbar h2 { margin-bottom: 7px; }
.team-switcher { display: flex; width: 100%; overflow-x: auto; gap: 5px; padding: 5px; background: #e8eaed; border-radius: 15px; scrollbar-width: none; }
.team-switcher::-webkit-scrollbar { display: none; }
.team-switcher__item { flex: 1 0 auto; min-height: 42px; padding: 0 14px; display: inline-flex; align-items: center; justify-content: center; border-radius: 11px; font-size: 10px; font-weight: 900; white-space: nowrap; }
.team-switcher__item.is-active { background: var(--ink); color: var(--paper); box-shadow: 0 6px 16px rgba(0,0,0,.12); }
.large-tabs { display: grid; grid-template-columns: repeat(2,1fr); padding: 5px; margin-bottom: 18px; background: var(--paper); border: 1px solid var(--line); border-radius: 15px; }
.large-tabs button { border: 0; min-height: 46px; border-radius: 11px; background: transparent; font-size: 11px; font-weight: 900; cursor: pointer; }
.large-tabs button.is-active { background: var(--ink); color: var(--paper); }
.section-actions { margin-top: 20px; display: flex; justify-content: flex-end; }

/* Team overview and stats */
.squad-stats-wrap { width: 100%; overflow-x: auto; border: 1px solid var(--line); border-radius: var(--radius); background: var(--paper); box-shadow: var(--shadow-sm); }
.squad-stats { width: 100%; min-width: 760px; border-collapse: collapse; font-size: 12px; }
.squad-stats th, .squad-stats td { padding: 13px 12px; border-bottom: 1px solid #eceef0; text-align: center; white-space: nowrap; }
.squad-stats th { background: #f5f6f7; color: #747b84; text-transform: uppercase; letter-spacing: .06em; font-size: 8px; }
.squad-stats th:first-child, .squad-stats td:first-child { text-align: left; }
.squad-stats tbody tr:last-child td { border-bottom: 0; }
.squad-player { display: flex; align-items: center; gap: 8px; }
.squad-player__number { width: 28px; height: 28px; display: grid; place-items: center; border-radius: 9px; background: var(--ink); color: var(--accent); font-weight: 950; }
.squad-player__flag { font-size: 16px; }
.team-overview-columns { display: grid; gap: 16px; margin-top: 22px; }
.team-panel { background: var(--paper); border: 1px solid var(--line); border-radius: var(--radius); padding: 22px; box-shadow: var(--shadow-sm); min-width: 0; }
.team-panel__head h2 { font-size: 1.65rem; }
.scorer-list { display: grid; }
.scorer-row { min-height: 62px; display: grid; grid-template-columns: 28px 28px minmax(0,1fr) auto; gap: 9px; align-items: center; border-top: 1px solid var(--line); }
.scorer-row:first-child { border-top: 0; }
.scorer-rank { color: var(--muted); font-weight: 900; }
.scorer-flag { font-size: 18px; }
.scorer-name { display: grid; }
.scorer-name small { color: var(--muted); font-size: 9px; }
.scorer-goals { width: 38px; height: 38px; border-radius: 12px; display: grid; place-items: center; background: var(--ink); color: var(--accent); font-size: 1.15rem; }
.staff-mini-grid { display: grid; gap: 9px; }
.staff-mini-card { min-height: 64px; display: flex; align-items: center; gap: 11px; border: 1px solid var(--line); border-radius: 14px; padding: 10px; }
.staff-avatar { width: 42px; height: 42px; border-radius: 12px; background: var(--ink); color: var(--accent); display: grid; place-items: center; }
.staff-avatar .icon { width: 19px; height: 19px; }
.staff-mini-card > div:last-child { display: grid; }
.staff-mini-card span { color: var(--muted); font-size: 9px; }
.team-sponsor-grid { display: grid; grid-template-columns: repeat(2,1fr); gap: 10px; }
.team-sponsor-card { min-height: 120px; display: grid; grid-template-rows: 72px auto; place-items: center; gap: 7px; padding: 13px; border-radius: 16px; background: var(--paper); border: 1px solid var(--line); }
.team-sponsor-card--dark { background: #202328; border-color: #30343a; color: var(--paper); }
.team-sponsor-card img { max-width: 88%; max-height: 66px; object-fit: contain; }
.team-sponsor-card span { font-size: 9px; font-weight: 850; text-transform: uppercase; letter-spacing: .05em; }
.team-sponsor-empty { min-height: 150px; border: 1px dashed #c9cdd2; border-radius: var(--radius); display: grid; place-items: center; text-align: center; padding: 24px; }
.team-sponsor-empty p { margin-top: 5px; }
.squad-table-section { margin-top: 30px; }
.squad-table-section h2 { margin-bottom: 18px; }
.player-card__stats { display: block; margin-top: 6px; color: #d0d4d9; font-size: 9px; }
.player-card--placeholder img { object-fit: contain; padding: 60px; background: #f0f1f2; }
.staff-directory { display: grid; gap: 12px; }
.staff-card { min-height: 108px; display: grid; grid-template-columns: 76px minmax(0,1fr); gap: 15px; align-items: center; padding: 14px; background: var(--paper); border: 1px solid var(--line); border-radius: 16px; }
.staff-card__photo { width: 76px; height: 76px; display: grid; place-items: center; border-radius: 15px; background: var(--ink); color: var(--accent); }
.staff-card__photo .icon { width: 27px; height: 27px; }
.staff-card span { color: var(--accent-ink); font-size: 9px; text-transform: uppercase; font-weight: 900; letter-spacing: .06em; }
.staff-card h3 { margin: 3px 0; }
.staff-card small { color: var(--muted); }
.previous-season-card { margin-top: 20px; border: 1px solid var(--line); border-radius: var(--radius); background: var(--paper); padding: 22px; display: grid; gap: 18px; }
.previous-season-stats { display: grid; grid-template-columns: repeat(2,1fr); gap: 8px; }
.previous-season-stats > div { padding: 16px; border-radius: 14px; background: var(--paper-2); }
.previous-season-stats span { display: block; color: var(--muted); text-transform: uppercase; font-size: 8px; font-weight: 850; }
.previous-season-stats strong { display: block; font-size: 1.8rem; margin-top: 4px; }
.player-hero__image--placeholder { padding: 60px; }
.player-hero__image--placeholder img { width: min(260px,80%); height: auto; }

/* Club members */
.member-grid { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 10px; }
.member-card { overflow: hidden; background: var(--paper); border: 1px solid var(--line); border-radius: 16px; box-shadow: var(--shadow-sm); }
.member-card__photo { aspect-ratio: 1/1; display: grid; place-items: center; background: #e6e8eb; color: #727983; }
.member-card__photo img { width: 100%; height: 100%; object-fit: cover; }
.member-card__photo .icon { width: 38px; height: 38px; }
.member-card__body { padding: 14px; }
.member-card__body > span { color: #8b6c10; font-size: 8px; text-transform: uppercase; font-weight: 900; letter-spacing: .06em; }
.member-card__body h3 { font-size: 1rem; margin: 5px 0; }
.member-card__body p { font-size: 11px; }
.contact-cta { display: grid; gap: 18px; padding: 24px; border-radius: var(--radius); background: var(--paper); border: 1px solid var(--line); box-shadow: var(--shadow-sm); }

/* Contact routes and conditional enquiry forms */
.enquiry-panel { display: none; padding: 18px; border-radius: 16px; background: #f6f3e9; border: 1px solid #eadfb9; }
.enquiry-panel.is-active { display: grid; gap: 14px; }
.form-section-title h3 { margin: 0 0 5px; }
.form-section-title p { font-size: 12px; }
.contact-route-list { display: grid; gap: 8px; margin: 18px 0 24px; }
.contact-route-list a { min-height: 66px; padding: 10px 12px; border-radius: 14px; border: 1px solid #30343a; background: rgba(255,255,255,.04); display: flex; align-items: center; gap: 12px; }
.contact-route-list a > .icon { color: var(--accent); }
.contact-route-list span { display: grid; }
.contact-route-list small { color: #9fa6af; font-size: 9px; }

/* Sponsor team labels */
.sponsor-team-tags { display: flex; flex-wrap: wrap; justify-content: center; gap: 5px; }
.sponsor-team-tags span { padding: 5px 7px; border-radius: 999px; background: #f0ead9; color: #6f5914; font-size: 7px; line-height: 1; font-weight: 900; text-transform: uppercase; letter-spacing: .04em; }
.sponsor-card--dark .sponsor-team-tags span { background: rgba(212,175,55,.14); color: #e4c85e; }
.sponsor-team-tags--large { justify-content: flex-start; gap: 8px; }
.sponsor-team-tags--large span { font-size: 9px; padding: 8px 10px; }

/* Match centre lineup/report */
.match-centre__actions { display: flex; justify-content: center; align-items: center; flex-wrap: wrap; gap: 10px; margin-top: 20px; }
.match-centre__actions .button--outline { color: var(--paper); border-color: #444950; min-height: 38px; }
.match-detail-grid { display: grid; gap: 16px; margin: 28px 0 34px; }
.match-detail-card { background: var(--paper); border: 1px solid var(--line); border-radius: var(--radius); padding: 22px; box-shadow: var(--shadow-sm); min-width: 0; }
.match-detail-card__head { margin-bottom: 18px; }
.match-detail-card__head h2 { font-size: 1.7rem; }
.lineup-list { display: grid; }
.lineup-row { min-height: 56px; display: grid; grid-template-columns: 34px 26px minmax(0,1fr) auto; gap: 8px; align-items: center; border-top: 1px solid var(--line); }
.lineup-row:first-child { border-top: 0; }
.lineup-number { width: 32px; height: 32px; border-radius: 10px; display: grid; place-items: center; background: var(--ink); color: var(--accent); font-weight: 950; }
.lineup-flag { font-size: 17px; }
.lineup-row > span:nth-child(3) { display: grid; }
.lineup-row small { color: var(--muted); font-size: 9px; }
.lineup-row em { color: var(--muted); font-size: 8px; font-style: normal; text-transform: uppercase; font-weight: 850; }
.match-report { display: grid; gap: 14px; }
.match-report p { line-height: 1.75; }
.match-report blockquote { margin: 4px 0 0; border-left: 3px solid var(--accent); background: var(--paper-2); border-radius: 0 12px 12px 0; padding: 16px; font-weight: 750; }

/* Club information */
.club-story-grid { display: grid; gap: 22px; align-items: center; }
.club-story-copy p + p { margin-top: 16px; }
.club-story-media { border-radius: var(--radius); overflow: hidden; min-height: 280px; }
.club-story-media img { width: 100%; height: 100%; object-fit: cover; }
.club-info-cards { display: grid; gap: 12px; }
.club-info-cards article { background: var(--paper); border: 1px solid var(--line); border-radius: var(--radius); padding: 22px; box-shadow: var(--shadow-sm); }
.club-info-cards article p { margin-bottom: 16px; }

@media (max-width: 620px) {
  .squad-stats { min-width: 560px; }
  .squad-stats th:nth-last-child(-n+2), .squad-stats td:nth-last-child(-n+2) { display: none; }
  .match-tab-card__head { align-items: center; }
  .match-tab-card__head h3 { font-size: 1rem; }
  .compact-tabs button { padding-inline: 10px; }
}

@media (min-width: 560px) {
  .home-news-grid { grid-template-columns: repeat(2,minmax(0,1fr)); }
  .news-overlay-card--featured { grid-column: 1 / -1; min-height: 380px; }
  .news-directory-grid { grid-template-columns: repeat(2,minmax(0,1fr)); }
  .team-sponsor-grid { grid-template-columns: repeat(3,1fr); }
  .staff-directory { grid-template-columns: repeat(2,1fr); }
  .member-grid { grid-template-columns: repeat(3,minmax(0,1fr)); gap: 14px; }
}

@media (min-width: 900px) {
  :root { --section-y: 66px; }
  .match-ticker { min-height: 32px; grid-template-columns: auto minmax(0,1fr) 42px; }
  .match-ticker__label { padding-inline: 18px; }
  .hero-slider { min-height: 585px; }
  .hero-slide__content { padding: 118px 0 88px; }
  .quick-actions { margin-top: -34px; }
  .page-hero, .page-hero--compact { padding: 58px 0 52px; }
  .page-hero__content { width: min(calc(100% - 64px),var(--shell)); max-width: var(--shell); margin-inline: auto; }
  .page-hero__content h1, .page-hero__content p, .page-hero__content .breadcrumbs, .page-hero__content > .eyebrow { margin-left: 0; }
  .section-heading { align-items: flex-end; }
  .section-heading > div { max-width: 760px; }
  .section-heading .text-link { margin-top: 0; }
  .home-match-panels { grid-template-columns: repeat(2,minmax(0,1fr)); gap: 18px; }
  .home-news-grid { grid-template-columns: 1.35fr .85fr .85fr; grid-template-rows: repeat(2,250px); gap: 16px; }
  .news-overlay-card { min-height: 0; height: 100%; }
  .news-overlay-card--featured { grid-column: 1; grid-row: 1 / span 2; min-height: 516px; }
  .home-news-grid .news-overlay-card:nth-child(4) { grid-column: 2 / span 2; }
  .news-overlay-card--featured h3 { font-size: 2.4rem; }
  .news-directory-grid { grid-template-columns: repeat(3,minmax(0,1fr)); gap: 18px; }
  .birthday-card { min-height: 190px; grid-template-columns: 130px minmax(0,1fr); padding: 26px; }
  .birthday-card__portrait { width: 130px; height: 138px; }
  .birthday-card h3 { font-size: 2rem; }
  .sponsor-marquee__item { width: 220px; flex-basis: 220px; min-height: 122px; }
  .matches-toolbar { grid-template-columns: minmax(0,1fr) auto; align-items: end; }
  .team-switcher { width: auto; min-width: 390px; }
  .large-tabs { width: min(600px,100%); margin-left: auto; margin-right: auto; }
  .team-overview-columns { grid-template-columns: repeat(2,minmax(0,1fr)); gap: 18px; }
  .team-sponsor-grid { grid-template-columns: repeat(5,1fr); }
  .staff-directory { grid-template-columns: repeat(3,1fr); }
  .previous-season-card { grid-template-columns: minmax(0,1fr) 320px; align-items: center; padding: 28px; }
  .member-grid { grid-template-columns: repeat(4,minmax(0,1fr)); gap: 16px; }
  .contact-cta { grid-template-columns: minmax(0,1fr) auto; align-items: center; padding: 30px; }
  .match-detail-grid { grid-template-columns: repeat(2,minmax(0,1fr)); gap: 18px; }
  .match-detail-card { padding: 28px; }
  .club-story-grid { grid-template-columns: 1fr 1fr; gap: 46px; }
  .club-story-media { min-height: 430px; }
  .club-info-cards { grid-template-columns: repeat(3,1fr); gap: 16px; }
  .youth-team-row { grid-template-columns: minmax(300px, 1fr) !important; max-width: 420px; }
}

@media (prefers-reduced-motion: reduce) {
  .match-ticker__track, .sponsor-marquee__track { animation: none !important; }
}

/* v2.0.1 investor colour consistency */
.status-dot { background: var(--accent); box-shadow: 0 0 0 4px rgba(212,175,55,.14); }

/* v2.1 mobile rhythm refinements */
@media (max-width: 899px) {
  .matches-section { padding-top: 36px; }
  .matches-section .matches-toolbar { margin-bottom: 20px; }
  .matches-section .large-tabs { margin-bottom: 15px; }
}

/* v2.2 navigation, ticker, team switching and club-wide results */
.match-ticker {
  min-height: 46px;
  grid-template-columns: auto minmax(0,1fr) auto;
  background: linear-gradient(180deg,#090a0c 0%,#050607 100%);
  border-bottom: 1px solid rgba(212,175,55,.28);
  box-shadow: inset 0 -1px 0 rgba(255,255,255,.025);
  font-size: 10px;
}
.match-ticker__identity {
  align-self: stretch;
  min-width: 118px;
  padding: 0 13px;
  display: flex;
  align-items: center;
  gap: 9px;
  border-right: 1px solid rgba(255,255,255,.08);
  background: linear-gradient(90deg,rgba(212,175,55,.12),rgba(212,175,55,.025));
}
.match-ticker__mark {
  width: 30px;
  height: 30px;
  border-radius: 50%;
  display: grid;
  place-items: center;
  background: var(--accent);
  color: var(--accent-ink);
  box-shadow: 0 0 0 4px rgba(212,175,55,.08);
}
.match-ticker__mark .icon { width: 14px; height: 14px; }
.match-ticker__identity-copy { display: grid; line-height: 1.05; }
.match-ticker__identity-copy small { color: #777e88; text-transform: uppercase; letter-spacing: .12em; font-size: 7px; font-weight: 900; }
.match-ticker__identity-copy strong { margin-top: 3px; color: var(--paper); text-transform: uppercase; letter-spacing: .045em; font-size: 9px; }
.match-ticker__viewport { position: relative; overflow: hidden; min-width: 0; }
.match-ticker__track { display: flex; width: max-content; animation: lajfcTicker 30s linear infinite; will-change: transform; }
.match-ticker__fixture {
  min-height: 45px;
  display: inline-flex;
  align-items: center;
  gap: 14px;
  padding: 0 30px 0 20px;
  white-space: nowrap;
  color: #c3c8cf;
}
.match-ticker__team {
  padding: 5px 8px;
  border-radius: 999px;
  border: 1px solid rgba(212,175,55,.34);
  background: rgba(212,175,55,.07);
  color: #e3c65c;
  font-size: 8px;
  line-height: 1;
  font-weight: 900;
  text-transform: uppercase;
  letter-spacing: .06em;
}
.match-ticker__matchup { display: inline-flex; align-items: center; gap: 7px; color: #e8eaed; }
.match-ticker__matchup strong { color: var(--paper); font-size: 10px; }
.match-ticker__matchup em { color: var(--accent); font-style: normal; font-weight: 950; text-transform: uppercase; font-size: 7px; letter-spacing: .08em; }
.match-ticker__meta { display: inline-flex; align-items: center; gap: 5px; color: #a5abb4; font-size: 9px; }
.match-ticker__meta .icon { width: 12px; height: 12px; color: #d0b44f; }
.match-ticker__fade { position: absolute; z-index: 2; top: 0; bottom: 0; width: 28px; pointer-events: none; }
.match-ticker__fade--left { left: 0; background: linear-gradient(90deg,#07080a,transparent); }
.match-ticker__fade--right { right: 0; background: linear-gradient(270deg,#07080a,transparent); }
.match-ticker__cta {
  align-self: stretch;
  min-width: 42px;
  padding-inline: 12px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 7px;
  border-left: 1px solid rgba(255,255,255,.08);
  color: var(--paper);
  font-size: 8px;
  font-weight: 900;
  text-transform: uppercase;
  letter-spacing: .06em;
}
.match-ticker__cta span { display: none; }
.match-ticker__cta .icon { width: 14px; height: 14px; color: var(--accent); }
.match-ticker:hover .match-ticker__track { animation-play-state: paused; }

/* Pull the floating home quick links out of the hero a little more. */
.quick-actions { margin-top: -8px; }

/* Mobile navigation sheets mirror desktop menu depth. */
.mobile-nav-sheet__panel { padding-bottom: calc(24px + var(--dock-h) + env(safe-area-inset-bottom)); }
.more-sheet__head p { margin-top: 6px; font-size: 11px; line-height: 1.45; }
.sheet-link-list { display: grid; gap: 8px; }
.sheet-link-list > a {
  min-height: 66px;
  padding: 10px 12px;
  display: grid;
  grid-template-columns: 42px minmax(0,1fr) 18px;
  align-items: center;
  gap: 11px;
  border: 1px solid var(--line);
  border-radius: 15px;
  background: var(--paper-2);
}
.sheet-link-list > a > span:nth-child(2) { display: grid; gap: 2px; min-width: 0; }
.sheet-link-list strong { font-size: 12px; }
.sheet-link-list small { color: var(--muted); font-size: 9px; line-height: 1.25; }
.sheet-link-list > a > .icon { width: 16px; height: 16px; color: #838a94; }
.sheet-link-list__icon, .sheet-team-badge {
  width: 42px;
  height: 42px;
  border-radius: 12px;
  display: grid;
  place-items: center;
  overflow: hidden;
  background: var(--ink);
  color: var(--accent);
}
.sheet-link-list__icon .icon { width: 20px; height: 20px; }
.sheet-team-badge { padding: 4px; background: var(--paper); border: 1px solid var(--line); }
.sheet-team-badge img { width: 100%; height: 100%; object-fit: contain; }
.more-sheet__panel--full-menu { padding-bottom: calc(28px + var(--dock-h) + env(safe-area-inset-bottom)); }
.more-menu-section + .more-menu-section { margin-top: 23px; padding-top: 20px; border-top: 1px solid var(--line); }
.more-menu-section h3 { margin: 0; font-size: 12px; letter-spacing: .02em; }
.more-menu-section__head { margin-bottom: 10px; display: flex; justify-content: space-between; align-items: center; gap: 12px; }
.more-menu-section__head > a { display: inline-flex; align-items: center; gap: 4px; color: var(--muted); font-size: 9px; font-weight: 850; }
.more-menu-section__head .icon { width: 13px; height: 13px; }
.more-menu-links--compact { display: grid; grid-template-columns: repeat(4,minmax(0,1fr)); gap: 7px; margin-top: 10px; }
.more-menu-links--compact a, .more-menu-links--compact button {
  min-width: 0;
  min-height: 72px;
  padding: 9px 4px;
  border: 1px solid var(--line);
  border-radius: 13px;
  background: var(--paper-2);
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  gap: 6px;
  color: var(--ink);
  cursor: pointer;
  font-size: 9px;
  font-weight: 850;
}
.more-menu-links--compact .icon { width: 20px; height: 20px; }
.more-menu-list { display: grid; border: 1px solid var(--line); border-radius: 15px; overflow: hidden; }
.more-menu-list a { min-height: 48px; padding: 0 13px; display: flex; align-items: center; justify-content: space-between; gap: 12px; border-top: 1px solid var(--line); font-size: 11px; font-weight: 780; }
.more-menu-list a:first-child { border-top: 0; }
.more-menu-list .icon { width: 14px; height: 14px; color: #90969e; }

/* Team-level switcher stays consistent on Overview, Squad, Coaches, Standings, Results, Fixtures and Gallery. */
.team-page-switch { background: #111317; color: var(--paper); border-bottom: 1px solid #24272c; }
.team-page-switch__inner { min-height: 66px; display: grid; align-content: center; gap: 8px; padding-block: 9px; }
.team-page-switch__inner > span { color: #838a94; font-size: 7px; line-height: 1; font-weight: 900; text-transform: uppercase; letter-spacing: .14em; }
.team-page-switch__buttons { display: flex; gap: 6px; overflow-x: auto; scrollbar-width: none; }
.team-page-switch__buttons::-webkit-scrollbar { display: none; }
.team-page-switch__button { flex: 0 0 auto; min-height: 32px; padding: 0 12px; border: 1px solid #30343a; border-radius: 999px; display: inline-flex; align-items: center; color: #b4bac2; font-size: 9px; font-weight: 850; white-space: nowrap; }
.team-page-switch__button.is-active { background: var(--accent); border-color: var(--accent); color: var(--accent-ink); }
.team-tabs { top: 72px; }

/* Country flags are image assets, never written as nationality text in squad cards. */
.nationality-flag { width: 23px; height: 14px; object-fit: cover; border-radius: 2px; border: 1px solid rgba(0,0,0,.12); box-shadow: 0 1px 3px rgba(0,0,0,.12); }
.player-card__nationality { display: inline-flex !important; align-items: center; gap: 7px; color: var(--accent) !important; }
.player-card__nationality .nationality-flag { width: 22px; height: 13px; }
.squad-player__flag { width: 25px; display: inline-flex; align-items: center; }
.squad-player__flag .nationality-flag { width: 22px; height: 13px; }
.scorer-flag { display: inline-flex; align-items: center; }
.scorer-flag .nationality-flag { width: 24px; height: 15px; }
.player-nationality-line { display: flex; align-items: center; gap: 9px; }
.player-nationality-line .nationality-flag { width: 30px; height: 18px; flex: 0 0 auto; }

/* Dedicated coaches page */
.coach-profile-grid { display: grid; gap: 14px; }
.coach-profile-card { overflow: hidden; background: var(--paper); border: 1px solid var(--line); border-radius: var(--radius); box-shadow: var(--shadow-sm); }
.coach-profile-card__media { position: relative; aspect-ratio: 4/4.5; overflow: hidden; background: #e9ebee; }
.coach-profile-card__media img { width: 100%; height: 100%; object-fit: cover; object-position: center top; }
.coach-profile-card__media > span { position: absolute; left: 14px; bottom: 14px; padding: 7px 10px; border-radius: 999px; background: var(--accent); color: var(--accent-ink); font-size: 8px; font-weight: 950; text-transform: uppercase; letter-spacing: .07em; }
.coach-profile-card__body { padding: 20px; }
.coach-profile-card__body h2 { margin-bottom: 6px; font-size: 1.65rem; }
.coach-profile-card__body > strong { display: block; margin-bottom: 12px; font-size: 11px; }
.coach-profile-card__body p { font-size: 12px; line-height: 1.65; }
.team-section-cta { display: grid; gap: 18px; align-items: center; padding: 22px; border: 1px solid var(--line); border-radius: var(--radius); background: var(--paper); box-shadow: var(--shadow-sm); }

/* Complete previous-season player snapshot. */
.previous-season-stats--full { grid-template-columns: repeat(2,minmax(0,1fr)); }

/* Homepage - five latest completed matches across all senior/youth pathways. */
.recent-results-list { display: grid; gap: 10px; }
.recent-result-card { overflow: hidden; border: 1px solid var(--line); border-radius: 17px; background: var(--paper); box-shadow: var(--shadow-sm); }
.recent-result-card__top { min-height: 38px; padding: 0 13px; display: flex; align-items: center; justify-content: space-between; gap: 12px; background: #111317; color: var(--paper); }
.recent-result-card__top span { color: var(--accent); font-size: 8px; text-transform: uppercase; letter-spacing: .08em; font-weight: 950; }
.recent-result-card__top strong { color: #aeb4bc; font-size: 9px; }
.recent-result-card__match { min-height: 96px; padding: 13px; display: grid; grid-template-columns: minmax(0,1fr) 56px minmax(0,1fr); gap: 8px; align-items: center; }
.recent-result-team { min-width: 0; display: grid; grid-template-columns: 36px minmax(0,1fr); align-items: center; gap: 8px; }
.recent-result-team img { width: 36px; height: 36px; object-fit: contain; }
.recent-result-team span { min-width: 0; font-size: 10px; line-height: 1.2; font-weight: 800; }
.recent-result-team--away { grid-template-columns: minmax(0,1fr) 36px; text-align: right; }
.recent-result-team--away img { order: 2; }
.recent-result-score { text-align: center; display: grid; justify-items: center; }
.recent-result-score strong { font-size: 1.55rem; line-height: 1; }
.recent-result-score small { margin-top: 4px; color: var(--muted); font-size: 7px; font-weight: 900; }
.recent-result-card__bottom { padding: 10px 12px; border-top: 1px solid var(--line); display: grid; gap: 8px; }
.recent-result-card__bottom > span { min-width: 0; display: flex; align-items: center; gap: 6px; color: var(--muted); font-size: 8px; font-weight: 750; }
.recent-result-card__bottom > span .icon { width: 13px; height: 13px; color: #9a7a1c; }
.recent-result-card__bottom .button { min-height: 38px; width: 100%; padding-inline: 12px; font-size: 9px; }

@media (min-width: 560px) {
  .coach-profile-grid { grid-template-columns: repeat(2,minmax(0,1fr)); }
  .recent-results-list { grid-template-columns: repeat(2,minmax(0,1fr)); }
  .recent-results-list .recent-result-card:first-child { grid-column: 1 / -1; }
  .team-section-cta { grid-template-columns: minmax(0,1fr) auto; padding: 28px; }
}

@media (min-width: 900px) {
  .match-ticker { min-height: 48px; grid-template-columns: 170px minmax(0,1fr) 126px; }
  .match-ticker__identity { padding-inline: 18px; }
  .match-ticker__mark { width: 32px; height: 32px; }
  .match-ticker__identity-copy small { font-size: 7px; }
  .match-ticker__identity-copy strong { font-size: 10px; }
  .match-ticker__fixture { min-height: 47px; gap: 18px; padding-left: 30px; padding-right: 50px; }
  .match-ticker__team { font-size: 8px; padding: 6px 9px; }
  .match-ticker__matchup strong { font-size: 10px; }
  .match-ticker__meta { font-size: 9px; }
  .match-ticker__cta { padding-inline: 16px; }
  .match-ticker__cta span { display: inline; }
  .quick-actions { margin-top: -18px; }
  .team-page-switch__inner { min-height: 72px; grid-template-columns: auto minmax(0,1fr); align-items: center; gap: 22px; }
  .team-page-switch__inner > span { font-size: 8px; }
  .team-page-switch__buttons { justify-content: flex-start; }
  .team-page-switch__button { min-height: 36px; padding-inline: 15px; font-size: 10px; }
  .team-tabs { top: 86px; }
  .coach-profile-grid { grid-template-columns: repeat(3,minmax(0,1fr)); gap: 18px; }
  .coach-profile-card__body { padding: 24px; }
  .previous-season-stats--full { grid-template-columns: repeat(5,minmax(0,1fr)); }
  .recent-results-list { grid-template-columns: repeat(5,minmax(0,1fr)); gap: 12px; }
  .recent-results-list .recent-result-card:first-child { grid-column: auto; }
  .recent-result-card__match { min-height: 150px; grid-template-columns: 1fr; gap: 8px; text-align: center; }
  .recent-result-team, .recent-result-team--away { grid-template-columns: 42px minmax(0,1fr); text-align: left; }
  .recent-result-team--away img { order: 0; }
  .recent-result-team img { width: 42px; height: 42px; }
  .recent-result-score { grid-row: 2; }
  .recent-result-team--away { grid-row: 3; }
  .recent-result-card__bottom { align-content: space-between; min-height: 102px; }
}

@media (max-width: 430px) {
  .match-ticker { grid-template-columns: 102px minmax(0,1fr) 38px; }
  .match-ticker__identity { min-width: 102px; padding-inline: 10px; gap: 7px; }
  .match-ticker__mark { width: 27px; height: 27px; }
  .match-ticker__identity-copy small { display: none; }
  .match-ticker__identity-copy strong { margin: 0; font-size: 8px; }
  .match-ticker__fixture { padding-left: 16px; padding-right: 28px; gap: 11px; }
  .match-ticker__venue { display: none; }
  .match-ticker__matchup strong { font-size: 9px; }
  .more-menu-links--compact { grid-template-columns: repeat(4,minmax(0,1fr)); }
}
.match-ticker > .match-ticker__identity,
.match-ticker > .match-ticker__cta { height: auto; display: flex; border-left: 0; }
.match-ticker > .match-ticker__cta { border-left: 1px solid rgba(255,255,255,.08); }

/* v2.3 full-width ticker flow + automatic footer partner rail */

/*
 * Each duplicated fixture now occupies the entire usable ticker viewport.
 * This prevents the second copy appearing in the middle of a wide desktop
 * screen and makes it enter naturally from the far-right edge instead.
 */
.match-ticker__fixture {
  min-width: calc(100vw - 160px);
  justify-content: space-between;
}

/* Footer club partners: use every sponsor in one seamless, auto-scrolling rail. */
.footer-partners { overflow: hidden; }
.footer-partners__heading {
  display: flex;
  align-items: flex-end;
  justify-content: space-between;
  gap: 18px;
}
.footer-partners__heading > span {
  color: #818892;
  text-transform: uppercase;
  font-weight: 850;
  font-size: 9px;
  letter-spacing: .08em;
}
.footer-partners__heading small {
  color: #626972;
  font-size: 9px;
  line-height: 1.4;
  text-align: right;
}
.footer-partners__viewport {
  position: relative;
  width: 100%;
  margin-top: 14px;
  overflow: hidden;
  isolation: isolate;
}
.footer-partners__track {
  width: max-content;
  display: flex;
  gap: 10px;
  will-change: transform;
  animation: footerPartnerRail 92s linear infinite;
}
.footer-partners__viewport:hover .footer-partners__track,
.footer-partners__viewport:focus-within .footer-partners__track {
  animation-play-state: paused;
}
.footer-partner-logo {
  flex: 0 0 142px;
  width: 142px;
}
.footer-partners__fade {
  position: absolute;
  z-index: 2;
  top: 0;
  bottom: 0;
  width: 30px;
  pointer-events: none;
}
.footer-partners__fade--left {
  left: 0;
  background: linear-gradient(90deg,#08090b 10%,rgba(8,9,11,0));
}
.footer-partners__fade--right {
  right: 0;
  background: linear-gradient(270deg,#08090b 10%,rgba(8,9,11,0));
}
@keyframes footerPartnerRail {
  to { transform: translateX(calc(-50% - 5px)); }
}

@media (min-width: 900px) {
  .match-ticker__fixture {
    /* Keep each repeat full-width, but group the match information together. */
    min-width: calc(100vw - 296px);
    justify-content: flex-start;
    gap: 28px;
    padding-left: 30px;
    padding-right: 42px;
  }
  .footer-partner-logo {
    flex-basis: 200px;
    width: 200px;
  }
  .footer-partners__fade { width: 46px; }
}

@media (max-width: 599px) {
  .footer-partners__heading {
    align-items: flex-start;
    flex-direction: column;
    gap: 5px;
  }
  .footer-partners__heading small { text-align: left; }
  .footer-partner-logo {
    flex-basis: 132px;
    width: 132px;
  }
  .footer-partners__track { animation-duration: 76s; }
}

@media (prefers-reduced-motion: reduce) {
  .footer-partners__track,
  .match-ticker__track { animation: none; }
  .footer-partners__viewport { overflow-x: auto; }
}


/* v2.4 ticker spacing + calmer partner rail */
@media (min-width: 900px) {
  .match-ticker__team { margin-right: 2px; }
  .match-ticker__matchup { margin-right: 2px; }
  .match-ticker__meta { flex: 0 0 auto; }
}


/* v2.5 league-table switcher - 1st Team / Under 18s / Youth */
.home-standings {
  width: 100%;
  margin-top: 24px;
}
.standings-team-tabs {
  width: min(100%, 920px);
  margin: 0 auto 24px;
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 12px;
}
.standings-team-tab {
  appearance: none;
  border: 1px solid rgba(255,255,255,.14);
  background: rgba(255,255,255,.055);
  color: #fff;
  border-radius: 18px;
  padding: 12px 14px;
  min-width: 0;
  min-height: 72px;
  display: flex;
  align-items: center;
  gap: 11px;
  text-align: left;
  cursor: pointer;
  transition: border-color .2s ease, background .2s ease, transform .2s ease, box-shadow .2s ease;
}
.standings-team-tab:hover {
  border-color: rgba(212,175,55,.55);
  background: rgba(255,255,255,.085);
  transform: translateY(-1px);
}
.standings-team-tab.is-active {
  border-color: rgba(212,175,55,.92);
  background: linear-gradient(145deg, rgba(212,175,55,.19), rgba(212,175,55,.075));
  box-shadow: 0 12px 28px rgba(0,0,0,.18), inset 0 0 0 1px rgba(212,175,55,.12);
}
.standings-team-tab__badge {
  width: 44px;
  height: 44px;
  flex: 0 0 44px;
  border-radius: 50%;
  background: #fff;
  display: grid;
  place-items: center;
  padding: 5px;
  box-shadow: 0 6px 16px rgba(0,0,0,.16);
}
.standings-team-tab__badge img {
  width: 100%;
  height: 100%;
  object-fit: contain;
}
.standings-team-tab > span:last-child { min-width: 0; }
.standings-team-tab strong { display: block; font-size: .84rem; line-height: 1.2; }
.standings-team-tab small {
  display: block;
  margin-top: 4px;
  color: #aeb3bb;
  font-size: .62rem;
  line-height: 1.28;
}
.standings-team-tab.is-active small { color: #e4d8aa; }
.home-standings__panel,
.league-tables-page__panel {
  width: min(100%, 960px);
  margin-inline: auto;
}
.home-standings__panel .table-card { width: 100%; }
.standings-team-tabs--light .standings-team-tab {
  background: #fff;
  border-color: #dfe2e6;
  color: var(--ink);
  box-shadow: var(--shadow-sm);
}
.standings-team-tabs--light .standings-team-tab small { color: var(--muted); }
.standings-team-tabs--light .standings-team-tab:hover {
  border-color: rgba(212,175,55,.65);
  background: #fffdf6;
}
.standings-team-tabs--light .standings-team-tab.is-active {
  border-color: var(--accent);
  background: #fff9e8;
  box-shadow: 0 12px 28px rgba(26,24,16,.08), inset 0 0 0 1px rgba(212,175,55,.12);
}
.standings-team-tabs--light .standings-team-tab.is-active small { color: #7d6924; }
.league-tables-page .section-heading { margin-bottom: 22px; }

@media (max-width: 699px) {
  .standings-team-tabs {
    gap: 7px;
    margin-bottom: 16px;
  }
  .standings-team-tab {
    min-height: 82px;
    padding: 9px 6px;
    border-radius: 14px;
    flex-direction: column;
    justify-content: center;
    text-align: center;
    gap: 6px;
  }
  .standings-team-tab__badge {
    width: 34px;
    height: 34px;
    flex-basis: 34px;
    padding: 4px;
  }
  .standings-team-tab strong { font-size: .7rem; }
  .standings-team-tab small {
    display: none;
  }
  .home-standings__panel .table-card__header,
  .league-tables-page__panel .table-card__header {
    align-items: flex-start;
  }
  .home-standings__panel .table-card__header h3,
  .league-tables-page__panel .table-card__header h3 {
    line-height: 1.35;
  }
}

/* v2.6 homepage three-team matchday layout + five-stat club bar */
.home-match-panels--three { grid-template-columns: 1fr; }
.match-tab-card--single .match-tab-card__head { border-bottom: 1px solid var(--line); }
.stats-band--home .stat-block:last-child { grid-column: 1 / -1; }

/* Three different upcoming fixtures now travel through the ticker. */
.match-ticker__track { animation-duration: 54s; }

@media (min-width: 900px) {
  .home-match-panels--three { grid-template-columns: repeat(3,minmax(0,1fr)); gap: 16px; align-items: stretch; }
  .home-match-panels--three .match-tab-card { min-width: 0; height: 100%; }
  .home-match-panels--three .feature-match { height: calc(100% - 69px); }
  .home-match-panels--three .feature-match__body { padding-inline: 14px; }
  .home-match-panels--three .feature-match__team img { width: 56px; height: 56px; }
  .home-match-panels--three .feature-match__team strong { font-size: 11px; }
  .home-match-panels--three .feature-match__score strong { font-size: 1.55rem; }
  .home-match-panels--three .feature-match__score span { font-size: 8px; }
  .home-match-panels--three .feature-match__footer { gap: 8px; }

  .stats-band--home { grid-template-columns: repeat(5,minmax(0,1fr)); }
  .stats-band--home .stat-block:last-child { grid-column: auto; }
  .stats-band--home .stat-block { min-width: 0; padding: 22px; }
  .stats-band--home .stat-block strong { font-size: 2.5rem; }
}

/* v3.0 - team identities, compact ticker, premium match cards and team profiles */

/* New full site logo in the header/footer. */
.brand--site-logo { display: inline-flex; align-items: center; min-width: 0; }
.brand__site-logo { display: block; width: auto; height: 48px; max-width: min(68vw, 320px); object-fit: contain; object-position: left center; }
.footer-brand--site-logo { display: grid; justify-items: start; gap: 10px; }
.footer-brand--site-logo > img { width: min(100%, 330px); height: auto; max-height: 84px; object-fit: contain; object-position: left center; }
.footer-brand--site-logo > span { color: var(--accent); font-size: 10px; font-weight: 850; text-transform: uppercase; letter-spacing: .08em; }

/* Keep all three ticker fixtures tightly packed. The rail still uses the full viewport, but no fixture reserves a screen width. */
.match-ticker__track { animation-duration: 38s; }
.match-ticker__fixture {
  min-width: 0 !important;
  width: max-content;
  justify-content: flex-start !important;
  gap: 12px !important;
  padding: 0 20px !important;
  border-right: 1px solid rgba(212,175,55,.16);
}
.match-ticker__fixture:last-child { border-right: 0; }
.match-ticker__team { margin-right: 0 !important; }
.match-ticker__matchup { margin-right: 0 !important; }

/* Homepage next-up: one clean team title and one premium match card. */
.home-next-up .section-heading { margin-bottom: 28px; }
.next-up-team-card { min-width: 0; display: grid; grid-template-rows: auto 1fr; gap: 15px; }
.next-up-team-card__heading { min-height: 52px; display: flex; align-items: center; gap: 11px; padding: 0 2px; }
.next-up-team-card__heading .eyebrow { margin: 0 0 3px; }
.next-up-team-card__heading h3 { margin: 0; font-size: 1.15rem; line-height: 1.1; }
.next-up-team-card__badge { width: 44px; height: 44px; flex: 0 0 44px; padding: 4px; border-radius: 50%; background: var(--paper); border: 1px solid var(--line); box-shadow: 0 6px 16px rgba(16,18,22,.08); }
.next-up-team-card__badge img { width: 100%; height: 100%; object-fit: contain; }
.next-up-team-card .feature-match { height: 100% !important; border-radius: 20px; box-shadow: 0 16px 36px rgba(18,22,28,.08); }
.next-up-team-card .feature-match__label { min-height: 50px; padding: 15px 17px; align-items: center; background: linear-gradient(180deg,#fff,#fbfbfc); border-bottom-color: #e8eaed; }
.next-up-team-card .feature-match__label span { max-width: 60%; color: #6e747d; font-size: 8px; line-height: 1.3; }
.next-up-team-card .feature-match__label strong { white-space: nowrap; font-size: 9px; }
.next-up-team-card .feature-match__body { min-height: 152px; padding: 28px 15px 24px; }
.next-up-team-card .feature-match__team img { width: 64px; height: 64px; }
.feature-match__badge-link { display: inline-grid; place-items: center; }
.feature-match__team strong a { color: inherit; }
.feature-match__team strong a:hover { text-decoration: underline; text-underline-offset: 3px; }
.next-up-team-card .feature-match__score span { max-width: 110px; text-align: center; line-height: 1.25; }
.next-up-team-card .feature-match__footer { min-height: 54px; padding: 14px 17px; }
.next-up-team-card .feature-match__footer > span { min-width: 0; line-height: 1.35; }
.next-up-team-card .feature-match__footer a { flex: 0 0 auto; }

/* Last 3 results: use the whole desktop content width. */
.home-recent-results .recent-results-list { width: 100%; }
.recent-result-team > a { display: inline-grid; place-items: center; }
.recent-result-team span a { color: inherit; }
.recent-result-card { border-radius: 19px; box-shadow: 0 14px 32px rgba(18,22,28,.07); }
.recent-result-card__top { min-height: 44px; padding-inline: 16px; }
.recent-result-card__match { min-height: 132px; padding: 22px 16px; }
.recent-result-card__bottom { padding: 13px 14px 14px; gap: 11px; }
.recent-result-card__bottom .button { min-height: 42px; }

/* League selectors now show both the team badge and the league identity. */
.standings-team-tab { gap: 13px; }
.standings-team-tab__identity { position: relative; width: 88px; height: 48px; flex: 0 0 88px; display: flex; align-items: center; }
.standings-team-tab__identity .standings-team-tab__badge { position: relative; z-index: 2; width: 46px; height: 46px; flex: 0 0 46px; }
.standings-team-tab__league-logo { position: absolute; z-index: 1; left: 34px; width: 56px; height: 34px; display: grid; place-items: center; padding: 4px 5px 4px 13px; border-radius: 9px; background: #fff; border: 1px solid rgba(0,0,0,.08); box-shadow: 0 5px 14px rgba(0,0,0,.13); overflow: hidden; }
.standings-team-tab__league-logo img { width: 100%; height: 100%; object-fit: contain; }
.league-table-card__title { min-width: 0; display: flex; align-items: center; gap: 12px; }
.league-table-card__title > img { width: 78px; height: 42px; flex: 0 0 78px; object-fit: contain; padding: 3px; border-radius: 8px; background: #fff; border: 1px solid #eceef0; }
.league-table-card__title > div { min-width: 0; }

/* Team hero now acts like a real profile header, using the assigned team badge/profile photo. */
.team-hero--profile { min-height: 430px; }
.team-hero--profile .team-hero__media::after { background: linear-gradient(180deg,rgba(5,6,8,.18),rgba(5,6,8,.92) 92%), linear-gradient(90deg,rgba(5,6,8,.64),rgba(5,6,8,.12)); }
.team-hero__identity { display: flex; align-items: flex-end; gap: 18px; }
.team-hero__profile-photo { width: 104px; height: 104px; flex: 0 0 104px; padding: 9px; border-radius: 25px; background: #fff; border: 1px solid rgba(255,255,255,.28); box-shadow: 0 16px 38px rgba(0,0,0,.28); }
.team-hero__profile-photo img { width: 100%; height: 100%; object-fit: contain; }
.team-hero__copy { min-width: 0; }
.team-hero__copy h1 { margin: 4px 0 8px; }
.team-hero__copy p { margin-top: 10px; max-width: 720px; }
.team-hero__meta { display: flex; flex-wrap: wrap; gap: 7px; }
.team-hero__meta span { display: inline-flex; align-items: center; min-height: 27px; padding: 0 9px; border: 1px solid rgba(255,255,255,.16); border-radius: 999px; background: rgba(0,0,0,.28); color: #d8dce1; font-size: 9px; font-weight: 780; }
.team-tabs--external { top: 72px; }

/* One reusable team profile supports both LAJFC teams and opponents. */
.team-profile-layout { display: grid; gap: 16px; }
.team-profile-about { padding: 22px; border: 1px solid var(--line); border-radius: 20px; background: var(--paper); box-shadow: var(--shadow-sm); }
.team-profile-about__top { display: grid; grid-template-columns: 70px minmax(0,1fr); gap: 16px; align-items: start; }
.team-profile-logo { width: 70px; height: 70px; padding: 7px; border-radius: 18px; background: #f7f8f9; border: 1px solid var(--line); }
.team-profile-logo img { width: 100%; height: 100%; object-fit: contain; }
.team-profile-about h2 { margin: 4px 0 9px; font-size: 1.75rem; }
.team-profile-about p { color: var(--muted); line-height: 1.65; }
.team-profile-web { margin-top: 18px; }
.team-profile-facts { display: grid; grid-template-columns: 1fr; gap: 8px; }
.team-profile-fact { min-height: 92px; padding: 16px; display: flex; flex-direction: column; justify-content: center; gap: 5px; border: 1px solid var(--line); border-radius: 16px; background: var(--paper); box-shadow: var(--shadow-sm); min-width: 0; }
.team-profile-fact > span { color: var(--muted); font-size: 8px; text-transform: uppercase; letter-spacing: .09em; font-weight: 900; }
.team-profile-fact > strong { font-size: 13px; line-height: 1.35; }
.team-profile-fact > small { color: var(--muted); font-size: 9px; line-height: 1.4; }
.team-profile-fact--league > div { display: flex; align-items: center; gap: 10px; }
.team-profile-fact--league img { width: 58px; height: 34px; object-fit: contain; flex: 0 0 58px; }
.team-profile-fact--league strong { font-size: 11px; line-height: 1.35; }
.team-profile-fact__mini-logo { width: 48px; height: 48px; padding: 4px; border: 1px solid var(--line); border-radius: 12px; }
.team-profile-fact__mini-logo img { width: 100%; height: 100%; object-fit: contain; }
.team-colours { display: flex; flex-wrap: wrap; gap: 8px; }
.team-colour { display: inline-flex; align-items: center; gap: 6px; font-size: 10px; font-weight: 800; }
.team-colour i { width: 18px; height: 18px; border-radius: 50%; background: var(--team-colour); border: 1px solid #c9cdd2; box-shadow: inset 0 0 0 2px rgba(255,255,255,.55); }

.team-assignment-grid { display: grid; gap: 10px; }
.team-assignment-card { min-height: 112px; padding: 16px; display: grid; grid-template-columns: 48px minmax(0,1fr) 18px; gap: 13px; align-items: center; border: 1px solid var(--line); border-radius: 18px; background: var(--paper); box-shadow: var(--shadow-sm); }
.team-assignment-card__icon { width: 48px; height: 48px; border-radius: 15px; display: grid; place-items: center; background: var(--ink); color: var(--accent); }
.team-assignment-card__icon .icon { width: 21px; height: 21px; }
.team-assignment-card > span:nth-child(2) { display: grid; gap: 2px; }
.team-assignment-card small { color: var(--muted); font-size: 8px; text-transform: uppercase; letter-spacing: .08em; font-weight: 900; }
.team-assignment-card strong { font-size: 1.7rem; line-height: 1; }
.team-assignment-card em { color: var(--muted); font-size: 9px; font-style: normal; }
.team-assignment-card > .icon { width: 16px; height: 16px; color: #9399a2; }

.team-media-grid { display: grid; gap: 11px; }
.team-media-card { position: relative; min-height: 230px; overflow: hidden; border-radius: 20px; background: var(--ink); box-shadow: var(--shadow-sm); }
.team-media-card > img { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; }
.team-media-card--profile > img { object-fit: contain; padding: 38px; background: #f4f5f6; }
.team-media-card::after { content: ""; position: absolute; inset: 0; background: linear-gradient(180deg,transparent 42%,rgba(6,7,9,.9)); }
.team-media-card--profile::after { background: linear-gradient(180deg,transparent 56%,rgba(6,7,9,.86)); }
.team-media-card > div { position: absolute; z-index: 2; left: 16px; right: 16px; bottom: 15px; display: grid; gap: 3px; color: #fff; }
.team-media-card span { color: var(--accent); font-size: 8px; font-weight: 900; text-transform: uppercase; letter-spacing: .08em; }
.team-media-card strong { font-size: 1rem; }
.team-panel__link { margin-top: 15px; }

.team-sponsors-page-grid { display: grid; gap: 14px; }

@media (max-width: 699px) {
  .brand__site-logo { height: 44px; max-width: 70vw; }
  .home-next-up .section-heading { margin-bottom: 22px; }
  .next-up-team-card { gap: 12px; }
  .next-up-team-card + .next-up-team-card { margin-top: 8px; }
  .next-up-team-card__heading { min-height: 46px; }
  .next-up-team-card__badge { width: 40px; height: 40px; flex-basis: 40px; }
  .next-up-team-card__heading h3 { font-size: 1.05rem; }
  .next-up-team-card .feature-match__body { min-height: 142px; padding: 23px 11px 20px; }
  .next-up-team-card .feature-match__team img { width: 54px; height: 54px; }
  .next-up-team-card .feature-match__team strong { font-size: 10px; }
  .next-up-team-card .feature-match__score { min-width: 55px; }
  .next-up-team-card .feature-match__score strong { font-size: 1.4rem; }
  .recent-result-card__match { min-height: 118px; }

  .standings-team-tab__identity { width: 60px; height: 38px; flex-basis: 60px; }
  .standings-team-tab__identity .standings-team-tab__badge { width: 36px; height: 36px; flex-basis: 36px; }
  .standings-team-tab__league-logo { left: 28px; width: 38px; height: 27px; padding: 3px 4px 3px 9px; border-radius: 7px; }
  .standings-team-tab { gap: 5px; }
  .league-table-card__title > img { width: 56px; height: 34px; flex-basis: 56px; }

  .team-hero--profile { min-height: 410px; }
  .team-hero__identity { align-items: center; gap: 13px; }
  .team-hero__profile-photo { width: 82px; height: 82px; flex-basis: 82px; padding: 7px; border-radius: 20px; }
  .team-hero__copy h1 { font-size: clamp(2rem,10vw,3rem); }
  .team-hero__copy p { font-size: 11px; line-height: 1.5; }
  .team-hero__meta span { min-height: 24px; font-size: 8px; }
  .team-profile-about__top { grid-template-columns: 58px minmax(0,1fr); gap: 12px; }
  .team-profile-logo { width: 58px; height: 58px; border-radius: 15px; }
  .team-profile-about h2 { font-size: 1.45rem; }
  .team-profile-fact { min-height: 84px; }
}

@media (min-width: 700px) {
  .team-profile-facts { grid-template-columns: repeat(2,minmax(0,1fr)); }
  .team-assignment-grid { grid-template-columns: repeat(3,minmax(0,1fr)); }
  .team-media-grid { grid-template-columns: 1.5fr 1fr 1fr; }
  .team-media-card { min-height: 300px; }
  .team-sponsors-page-grid { grid-template-columns: repeat(2,minmax(0,1fr)); }
}

@media (min-width: 900px) {
  .brand__site-logo { height: 58px; max-width: 330px; }
  .match-ticker__fixture { gap: 14px !important; padding-inline: 24px !important; }
  .home-match-panels--three { gap: 22px; }
  .home-match-panels--three .feature-match { height: 100% !important; }
  .home-match-panels--three .feature-match__body { padding-inline: 18px; }

  .home-recent-results .recent-results-list { grid-template-columns: repeat(3,minmax(0,1fr)); gap: 16px; }
  .home-recent-results .recent-results-list .recent-result-card:first-child { grid-column: auto; }
  .recent-result-card__match { min-height: 150px; padding: 26px 18px; }
  .recent-result-team img { width: 58px; height: 58px; }
  .recent-result-team span { font-size: 11px; }
  .recent-result-score strong { font-size: 2rem; }

  .team-hero--profile { min-height: 540px; }
  .team-hero--profile .team-hero__content { padding-bottom: 54px; }
  .team-hero__profile-photo { width: 150px; height: 150px; flex-basis: 150px; border-radius: 34px; padding: 12px; }
  .team-hero__identity { gap: 28px; }
  .team-hero__copy h1 { font-size: clamp(3rem,5vw,5.1rem); }
  .team-hero__copy p { font-size: 14px; }

  .team-profile-layout { grid-template-columns: minmax(320px,.82fr) minmax(0,1.5fr); align-items: stretch; gap: 18px; }
  .team-profile-about { padding: 28px; }
  .team-profile-about__top { grid-template-columns: 88px minmax(0,1fr); gap: 20px; }
  .team-profile-logo { width: 88px; height: 88px; }
  .team-profile-facts { grid-template-columns: repeat(2,minmax(0,1fr)); gap: 10px; }
  .team-profile-fact { min-height: 110px; padding: 18px; }
  .team-profile-fact--colours { grid-column: span 2; }
}

@media (prefers-reduced-motion: reduce) {
  .match-ticker__track { animation: none !important; }
}

/* v3.1 league switcher cleanup + clickable league club profiles */
.standings-team-tab__league-mark {
  width: 88px;
  height: 48px;
  flex: 0 0 88px;
  display: grid;
  place-items: center;
  padding: 6px 8px;
  border-radius: 10px;
  background: #fff;
  border: 1px solid rgba(0,0,0,.08);
  box-shadow: 0 6px 16px rgba(0,0,0,.14);
  overflow: hidden;
}
.standings-team-tab__league-mark img {
  width: 100%;
  height: 100%;
  object-fit: contain;
}
.standings-team-tabs--light .standings-team-tab__league-mark {
  border-color: #e0e3e7;
  box-shadow: 0 5px 14px rgba(23,27,34,.08);
}

.league-team-link {
  display: block;
  color: inherit;
  text-decoration: none;
  border-radius: 9px;
  transition: color .18s ease, background .18s ease;
}
.league-team-link .table-team {
  min-width: 0;
}
.league-team-link__name {
  min-width: 0;
  color: inherit;
  font-weight: 720;
}
.league-team-link__arrow {
  width: 18px;
  height: 18px;
  margin-left: auto;
  display: inline-grid;
  place-items: center;
  color: #9a7f20;
  opacity: 0;
  transform: translateX(-4px);
  transition: opacity .18s ease, transform .18s ease;
}
.league-team-link__arrow .icon {
  width: 14px;
  height: 14px;
}
.league-table tbody tr {
  transition: background .18s ease;
}
.league-table tbody tr:hover {
  background: #fbfaf6;
}
.league-table tbody tr.is-club:hover {
  background: #fff1bd;
}
.league-team-link:hover,
.league-team-link:focus-visible {
  color: #8a6e10;
}
.league-team-link:hover .league-team-link__arrow,
.league-team-link:focus-visible .league-team-link__arrow {
  opacity: 1;
  transform: translateX(0);
}
.league-team-link:focus-visible {
  outline: 2px solid var(--accent);
  outline-offset: 3px;
}

@media (max-width: 699px) {
  .standings-team-tab__league-mark {
    width: 64px;
    height: 38px;
    flex-basis: 64px;
    padding: 5px 6px;
    border-radius: 8px;
  }
  .standings-team-tab {
    gap: 7px;
  }
  .league-team-link__arrow {
    display: none;
  }
  .league-team-link__name {
    overflow-wrap: anywhere;
    line-height: 1.2;
  }
}

/* v3.2 league logo visibility fix - preserve the complete artwork */
.standings-team-tab__league-mark {
  width: 96px;
  height: 58px;
  flex: 0 0 96px;
  padding: 8px 10px;
  overflow: visible;
  box-sizing: border-box;
}
.standings-team-tab__league-mark img {
  display: block;
  width: 100%;
  height: 100%;
  max-width: 100%;
  max-height: 100%;
  object-fit: contain;
  object-position: center;
}
.league-table-card__title > img {
  width: 88px;
  height: 54px;
  flex: 0 0 88px;
  padding: 7px 9px;
  box-sizing: border-box;
  object-fit: contain;
  object-position: center;
  overflow: visible;
}
.team-profile-fact--league img {
  width: 72px;
  height: 44px;
  flex: 0 0 72px;
  padding: 3px;
  box-sizing: border-box;
  object-fit: contain;
  object-position: center;
}

@media (max-width: 699px) {
  .standings-team-tab__league-mark {
    width: 72px;
    height: 46px;
    flex-basis: 72px;
    padding: 6px 7px;
  }
  .league-table-card__title > img {
    width: 68px;
    height: 44px;
    flex-basis: 68px;
    padding: 5px 6px;
  }
  .team-profile-fact--league img {
    width: 62px;
    height: 40px;
    flex-basis: 62px;
  }
}

/* v3.3 league switcher logo containment - never allow artwork outside its tile */
.standings-team-tab {
  min-height: 80px;
  padding-block: 10px;
  overflow: hidden;
}
.standings-team-tab__league-mark {
  width: 88px;
  height: 52px;
  flex: 0 0 88px;
  box-sizing: border-box;
  padding: 6px 8px;
  display: flex;
  align-items: center;
  justify-content: center;
  overflow: hidden;
  contain: paint;
  border-radius: 10px;
}
.standings-team-tab__league-mark img {
  display: block;
  width: auto !important;
  height: auto !important;
  max-width: 100% !important;
  max-height: 100% !important;
  object-fit: contain;
  object-position: center;
  margin: 0;
}

@media (max-width: 699px) {
  .standings-team-tab {
    min-height: 68px;
    padding-block: 8px;
  }
  .standings-team-tab__league-mark {
    width: 64px;
    height: 40px;
    flex-basis: 64px;
    padding: 4px 5px;
  }
}


/* v3.4 - compact crest + club name header lockup */
.brand--site-logo {
  display: inline-flex;
  align-items: center;
  gap: 10px;
  min-width: 0;
  text-decoration: none;
}
.brand__site-logo-frame {
  width: 46px;
  height: 46px;
  flex: 0 0 46px;
  position: relative;
  display: block;
  overflow: hidden;
  border-radius: 50%;
}
.brand__site-logo-frame .brand__site-logo {
  display: block;
  width: auto !important;
  max-width: none !important;
  height: 46px !important;
  object-fit: initial;
  object-position: initial;
  transform: translateX(0);
}
.brand__club-name {
  display: block;
  min-width: 0;
  color: #fff;
  font-size: 13px;
  line-height: 1.1;
  font-weight: 900;
  letter-spacing: -.015em;
  white-space: nowrap;
}

@media (max-width: 359px) {
  .brand--site-logo { gap: 8px; }
  .brand__site-logo-frame { width: 40px; height: 40px; flex-basis: 40px; }
  .brand__site-logo-frame .brand__site-logo { height: 40px !important; }
  .brand__club-name { font-size: 11.5px; }
}

@media (min-width: 900px) {
  .brand--site-logo { gap: 13px; }
  .brand__site-logo-frame { width: 58px; height: 58px; flex-basis: 58px; }
  .brand__site-logo-frame .brand__site-logo { height: 58px !important; }
  .brand__club-name {
    font-size: 18px;
    line-height: 1;
    letter-spacing: -.02em;
  }
}


/* v3.5 - two-line club identity lockup */
.brand__identity-copy {
  display: grid;
  gap: 3px;
  min-width: 0;
  align-content: center;
}
.brand__club-tagline {
  display: block;
  min-width: 0;
  color: #aeb3bb;
  font-size: 9px;
  line-height: 1.15;
  font-weight: 650;
  letter-spacing: .015em;
  white-space: nowrap;
}

@media (max-width: 359px) {
  .brand__identity-copy { gap: 2px; }
  .brand__club-tagline { font-size: 8px; }
}

@media (min-width: 900px) {
  .brand__identity-copy { gap: 4px; }
  .brand__club-tagline {
    font-size: 10.5px;
    line-height: 1.15;
    letter-spacing: .02em;
  }
}

/* v4.0 - team profile reorganisation, result-card parity, fixture alignment */

/* Homepage result cards deliberately share the Next Up visual system. */
.home-result-panels { width: 100%; }
.result-team-card .feature-match__label span { color: #6e747d; }
.result-team-card .feature-match__score strong { color: var(--ink); }
.result-team-card .feature-match__footer a { white-space: nowrap; }

/* Fixtures: HOME LOGO | HOME NAME | TIME | AWAY NAME | AWAY LOGO */
.match-card--fixture .match-card__top { border-bottom-color: #eceef1; }
.fixture-line {
  min-height: 116px;
  padding: 20px 18px;
  display: grid;
  grid-template-columns: 48px minmax(0,1fr) 68px minmax(0,1fr) 48px;
  align-items: center;
  gap: 10px;
}
.fixture-line__badge {
  width: 48px;
  height: 48px;
  display: grid;
  place-items: center;
  min-width: 0;
}
.fixture-line__badge img {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: contain;
}
.fixture-line__name {
  min-width: 0;
  font-size: 12px;
  line-height: 1.25;
  font-weight: 850;
}
.fixture-line__name a { color: inherit; }
.fixture-line__name a:hover { text-decoration: underline; text-underline-offset: 3px; }
.fixture-line__name--home { text-align: left; }
.fixture-line__name--away { text-align: right; }
.fixture-line__kickoff {
  min-width: 0;
  display: grid;
  justify-items: center;
  gap: 3px;
  text-align: center;
}
.fixture-line__kickoff strong {
  font-size: 1.25rem;
  line-height: 1;
  color: var(--ink);
}
.fixture-line__kickoff span {
  color: var(--muted);
  font-size: 8px;
  line-height: 1;
  text-transform: uppercase;
  letter-spacing: .09em;
  font-weight: 900;
}
.fixture-line__score {
  min-width: 0;
  display: grid;
  justify-items: center;
  gap: 4px;
  text-align: center;
}
.fixture-line__score strong {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 5px;
  font-size: 1.25rem;
  line-height: 1;
  color: var(--ink);
  font-weight: 900;
}
.fixture-line__score strong i {
  color: var(--muted);
  font-style: normal;
  font-size: .78em;
  font-weight: 750;
}
.fixture-line__score small {
  color: var(--muted);
  font-size: 8px;
  line-height: 1;
  text-transform: uppercase;
  letter-spacing: .09em;
  font-weight: 900;
}


/* Homepage match presentation: team columns with centre KO / score. */
.home-match-line {
  min-height: 180px;
  padding: 22px 16px;
  display: grid;
  grid-template-columns: minmax(0,1fr) 76px minmax(0,1fr);
  align-items: center;
  gap: 8px;
}
.home-match-line__team {
  min-width: 0;
  display: grid;
  justify-items: center;
  align-content: center;
  gap: 12px;
  text-align: center;
}
.home-match-line__badge {
  width: 68px;
  height: 68px;
  display: grid;
  place-items: center;
}
.home-match-line__badge img {
  width: 100%;
  height: 100%;
  display: block;
  object-fit: contain;
}
.home-match-line__name {
  min-width: 0;
  width: 100%;
  font-size: 13px;
  line-height: 1.22;
  font-weight: 900;
  overflow-wrap: anywhere;
}
.home-match-line__name a { color: inherit; }
.home-match-line__name a:hover { text-decoration: underline; text-underline-offset: 3px; }
.home-match-line__centre {
  min-width: 0;
  display: grid;
  justify-items: center;
  align-content: center;
  gap: 7px;
  text-align: center;
}
.home-match-line__time,
.home-match-line__score {
  color: var(--ink);
  font-size: 1.4rem;
  line-height: 1;
  font-weight: 950;
}
.home-match-line__score {
  display: flex;
  align-items: center;
  gap: 6px;
}
.home-match-line__score i {
  color: var(--muted);
  font-style: normal;
  font-size: .72em;
}
.home-match-line__centre small {
  color: var(--muted);
  font-size: 8px;
  line-height: 1;
  font-weight: 900;
  letter-spacing: .1em;
  text-transform: uppercase;
}

/* Reorganised team overview - major football content first, smaller facts last. */
.team-profile-lead__grid { display: grid; gap: 18px; }
.team-profile-lead__media {
  position: relative;
  min-height: 280px;
  overflow: hidden;
  border-radius: 24px;
  background: #111317;
  box-shadow: 0 18px 42px rgba(17,19,23,.12);
}
.team-profile-lead__photo {
  display: block;
  width: 100%;
  height: 100%;
  min-height: 280px;
  object-fit: cover;
}
.team-profile-lead__media::after {
  content: "";
  position: absolute;
  inset: 0;
  background: linear-gradient(180deg,transparent 54%,rgba(7,8,10,.46));
  pointer-events: none;
}
.team-profile-lead__logo {
  position: absolute;
  z-index: 2;
  left: 18px;
  bottom: 18px;
  width: 82px;
  height: 82px;
  padding: 8px;
  display: grid;
  place-items: center;
  overflow: hidden;
  border-radius: 21px;
  background: #fff;
  border: 1px solid rgba(255,255,255,.78);
  box-shadow: 0 12px 30px rgba(0,0,0,.24);
}
.team-profile-lead__logo img { width: 100%; height: 100%; object-fit: contain; }
.team-profile-lead__about {
  padding: 24px;
  align-self: stretch;
  display: flex;
  flex-direction: column;
  justify-content: center;
  border: 1px solid var(--line);
  border-radius: 24px;
  background: var(--paper);
  box-shadow: var(--shadow-sm);
}
.team-profile-lead__about h2 { margin: 6px 0 12px; font-size: clamp(1.8rem,4vw,3rem); line-height: 1.02; }
.team-profile-lead__about p { max-width: 720px; color: var(--muted); line-height: 1.72; }
.team-profile-lead__chips { margin-top: 18px; display: flex; flex-wrap: wrap; gap: 8px; }
.team-profile-lead__chips span {
  min-height: 34px;
  padding: 7px 10px;
  display: inline-flex;
  align-items: center;
  gap: 7px;
  border-radius: 999px;
  background: #f3f4f6;
  color: #5f6670;
  font-size: 9px;
  font-weight: 800;
}
.team-profile-lead__chips .icon { width: 14px; height: 14px; color: #9a7a1c; }
.team-profile-lead__social { margin-top: 20px; align-self: flex-start; }
.team-profile-major .section-heading { margin-bottom: 24px; }
.team-profile-scorers-row { margin-top: 24px; }
.team-profile-squad-cta { display: flex; flex-direction: column; justify-content: center; align-items: flex-start; }
.team-profile-squad-cta p { color: var(--muted); line-height: 1.65; margin: 8px 0 20px; }

.team-profile-staff-grid { display: grid; gap: 12px; }
.team-profile-staff-card {
  min-width: 0;
  overflow: hidden;
  display: grid;
  grid-template-columns: 82px minmax(0,1fr);
  align-items: center;
  gap: 14px;
  border: 1px solid var(--line);
  border-radius: 18px;
  background: var(--paper);
  box-shadow: var(--shadow-sm);
}
.team-profile-staff-card__photo { width: 82px; height: 96px; overflow: hidden; background: #eef0f2; }
.team-profile-staff-card__photo img { width: 100%; height: 100%; object-fit: cover; }
.team-profile-staff-card > div:last-child { min-width: 0; padding: 12px 14px 12px 0; display: grid; gap: 4px; }
.team-profile-staff-card span { color: #9a7a1c; font-size: 8px; text-transform: uppercase; letter-spacing: .09em; font-weight: 900; }
.team-profile-staff-card strong { font-size: 13px; line-height: 1.25; }
.team-profile-section-actions { margin-top: 20px; display: flex; flex-wrap: wrap; gap: 10px; }

.team-profile-sponsor-grid { width: 100%; }

.team-profile-gallery-grid { display: grid; gap: 12px; }
.team-profile-gallery-card {
  position: relative;
  min-height: 230px;
  overflow: hidden;
  border-radius: 20px;
  background: #111317;
  box-shadow: var(--shadow-sm);
}
.team-profile-gallery-card img { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; }
.team-profile-gallery-card--logo img { object-fit: contain; padding: 44px; background: #f2f3f5; }
.team-profile-gallery-card::after { content: ""; position: absolute; inset: 0; background: linear-gradient(180deg,transparent 54%,rgba(5,6,8,.86)); }
.team-profile-gallery-card span {
  position: absolute;
  z-index: 2;
  left: 16px;
  bottom: 15px;
  color: #fff;
  font-size: 10px;
  text-transform: uppercase;
  letter-spacing: .08em;
  font-weight: 900;
}
.team-profile-details .team-profile-facts--full { margin-top: 4px; }
.team-profile-assignment-summary { margin-top: 22px; }

@media (max-width: 699px) {
  .fixture-line {
    min-height: 94px;
    padding: 16px 10px;
    grid-template-columns: 34px minmax(0,1fr) 54px minmax(0,1fr) 34px;
    gap: 6px;
  }
  .fixture-line__badge { width: 34px; height: 34px; }
  .fixture-line__name { font-size: 10px; line-height: 1.18; }
  .fixture-line__kickoff strong,
  .fixture-line__score strong { font-size: 1rem; }
  .fixture-line__kickoff span,
  .fixture-line__score small { font-size: 7px; }
  .team-profile-lead__media, .team-profile-lead__photo { min-height: 235px; }
  .team-profile-lead__logo { width: 68px; height: 68px; left: 14px; bottom: 14px; border-radius: 18px; }
  .team-profile-lead__about { padding: 20px; }
  .team-profile-lead__chips { margin-top: 15px; }
  .team-profile-staff-card { grid-template-columns: 72px minmax(0,1fr); }
  .team-profile-staff-card__photo { width: 72px; height: 88px; }
  .team-profile-gallery-card { min-height: 210px; }
  .result-team-card + .result-team-card { margin-top: 8px; }
}

@media (min-width: 700px) {
  .fixture-line {
    min-height: 128px;
    padding: 24px 28px;
    grid-template-columns: 64px minmax(0,1fr) 90px minmax(0,1fr) 64px;
    gap: 16px;
  }
  .fixture-line__badge { width: 64px; height: 64px; }
  .fixture-line__name { font-size: 16px; }
  .fixture-line__kickoff strong,
  .fixture-line__score strong { font-size: 1.55rem; }
  .team-profile-lead__grid { grid-template-columns: minmax(0,1.45fr) minmax(320px,.85fr); align-items: stretch; }
  .team-profile-lead__media, .team-profile-lead__photo { min-height: 420px; }
  .team-profile-lead__logo { width: 108px; height: 108px; left: 24px; bottom: 24px; padding: 10px; border-radius: 26px; }
  .team-profile-lead__about { padding: 34px; }
  .team-profile-staff-grid { grid-template-columns: repeat(2,minmax(0,1fr)); }
  .team-profile-gallery-grid { grid-template-columns: 1.45fr 1fr 1fr; }
  .team-profile-gallery-card { min-height: 300px; }
  .team-profile-facts--full { grid-template-columns: repeat(4,minmax(0,1fr)); }
  .team-profile-facts--full .team-profile-fact--colours { grid-column: span 2; }
}

@media (min-width: 1100px) {
  .team-profile-staff-grid { grid-template-columns: repeat(3,minmax(0,1fr)); }
}

/* Database-backed football management additions */
.site-pagination{display:flex;align-items:center;justify-content:center;gap:8px;flex-wrap:wrap;margin-top:28px;padding-top:22px;border-top:1px solid var(--line)}
.site-pagination__button,.site-pagination__count{min-height:40px;border-radius:10px;border:1px solid var(--line);background:var(--paper);padding:9px 13px;display:inline-flex;align-items:center;justify-content:center;gap:6px;font-size:11px;font-weight:900}
.site-pagination__button:hover{background:var(--ink);border-color:var(--ink);color:var(--paper)}
.site-pagination__count{background:#f4f5f6;color:var(--muted);font-variant-numeric:tabular-nums}
.match-server-tabs a{border:0;min-height:46px;border-radius:11px;background:transparent;font-size:11px;font-weight:900;cursor:pointer;display:flex;align-items:center;justify-content:center;padding:10px 14px}
.match-server-tabs a.is-active{background:var(--ink);color:var(--paper)}
.birthday-list{display:grid;gap:14px}.birthday-card{text-decoration:none}.birthday-card .nationality-flag{width:24px;height:16px;vertical-align:middle;margin-right:7px}
.match-status-chip{display:inline-flex;align-items:center;justify-content:center;min-height:36px;border:1px solid rgba(255,255,255,.2);border-radius:999px;padding:7px 13px;color:var(--paper);font-size:10px;font-weight:900;text-transform:uppercase;letter-spacing:.08em}
.match-status-chip--live{background:#1f8a55;border-color:#1f8a55}.match-status-chip--finished{background:#2b66a3;border-color:#2b66a3}.match-status-chip--postponed{background:#8d6716;border-color:#8d6716}.match-status-chip--cancelled{background:#9b3535;border-color:#9b3535}
.scoreline__vs{grid-column:1/-1;font-size:2rem!important}.lineup-section-title{font-size:.72rem;text-transform:uppercase;letter-spacing:.12em;margin:20px 0 10px;color:var(--muted)}.lineup-row a{color:inherit}.team-empty--compact{padding:24px 0;border:0;background:transparent}.team-empty--compact h3{margin-top:0}.match-report{white-space:normal}.event-icon--yellow_card{background:#f4cc24!important}.event-icon--red_card{background:#d23b3b!important}.event-icon--substitution{background:#347cb7!important}.event-icon--other{background:#888!important}
@media(min-width:760px){.birthday-list{grid-template-columns:repeat(2,minmax(0,1fr))}.site-pagination{justify-content:flex-end}}
@media(max-width:520px){.site-pagination__button,.site-pagination__count{padding:8px 10px;font-size:10px}.site-pagination__count{order:-1;width:100%}}

/* v19.4 player profile statistics */

/* Player statistic period tabs */
.player-statistics-section { overflow: hidden; }
.player-stats-tabs { margin-top: 20px; }
.player-stats-tabs__nav {
  display: grid;
  grid-template-columns: 1fr;
  gap: 8px;
  margin-bottom: 22px;
}
.player-stats-tab {
  min-width: 0;
  padding: 15px 16px;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 14px;
  border: 1px solid var(--line);
  border-radius: 15px;
  background: var(--paper);
  color: var(--ink);
  text-align: left;
  cursor: pointer;
  transition: .18s ease;
}
.player-stats-tab span {
  font-size: 10px;
  font-weight: 900;
  letter-spacing: .05em;
  text-transform: uppercase;
}
.player-stats-tab strong {
  flex: 0 0 auto;
  color: var(--muted);
  font-size: 11px;
}
.player-stats-tab.is-active {
  background: var(--ink);
  border-color: var(--ink);
  color: var(--paper);
  box-shadow: var(--shadow-sm);
}
.player-stats-tab.is-active strong { color: var(--accent); }
.player-stats-panel { display: none; }
.player-stats-panel.is-active { display: block; }
.player-stats-panel__head { margin-bottom: 14px; }
.player-stats-panel__head h2 { margin-top: 4px; }
.player-stats-panels .stats-band { margin-top: 0; }

@media (min-width: 700px) {
  .player-stats-tabs__nav {
    grid-template-columns: repeat(3,minmax(0,1fr));
    gap: 10px;
  }
  .player-stats-tab {
    min-height: 72px;
    padding: 17px 18px;
    display: grid;
    align-content: center;
    justify-content: start;
    gap: 5px;
  }
}

.player-stats-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
.previous-season-card--player{display:block}
.previous-season-card--player>div:first-child{margin-bottom:18px}
.player-previous-stats{grid-template-columns:repeat(2,minmax(0,1fr))!important}
.player-previous-stats>div{min-height:92px;display:flex;flex-direction:column;justify-content:space-between}
@media(min-width:760px){
  .player-stats-grid{grid-template-columns:repeat(4,minmax(0,1fr))}
  .player-previous-stats{grid-template-columns:repeat(4,minmax(0,1fr))!important}
  .previous-season-card--player{padding:30px}
}

/* v4.3.0 - managed documents + legal modal */
.site-empty-state{grid-column:1/-1;border:1px dashed #cfd3d8;border-radius:20px;background:#fff;padding:44px 24px;text-align:center;display:grid;place-items:center;gap:8px;color:var(--muted)}.site-empty-state>span{width:48px;height:48px;border-radius:14px;background:#f4edcf;color:#8d731d;display:grid;place-items:center}.site-empty-state h3{margin:0;color:var(--ink)}.site-empty-state p{max-width:520px}.legal-page{background:#fff;border:1px solid var(--line);border-radius:24px;padding:clamp(22px,4vw,46px);box-shadow:var(--shadow-sm)}.legal-page__updated{font-size:12px;color:var(--muted);padding-bottom:18px;margin-bottom:24px;border-bottom:1px solid var(--line)}.legal-page__updated strong{color:var(--ink)}
.legal-richtext{color:#25292f;font-size:15px;line-height:1.8;overflow-wrap:anywhere;word-break:normal;max-width:100%}.legal-richtext>*:first-child{margin-top:0}.legal-richtext>*:last-child{margin-bottom:0}.legal-richtext p{color:inherit;margin:0 0 1em}.legal-richtext h1,.legal-richtext h2,.legal-richtext h3{color:var(--ink);margin:1.25em 0 .55em;letter-spacing:-.025em}.legal-richtext h1{font-size:clamp(1.75rem,5vw,2.7rem)}.legal-richtext h2{font-size:clamp(1.45rem,4vw,2.1rem)}.legal-richtext h3{font-size:clamp(1.15rem,3vw,1.5rem)}.legal-richtext a{color:#8a6e11;text-decoration:underline;text-decoration-thickness:1px;text-underline-offset:3px}.legal-richtext blockquote{margin:1.25em 0;border-left:4px solid var(--accent);background:#fbf8eb;padding:14px 18px;border-radius:0 12px 12px 0}.legal-richtext ul,.legal-richtext ol{padding-left:1.4em;margin:1em 0}.legal-richtext li{margin:.35em 0}.legal-richtext hr{border:0;border-top:1px solid var(--line);margin:1.8em 0}.legal-richtext pre{max-width:100%;overflow:auto;background:#111317;color:#f5f6f7;border-radius:12px;padding:14px;font-size:12px}.legal-richtext .bb-align-left{text-align:left}.legal-richtext .bb-align-center{text-align:center}.legal-richtext .bb-align-right{text-align:right}.legal-richtext .bb-align-justify{text-align:justify}
body.legal-modal-open{overflow:hidden}.legal-modal{position:fixed;inset:0;z-index:2600;display:grid;place-items:center;padding:24px;visibility:hidden;pointer-events:none}.legal-modal.is-open{visibility:visible;pointer-events:auto}.legal-modal__backdrop{position:absolute;inset:0;background:rgba(4,5,7,.72);backdrop-filter:blur(5px);opacity:0;transition:opacity 220ms ease}.legal-modal.is-open .legal-modal__backdrop{opacity:1}.legal-modal__panel{position:relative;width:min(920px,100%);max-height:min(88vh,900px);background:#fff;border-radius:26px;box-shadow:0 30px 100px rgba(0,0,0,.32);display:grid;grid-template-rows:auto minmax(0,1fr) auto;overflow:hidden;transform:translateY(18px) scale(.985);opacity:0;transition:transform 220ms ease,opacity 220ms ease}.legal-modal.is-open .legal-modal__panel{transform:none;opacity:1}.legal-modal__header{display:flex;align-items:flex-start;justify-content:space-between;gap:20px;padding:22px 24px 18px;border-bottom:1px solid var(--line);background:#fff}.legal-modal__header .eyebrow{margin-bottom:8px}.legal-modal__header h2{font-size:clamp(1.45rem,4vw,2rem);margin:0 0 6px}.legal-modal__header p{font-size:11px;color:var(--muted);margin:0}.legal-modal__header p:not(:empty)::before{content:"Last edited: ";font-weight:700;color:#525963}.legal-modal__x{width:42px;height:42px;flex:0 0 auto;border:0;border-radius:50%;background:#fff0f1;color:#d33148;display:grid;place-items:center;cursor:pointer;transition:background var(--transition),transform var(--transition)}.legal-modal__x:hover{background:#ffe0e3;transform:rotate(4deg)}.legal-modal__x .icon{width:21px;height:21px}.legal-modal__body{padding:24px;overflow-y:auto;overflow-x:hidden;overscroll-behavior:contain;scrollbar-width:thin;scrollbar-color:#8c8f95 #eceef0}.legal-modal__body::-webkit-scrollbar{width:8px}.legal-modal__body::-webkit-scrollbar-track{background:#eceef0}.legal-modal__body::-webkit-scrollbar-thumb{background:#8c8f95;border-radius:999px;border:2px solid #eceef0}.legal-modal__body::-webkit-scrollbar-thumb:hover{background:var(--accent)}.legal-modal__footer{padding:14px 24px calc(14px + env(safe-area-inset-bottom));border-top:1px solid var(--line);background:#fafafa;display:flex;justify-content:flex-end}.legal-modal__footer .button{min-width:120px}
@media(max-width:640px){.legal-modal{padding:0;display:block}.legal-modal__panel{width:100%;height:100dvh;max-height:none;border-radius:0;transform:translateY(100%);grid-template-rows:auto minmax(0,1fr) auto}.legal-modal.is-open .legal-modal__panel{transform:translateY(0)}.legal-modal__header{padding:18px 18px 14px}.legal-modal__header h2{font-size:1.45rem}.legal-modal__body{padding:20px 18px 28px}.legal-modal__footer{padding:12px 18px calc(12px + env(safe-area-inset-bottom))}.legal-modal__footer .button{width:100%}.legal-richtext{font-size:14px;line-height:1.75}.footer-bottom>div{flex-wrap:wrap;row-gap:7px}}


/* v4.4.0 - database news, sharing and league top scorers */
.article-standfirst.legal-richtext{color:#d8dce2;font-size:clamp(1rem,2vw,1.2rem);line-height:1.7}.article-standfirst.legal-richtext p{color:inherit;margin:0}.article-richtext{font-size:1rem}.article-richtext h1,.article-richtext h2,.article-richtext h3{color:var(--ink)}
.share-row__buttons button{width:39px;height:39px;display:grid;place-items:center;border-radius:50%;border:0;background:var(--ink);color:var(--paper);cursor:pointer}.share-row__buttons a:hover,.share-row__buttons button:hover{background:var(--accent);color:#111}.share-row__buttons .icon{width:18px;height:18px}
.top-scorer-grid{display:grid;gap:14px}.top-scorer-card{display:grid;grid-template-columns:118px minmax(0,1fr);background:var(--paper);border:1px solid var(--line);border-radius:22px;overflow:hidden;box-shadow:var(--shadow-sm);min-width:0;text-decoration:none;transition:transform var(--transition),box-shadow var(--transition)}.top-scorer-card:hover{transform:translateY(-3px);box-shadow:var(--shadow)}.top-scorer-card__media{min-height:180px;background:linear-gradient(145deg,#17191e,#2a2d33);overflow:hidden}.top-scorer-card__media img{width:100%;height:100%;object-fit:cover}.top-scorer-card__body{padding:18px;min-width:0}.top-scorer-card__league{display:flex;align-items:center;gap:10px;margin-bottom:16px}.top-scorer-card__league>span{width:42px;height:42px;border:1px solid var(--line);border-radius:11px;background:#fff;display:grid;place-items:center;padding:5px;flex:0 0 auto}.top-scorer-card__league img{width:100%;height:100%;object-fit:contain}.top-scorer-card__league small,.top-scorer-card__league strong{display:block}.top-scorer-card__league small{color:var(--muted);font-size:9px;text-transform:uppercase;font-weight:900;letter-spacing:.08em}.top-scorer-card__league strong{font-size:11px;line-height:1.3;margin-top:2px}.top-scorer-card h3{font-size:1.25rem;margin:0 0 3px}.top-scorer-card__body>p{font-size:11px;color:var(--muted);margin:0 0 14px}.top-scorer-card__stats{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));border-top:1px solid var(--line);padding-top:13px;gap:8px}.top-scorer-card__stats span{display:grid}.top-scorer-card__stats strong{font-size:1.25rem}.top-scorer-card__stats small{font-size:8px;text-transform:uppercase;letter-spacing:.1em;color:var(--muted);font-weight:900}@media(min-width:760px){.top-scorer-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.top-scorer-card{grid-template-columns:1fr}.top-scorer-card__media{height:240px}.article-richtext{font-size:1.08rem}}

.mini-crest--initial {
    display: inline-grid;
    place-items: center;
    background: #eef0f2;
    color: #343a42;
    font-size: 11px;
    font-weight: 900;
    line-height: 1;
    text-transform: uppercase;
}


/* Rich news article media */
.article-richtext .article-inline-image{margin:30px 0;max-width:100%}
.article-richtext .article-inline-image a{display:block;text-decoration:none;border-radius:18px;overflow:hidden;background:#eef0f2;box-shadow:0 14px 38px rgba(13,16,21,.10)}
.article-richtext .article-inline-image img{display:block;width:100%;height:auto;max-height:760px;object-fit:contain;margin:0;background:#f3f4f5}
.article-richtext .article-document{display:flex;align-items:center;gap:14px;margin:24px 0;padding:16px;border:1px solid var(--line);border-radius:16px;background:var(--paper);box-shadow:var(--shadow-sm);max-width:100%}
.article-richtext .article-document__icon{width:52px;height:52px;flex:0 0 52px;border-radius:13px;background:var(--ink);color:var(--accent);display:grid;place-items:center;font-size:11px;font-weight:950;letter-spacing:.04em}
.article-richtext .article-document__copy{min-width:0;flex:1;display:grid;gap:2px}
.article-richtext .article-document__copy small{font-size:9px;text-transform:uppercase;letter-spacing:.09em;color:var(--muted);font-weight:850}
.article-richtext .article-document__copy strong{font-size:14px;line-height:1.35;color:var(--ink);overflow-wrap:anywhere}
.article-richtext .article-document__copy span{font-size:10px;color:var(--muted);font-weight:700}
.article-richtext a.article-document__download{flex:0 0 auto;display:inline-flex;align-items:center;justify-content:center;min-height:40px;padding:9px 14px;border-radius:999px;background:var(--ink);color:#fff;text-decoration:none;font-size:11px;font-weight:850;transition:transform var(--transition),background var(--transition),color var(--transition)}
.article-richtext a.article-document__download:hover{background:var(--accent);color:#111;transform:translateY(-1px)}
@media(max-width:640px){
  .article-richtext .article-inline-image{margin:22px 0}
  .article-richtext .article-inline-image a{border-radius:13px}
  .article-richtext .article-document{align-items:flex-start;flex-wrap:wrap;padding:14px}
  .article-richtext .article-document__icon{width:46px;height:46px;flex-basis:46px}
  .article-richtext .article-document__copy{min-width:calc(100% - 62px)}
  .article-richtext a.article-document__download{width:100%;margin-top:3px}
}


/* v3.1 - TeamCP-managed homepage hero, five-match league columns and featured news */
.home-team-match-columns{display:grid;grid-template-columns:1fr;gap:28px;min-width:0}
.home-team-match-column{min-width:0;display:grid;align-content:start;gap:14px}
.home-team-match-list{display:grid;gap:12px;min-width:0}
.home-team-match-list .match-card{min-width:0;margin:0}
.home-team-match-list .match-card__body,.home-team-match-list .fixture-line{min-width:0}
.home-team-match-list .match-card__bottom{flex-wrap:wrap}
.home-team-match-list .match-card__bottom a{margin-left:auto}
.featured-news-grid{display:grid;grid-template-columns:1fr;gap:16px;min-width:0}
.featured-news-card{min-width:0;overflow:hidden;border:1px solid var(--line);border-radius:var(--radius);background:var(--paper);box-shadow:var(--shadow-sm);display:flex;flex-direction:column}
.featured-news-card__media{position:relative;display:block;aspect-ratio:16/10;overflow:hidden;background:#e4e6e9}
.featured-news-card__media img{width:100%;height:100%;object-fit:cover;transition:transform .3s ease}
.featured-news-card:hover .featured-news-card__media img{transform:scale(1.025)}
.featured-news-card__badge{position:absolute;top:12px;left:12px;padding:7px 10px;border-radius:999px;background:var(--accent);color:#111;font-size:8px;font-weight:950;letter-spacing:.08em;text-transform:uppercase;box-shadow:0 5px 16px rgba(0,0,0,.18)}
.featured-news-card__body{display:flex;flex:1;flex-direction:column;gap:10px;padding:18px;min-width:0}
.featured-news-card__meta{display:flex;align-items:center;flex-wrap:wrap;gap:8px 12px;color:var(--muted);font-size:9px;font-weight:850;text-transform:uppercase;letter-spacing:.05em}
.featured-news-card__meta>span:first-child{color:#9a7c18}
.featured-news-card__meta .news-like{margin-left:auto}
.featured-news-card h3{margin:0;font-size:1.3rem;line-height:1.08;overflow-wrap:anywhere}
.featured-news-card h3 a{color:inherit}
.featured-news-card p{margin:0;color:var(--muted);font-size:12px;line-height:1.6}
.featured-news-card__link{display:inline-flex;align-items:center;gap:7px;width:max-content;max-width:100%;margin-top:auto;padding-top:4px;color:var(--ink);font-size:10px;font-weight:950;text-transform:uppercase;letter-spacing:.05em}
.featured-news-card__link .icon{width:15px;height:15px}
.news-featured-section{margin:26px 0 34px;padding-bottom:30px;border-bottom:1px solid var(--line)}
.news-featured-section__head{margin-bottom:18px}
.news-featured-section__head .eyebrow{margin-bottom:6px}
.news-featured-section__head h2{margin:0;font-size:clamp(1.8rem,7vw,2.5rem)}
.news-featured-section__head p{margin-top:7px;color:var(--muted)}
@media(min-width:640px){.featured-news-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(min-width:900px){.home-team-match-columns{grid-template-columns:repeat(3,minmax(0,1fr));gap:18px;align-items:start}.home-team-match-list .match-card__top{gap:8px}.home-team-match-list .match-card__top span{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.home-team-match-list .home-match-line{grid-template-columns:minmax(0,1fr) 64px minmax(0,1fr);min-height:190px;padding:24px 12px;gap:6px}.home-team-match-list .home-match-line__badge{width:64px;height:64px}.home-team-match-list .home-match-line__name{font-size:13px}.home-team-match-list .home-match-line__time,.home-team-match-list .home-match-line__score{font-size:1.35rem}.featured-news-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:18px}.featured-news-card h3{font-size:1.22rem}.featured-news-grid--news-page{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(max-width:899px){.home-team-match-columns{gap:34px}.home-team-match-column+.home-team-match-column{padding-top:26px;border-top:1px solid var(--line)}}
@media(max-width:520px){.home-team-match-list .home-match-line{grid-template-columns:minmax(0,1fr) 62px minmax(0,1fr);min-height:164px;padding:20px 10px;gap:4px}.home-team-match-list .home-match-line__badge{width:58px;height:58px}.home-team-match-list .home-match-line__name{font-size:12px}.home-team-match-list .home-match-line__time,.home-team-match-list .home-match-line__score{font-size:1.18rem}.home-team-match-list .match-card__bottom{align-items:flex-start}.home-team-match-list .match-card__bottom>a{width:100%;margin-left:0;text-align:right}.featured-news-card__body{padding:16px}}

@media (max-width: 390px) {
  .player-hero__layout { grid-template-columns:minmax(0,1.2fr) minmax(105px,.8fr); gap:18px 8px; }
  .player-hero__image { min-height:245px; max-height:290px; }
  .player-hero h1 { font-size:2.2rem; }
  .player-number { font-size:4rem; }
  .player-nationality-line { font-size:.85rem; }
}


/* Player links in full squad statistics */
.squad-player strong a{color:inherit;text-decoration:none}
.squad-player strong a:hover{text-decoration:underline;text-underline-offset:3px}

/* Squad sort bar */
.squad-sortbar{display:grid;gap:12px;margin:0 0 20px;padding:14px;border:1px solid var(--line);border-radius:18px;background:var(--paper);box-shadow:var(--shadow-sm)}
.squad-sortbar label{display:grid;gap:7px}
.squad-sortbar label>span,.leaderboard-team-select>span{font-size:9px;font-weight:900;letter-spacing:.08em;text-transform:uppercase;color:var(--muted)}
.site-select{width:100%;min-height:46px;padding:0 42px 0 14px;border:1px solid var(--line);border-radius:12px;background:var(--paper);color:var(--ink);font:inherit;font-weight:800}

/* Position-grouped team profile squad */
.team-position-groups{display:grid;gap:24px}
.team-position-group{display:grid;gap:12px}
.team-position-group__head{display:flex;align-items:end;gap:10px;flex-wrap:wrap;padding-bottom:10px;border-bottom:1px solid var(--line)}
.team-position-group__head h3{margin-right:auto}
.team-position-group__head>span:last-child{color:var(--muted);font-size:11px;font-weight:800}
.team-position-group__players{display:grid;gap:8px}
.team-position-player{min-width:0;display:grid;grid-template-columns:32px 46px minmax(0,1fr) 18px;align-items:center;gap:10px;padding:10px 12px;border:1px solid var(--line);border-radius:14px;background:var(--paper);color:var(--ink);box-shadow:var(--shadow-sm);transition:.18s ease}
.team-position-player:hover{transform:translateY(-1px);border-color:#d5b842}
.team-position-player__number{color:var(--accent);font-weight:950;text-align:center}
.team-position-player__photo{width:46px;height:46px;border-radius:50%;overflow:hidden;background:#eef0f2}
.team-position-player__photo img{width:100%;height:100%;object-fit:cover;object-position:top center}
.team-position-player strong,.team-position-player small{display:block;min-width:0}
.team-position-player small{margin-top:2px;color:var(--muted);font-size:10px}

/* Basic stat info + adjacent player navigation */
.player-basic-stats{grid-area:facts;display:grid;gap:12px}
.player-basic-stats__heading{display:flex;align-items:end;justify-content:space-between;gap:12px}
.player-basic-stats__heading p{margin:0;font-size:11px}
.player-basic-stats .player-facts{grid-area:auto}
.player-profile-nav{display:flex;gap:9px;flex-wrap:wrap}
.player-profile-nav .button{flex:1 1 150px;justify-content:center}

/* Career achievements */
.player-achievements-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}
.player-achievement{position:relative;min-width:0;padding:15px 10px;text-align:center;border:1px solid var(--line);border-radius:18px;background:var(--paper);box-shadow:var(--shadow-sm);outline:none}
.player-achievement__trophy{width:72px;height:72px;margin:0 auto 8px;display:grid;place-items:center}
.player-achievement__trophy img{width:100%;height:100%;object-fit:contain}
.player-achievement>span{display:block;color:var(--muted);font-size:8px;font-weight:900;letter-spacing:.08em;text-transform:uppercase}
.player-achievement>strong{display:block;margin-top:3px;font-size:1rem}
.player-achievement>small{display:block;margin-top:3px;color:var(--muted);font-size:9px}
.player-achievement__tooltip{position:absolute;left:50%;bottom:calc(100% + 10px);z-index:20;width:min(250px,75vw);padding:10px 12px;border-radius:10px;background:var(--ink);color:var(--paper);font-size:10px;line-height:1.4;box-shadow:var(--shadow);opacity:0;pointer-events:none;transform:translate(-50%,6px);transition:.18s}
.player-achievement:hover .player-achievement__tooltip,.player-achievement:focus .player-achievement__tooltip{opacity:1;transform:translate(-50%,0)}

/* Junior homepage spotlight */
.junior-spotlight{position:relative;min-height:360px;border-radius:24px;overflow:hidden;background:var(--ink);box-shadow:var(--shadow)}
.junior-spotlight__slide{position:absolute;inset:0;display:block;color:var(--paper);opacity:0;visibility:hidden;transition:opacity .45s ease,visibility .45s ease}
.junior-spotlight__slide.is-active{opacity:1;visibility:visible}
.junior-spotlight__media,.junior-spotlight__media img,.junior-spotlight__shade{position:absolute;inset:0;width:100%;height:100%}
.junior-spotlight__media img{object-fit:cover}
.junior-spotlight__shade{background:linear-gradient(90deg,rgba(10,11,13,.92) 0%,rgba(10,11,13,.68) 52%,rgba(10,11,13,.18) 100%)}
.junior-spotlight__content{position:absolute;left:0;bottom:0;z-index:2;width:min(540px,100%);padding:26px}
.junior-spotlight__content h3{color:var(--paper);font-size:clamp(1.8rem,8vw,3.6rem)}
.junior-spotlight__content p{margin:7px 0 18px;color:#c6c9ce}
.junior-spotlight__dots{position:absolute;right:18px;bottom:18px;z-index:4;display:flex;gap:7px}
.junior-spotlight__dots button{width:9px;height:9px;border:0;border-radius:50%;background:rgba(255,255,255,.38)}
.junior-spotlight__dots button.is-active{background:var(--accent)}

/* Leaderboards */
.leaderboard-controls{display:grid;gap:12px;margin-bottom:14px}
.leaderboard-toggle{display:grid;grid-template-columns:repeat(2,1fr);padding:4px;border:1px solid var(--line);border-radius:14px;background:#f4f5f6}
.leaderboard-toggle a{padding:11px 10px;border-radius:10px;color:var(--muted);text-align:center;font-size:10px;font-weight:900;text-transform:uppercase;letter-spacing:.05em}
.leaderboard-toggle a.is-active{background:var(--ink);color:var(--paper);box-shadow:var(--shadow-sm)}
.leaderboard-team-select{display:grid;gap:6px}
.leaderboard-board-tabs{display:flex;gap:8px;overflow-x:auto;padding:4px 0 12px;scrollbar-width:none}
.leaderboard-board-tabs::-webkit-scrollbar{display:none}
.leaderboard-board-tabs a{flex:0 0 auto;padding:10px 13px;border:1px solid var(--line);border-radius:999px;background:var(--paper);color:var(--ink);font-size:9px;font-weight:900;text-transform:uppercase;letter-spacing:.05em}
.leaderboard-board-tabs a.is-active{background:var(--accent);border-color:var(--accent);color:#111}
.leaderboard-heading{display:grid;gap:10px;margin:18px 0 12px}
.leaderboard-rule{padding:10px 12px;border-radius:12px;background:#f5f2e5;color:#6c5a13;font-size:10px}
.leaderboard-table-wrap{overflow-x:auto;border:1px solid var(--line);border-radius:20px;background:var(--paper);box-shadow:var(--shadow-sm)}
.leaderboard-table{width:100%;min-width:760px;border-collapse:collapse}
.leaderboard-table th,.leaderboard-table td{padding:13px 12px;border-bottom:1px solid #eceef0;text-align:center;white-space:nowrap}
.leaderboard-table th{background:#f5f6f7;color:#777e87;font-size:8px;text-transform:uppercase;letter-spacing:.07em}
.leaderboard-table td:nth-child(2),.leaderboard-table th:nth-child(2){text-align:left}
.leaderboard-table tbody tr:last-child td{border-bottom:0}
.leaderboard-player{display:flex;align-items:center;gap:10px;color:var(--ink)}
.leaderboard-player img{width:42px;height:42px;border-radius:50%;object-fit:cover;object-position:top center;background:#eee}
.leaderboard-player span{text-align:left}
.leaderboard-player strong,.leaderboard-player small{display:block}
.leaderboard-player small{color:var(--muted);font-size:9px;margin-top:2px}
.leaderboard-rank{display:inline-grid;place-items:center;width:29px;height:29px;border-radius:50%;background:#eef0f2;font-weight:950}
.leaderboard-rank--1{background:#d6b336;color:#111}.leaderboard-rank--2{background:#c8cdd2;color:#111}.leaderboard-rank--3{background:#b67a4f;color:#fff}

/* Venue lines should wrap cleanly on fixture cards. */
.match-card__bottom span{min-width:0;overflow-wrap:anywhere}

@media(min-width:700px){
  .squad-sortbar{grid-template-columns:minmax(240px,1fr) auto;align-items:end}
  .team-position-group__players{grid-template-columns:repeat(2,minmax(0,1fr))}
  .player-achievements-grid{grid-template-columns:repeat(5,minmax(0,1fr))}
  .leaderboard-controls{grid-template-columns:minmax(320px,.8fr) minmax(240px,.45fr);align-items:end}
  .leaderboard-heading{grid-template-columns:1fr auto;align-items:end}
}
@media(min-width:1000px){
  .junior-spotlight{min-height:470px}
  .junior-spotlight__content{padding:42px}
}


/* Stronger authority for position-grouped squad headings */
.team-position-group{padding:0 0 8px}
.team-position-group__head{
  position:relative;
  display:grid;
  grid-template-columns:minmax(0,1fr) auto;
  align-items:end;
  gap:6px 18px;
  padding:16px 18px 15px 22px;
  border:1px solid var(--line);
  border-left:5px solid var(--accent);
  border-radius:14px;
  background:linear-gradient(90deg,#111318 0%,#191b20 100%);
  box-shadow:var(--shadow-sm);
}
.team-position-group__head::after{content:"";position:absolute;left:22px;bottom:-9px;width:18px;height:18px;background:#15171b;transform:rotate(45deg);border-right:1px solid #25282d;border-bottom:1px solid #25282d}
.team-position-group__head .eyebrow{grid-column:1/-1;color:var(--accent);margin:0}
.team-position-group__head h3{margin:0;color:var(--paper);font-size:clamp(1.35rem,3vw,1.9rem);line-height:1.05}
.team-position-group__head>span:last-child{color:#b8bec6;font-size:10px;font-weight:900;text-transform:uppercase;letter-spacing:.06em}
.team-position-group__players{padding-top:8px}

/* Player previous / next navigation spacing and contrast */
.player-basic-stats{padding-bottom:34px}
.player-profile-nav{margin-top:10px;padding-bottom:4px}
.player-profile-nav .button{min-height:48px}
.player-profile-nav .button--outline{border-color:rgba(255,255,255,.78);color:#fff;background:transparent}
.player-profile-nav .button--outline:hover{background:#fff;border-color:#fff;color:#111}
.player-profile-nav .button--accent{color:#111}
@media(min-width:900px){
  .player-basic-stats{padding-bottom:64px}
  .player-profile-nav{margin-top:18px}
}

/* Junior CTA hover - gold background, black text */
.junior-team-card__link:hover .junior-team-card__button,
.junior-team-card__link:focus-visible .junior-team-card__button{
  background:var(--accent) !important;
  border-color:var(--accent) !important;
  color:#111 !important;
}

/* Teams index */
.teams-core-grid{display:grid;gap:16px}
.teams-core-card{position:relative;min-height:390px;border-radius:24px;overflow:hidden;background:var(--ink);color:var(--paper);box-shadow:var(--shadow);isolation:isolate}
.teams-core-card__media,.teams-core-card__media img,.teams-core-card__shade{position:absolute;inset:0;width:100%;height:100%}
.teams-core-card__media img{object-fit:cover;transition:transform .35s ease}
.teams-core-card__shade{background:linear-gradient(180deg,rgba(10,11,13,.18) 0%,rgba(10,11,13,.46) 38%,rgba(10,11,13,.96) 100%)}
.teams-core-card__top{position:absolute;top:18px;left:18px;right:18px;z-index:2;display:flex;justify-content:space-between;align-items:center}
.teams-core-card__top span{padding:7px 10px;border:1px solid rgba(255,255,255,.25);border-radius:999px;background:rgba(12,13,15,.52);font-size:8px;font-weight:900;text-transform:uppercase;letter-spacing:.08em;backdrop-filter:blur(8px)}
.teams-core-card__top strong{color:var(--accent);font-size:1.35rem}
.teams-core-card__content{position:absolute;left:0;right:0;bottom:0;z-index:2;padding:24px}
.teams-core-card__content h2{margin:5px 0 9px;color:#fff;font-size:clamp(2rem,7vw,3.6rem)}
.teams-core-card__content p{max-width:620px;color:#c7cbd0;line-height:1.55}
.teams-core-card__action{display:inline-flex;align-items:center;gap:8px;margin-top:18px;color:var(--accent);font-size:10px;font-weight:900;text-transform:uppercase;letter-spacing:.05em}
.teams-core-card:hover .teams-core-card__media img{transform:scale(1.035)}
.teams-core-card:hover .teams-core-card__action{color:#fff}
.teams-junior-grid{display:grid;grid-template-columns:1fr;gap:14px}
.teams-junior-card{height:100%}
.teams-pathway-panel{display:grid;gap:20px;padding:26px;border-radius:22px;background:var(--ink);color:var(--paper)}
.teams-pathway-panel h2{color:#fff}
.teams-pathway-panel p{color:#b8bdc4}

/* Match Centre footer action */
.match-card__bottom .match-card__centre-link{margin-left:auto;text-align:right}
.match-card__bottom .match-card__centre-link svg{flex:0 0 auto}

/* Leaderboard visual hierarchy */
.leaderboard-team-context{display:grid;gap:16px;margin-bottom:18px;padding:18px;border:1px solid var(--line);border-radius:20px;background:linear-gradient(135deg,#111318,#1b1e23);color:#fff;box-shadow:var(--shadow-sm)}
.leaderboard-team-context__identity{display:flex;align-items:center;gap:14px;min-width:0}
.leaderboard-team-context__badge{width:64px;height:64px;flex:0 0 64px;display:grid;place-items:center;border-radius:18px;background:#fff;padding:7px}
.leaderboard-team-context__badge img{max-width:100%;max-height:100%;object-fit:contain}
.leaderboard-team-context h2{color:#fff;margin:2px 0}
.leaderboard-team-context p{margin:0;color:#b8bec6}
.leaderboard-back-team{justify-content:center;border-color:rgba(255,255,255,.6);color:#fff}
.leaderboard-back-team:hover{background:#fff;color:#111}
.leaderboard-filter-panel{margin-bottom:22px;padding:18px;border:1px solid var(--line);border-radius:22px;background:#fff;box-shadow:var(--shadow-sm)}
.leaderboard-filter-panel__head{display:grid;gap:12px;margin-bottom:18px;padding-bottom:16px;border-bottom:1px solid var(--line)}
.leaderboard-filter-panel__head h2{margin:4px 0 6px;font-size:clamp(1.45rem,4vw,2rem)}
.leaderboard-filter-panel__head p{margin:0;color:var(--muted)}
.leaderboard-top-limit{justify-self:start;padding:7px 10px;border-radius:999px;background:#111318;color:#fff;font-size:8px;font-weight:900;letter-spacing:.08em;text-transform:uppercase}
.leaderboard-controls{display:grid;gap:14px;margin-bottom:16px}
.leaderboard-control-block,.leaderboard-team-select,.leaderboard-fixed-team{display:grid;gap:7px}
.leaderboard-control-label{font-size:9px;font-weight:900;letter-spacing:.08em;text-transform:uppercase;color:var(--muted)}
.leaderboard-toggle{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:4px;padding:4px;border:1px solid var(--line);border-radius:14px;background:#f1f2f4}
.leaderboard-toggle a{display:grid;place-items:center;min-height:48px;padding:10px 12px;border-radius:10px;color:#616770;font-size:9px;font-weight:900;text-align:center;text-transform:uppercase;letter-spacing:.04em}
.leaderboard-toggle a.is-active{background:#111318;color:#fff;box-shadow:var(--shadow-sm)}
.leaderboard-fixed-team{padding:12px 14px;border:1px solid var(--line);border-radius:14px;background:#f7f8f9}
.leaderboard-fixed-team strong{font-size:1.05rem}
.leaderboard-fixed-team small{color:var(--muted)}
.leaderboard-type-group{display:grid;gap:8px}
.leaderboard-board-tabs{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;overflow:visible;padding:0}
.leaderboard-board-tabs a{display:grid;place-items:center;min-height:46px;padding:10px;border:1px solid var(--line);border-radius:12px;background:#fff;color:#111318;font-size:8px;font-weight:900;text-align:center;text-transform:uppercase;letter-spacing:.04em;white-space:normal}
.leaderboard-board-tabs a:hover{border-color:#c7a631;background:#fff9df}
.leaderboard-board-tabs a.is-active{background:var(--accent);border-color:var(--accent);color:#111}
.leaderboard-heading{padding:0 2px}
.leaderboard-table-wrap{border-radius:18px}
.leaderboard-table tbody tr:nth-child(even){background:#fafafa}
.leaderboard-table tbody tr:hover{background:#fff8dc}

/* Mobile-safe squad headings */
@media(max-width:520px){
  .team-position-group__head{grid-template-columns:1fr;padding:15px 16px 14px 19px}
  .team-position-group__head>span:last-child{margin-top:2px}
}

/* Wider layouts */
@media(min-width:700px){
  .teams-junior-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .leaderboard-team-context{grid-template-columns:minmax(0,1fr) auto;align-items:center}
  .leaderboard-filter-panel__head{grid-template-columns:minmax(0,1fr) auto;align-items:start}
  .leaderboard-top-limit{justify-self:end}
  .leaderboard-board-tabs{grid-template-columns:repeat(4,minmax(0,1fr))}
}
@media(min-width:900px){
  .teams-core-grid{grid-template-columns:repeat(3,minmax(0,1fr))}
  .teams-core-card{min-height:470px}
  .teams-core-card--primary{grid-column:span 1}
  .teams-junior-grid{grid-template-columns:repeat(3,minmax(0,1fr))}
  .teams-pathway-panel{grid-template-columns:minmax(0,1fr) auto;align-items:center}
  .leaderboard-controls{grid-template-columns:minmax(320px,.9fr) minmax(250px,.55fr);align-items:end}
  .leaderboard-board-tabs{grid-template-columns:repeat(7,minmax(0,1fr))}
}


/* ===== V8.70 - Junior pathway, achievements, leaderboards & Match Centre ===== */

/* Achievement hierarchy: trophy, tier, metric name, career total. */
.player-achievement__tier{
  display:block;
  margin-top:2px;
  color:var(--accent);
  font-size:9px;
  font-weight:950;
  letter-spacing:.08em;
  text-transform:uppercase;
}
.player-achievement__metric{
  display:block;
  margin-top:4px;
  color:var(--ink);
  font-size:1.15rem !important;
  line-height:1.15;
  font-weight:950;
}
.player-achievement>small{margin-top:5px}

/* Junior team selector inside Fixtures / Results / Match Hub. */
.team-switcher--with-juniors{align-items:stretch;flex-wrap:wrap}
.team-switcher__junior-select{
  min-width:min(100%,250px);
  display:grid;
  gap:5px;
  padding:8px 10px;
  border:1px solid var(--line);
  border-radius:12px;
  background:var(--paper);
}
.team-switcher__junior-select.is-active{border-color:var(--accent);box-shadow:0 0 0 2px rgba(212,175,55,.14)}
.team-switcher__junior-select>span{
  color:var(--muted);
  font-size:8px;
  font-weight:900;
  letter-spacing:.08em;
  text-transform:uppercase;
}
.team-switcher__junior-select .site-select{min-height:38px}

/* Leaderboard filters. */
.leaderboard-filter-shell{
  display:grid;
  gap:16px;
  margin-bottom:26px;
  padding:18px;
  border:1px solid var(--line);
  border-radius:24px;
  background:linear-gradient(180deg,#fff,#f8f9fa);
  box-shadow:var(--shadow-sm);
}
.leaderboard-pathway-tabs{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:8px;
}
.leaderboard-pathway-tabs a{
  min-height:46px;
  display:grid;
  place-items:center;
  padding:10px 12px;
  border:1px solid var(--line);
  border-radius:12px;
  background:#fff;
  color:var(--ink);
  font-size:9px;
  font-weight:950;
  text-align:center;
  text-transform:uppercase;
  letter-spacing:.04em;
}
.leaderboard-pathway-tabs a:hover{border-color:var(--accent)}
.leaderboard-pathway-tabs a.is-active{background:var(--ink);border-color:var(--ink);color:#fff}
.leaderboard-junior-picker{display:grid;gap:7px;padding:14px;border-radius:16px;background:#111318}
.leaderboard-junior-picker>span{color:var(--accent);font-size:9px;font-weight:950;text-transform:uppercase;letter-spacing:.08em}
.leaderboard-filter-grid{display:grid;gap:12px}
.leaderboard-filter-card,.leaderboard-filter-summary{
  display:grid;
  gap:8px;
  padding:14px;
  border:1px solid var(--line);
  border-radius:16px;
  background:#fff;
}
.leaderboard-filter-summary strong{font-size:1.05rem}
.leaderboard-filter-summary small{color:var(--muted)}
.leaderboard-board-tabs{grid-template-columns:repeat(2,minmax(0,1fr))}

/* Mobile-first leaderboard table: only Rank, optional Total, Player. */
.leaderboard-table--compact{
  min-width:0 !important;
  table-layout:fixed;
}
.leaderboard-table--compact th,
.leaderboard-table--compact td{
  white-space:normal;
  vertical-align:middle;
}
.leaderboard-table--compact th:first-child,
.leaderboard-table--compact td:first-child{width:52px;text-align:center}
.leaderboard-table--compact th:nth-child(2):not(:last-child),
.leaderboard-table--compact td:nth-child(2):not(:last-child){width:72px;text-align:center}
.leaderboard-table--compact th:last-child,
.leaderboard-table--compact td:last-child{text-align:left}
.leaderboard-primary-total strong{
  display:block;
  color:var(--ink);
  font-size:1.35rem;
  line-height:1;
}
.leaderboard-primary-total small{
  display:block;
  margin-top:4px;
  color:var(--muted);
  font-size:7px;
  font-weight:900;
  text-transform:uppercase;
}
.leaderboard-player--rich{
  min-width:0;
  align-items:flex-start;
}
.leaderboard-player--rich img{
  width:48px;
  height:48px;
  flex:0 0 48px;
}
.leaderboard-player__copy{min-width:0;display:block}
.leaderboard-player__copy>strong{
  font-size:12px;
  line-height:1.2;
  overflow-wrap:anywhere;
}
.leaderboard-player__copy>small{
  margin-top:3px;
  color:var(--muted);
  line-height:1.3;
  white-space:normal;
}
.leaderboard-player__stats{
  display:flex;
  flex-wrap:wrap;
  gap:3px 5px;
  margin-top:6px;
  color:#656c75;
  font-size:8px;
  line-height:1.35;
}
.leaderboard-player__stats b{color:#25292e;font-weight:900}
.leaderboard-player__stats i{font-style:normal;color:#b0b4ba}

/* Match Centre goal summary inside dark score header. */
.scoreline em{
  display:block;
  margin-top:6px;
  color:#8f969f;
  font-size:7px;
  font-style:normal;
  font-weight:900;
  letter-spacing:.08em;
  text-transform:uppercase;
}
.match-goal-summary{
  display:grid;
  grid-template-columns:minmax(0,1fr) 48px minmax(0,1fr);
  gap:10px;
  align-items:start;
  margin:20px auto 0;
  padding:16px 0 0;
  border-top:1px solid #31343a;
  max-width:900px;
}
.match-goal-summary__side{display:grid;gap:5px;color:#dfe2e6;font-size:9px;line-height:1.35}
.match-goal-summary__side--home{text-align:right}
.match-goal-summary__side--away{text-align:left}
.match-goal-summary__side strong{color:#fff}
.match-goal-summary__mark{
  color:var(--accent);
  font-size:8px;
  font-weight:950;
  text-align:center;
  text-transform:uppercase;
  letter-spacing:.08em;
}

/* Match statistic comparison rows. */
.match-comparison{
  display:grid;
  gap:18px;
  margin:24px 0 28px;
  padding:18px;
  border:1px solid var(--line);
  border-radius:20px;
  background:#fff;
  box-shadow:var(--shadow-sm);
}
.match-comparison-row{
  display:grid;
  grid-template-columns:34px minmax(0,1fr) 34px;
  grid-template-areas:
    "label label label"
    "home bar away";
  gap:8px 10px;
  align-items:center;
}
.match-comparison-row__label{
  grid-area:label;
  color:#383d43;
  font-size:10px;
  font-weight:850;
  text-align:center;
}
.match-comparison-row__value{
  font-size:1rem;
  font-weight:950;
}
.match-comparison-row__value--home{grid-area:home;text-align:left}
.match-comparison-row__value--away{grid-area:away;text-align:right}
.match-comparison-row__bar{
  grid-area:bar;
  height:9px;
  display:flex;
  overflow:hidden;
  border-radius:999px;
  background:#eef0f2;
}
.match-comparison-row__home{height:100%;background:var(--accent)}
.match-comparison-row__away{height:100%;background:var(--ink)}
.match-motm-feature{
  display:flex;
  align-items:center;
  gap:14px;
  margin:0 0 26px;
  padding:16px 18px;
  border-radius:18px;
  background:var(--ink);
  color:#fff;
}
.match-motm-feature__icon{
  width:48px;height:48px;flex:0 0 48px;
  display:grid;place-items:center;
  border-radius:14px;
  background:var(--accent);
  color:#111;
}
.match-motm-feature strong{display:block;margin-top:3px;color:#fff;font-size:1.2rem}

/* Junior and senior overview use the same position grouping treatment. */
.team-profile-squad .team-position-groups{margin-top:8px}

@media(min-width:700px){
  .leaderboard-pathway-tabs{grid-template-columns:repeat(5,minmax(0,1fr))}
  .leaderboard-filter-grid{grid-template-columns:minmax(0,1.1fr) minmax(240px,.65fr)}
  .leaderboard-board-tabs{grid-template-columns:repeat(4,minmax(0,1fr))}
  .leaderboard-player__copy>strong{font-size:14px}
  .leaderboard-player__stats{font-size:9px}
  .match-comparison{padding:24px}
  .match-comparison-row{grid-template-columns:48px minmax(0,1fr) 48px}
}
@media(min-width:1000px){
  .leaderboard-board-tabs{grid-template-columns:repeat(7,minmax(0,1fr))}
  .leaderboard-filter-shell{padding:22px}
}


/* ===== V8.71 - Junior tabs & Club Members directory ===== */
.team-switcher--tabs{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}
.team-switcher--tabs .team-switcher__item{display:grid;place-items:center;text-align:center}
.junior-page-picker{
  display:grid;
  gap:14px;
  margin:0 0 22px;
  padding:18px;
  border:1px solid var(--line);
  border-left:4px solid var(--accent);
  border-radius:18px;
  background:var(--paper);
  box-shadow:var(--shadow-sm);
}
.junior-page-picker__copy{display:grid;gap:3px}
.junior-page-picker__copy strong{font-size:1.15rem}
.junior-page-picker__copy small{color:var(--muted)}
.junior-page-picker label{display:grid;gap:6px}
.junior-page-picker label>span{color:var(--muted);font-size:9px;font-weight:900;letter-spacing:.08em;text-transform:uppercase}

.member-directory{display:grid;gap:22px}
.member-directory__tabs{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;padding:6px;border:1px solid var(--line);border-radius:18px;background:#f1f2f4}
.member-directory__tab{min-width:0;display:grid;gap:3px;padding:13px 10px;border:0;border-radius:12px;background:transparent;color:var(--ink);cursor:pointer;text-align:left}
.member-directory__tab span{font-size:10px;font-weight:950;text-transform:uppercase;letter-spacing:.04em}
.member-directory__tab small{color:var(--muted);font-size:8px;font-weight:800}
.member-directory__tab.is-active{background:var(--ink);color:#fff;box-shadow:var(--shadow-sm)}
.member-directory__tab.is-active small{color:var(--accent)}
.member-directory__panel{display:none}
.member-directory__panel.is-active{display:block}
.member-directory__heading{margin-bottom:16px;padding-bottom:12px;border-bottom:1px solid var(--line)}
.member-directory__heading h2{margin-top:3px}
.member-card__body>small{display:block;margin-top:8px;color:var(--muted);font-size:10px;line-height:1.45}

@media(min-width:700px){
  .team-switcher--tabs{grid-template-columns:repeat(4,minmax(0,1fr))}
  .junior-page-picker{grid-template-columns:minmax(0,1fr) minmax(260px,.6fr);align-items:end}
  .member-directory__tabs{grid-template-columns:repeat(4,minmax(0,1fr))}
  .member-directory__tab{text-align:center}
}


/* v8.72 - LAJFC pathway, match venue, kits, directory and enquiry refinements */
.leaderboard-junior-controls{display:grid;gap:10px;margin-top:14px}.leaderboard-career-note{display:flex;align-items:flex-start;gap:10px;margin-top:14px;padding:13px 14px;border:1px solid #dfd5b4;border-radius:14px;background:#fffaf0;color:#55514a;font-size:11px;line-height:1.55}.leaderboard-career-note strong{flex:0 0 auto;color:#7d6317;text-transform:uppercase;letter-spacing:.06em;font-size:9px}.leaderboard-career-note span{min-width:0}
.team-kit-row{display:flex;align-items:flex-end;gap:10px;flex-wrap:nowrap;max-width:100%;overflow:hidden}.team-kit-row img{display:block;width:auto;height:96px;max-width:31%;object-fit:contain;border-radius:12px;background:#f5f6f7;border:1px solid var(--line);padding:7px}
.match-centre__venue-name{display:inline-flex;align-items:center;justify-content:center;gap:6px;margin:8px auto 3px;color:var(--accent);font-size:12px;font-weight:850}.match-centre__venue-name .icon{width:16px;height:16px}.match-countdown{display:flex;align-items:center;justify-content:center;gap:7px;margin:18px auto 0;padding:11px 13px;width:max-content;max-width:100%;border:1px solid rgba(255,255,255,.16);border-radius:16px;background:rgba(255,255,255,.06);backdrop-filter:blur(8px)}.match-countdown>span{display:grid;min-width:44px;text-align:center}.match-countdown strong{color:#fff;font-size:1.25rem;line-height:1}.match-countdown small{margin-top:5px;color:#aeb4bd;font-size:7px;font-weight:900;letter-spacing:.09em;text-transform:uppercase}.match-countdown>i{color:var(--accent);font-style:normal;font-weight:900}.match-countdown.is-complete{opacity:.7}.match-venue-map{overflow:hidden;border:1px solid var(--line);border-radius:22px;background:#fff;box-shadow:var(--shadow-sm)}.match-venue-map iframe{display:block;width:100%;height:330px;border:0}.match-venue-map__details{display:flex;align-items:flex-start;gap:12px;padding:16px 18px}.match-venue-map__details>span{width:40px;height:40px;flex:0 0 40px;border-radius:12px;background:var(--ink);color:var(--accent);display:grid;place-items:center}.match-venue-map__details .icon{width:19px;height:19px}.match-venue-map__details strong{display:block;font-size:14px}.match-venue-map__details p{margin:3px 0 0;color:var(--muted);font-size:11px;line-height:1.5}
.section-heading--achievements{display:block!important}.section-heading--achievements__copy{width:100%;max-width:none!important}.achievements-title-row{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-top:3px}.achievements-title-row h2{min-width:0;margin:0}.achievements-title-row+p{margin-top:12px}.achievements-guide-button{flex:0 0 auto;min-height:38px;padding:8px 12px;font-size:10px}.legal-modal[data-achievements-modal] .legal-modal__header p:not(:empty)::before{content:none}
.member-directory__tabs--three{grid-template-columns:1fr}.role-card--volunteer{display:grid;grid-template-columns:48px minmax(0,1fr);align-items:start;gap:15px;text-decoration:none}.role-card--volunteer .role-card__badge{margin:0}.role-card--volunteer .role-card__copy{min-width:0}.role-card--volunteer .role-card__copy h3{margin-top:1px}.role-card--volunteer .role-card__copy>span{display:inline-flex;align-items:center;gap:5px;margin-top:10px;color:var(--ink);font-size:9px;font-weight:900;text-transform:uppercase;letter-spacing:.04em}.role-card--volunteer .role-card__copy>span .icon{width:14px;height:14px}
.contact-honeypot{position:absolute!important;left:-10000px!important;width:1px!important;height:1px!important;opacity:0!important}.form-notice{margin-bottom:18px;padding:14px 16px;border-radius:14px;display:grid;gap:5px;font-size:12px}.form-notice--success{background:#eaf8ef;border:1px solid #b9e3c8;color:#1c6336}.form-notice--error{background:#fff0f1;border:1px solid #f0c2c7;color:#8c2633}.form-notice ul{margin:4px 0 0;padding-left:18px}
.top-scorer-card--empty{cursor:default}.top-scorer-card--empty:hover{transform:none;box-shadow:var(--shadow-sm)}.top-scorer-card--empty .top-scorer-card__media{display:grid;place-items:center;padding:30px}.top-scorer-card--empty .top-scorer-card__media img{width:min(76%,180px);height:auto;object-fit:contain}
.social-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.social-card{min-height:108px;padding:14px;border-radius:16px}.social-card__icon{width:36px;height:36px;border-radius:11px}.social-card__icon .icon{width:17px;height:17px}.social-card strong{font-size:12px}.social-card span{font-size:8px}.social-card__top>.icon{width:15px;height:15px}
@media(min-width:700px){.leaderboard-junior-controls{grid-template-columns:repeat(2,minmax(0,1fr));}.member-directory__tabs--three{grid-template-columns:repeat(3,minmax(0,1fr))}.team-kit-row img{height:128px}.social-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}.social-card{min-height:122px;padding:16px}.top-scorer-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:520px){.achievements-title-row{gap:8px}.achievements-title-row h2{font-size:clamp(1.55rem,7.4vw,2rem)}.achievements-guide-button{min-height:34px;padding:7px 9px;font-size:8px}.match-venue-map iframe{height:280px}.team-kit-row img{height:84px;padding:5px}.role-card--volunteer{grid-template-columns:43px minmax(0,1fr);gap:13px}}


/* ===== V8.73 - leaderboard pathway separation, social sizing, match countdown/map and achievement guide ===== */
.leaderboard-pathway-groups{display:grid;gap:16px}
.leaderboard-pathway-group{min-width:0;padding:14px;border:1px solid var(--line);border-radius:18px;background:#fff}
.leaderboard-pathway-group__head{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;margin-bottom:12px}
.leaderboard-pathway-group__head>div{display:grid;gap:3px;min-width:0}
.leaderboard-pathway-kicker{color:var(--accent);font-size:8px;font-weight:950;letter-spacing:.09em;text-transform:uppercase}
.leaderboard-pathway-group__head strong{font-size:12px;line-height:1.35}
.leaderboard-pathway-group__head>small{max-width:320px;color:var(--muted);font-size:9px;line-height:1.45;text-align:right}
.leaderboard-pathway-tabs--senior{grid-template-columns:repeat(2,minmax(0,1fr))}
.leaderboard-pathway-group--junior{background:#111318;border-color:#22262c;color:#fff}
.leaderboard-pathway-group--junior .leaderboard-pathway-group__head{align-items:center;margin-bottom:0}
.leaderboard-pathway-group--junior .leaderboard-pathway-group__head strong{color:#fff}
.leaderboard-junior-main-tab{min-height:40px;display:grid;place-items:center;flex:0 0 auto;padding:8px 14px;border:1px solid #3a3e45;border-radius:11px;background:#1a1d22;color:#fff;font-size:9px;font-weight:950;letter-spacing:.04em;text-transform:uppercase}
.leaderboard-junior-main-tab:hover,.leaderboard-junior-main-tab.is-active{background:var(--accent);border-color:var(--accent);color:#111}
.leaderboard-junior-controls{display:grid;grid-template-columns:minmax(0,1fr);row-gap:16px;column-gap:14px;margin-top:16px;padding-top:16px;border-top:1px solid #2c3036}
.leaderboard-junior-picker{gap:8px;padding:14px;background:#191c21;border:1px solid #2a2e34}
.leaderboard-junior-picker .site-select{min-height:48px}

/* Four compact social cards on desktop, intentionally smaller on mobile too. */
.social-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}
.social-card{min-width:0;min-height:94px;padding:12px;border-radius:14px}
.social-card__icon{width:32px;height:32px;border-radius:10px}
.social-card__icon .icon{width:15px;height:15px}
.social-card strong{font-size:11px;line-height:1.2}
.social-card span{font-size:7px;line-height:1.3}
.social-card__top>.icon{width:13px;height:13px}

/* Fixture countdown is rendered server-side first, then ticks independently from fixture_at in JS. */
.match-countdown{gap:8px;margin-top:16px;padding:12px 15px;border-color:rgba(212,175,55,.28);background:linear-gradient(180deg,rgba(255,255,255,.075),rgba(255,255,255,.035));box-shadow:0 12px 30px rgba(0,0,0,.18)}
.match-countdown>span{min-width:50px}
.match-countdown strong{font-size:1.32rem;font-variant-numeric:tabular-nums}
.match-countdown small{font-size:7px;color:#c1c6cc}
.match-countdown.is-complete{opacity:.72}

/* Centred, substantial venue presentation. Finished matches continue to replace this with statistics in match.php. */
.match-venue-map{width:min(100%,1040px);margin:30px auto 0;padding:10px;border:1px solid #d9dde2;border-radius:28px;background:linear-gradient(145deg,#fff,#f4f5f6);box-shadow:0 22px 58px rgba(10,12,15,.12)}
.match-venue-map__frame{overflow:hidden;border-radius:20px;background:#e9ecef}
.match-venue-map iframe{display:block;width:100%;height:320px;border:0}
.match-venue-map__details{display:grid;grid-template-columns:42px minmax(0,1fr);gap:12px;align-items:center;padding:16px 8px 6px}
.match-venue-map__pin{width:42px;height:42px;display:grid;place-items:center;border-radius:13px;background:var(--ink);color:var(--accent)}
.match-venue-map__pin .icon{width:19px;height:19px}
.match-venue-map__copy{min-width:0}
.match-venue-map__copy>small{display:block;margin-bottom:2px;color:#9a790c;font-size:8px;font-weight:950;letter-spacing:.09em;text-transform:uppercase}
.match-venue-map__copy strong{display:block;color:var(--ink);font-size:14px}
.match-venue-map__copy p{margin:3px 0 0;color:var(--muted);font-size:11px;line-height:1.45}
.match-venue-map__open{grid-column:1/-1;justify-self:stretch;justify-content:center;min-height:40px;margin-top:2px}
.match-venue-map__open .icon{width:14px;height:14px}

/* Achievements Guide content inside the existing legal-modal shell. */
.achievements-guide-content{display:grid;gap:22px}
.achievements-guide-content h3,.achievements-guide-content p{margin:0}
.achievements-guide-intro{display:grid;grid-template-columns:48px minmax(0,1fr);gap:14px;align-items:start;padding:16px;border-radius:18px;background:#111318;color:#fff}
.achievements-guide-intro__icon{width:48px;height:48px;display:grid;place-items:center;border-radius:14px;background:var(--accent);color:#111}
.achievements-guide-intro__icon .icon{width:23px;height:23px}
.achievements-guide-intro h3{color:#fff}
.achievements-guide-intro p{margin-top:5px!important;color:#c6cbd1!important}
.achievements-guide-tiers{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}
.achievement-tier-chip{display:grid;grid-template-columns:42px minmax(0,1fr);align-items:center;gap:8px;padding:10px;border:1px solid var(--line);border-radius:13px;background:#f7f8f9}
.achievement-tier-chip img{display:block;width:42px;height:42px;object-fit:contain}
.achievement-tier-chip>span{display:grid;gap:2px;min-width:0}
.achievement-tier-chip b{font-size:11px}
.achievement-tier-chip small{color:var(--muted);font-size:8px}
.achievement-tier-chip--bronze{border-left:4px solid #a96b38}.achievement-tier-chip--silver{border-left:4px solid #aeb5bd}.achievement-tier-chip--gold{border-left:4px solid #d7ad22}.achievement-tier-chip--platinum{border-left:4px solid #585f69}
.achievements-guide-table-wrap{overflow-x:auto;border:1px solid var(--line);border-radius:16px}
.achievements-guide-table{width:100%;min-width:620px;border-collapse:collapse;background:#fff}
.achievements-guide-table th,.achievements-guide-table td{padding:11px 12px;border-bottom:1px solid var(--line);font-size:10px;text-align:center}
.achievements-guide-table thead th{background:#111318;color:#fff;font-size:8px;letter-spacing:.06em;text-transform:uppercase}
.achievements-guide-table tbody th{text-align:left;color:var(--ink);font-size:10px}
.achievements-guide-table tbody th small{display:block;margin-top:2px;color:var(--muted);font-size:8px;font-weight:700}
.achievements-guide-table tbody tr:last-child th,.achievements-guide-table tbody tr:last-child td{border-bottom:0}
.achievements-guide-notes{display:grid;gap:10px}
.achievements-guide-notes p{padding-left:12px;border-left:3px solid var(--accent)}
.achievements-guide-note{padding:14px 16px;border:1px solid #dfd5b4;border-radius:14px;background:#fffaf0}
.achievements-guide-note strong{display:block;margin-bottom:4px;color:#7d6317;font-size:9px;letter-spacing:.06em;text-transform:uppercase}
.achievements-guide-note--standard{background:#f6f7f8;border-color:#dfe3e7}.achievements-guide-note--standard strong{color:#555d67}
.achievements-guide-button{cursor:pointer}

@media(min-width:700px){
  .leaderboard-pathway-tabs--senior{grid-template-columns:repeat(4,minmax(0,1fr))}
  .leaderboard-junior-controls{grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}
  .social-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:10px}
  .social-card{min-height:104px;padding:14px}
  .social-card__icon{width:34px;height:34px}
  .match-venue-map iframe{height:430px}
  .match-venue-map__details{grid-template-columns:46px minmax(0,1fr) auto;padding:18px 12px 8px}
  .match-venue-map__pin{width:46px;height:46px}
  .match-venue-map__open{grid-column:auto;justify-self:end;min-width:132px;margin:0}
  .achievements-guide-tiers{grid-template-columns:repeat(4,minmax(0,1fr))}
}
@media(max-width:560px){
  .leaderboard-pathway-group__head{display:grid;gap:9px}
  .leaderboard-pathway-group__head>small{text-align:left}
  .leaderboard-pathway-group--junior .leaderboard-pathway-group__head{grid-template-columns:minmax(0,1fr) auto;align-items:center}
  .social-card{min-height:88px;padding:10px}
  .match-countdown{gap:4px;padding:10px 9px}
  .match-countdown>span{min-width:43px}
  .match-countdown strong{font-size:1.12rem}
  .match-venue-map{margin-top:22px;padding:7px;border-radius:21px}
  .match-venue-map__frame{border-radius:15px}
  .match-venue-map iframe{height:290px}
}

/* ===== V8.74 - Player Achievement Guide mobile layout ===== */
@media(max-width:640px){
  .legal-modal[data-achievements-modal],
  .legal-modal[data-achievements-modal] .legal-modal__panel,
  .legal-modal[data-achievements-modal] .legal-modal__body,
  .legal-modal[data-achievements-modal] .achievements-guide-content{
    min-width:0;
    max-width:100%;
  }
  .legal-modal[data-achievements-modal] .legal-modal__panel{overflow:hidden}
  .legal-modal[data-achievements-modal] .legal-modal__header{gap:12px;padding:16px 15px 13px}
  .legal-modal[data-achievements-modal] .legal-modal__header>div{min-width:0}
  .legal-modal[data-achievements-modal] .legal-modal__header h2{font-size:clamp(1.25rem,6.4vw,1.5rem);line-height:1.05;overflow-wrap:anywhere}
  .legal-modal[data-achievements-modal] .legal-modal__header p{font-size:9px;line-height:1.35;overflow-wrap:anywhere}
  .legal-modal[data-achievements-modal] .legal-modal__x{width:38px;height:38px}
  .legal-modal[data-achievements-modal] .legal-modal__body{padding:16px 14px 24px;overflow-x:hidden}
  .achievements-guide-content{gap:17px;overflow-wrap:anywhere}
  .achievements-guide-content h3{font-size:1.02rem;line-height:1.2}
  .achievements-guide-content p{font-size:12px;line-height:1.6}
  .achievements-guide-intro{grid-template-columns:40px minmax(0,1fr);gap:11px;padding:13px;border-radius:15px}
  .achievements-guide-intro__icon{width:40px;height:40px;border-radius:11px}
  .achievements-guide-intro__icon .icon{width:19px;height:19px}
  .achievements-guide-tiers{grid-template-columns:repeat(2,minmax(0,1fr));gap:7px}
  .achievement-tier-chip{grid-template-columns:34px minmax(0,1fr);gap:7px;padding:8px 7px;border-radius:11px;min-width:0}
  .achievement-tier-chip img{width:34px;height:34px}
  .achievement-tier-chip b{font-size:10px;overflow-wrap:anywhere}
  .achievement-tier-chip small{font-size:7px;line-height:1.25;overflow-wrap:anywhere}

  /* Convert the wide desktop threshold table into stacked mobile cards.
     This keeps every tier visible without any horizontal swipe/scroll. */
  .achievements-guide-table-wrap{overflow:visible;border:0;border-radius:0;background:transparent}
  .achievements-guide-table{display:block;width:100%;min-width:0;border-collapse:separate;background:transparent}
  .achievements-guide-table thead{display:none}
  .achievements-guide-table tbody{display:grid;gap:9px;width:100%}
  .achievements-guide-table tbody tr{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:6px;width:100%;padding:10px;border:1px solid var(--line);border-radius:13px;background:#fff;box-shadow:0 5px 16px rgba(10,12,15,.04)}
  .achievements-guide-table tbody th{display:block;grid-column:1/-1;width:auto;padding:0 0 8px;margin:0 0 1px;border:0;border-bottom:1px solid var(--line);text-align:left;font-size:11px;line-height:1.25}
  .achievements-guide-table tbody th small{margin-top:3px;font-size:8px;line-height:1.25}
  .achievements-guide-table tbody td{display:flex;align-items:center;justify-content:space-between;gap:7px;min-width:0;padding:7px 8px;border:0!important;border-radius:9px;background:#f5f6f7;color:var(--ink);font-size:11px;font-weight:900;text-align:right}
  .achievements-guide-table tbody td::before{color:#6b717a;font-size:7px;font-weight:900;letter-spacing:.05em;text-transform:uppercase;text-align:left}
  .achievements-guide-table tbody td:nth-of-type(1)::before{content:"Bronze"}
  .achievements-guide-table tbody td:nth-of-type(2)::before{content:"Silver"}
  .achievements-guide-table tbody td:nth-of-type(3)::before{content:"Gold"}
  .achievements-guide-table tbody td:nth-of-type(4)::before{content:"Platinum"}
  .achievements-guide-notes{gap:8px}
  .achievements-guide-notes p{padding-left:10px}
  .achievements-guide-note{padding:12px 13px;border-radius:12px}
  .achievements-guide-note strong{font-size:8px}
  .legal-modal[data-achievements-modal] .legal-modal__footer{padding:10px 14px calc(10px + env(safe-area-inset-bottom))}
}

@media(max-width:360px){
  .achievements-guide-tiers{grid-template-columns:1fr}
}

/* v8.75 - birthday team and position metadata */
.birthday-card__team{font-weight:850;color:var(--ink)}.birthday-card__position{font-weight:750}

/* ===== V8.75 - Whole Club leaderboard & team kit labels ===== */
.leaderboard-club-wide{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-bottom:16px;padding:15px 16px;border:1px solid #d8c983;border-radius:18px;background:linear-gradient(135deg,#fffaf0,#fff)}
.leaderboard-club-wide>div{display:grid;gap:4px;min-width:0}
.leaderboard-club-wide strong{font-size:13px;line-height:1.35;color:var(--ink)}
.leaderboard-club-wide small{color:var(--muted);font-size:9px;line-height:1.45}
.leaderboard-club-wide__button{flex:0 0 auto;min-height:42px;display:grid;place-items:center;padding:9px 16px;border:1px solid #d8c983;border-radius:12px;background:#fff;color:var(--ink);font-size:9px;font-weight:950;letter-spacing:.04em;text-transform:uppercase}
.leaderboard-club-wide__button:hover,.leaderboard-club-wide__button.is-active{background:var(--accent);border-color:var(--accent);color:#111}
.team-kit-row{align-items:flex-start;overflow:visible}
.team-kit-item{display:grid;gap:7px;justify-items:center;min-width:0;margin:0;flex:0 1 31%}
.team-kit-row .team-kit-item img{width:100%;max-width:150px;height:96px}
.team-kit-item figcaption{display:inline-flex;align-items:center;justify-content:center;min-height:24px;padding:5px 9px;border-radius:999px;background:#111318;color:#fff;font-size:8px;font-weight:900;letter-spacing:.05em;text-transform:uppercase;white-space:nowrap}
@media(min-width:700px){.team-kit-row .team-kit-item img{height:128px}.team-kit-item figcaption{font-size:9px}}
@media(max-width:560px){.leaderboard-club-wide{display:grid;gap:12px}.leaderboard-club-wide__button{width:100%}.team-kit-row{gap:7px}.team-kit-row .team-kit-item img{height:84px;padding:5px}.team-kit-item figcaption{min-height:21px;padding:4px 7px;font-size:7px}}


/* ===== Leaderboard result navigation ===== */
#leaderboard-results{scroll-margin-top:96px}

/* ===== V8.94 - Leaderboards Guide modal ===== */
.leaderboard-guide-launch{display:grid;gap:12px;margin-bottom:16px;padding:14px;border:1px solid var(--line);border-radius:18px;background:#fff;box-shadow:var(--shadow-sm)}
.leaderboard-guide-launch>div{display:grid;gap:3px;min-width:0}.leaderboard-guide-launch>div>strong{font-size:12px;line-height:1.4}.leaderboard-guide-button{width:100%;min-height:40px;font-size:9px}.legal-modal[data-leaderboards-modal] .legal-modal__header p:not(:empty)::before{content:none}
.legal-modal[data-leaderboards-modal],.legal-modal[data-leaderboards-modal] .legal-modal__panel,.legal-modal[data-leaderboards-modal] .legal-modal__body,.leaderboard-guide-content{min-width:0;max-width:100%}.legal-modal[data-leaderboards-modal] .legal-modal__panel{overflow:hidden}.legal-modal[data-leaderboards-modal] .legal-modal__header{gap:12px;padding:16px 15px 13px}.legal-modal[data-leaderboards-modal] .legal-modal__header>div{min-width:0}.legal-modal[data-leaderboards-modal] .legal-modal__header h2{font-size:clamp(1.25rem,6.4vw,1.5rem);line-height:1.05;overflow-wrap:anywhere}.legal-modal[data-leaderboards-modal] .legal-modal__header p{font-size:9px;line-height:1.35;overflow-wrap:anywhere}.legal-modal[data-leaderboards-modal] .legal-modal__x{width:38px;height:38px}.legal-modal[data-leaderboards-modal] .legal-modal__body{padding:16px 14px 24px;overflow-x:hidden}.legal-modal[data-leaderboards-modal] .legal-modal__footer{padding:10px 14px calc(10px + env(safe-area-inset-bottom))}
.leaderboard-guide-content{display:grid;gap:20px;overflow-wrap:anywhere}.leaderboard-guide-content h3,.leaderboard-guide-content p,.leaderboard-guide-content ol{margin:0}.leaderboard-guide-content h3{font-size:1.02rem;line-height:1.2}.leaderboard-guide-content p{font-size:12px;line-height:1.6}.leaderboard-guide-intro{display:grid;grid-template-columns:40px minmax(0,1fr);gap:11px;align-items:start;padding:13px;border-radius:15px;background:#111318;color:#fff}.leaderboard-guide-intro__icon{width:40px;height:40px;display:grid;place-items:center;border-radius:11px;background:var(--accent);color:#111}.leaderboard-guide-intro__icon .icon{width:19px;height:19px}.leaderboard-guide-intro h3{color:#fff}.leaderboard-guide-intro p{margin-top:5px!important;color:#c6cbd1!important}
.leaderboard-guide-section{display:grid;gap:12px;min-width:0}.leaderboard-guide-section__heading{display:grid;grid-template-columns:34px minmax(0,1fr);gap:10px;align-items:start}.leaderboard-guide-section__heading>span{width:34px;height:34px;display:grid;place-items:center;border-radius:10px;background:#f4e8b8;color:#725b12;font-size:9px;font-weight:950}.leaderboard-guide-section__heading>div{min-width:0}.leaderboard-guide-section__heading p{margin-top:3px!important;color:var(--muted)!important}
.leaderboard-guide-scope-grid{display:grid;grid-template-columns:1fr;gap:8px}.leaderboard-guide-scope-grid article{min-width:0;padding:12px;border:1px solid var(--line);border-radius:13px;background:#fff}.leaderboard-guide-scope-grid strong{display:block;margin-bottom:4px;font-size:11px}.leaderboard-guide-scope-grid p{color:#666d76!important;font-size:11px!important;line-height:1.55!important}
.leaderboard-guide-periods{display:grid;grid-template-columns:1fr;gap:8px}.leaderboard-guide-periods article{padding:13px;border-radius:13px;background:#111318;color:#fff}.leaderboard-guide-periods article>span{display:block;color:var(--accent);font-size:8px;font-weight:950;letter-spacing:.08em;text-transform:uppercase}.leaderboard-guide-periods strong{display:block;margin:3px 0 5px;font-size:12px}.leaderboard-guide-periods p{color:#c4c9d0!important;font-size:11px!important}.leaderboard-guide-note{padding:12px 13px;border:1px solid #dfd5b4;border-radius:12px;background:#fffaf0}.leaderboard-guide-note strong{display:block;margin-bottom:3px;color:#7d6317;font-size:8px;letter-spacing:.06em;text-transform:uppercase}.leaderboard-guide-note p{font-size:11px!important}
.leaderboard-guide-board-list{display:grid;gap:8px}.leaderboard-guide-board-list article{display:grid;gap:7px;min-width:0;padding:12px;border:1px solid var(--line);border-radius:13px;background:#fff}.leaderboard-guide-board-list article>div{min-width:0}.leaderboard-guide-board-list strong{display:block;font-size:11px}.leaderboard-guide-board-list small{display:block;margin-top:2px;color:#8a7019;font-size:8px;font-weight:850;text-transform:uppercase;letter-spacing:.04em}.leaderboard-guide-board-list p{padding:8px 9px;border-radius:9px;background:#f5f6f7;color:#3e444c!important;font-size:10px!important;line-height:1.45!important}.leaderboard-guide-board-list em{font-size:9px;color:#737a83;font-style:normal;font-weight:750}
.leaderboard-guide-rules{display:grid;gap:8px}.leaderboard-guide-rules p{padding:11px 12px;border-left:3px solid var(--accent);border-radius:0 10px 10px 0;background:#f7f8f9;font-size:11px!important}.leaderboard-guide-finish{padding:14px;border-radius:14px;background:linear-gradient(135deg,#111318,#1c2026);color:#fff}.leaderboard-guide-finish>strong{display:block;margin-bottom:8px;color:var(--accent);font-size:9px;letter-spacing:.07em;text-transform:uppercase}.leaderboard-guide-finish ol{display:grid;gap:5px;padding-left:20px}.leaderboard-guide-finish li{font-size:11px;line-height:1.45;color:#e2e5e9}
@media(min-width:700px){.leaderboard-guide-launch{grid-template-columns:minmax(0,1fr) auto;align-items:center;padding:16px}.leaderboard-guide-button{width:auto}.legal-modal[data-leaderboards-modal] .legal-modal__header{padding:22px 24px 18px}.legal-modal[data-leaderboards-modal] .legal-modal__header h2{font-size:clamp(1.45rem,4vw,2rem)}.legal-modal[data-leaderboards-modal] .legal-modal__header p{font-size:11px}.legal-modal[data-leaderboards-modal] .legal-modal__x{width:42px;height:42px}.legal-modal[data-leaderboards-modal] .legal-modal__body{padding:24px}.legal-modal[data-leaderboards-modal] .legal-modal__footer{padding:14px 24px calc(14px + env(safe-area-inset-bottom))}.leaderboard-guide-content{gap:26px}.leaderboard-guide-intro{grid-template-columns:48px minmax(0,1fr);gap:14px;padding:16px;border-radius:18px}.leaderboard-guide-intro__icon{width:48px;height:48px;border-radius:14px}.leaderboard-guide-intro__icon .icon{width:23px;height:23px}.leaderboard-guide-scope-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.leaderboard-guide-periods{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.leaderboard-guide-board-list{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.leaderboard-guide-board-list article:last-child{grid-column:1/-1}.leaderboard-guide-rules{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}}
@media(min-width:1000px){.leaderboard-guide-scope-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.leaderboard-guide-board-list{grid-template-columns:repeat(3,minmax(0,1fr))}.leaderboard-guide-board-list article:last-child{grid-column:auto}}

/* ===== V8.94 - Player profile age and short team identity ===== */
.player-profile-identity{display:grid;gap:5px}.player-profile-identity .player-nationality-line{display:flex;align-items:center;flex-wrap:wrap;gap:7px;margin:0}.player-profile-identity__separator{opacity:.7}.player-profile-identity__team{margin:0!important;color:#fff!important;font-size:12px!important;font-weight:850;line-height:1.35}.player-profile-identity .nationality-flag{flex:0 0 auto}
@media(min-width:700px){.player-profile-identity__team{font-size:13px!important}}

/* ===== Incident Report public form ===== */
.incident-report-note{margin-top:18px;padding:13px 14px;border-left:3px solid var(--accent);border-radius:8px;background:#fff8df}.incident-report-note strong{display:block;margin-bottom:4px;color:#5f4d11;font-size:11px}.incident-report-note p{margin:0!important;color:#6a6040!important;font-size:11px!important;line-height:1.55!important}.form-row small{display:block;margin-top:6px;color:var(--muted);font-size:10px;line-height:1.45}

/* =========================================================
   LAJFC SHOP UPDATE · MOBILE FIRST
   ========================================================= */
.shop-page,.shop-product-page,.shop-basket-page,.shop-checkout-page,.shop-account-page,.shop-order-page,.shop-auth-page,.shop-success-page{overflow-x:clip}
.shop-hero,.shop-bag-hero,.shop-checkout-hero,.shop-account-hero{background:#0b0c0f;color:#fff}
.shop-notice{padding:18px;border:1px solid var(--line);border-radius:16px;background:#fff}.shop-notice strong{display:block;margin-bottom:5px}.shop-notice p{margin:0}.shop-notice--error{border-color:#e3b4b4;background:#fff5f5}
.shop-toolbar{display:grid;gap:16px;margin-bottom:28px}.shop-category-scroll{display:flex;gap:8px;overflow-x:auto;padding:2px 0 8px;scrollbar-width:thin}.shop-filter-chip{display:inline-flex;align-items:center;gap:7px;flex:0 0 auto;padding:10px 13px;border:1px solid var(--line);border-radius:999px;background:#fff;font-size:12px;font-weight:850}.shop-filter-chip span{display:grid;place-items:center;min-width:20px;height:20px;padding:0 5px;border-radius:999px;background:#eef0f2;font-size:9px}.shop-filter-chip.is-active{background:var(--ink);border-color:var(--ink);color:#fff}.shop-filter-chip.is-active span{background:rgba(255,255,255,.12)}
.shop-sort label{display:grid;gap:6px}.shop-sort label>span{font-size:10px;font-weight:850;text-transform:uppercase;letter-spacing:.1em;color:var(--muted)}.shop-sort select{width:100%;min-height:44px;border:1px solid var(--line);border-radius:12px;background:#fff;padding:0 38px 0 13px;font:inherit;font-weight:750;color:var(--ink)}
.shop-results-head{display:flex;align-items:flex-end;justify-content:space-between;gap:16px;margin-bottom:18px}.shop-results-head h2{margin:4px 0 0}.shop-results-head>span{font-size:11px;font-weight:800;color:var(--muted);white-space:nowrap}
.shop-grid--catalog{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.shop-product-card{position:relative}.shop-product-card .product-card__media{display:block;position:relative}.shop-stock-badge{position:absolute;right:8px;bottom:8px;padding:6px 8px;border-radius:999px;background:#d2ad38;color:#111;font-size:8px;font-weight:900;text-transform:uppercase;letter-spacing:.06em}.shop-stock-badge--out{background:#111;color:#fff}.shop-product-card .product-card__body{padding:12px}.shop-product-card .product-card__body h3{font-size:13px;line-height:1.18;min-height:31px}.shop-product-card .product-card__bottom strong{font-size:14px}.shop-product-card .quick-add{width:34px;height:34px}
.shop-pagination{display:flex;justify-content:center;flex-wrap:wrap;gap:7px;margin-top:28px}.shop-pagination a{display:grid;place-items:center;width:40px;height:40px;border:1px solid var(--line);border-radius:11px;background:#fff;font-size:12px;font-weight:850}.shop-pagination a.is-active{background:var(--ink);border-color:var(--ink);color:#fff}
.shop-empty{grid-column:1/-1;padding:38px 22px;text-align:center;border:1px dashed #cfd3d8;border-radius:20px;background:#fff}.shop-empty>span{display:inline-grid;place-items:center;width:52px;height:52px;margin-bottom:12px;border-radius:50%;background:#f1f2f4}.shop-empty .icon{width:24px;height:24px}.shop-empty h3{margin:0 0 7px}.shop-empty p{margin:0 auto 17px;max-width:480px}.shop-empty--basket{border:0;background:#f6f7f8}

.shop-product-detail{display:grid;gap:28px}.shop-product-gallery{min-width:0}.shop-product-gallery__main{overflow:hidden;border:1px solid var(--line);border-radius:20px;background:#f2f3f4;aspect-ratio:1/1}.shop-product-gallery__main img{width:100%;height:100%;object-fit:contain;display:block}.shop-product-gallery__thumbs{display:grid;grid-auto-flow:column;grid-auto-columns:76px;gap:8px;overflow-x:auto;margin-top:10px;padding-bottom:6px}.shop-product-gallery__thumbs button{padding:0;border:2px solid transparent;border-radius:12px;overflow:hidden;background:#f2f3f4;aspect-ratio:1}.shop-product-gallery__thumbs button.is-active{border-color:var(--accent)}.shop-product-gallery__thumbs img{width:100%;height:100%;object-fit:contain;display:block}
.shop-product-info .breadcrumbs{margin-bottom:18px}.shop-product-info h1{margin:7px 0 10px}.shop-product-lead{font-size:1.03rem;line-height:1.65}.shop-product-info .product-price{display:block;margin:20px 0 8px}.shop-stock-message{display:inline-flex;padding:7px 10px;border-radius:999px;font-size:10px;font-weight:900;text-transform:uppercase;letter-spacing:.06em}.shop-stock-message.is-in{background:#e8f7ed;color:#176634}.shop-stock-message.is-out{background:#fdeaea;color:#9b2525}
.shop-option-group{margin:24px 0 0;padding:0;border:0}.shop-option-group legend{margin-bottom:10px;font-size:11px;font-weight:900;text-transform:uppercase;letter-spacing:.08em}.shop-colour-options,.shop-size-options{display:flex;flex-wrap:wrap;gap:8px}.shop-colour-swatch{display:grid;grid-template-columns:26px 1fr;align-items:center;gap:7px;min-height:42px;padding:6px 10px 6px 7px;border:1px solid var(--line);border-radius:12px;background:#fff;text-align:left}.shop-colour-swatch>span{display:block;width:26px;height:26px;border:1px solid rgba(0,0,0,.14);border-radius:8px;background:var(--swatch,#111)}.shop-colour-swatch small{max-width:105px;font-size:10px;font-weight:800;line-height:1.1}.shop-colour-swatch.is-active{border-color:var(--ink);box-shadow:0 0 0 1px var(--ink)}.shop-colour-swatch.is-disabled{opacity:.35}.shop-size-options button{min-width:48px;height:42px;padding:0 12px;border:1px solid var(--line);border-radius:11px;background:#fff;font-size:11px;font-weight:850}.shop-size-options button.is-active{background:var(--ink);border-color:var(--ink);color:#fff}.shop-size-options button:disabled{opacity:.35;text-decoration:line-through}.shop-variant-summary{margin-top:16px;padding:11px 13px;border-radius:12px;background:#f4f5f6;color:#555d67;font-size:11px;font-weight:750}.shop-buy-row{margin-top:14px;align-items:stretch}.shop-buy-row .quantity{flex:0 0 auto}.shop-buy-row .button{flex:1;justify-content:center}.shop-product-description{margin-top:30px;padding-top:24px;border-top:1px solid var(--line)}.shop-product-description h2{font-size:1.1rem;margin:0 0 10px}.shop-product-description div{color:#555d67;line-height:1.72}

.shop-basket-layout{display:grid;gap:18px}.shop-basket-card{min-width:0}.shop-basket-head{display:flex;align-items:flex-end;justify-content:space-between;gap:14px;margin-bottom:16px}.shop-basket-head h2{margin:4px 0 0}.shop-basket-head>span{font-size:11px;font-weight:800;color:var(--muted)}.shop-basket-item{display:grid;grid-template-columns:78px minmax(0,1fr);gap:13px;padding:14px 0;border-top:1px solid var(--line)}.shop-basket-item:first-child{border-top:0}.shop-basket-item>a{display:block;width:78px;height:92px;border-radius:12px;background:#f1f2f3;overflow:hidden}.shop-basket-item>a img{width:100%;height:100%;object-fit:contain}.shop-basket-item__copy{min-width:0}.shop-basket-item__copy>a strong{font-size:13px;line-height:1.2}.shop-basket-item__copy small,.shop-basket-item__copy span{display:block;margin-top:4px;font-size:10px;color:var(--muted)}.shop-basket-item__copy button{margin-top:8px;padding:0;border:0;background:none;color:#a22;font-size:10px;font-weight:800}.shop-basket-item__controls{grid-column:1/-1;display:flex;align-items:center;justify-content:space-between;gap:12px;padding-left:91px}.shop-basket-item__controls>strong{font-size:13px}.shop-basket-actions{display:flex;flex-wrap:wrap;gap:8px;margin-top:16px}.shop-basket-actions .button{font-size:10px}.button--ghost{background:transparent;border:1px solid transparent;color:#9a3131}
.shop-order-summary{position:relative}.shop-order-summary h3{margin:5px 0 18px}.shop-discount-box{padding:14px;margin-bottom:16px;border-radius:14px;background:#f3f4f5}.shop-discount-box>label{display:block;margin-bottom:7px;font-size:10px;font-weight:900;text-transform:uppercase;letter-spacing:.08em}.shop-discount-box>div:first-of-type{display:grid;grid-template-columns:1fr auto;gap:7px}.shop-discount-box input{min-width:0;height:42px;border:1px solid #d7dbe0;border-radius:10px;padding:0 11px;font:inherit;text-transform:uppercase}.shop-discount-box button{border:0;border-radius:10px;padding:0 13px;background:#111;color:#fff;font-size:10px;font-weight:850}.shop-discount-active{display:flex!important;align-items:center;justify-content:space-between;gap:8px;margin-top:8px;padding-top:8px;border-top:1px solid #ddd;font-size:10px;font-weight:800}.shop-discount-active[hidden]{display:none!important}.shop-discount-active button{height:auto;padding:0;background:none;color:#a22}.shop-order-summary .summary-row small{display:block;margin-top:2px;color:var(--muted);font-size:8px}.shop-secure-note{display:flex;align-items:flex-start;gap:8px;margin-top:13px;color:var(--muted);font-size:9px;line-height:1.45}.shop-secure-note .icon{width:15px;height:15px;flex:0 0 auto}

.shop-checkout-layout{display:grid;gap:20px}.shop-checkout-main{display:grid;gap:16px}.shop-checkout-card,.shop-checkout-summary,.shop-account-panel,.shop-auth-card,.shop-success-card{border:1px solid var(--line);border-radius:20px;background:#fff;box-shadow:var(--shadow-sm)}.shop-checkout-card{padding:18px}.shop-step-head{display:flex;align-items:center;gap:12px;margin-bottom:18px}.shop-step-head>span{display:grid;place-items:center;width:34px;height:34px;border-radius:50%;background:var(--ink);color:#fff;font-size:12px;font-weight:900}.shop-step-head small{display:block;color:var(--muted);font-size:9px;font-weight:850;text-transform:uppercase;letter-spacing:.08em}.shop-step-head h2{margin:2px 0 0;font-size:1.22rem}.shop-account-callout{margin-bottom:16px;padding:11px;border-radius:11px;background:#f4f5f6;font-size:11px}.shop-account-callout a{font-weight:850;text-decoration:underline}.shop-form-grid{display:grid;gap:12px}.shop-form-grid label,.shop-auth-card form label{display:grid;gap:6px}.shop-form-grid label>span,.shop-auth-card form label>span{font-size:10px;font-weight:850}.shop-form-grid input,.shop-auth-card input{width:100%;min-width:0;height:46px;border:1px solid #d6d9dd;border-radius:11px;padding:0 12px;font:inherit;color:#111;background:#fff}.shop-form-grid small{font-size:9px;color:var(--muted)}.shop-checkout-card form>.button{margin-top:16px}.shop-checkout-card.is-locked{background:#f6f7f8}.shop-payment-lock{padding:20px;border:1px dashed #cbd0d6;border-radius:13px;color:#747b84;text-align:center;font-size:11px}.shop-checkout-card.is-complete .shop-step-head>span{background:#1d7a42}.shop-payment-element{padding:14px 0}.shop-stripe-mode-note{margin-bottom:10px;padding:10px;border-radius:10px;background:#eef3ff;color:#31568c;font-size:10px;font-weight:800}.shop-stripe-mode-note.is-live{background:#e8f7ed;color:#176634}.shop-payment-note{margin:11px 0 0;color:var(--muted);font-size:9px;line-height:1.5}.shop-checkout-error,.shop-form-error{margin:12px 0;padding:11px;border-radius:10px;background:#fde9e9;color:#8d2424;font-size:11px;font-weight:750}.shop-form-success{margin:12px 0 18px;padding:12px;border-radius:10px;background:#e9f6ed;color:#176634;font-size:11px;font-weight:750}.shop-checkout-summary{padding:18px;height:max-content}.shop-checkout-summary h2{margin:5px 0 16px}.shop-checkout-items{display:grid;gap:10px;margin-bottom:16px}.shop-checkout-items>div{display:grid;grid-template-columns:50px minmax(0,1fr) auto;align-items:center;gap:9px}.shop-checkout-items img{width:50px;height:56px;object-fit:contain;border-radius:8px;background:#f1f2f3}.shop-checkout-items span{min-width:0}.shop-checkout-items strong,.shop-checkout-items small{display:block}.shop-checkout-items strong{font-size:10px;line-height:1.2}.shop-checkout-items small{margin-top:3px;color:var(--muted);font-size:8px}.shop-checkout-items b{font-size:10px}

.shop-auth-page{padding:48px 16px}.shop-auth-card{width:min(100%,480px);margin:auto;padding:24px}.shop-auth-card h1{margin:7px 0 9px}.shop-auth-card>p{margin-bottom:19px}.shop-auth-card form{display:grid;gap:13px}.shop-auth-links{display:flex;justify-content:space-between;gap:12px;margin-top:16px;font-size:10px;font-weight:800}.shop-success-card{padding:30px 22px;text-align:center}.shop-success-icon{display:grid;place-items:center;width:60px;height:60px;margin:0 auto 16px;border-radius:50%;background:#e9f7ee;color:#166235}.shop-success-icon .icon{width:28px;height:28px}.shop-success-card h1{margin:7px 0 10px}.shop-success-card>p{max-width:570px;margin:0 auto}.shop-success-total{display:flex;justify-content:space-between;gap:20px;margin:22px auto;padding:14px;border-radius:12px;background:#f4f5f6;max-width:420px}.shop-success-actions{display:flex;justify-content:center;flex-wrap:wrap;gap:8px}

.shop-account-head{display:flex;align-items:end;justify-content:space-between;gap:14px;margin-bottom:18px}.shop-account-head h2{margin:4px 0 0}.shop-account-orders{display:grid;gap:10px}.shop-account-order{display:grid;grid-template-columns:minmax(0,1fr) auto 18px;align-items:center;gap:10px;padding:15px;border:1px solid var(--line);border-radius:16px;background:#fff;box-shadow:var(--shadow-sm)}.shop-account-order>div:first-child small,.shop-account-order>div:first-child strong,.shop-account-order>div:first-child span{display:block}.shop-account-order>div:first-child small{font-size:8px;color:var(--muted)}.shop-account-order>div:first-child strong{margin-top:3px;font-size:12px}.shop-account-order>div:first-child span{margin-top:3px;font-size:9px;color:var(--muted)}.shop-account-order>div:nth-child(2){display:grid;justify-items:end;gap:6px}.shop-account-order>div:nth-child(2)>strong{font-size:12px}.shop-order-status{display:inline-flex;padding:6px 8px;border-radius:999px;background:#eef0f2;color:#41464e;font-size:8px;font-weight:900;text-transform:uppercase;letter-spacing:.05em}.shop-order-status--in_progress{background:#fff1c8;color:#80600d}.shop-order-status--shipped{background:#e8f0ff;color:#2d58a1}.shop-order-status--completed{background:#e5f6eb;color:#176634}.shop-order-status--cancelled,.shop-order-status--refunded{background:#fde9e9;color:#902d2d}.shop-payment-status{display:inline-flex;margin-top:10px;padding:6px 8px;border-radius:999px;background:#f0f1f2;font-size:8px;font-weight:900;text-transform:uppercase}
.shop-order-top{display:grid;gap:14px;margin-bottom:20px}.shop-order-top>div h1{margin:5px 0}.shop-order-top>div p{margin:0}.shop-order-layout{display:grid;gap:16px}.shop-account-panel{padding:18px}.shop-account-panel h2{margin:0 0 14px;font-size:1.12rem}.shop-order-item{display:grid;grid-template-columns:58px minmax(0,1fr) auto;align-items:center;gap:10px;padding:10px 0;border-top:1px solid var(--line)}.shop-order-item:first-of-type{border-top:0}.shop-order-item img{width:58px;height:64px;border-radius:8px;background:#f2f3f4;object-fit:contain}.shop-order-item span strong,.shop-order-item span small{display:block}.shop-order-item span strong{font-size:11px}.shop-order-item span small{margin-top:3px;font-size:8px;color:var(--muted)}.shop-order-item b{font-size:10px}.shop-order-timeline{display:grid;gap:0}.shop-order-timeline>div{display:grid;grid-template-columns:14px 1fr;gap:10px;position:relative;padding-bottom:16px}.shop-order-timeline>div>span{width:10px;height:10px;margin-top:3px;border-radius:50%;background:var(--accent)}.shop-order-timeline>div:not(:last-child)::before{content:"";position:absolute;left:4px;top:13px;bottom:0;width:2px;background:#e4e6e8}.shop-order-timeline strong,.shop-order-timeline small{display:block}.shop-order-timeline strong{font-size:11px}.shop-order-timeline small{margin-top:2px;font-size:8px;color:var(--muted)}.shop-order-timeline p{margin:4px 0 0;font-size:9px}.shop-tracking{margin-top:16px;padding-top:14px;border-top:1px solid var(--line)}.shop-tracking span,.shop-tracking strong,.shop-tracking small{display:block}.shop-tracking span{font-size:8px;text-transform:uppercase;color:var(--muted)}.shop-tracking strong{margin-top:3px}.shop-tracking small{margin:2px 0 10px;color:var(--muted)}

@media (min-width:700px){
  .shop-toolbar{grid-template-columns:minmax(0,1fr) 230px;align-items:end}.shop-grid--catalog{grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}.shop-product-card .product-card__body{padding:16px}.shop-product-card .product-card__body h3{font-size:14px}.shop-product-detail{grid-template-columns:minmax(0,1fr) minmax(0,.9fr);gap:34px;align-items:start}.shop-product-gallery{position:sticky;top:110px}.shop-basket-item{grid-template-columns:92px minmax(0,1fr) auto;align-items:center}.shop-basket-item>a{width:92px;height:105px}.shop-basket-item__controls{grid-column:auto;padding-left:0;display:grid;justify-items:end}.shop-checkout-card{padding:24px}.shop-form-grid{grid-template-columns:1fr 1fr}.shop-field-full{grid-column:1/-1}.shop-order-top{grid-template-columns:auto 1fr auto;align-items:center}.shop-order-layout{grid-template-columns:minmax(0,1.3fr) minmax(280px,.7fr)}
}
@media (min-width:900px){
  .shop-grid--catalog{grid-template-columns:repeat(4,minmax(0,1fr));gap:18px}.shop-basket-layout{grid-template-columns:minmax(0,1.5fr) minmax(310px,.65fr);align-items:start}.shop-order-summary{position:sticky;top:110px}.shop-checkout-layout{grid-template-columns:minmax(0,1.25fr) minmax(320px,.65fr);align-items:start}.shop-checkout-summary{position:sticky;top:110px}.shop-auth-page{padding:80px 20px}.shop-auth-card{padding:34px}.shop-account-order{padding:18px 20px}
}



/* v8.99 site search, Junior event attendance and mobile ticker refinement */
.site-search button {
  flex: 0 0 38px;
  width: 38px;
  height: 38px;
  border: 0;
  border-radius: 12px;
  display: grid;
  place-items: center;
  background: var(--ink);
  color: var(--paper);
  cursor: pointer;
}
.site-search button .icon { width: 17px; height: 17px; }
.search-suggestions { max-height: min(56vh, 470px); overflow-y: auto; }
.search-suggestions > a { min-width: 0; }
.search-suggestions > a > span:not(.search-suggestion__fallback-icon):not(.search-suggestion__image) { min-width: 0; }
.search-suggestions > a strong,
.search-suggestions > a small { overflow-wrap: anywhere; }
.search-suggestion__fallback-icon,
.search-suggestion__image {
  flex: 0 0 42px;
  width: 42px;
  height: 42px;
  border-radius: 12px;
  display: grid !important;
  place-items: center;
  overflow: hidden;
  background: #eef0f2;
  color: var(--ink);
  font-size: 19px;
}
.search-suggestion__image img { width: 100%; height: 100%; object-fit: cover; }
.search-suggestion__type { color: #9a7b12 !important; font-size: 8px !important; font-weight: 900; text-transform: uppercase; letter-spacing: .08em; }
.search-suggestions__all { background: #f7f1dc; border-color: #eadca2 !important; }
.search-suggestions__loading { min-height: 70px; display: flex; align-items: center; justify-content: center; gap: 10px; color: var(--muted); font-size: 11px; }
.search-suggestions__loading span { width: 18px; height: 18px; border: 2px solid #d5d9de; border-top-color: var(--accent); border-radius: 50%; animation: attendanceSpin .8s linear infinite; }

/* Full site search results */
.search-results-form {
  margin-top: 24px;
  width: min(100%, 760px);
  min-height: 58px;
  padding: 7px 7px 7px 15px;
  display: grid;
  grid-template-columns: auto minmax(0,1fr) auto;
  align-items: center;
  gap: 10px;
  border-radius: 17px;
  background: var(--paper);
  color: var(--ink);
  box-shadow: 0 14px 34px rgba(0,0,0,.12);
}
.search-results-form > .icon { width: 20px; height: 20px; color: #7e858e; }
.search-results-form input { min-width: 0; width: 100%; border: 0; outline: 0; background: transparent; color: var(--ink); font-size: 16px; }
.search-results-form .button { min-height: 44px; padding-inline: 15px; }
.search-results-page { overflow: hidden; background: #f4f5f6; }
.search-results-summary {
  margin-bottom: 30px;
  padding: 24px;
  display: grid;
  grid-template-columns: minmax(0,1fr) auto;
  align-items: center;
  gap: 20px;
  border: 1px solid var(--line);
  border-radius: 24px;
  background: var(--paper);
  box-shadow: var(--shadow-sm);
}
.search-results-summary h2 { margin: 8px 0 8px; font-size: clamp(1.8rem,8vw,2.7rem); line-height: 1.02; letter-spacing: -.045em; }
.search-results-summary p { max-width: 720px; color: var(--muted); font-size: .92rem; line-height: 1.55; }
.search-results-summary__count {
  width: 78px;
  aspect-ratio: 1;
  display: grid;
  place-content: center;
  text-align: center;
  border-radius: 22px;
  background: var(--ink);
  color: var(--paper);
}
.search-results-summary__count strong { font-size: 1.7rem; line-height: 1; }
.search-results-summary__count span { margin-top: 5px; color: #c9cdd2; font-size: 8px; font-weight: 900; letter-spacing: .1em; text-transform: uppercase; }
.search-result-groups { display: grid; gap: 26px; }
.search-result-group {
  min-width: 0;
  padding: 20px;
  border: 1px solid var(--line);
  border-radius: 24px;
  background: var(--paper);
  box-shadow: var(--shadow-sm);
}
.search-result-group__head {
  min-width: 0;
  margin-bottom: 16px;
  padding-bottom: 16px;
  display: flex;
  align-items: flex-end;
  justify-content: space-between;
  gap: 18px;
  border-bottom: 1px solid var(--line);
}
.search-result-group__head > div { min-width: 0; }
.search-result-group__head .eyebrow { margin-bottom: 6px; }
.search-result-group__head h3 { margin: 0; font-size: clamp(1.35rem,6vw,1.85rem); line-height: 1.05; }
.search-result-group__head p { margin: 5px 0 0; max-width: 620px; color: var(--muted); font-size: .78rem; line-height: 1.45; }
.search-result-group__head > strong {
  flex: 0 0 auto;
  min-width: 38px;
  height: 38px;
  padding: 0 11px;
  display: grid;
  place-items: center;
  border-radius: 999px;
  background: var(--ink);
  color: var(--paper);
  font-size: 11px;
}
.search-result-list { display: grid; gap: 10px; }
.search-result-card {
  position: relative;
  min-width: 0;
  min-height: 94px;
  padding: 14px;
  display: grid;
  grid-template-columns: 58px minmax(0,1fr) 30px;
  align-items: center;
  gap: 13px;
  border: 1px solid #e1e4e8;
  border-radius: 18px;
  background: #f8f9fa;
  overflow: hidden;
  transition: transform var(--transition), border-color var(--transition), background var(--transition), box-shadow var(--transition);
}
.search-result-card::before {
  content: "";
  position: absolute;
  left: 0;
  top: 16px;
  bottom: 16px;
  width: 3px;
  border-radius: 999px;
  background: var(--accent);
  opacity: 0;
  transition: opacity var(--transition);
}
.search-result-card:hover { transform: translateY(-2px); border-color: #d9c16a; background: #fffdf7; box-shadow: 0 14px 30px rgba(10,12,15,.07); }
.search-result-card:hover::before { opacity: 1; }
.search-result-card__visual {
  width: 58px;
  height: 58px;
  border-radius: 15px;
  display: grid;
  place-items: center;
  overflow: hidden;
  background: #eceff1;
  color: var(--ink);
  border: 1px solid #dde1e5;
}
.search-result-card__visual img { width: 100%; height: 100%; object-fit: cover; }
.search-result-card__visual .icon { width: 23px; height: 23px; }
.search-result-card__copy { min-width: 0; display: grid; gap: 4px; }
.search-result-card__copy > small { color: #9a7b12; font-size: 8px; font-weight: 950; text-transform: uppercase; letter-spacing: .09em; }
.search-result-card__copy > strong { min-width: 0; color: var(--ink); font-size: 13px; line-height: 1.25; overflow-wrap: anywhere; }
.search-result-card__copy > span { min-width: 0; color: var(--muted); font-size: 10px; line-height: 1.4; overflow-wrap: anywhere; }
.search-result-card__arrow {
  width: 30px;
  height: 30px;
  display: grid;
  place-items: center;
  border-radius: 50%;
  background: var(--paper);
  color: #7f858d;
  border: 1px solid #dde1e5;
  transition: transform var(--transition), background var(--transition), color var(--transition);
}
.search-result-card:hover .search-result-card__arrow { transform: translateX(3px); background: var(--ink); color: var(--paper); }
.search-result-card__arrow .icon { width: 14px; height: 14px; }
.search-results-empty { max-width: 760px; margin-inline: auto; }

@media (max-width: 560px) {
  .search-results-form { grid-template-columns: auto minmax(0,1fr); padding: 10px 13px; }
  .search-results-form .button { grid-column: 1 / -1; width: 100%; }
  .search-results-summary { grid-template-columns: 1fr; padding: 20px; }
  .search-results-summary__count { width: 68px; }
  .search-result-group { padding: 16px; border-radius: 20px; }
  .search-result-group__head { align-items: flex-start; }
  .search-result-group__head p { font-size: .74rem; }
  .search-result-card { min-height: 88px; grid-template-columns: 52px minmax(0,1fr) 28px; padding: 12px; gap: 11px; }
  .search-result-card__visual { width: 52px; height: 52px; border-radius: 13px; }
  .search-result-card__arrow { width: 28px; height: 28px; }
}

@media (min-width: 760px) {
  .search-result-list { grid-template-columns: repeat(2,minmax(0,1fr)); }
}

@media (min-width: 1120px) {
  .search-results-summary { padding: 30px 32px; }
  .search-result-group { padding: 24px; }
  .search-result-list { grid-template-columns: repeat(3,minmax(0,1fr)); gap: 12px; }
  .search-result-card { min-height: 102px; padding: 16px; }
  .search-result-card__copy > strong { font-size: 14px; }
  .search-result-card__copy > span { font-size: 10.5px; }
}

/* Public Junior attendance */
.attendance-page { overflow: hidden; }
.attendance-honeypot { position: absolute !important; left: -9999px !important; width: 1px !important; height: 1px !important; opacity: 0 !important; }
.attendance-event-banner {
  margin-bottom: 20px;
  padding: 20px;
  display: grid;
  grid-template-columns: 66px minmax(0,1fr);
  align-items: center;
  gap: 16px;
  border-radius: 24px;
  background: var(--ink);
  color: var(--paper);
  overflow: hidden;
  position: relative;
}
.attendance-event-banner::after { content: ""; position: absolute; width: 180px; height: 180px; right: -90px; top: -95px; border: 1px solid rgba(212,175,55,.19); border-radius: 50%; box-shadow: 0 0 0 34px rgba(212,175,55,.035); }
.attendance-event-banner > * { position: relative; z-index: 1; min-width: 0; }
.attendance-event-banner__date { width: 66px; height: 76px; border-radius: 17px; display: grid; place-items: center; align-content: center; background: var(--accent); color: var(--accent-ink); }
.attendance-event-banner__date span { font-size: 9px; font-weight: 950; text-transform: uppercase; letter-spacing: .1em; }
.attendance-event-banner__date strong { font-size: 2rem; line-height: 1; }
.attendance-event-banner h2 { margin: 5px 0 7px; color: var(--paper); font-size: clamp(1.45rem,7vw,2rem); }
.attendance-event-banner p { color: #d5d8dd; font-size: 11px; line-height: 1.5; }
.attendance-event-banner p span { color: var(--accent); padding-inline: 3px; }
.attendance-event-banner small { display: block; margin-top: 8px; color: #aeb4bd; font-size: 10px; line-height: 1.5; overflow-wrap: anywhere; }
.attendance-form { display: grid; gap: 16px; min-width: 0; }
.attendance-step-card { min-width: 0; padding: 18px; border: 1px solid var(--line); border-radius: 22px; background: var(--paper); box-shadow: var(--shadow-sm); }
.attendance-step-card__head { margin-bottom: 18px; display: grid; grid-template-columns: 38px minmax(0,1fr); gap: 12px; align-items: start; }
.attendance-step-card__head > span { width: 38px; height: 38px; display: grid; place-items: center; border-radius: 12px; background: var(--ink); color: var(--accent); font-size: 9px; font-weight: 950; }
.attendance-step-card__head div { min-width: 0; }
.attendance-step-card__head small { color: #a68616; font-size: 8px; font-weight: 950; text-transform: uppercase; letter-spacing: .1em; }
.attendance-step-card__head h3 { margin: 4px 0 4px; font-size: 1.15rem; }
.attendance-step-card__head p { color: var(--muted); font-size: 10px; line-height: 1.5; overflow-wrap: anywhere; }
.attendance-field-grid { display: grid; gap: 13px; min-width: 0; }
.attendance-field-grid .form-row { min-width: 0; }
.attendance-field-grid input { width: 100%; min-width: 0; }
.attendance-team-grid { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 9px; min-width: 0; }
.attendance-team-choice { min-width: 0; cursor: pointer; }
.attendance-team-choice input, .attendance-player-choice input, .attendance-response-choice input { position: absolute; opacity: 0; pointer-events: none; }
.attendance-team-choice__card { min-width: 0; min-height: 94px; padding: 11px; display: grid; grid-template-columns: 42px minmax(0,1fr); gap: 9px; align-items: center; position: relative; border: 1px solid #dadddf; border-radius: 16px; background: #f8f9fa; transition: border-color var(--transition),background var(--transition),transform var(--transition); }
.attendance-team-choice__badge { width: 42px; height: 42px; border-radius: 11px; display: grid; place-items: center; overflow: hidden; background: #fff; border: 1px solid #e0e3e6; }
.attendance-team-choice__badge img { width: 100%; height: 100%; object-fit: contain; }
.attendance-team-choice__badge .icon { width: 20px; height: 20px; }
.attendance-team-choice__card > span:nth-child(2) { min-width: 0; display: grid; gap: 3px; }
.attendance-team-choice__card strong { font-size: 10px; line-height: 1.2; overflow-wrap: anywhere; }
.attendance-team-choice__card small { color: var(--muted); font-size: 8px; line-height: 1.3; overflow-wrap: anywhere; }
.attendance-team-choice__check { position: absolute; right: 8px; top: 8px; width: 20px; height: 20px; border-radius: 50%; display: grid; place-items: center; background: #dfe3e6; color: #9299a1; opacity: .8; }
.attendance-team-choice__check .icon { width: 11px; height: 11px; }
.attendance-team-choice input:checked + .attendance-team-choice__card { border-color: #c3a12c; background: #fbf4d9; box-shadow: inset 0 0 0 1px #d4af37; transform: translateY(-1px); }
.attendance-team-choice input:checked + .attendance-team-choice__card .attendance-team-choice__check { background: var(--accent); color: var(--accent-ink); opacity: 1; }
.attendance-player-loading { min-height: 88px; display: flex; align-items: center; justify-content: center; gap: 10px; color: var(--muted); font-size: 10px; }
.attendance-player-loading span { width: 20px; height: 20px; border: 2px solid #d5d9de; border-top-color: var(--accent); border-radius: 50%; animation: attendanceSpin .8s linear infinite; }
@keyframes attendanceSpin { to { transform: rotate(360deg); } }
.attendance-player-grid { display: grid; gap: 9px; min-width: 0; }
.attendance-player-choice { min-width: 0; cursor: pointer; }
.attendance-player-choice__card { min-width: 0; min-height: 72px; padding: 9px 11px; display: grid; grid-template-columns: 50px minmax(0,1fr) 24px; gap: 10px; align-items: center; border: 1px solid #dadddf; border-radius: 16px; background: #f8f9fa; transition: border-color var(--transition),background var(--transition); }
.attendance-player-choice__image { width: 50px; height: 50px; border-radius: 13px; overflow: hidden; display: grid; place-items: center; background: #eceff2; }
.attendance-player-choice__image img { width: 100%; height: 100%; object-fit: cover; }
.attendance-player-choice__copy { min-width: 0; display: grid; gap: 4px; }
.attendance-player-choice__copy strong { font-size: 12px; overflow-wrap: anywhere; }
.attendance-player-choice__copy small { color: var(--muted); font-size: 9px; overflow-wrap: anywhere; }
.attendance-player-choice__check { width: 24px; height: 24px; border-radius: 50%; display: grid; place-items: center; background: #dfe3e6; color: transparent; font-size: 11px; }
.attendance-player-choice input:checked + .attendance-player-choice__card { border-color: #c3a12c; background: #fbf4d9; box-shadow: inset 0 0 0 1px #d4af37; }
.attendance-player-choice input:checked + .attendance-player-choice__card .attendance-player-choice__check { background: var(--accent); color: var(--accent-ink); }
.attendance-no-player { padding: 18px; border-radius: 15px; background: #f4f5f6; text-align: center; }
.attendance-no-player strong { display: block; font-size: 12px; }
.attendance-no-player p { margin-top: 5px; color: var(--muted); font-size: 9px; line-height: 1.5; }
.attendance-response-grid { display: grid; gap: 10px; min-width: 0; }
.attendance-response-choice { min-width: 0; cursor: pointer; }
.attendance-response-choice > span { min-height: 118px; padding: 17px; display: grid; align-content: center; justify-items: start; gap: 5px; border-radius: 18px; color: #fff; background: #8e3037; border: 2px solid #a94249; transition: background var(--transition),border-color var(--transition),transform var(--transition),box-shadow var(--transition); }
.attendance-response-choice__icon { width: 34px; height: 34px; margin-bottom: 4px; display: grid; place-items: center; border-radius: 50%; background: rgba(255,255,255,.15); }
.attendance-response-choice__icon .icon { width: 17px; height: 17px; }
.attendance-response-choice strong { color: #fff; font-size: 13px; }
.attendance-response-choice small { color: rgba(255,255,255,.78); font-size: 9px; line-height: 1.4; }
.attendance-response-choice input:checked + span { background: #267a4c; border-color: #31915c; box-shadow: 0 12px 28px rgba(38,122,76,.18); transform: translateY(-1px); }
.attendance-submit-bar { padding: 16px; display: grid; gap: 12px; border-radius: 20px; background: var(--ink); color: var(--paper); }
.attendance-submit-bar > div { min-width: 0; display: grid; gap: 3px; }
.attendance-submit-bar small { color: #989fa9; font-size: 8px; text-transform: uppercase; font-weight: 900; letter-spacing: .08em; }
.attendance-submit-bar strong { color: #fff; font-size: 12px; overflow-wrap: anywhere; }
.attendance-submit-bar .button { width: 100%; }
.attendance-closed-card { width: min(100%,760px); margin-inline: auto; padding: 38px 22px; border: 1px solid var(--line); border-radius: 26px; background: var(--paper); text-align: center; box-shadow: var(--shadow-sm); }
.attendance-closed-card__icon { width: 64px; height: 64px; margin: 0 auto 18px; border-radius: 50%; display: grid; place-items: center; background: var(--ink); color: var(--accent); }
.attendance-closed-card__icon .icon { width: 28px; height: 28px; }
.attendance-closed-card h2 { margin: 8px auto 10px; max-width: 600px; font-size: clamp(1.65rem,8vw,2.5rem); }
.attendance-closed-card p { max-width: 540px; margin-inline: auto; color: var(--muted); }
.attendance-success { margin-bottom: 16px; }

/* Mobile ticker mark: keep the calendar circular and comfortably sized. */
@media (max-width: 430px) {
  .match-ticker { grid-template-columns: 116px minmax(0,1fr) 38px; }
  .match-ticker__identity { min-width: 116px; padding-inline: 10px; gap: 9px; }
  .match-ticker__mark { flex: 0 0 34px; width: 34px; min-width: 34px; height: 34px; min-height: 34px; aspect-ratio: 1 / 1; border-radius: 50%; }
  .match-ticker__mark .icon { width: 18px; height: 18px; }
  .match-ticker__identity-copy strong { font-size: 8px; line-height: 1.08; }
}

@media (min-width: 620px) {
  .search-result-list { grid-template-columns: repeat(2,minmax(0,1fr)); }
  .search-result-card { border-right: 1px solid var(--line); }
  .search-result-card:nth-child(even) { border-right: 0; }
  .attendance-field-grid { grid-template-columns: repeat(2,minmax(0,1fr)); }
  .attendance-field--full { grid-column: 1 / -1; }
  .attendance-team-grid { grid-template-columns: repeat(3,minmax(0,1fr)); }
  .attendance-player-grid { grid-template-columns: repeat(2,minmax(0,1fr)); }
  .attendance-response-grid { grid-template-columns: repeat(2,minmax(0,1fr)); }
  .attendance-submit-bar { grid-template-columns: minmax(0,1fr) auto; align-items: center; padding: 18px 20px; }
  .attendance-submit-bar .button { width: auto; }
}
@media (min-width: 900px) {
  .search-panel { left: 50%; right: auto; width: min(760px,calc(100% - 64px)); transform: translate(-50%,-105%); border-radius: 0 0 28px 28px; }
  .search-overlay.is-open .search-panel { transform: translate(-50%,0); }
  .search-result-groups { grid-template-columns: repeat(2,minmax(0,1fr)); align-items: start; }
  .search-result-group { break-inside: avoid; }
  .attendance-event-banner { padding: 26px 30px; grid-template-columns: 78px minmax(0,1fr); gap: 22px; }
  .attendance-event-banner__date { width: 78px; height: 88px; }
  .attendance-step-card { padding: 26px; }
  .attendance-step-card__head { grid-template-columns: 44px minmax(0,1fr); gap: 15px; }
  .attendance-step-card__head > span { width: 44px; height: 44px; }
  .attendance-team-grid { grid-template-columns: repeat(4,minmax(0,1fr)); }
}


/* Generic LAJFC account pages - shared by Shop now and future club services */
.account-auth-page{overflow-x:clip}.account-auth-card{width:min(100%,520px);margin-inline:auto}.account-auth-card--wide{width:min(100%,700px)}.account-auth-actions{margin-top:10px}.account-signup-grid{display:grid;gap:12px}.account-signup-grid label{display:grid;gap:6px}.account-signup-grid label>span{font-size:10px;font-weight:850}.account-signup-grid label>small{font-size:9px;color:var(--muted)}.account-signup-grid input{width:100%;min-width:0;height:46px;border:1px solid #d6d9dd;border-radius:11px;padding:0 12px;font:inherit;color:#111;background:#fff}.account-created-message{margin-bottom:20px}.account-overview-grid{display:grid;gap:14px;margin-bottom:32px}.account-profile-panel .eyebrow,.account-services-panel .eyebrow{margin-bottom:8px}.account-profile-panel h2,.account-services-panel h2{margin:0 0 10px}.account-profile-lines{display:grid;gap:8px;margin:16px 0 20px}.account-profile-lines span{display:flex;align-items:center;gap:9px;min-width:0}.account-profile-lines .icon{width:17px;height:17px;color:var(--accent);flex:0 0 auto}.account-profile-lines strong{min-width:0;overflow-wrap:anywhere;font-size:11px}.account-services-panel p{margin:0 0 18px}.account-section-head{align-items:flex-start}.account-section-head p{margin:6px 0 0;color:var(--muted);font-size:10px}.shop-auth-links>span{color:var(--muted)}
@media (min-width:700px){.account-signup-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.account-overview-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}}

/* ===== Shop order detail redesign + consistent Shop section spacing ===== */
.shop-order-shell{display:grid;gap:18px;min-width:0}
.shop-order-back{min-width:0}
.shop-order-hero-card{display:grid;gap:18px;padding:22px;border:1px solid #252930;border-radius:24px;background:linear-gradient(135deg,#0c0e12,#181b21);color:#fff;box-shadow:0 20px 52px rgba(8,10,13,.14);overflow:hidden}
.shop-order-hero-card .eyebrow{color:var(--accent)}
.shop-order-hero-card h1{margin:6px 0;color:#fff;font-size:clamp(2rem,9vw,3.7rem);line-height:.96;letter-spacing:-.045em}
.shop-order-hero-card p{margin:0;color:#c6cbd2}
.shop-order-hero-card__badges{display:flex;flex-wrap:wrap;gap:8px;margin-top:15px}
.shop-order-hero-card__total{display:grid;align-content:start;gap:8px;padding-top:17px;border-top:1px solid rgba(255,255,255,.11)}
.shop-order-hero-card__total>span{color:#aeb4bd;font-size:9px;font-weight:900;letter-spacing:.09em;text-transform:uppercase}
.shop-order-hero-card__total>strong{color:#fff;font-size:clamp(2rem,10vw,3.25rem);line-height:1}
.shop-order-hero-card__total .button{margin-top:6px;width:max-content;max-width:100%}
.shop-order-layout--detail{gap:18px;align-items:start}
.shop-order-stack{display:grid;gap:18px;align-content:start;min-width:0}
.shop-order-section{min-width:0;padding:18px}
.shop-order-section__head{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;margin-bottom:15px;padding-bottom:14px;border-bottom:1px solid var(--line)}
.shop-order-section__head h2{margin:4px 0 0;font-size:1.18rem}
.shop-order-section__count{display:inline-flex;align-items:center;justify-content:center;min-width:34px;height:30px;padding:0 9px;border-radius:999px;background:#f0f1f3;color:#4c535c;font-size:9px;font-weight:900}
.shop-order-items-list{display:grid;gap:0}
.shop-order-item{border-top:1px solid var(--line)}
.shop-order-item:first-child{border-top:0}
.shop-order-item span em{display:block;margin-top:4px;color:#6f7781;font-size:8px;font-style:normal}
.shop-order-summary-lines{display:grid;gap:0}
.shop-order-summary-lines .summary-row{min-width:0}
.shop-order-summary-lines .summary-row small{display:inline-flex;margin-left:5px;padding:3px 6px;border-radius:999px;background:#f0f1f3;color:#555e68;font-size:7px;font-weight:900;text-transform:uppercase;vertical-align:middle}
.shop-order-discount-row strong{color:#176634}
.shop-order-address{display:grid;gap:4px;color:#5f6670;font-size:11px;line-height:1.45}
.shop-order-address strong{margin-bottom:3px;color:#111318;font-size:12px}
.shop-payment-status--paid{background:#e5f6eb;color:#176634}
.shop-payment-status--failed,.shop-order-status--payment_failed{background:#fde9e9;color:#982d2d}
.shop-payment-status--pending,.shop-order-status--payment_pending{background:#fff2cf;color:#7b6112}
.shop-payment-status--cancelled,.shop-order-status--payment_cancelled{background:#eef0f2;color:#5a616a}
.shop-payment-status--refunded,.shop-payment-status--partially_refunded{background:#e9effa;color:#315a96}
.shop-order-timeline__entry--payment_failed>span{background:#b83a3a}
.shop-success-card--failed .shop-success-icon{background:#fde9e9;color:#a02e2e}

/* Vertical rhythm for public Shop/account sections: cards never touch. */
.shop-order-layout>div,.shop-order-layout>aside{display:grid;gap:18px;align-content:start;min-width:0}
.shop-account-page .account-overview-grid,.shop-account-page .shop-account-orders,.shop-checkout-main{row-gap:18px}

@media(min-width:700px){
  .shop-order-hero-card{grid-template-columns:minmax(0,1fr) auto;align-items:center;padding:28px}
  .shop-order-hero-card__total{min-width:220px;padding:0 0 0 26px;border-top:0;border-left:1px solid rgba(255,255,255,.11)}
  .shop-order-section{padding:22px}
}
/* Last Man Standing ------------------------------------------------------- */
.lms-public-hero{position:relative;overflow:hidden;background:radial-gradient(circle at 84% 20%,rgba(212,175,55,.18),transparent 25%),linear-gradient(135deg,#08090c 0%,#14171c 64%,#0b0c0f 100%);color:#fff}
.lms-public-hero::after{content:"";position:absolute;right:-130px;bottom:-180px;width:420px;height:420px;border:1px solid rgba(255,255,255,.08);border-radius:50%;box-shadow:0 0 0 70px rgba(255,255,255,.025),0 0 0 140px rgba(255,255,255,.018)}
.lms-public-hero__inner{position:relative;z-index:1;min-height:520px;padding-block:76px;display:grid;gap:36px;align-items:center}
.lms-public-hero__copy{max-width:760px}.lms-public-hero .eyebrow{color:#c4cad1}.lms-public-hero h1{margin-bottom:18px;font-size:clamp(2.7rem,13vw,5.5rem)}.lms-public-hero p{max-width:680px;color:#c1c7cf;font-size:clamp(.98rem,3.7vw,1.18rem)}
.lms-public-hero__actions{margin-top:26px;display:flex;flex-wrap:wrap;gap:10px}.lms-public-hero .button--outline{border-color:rgba(255,255,255,.3);color:#fff}
.lms-public-hero__mark{width:180px;aspect-ratio:1;justify-self:start;border:1px solid rgba(255,255,255,.14);border-radius:34px;background:linear-gradient(145deg,rgba(255,255,255,.09),rgba(255,255,255,.025));box-shadow:0 30px 80px rgba(0,0,0,.28);display:grid;place-items:center;align-content:center;gap:5px;backdrop-filter:blur(8px)}
.lms-public-hero__mark>span{width:58px;height:58px;border-radius:50%;display:grid;place-items:center;background:var(--accent);color:var(--accent-ink);margin-bottom:5px}.lms-public-hero__mark .icon{width:28px;height:28px}.lms-public-hero__mark strong{font-size:2rem;line-height:1;letter-spacing:-.05em}.lms-public-hero__mark small{color:#aeb5be;font-size:10px;font-weight:850;text-transform:uppercase;letter-spacing:.13em}
.lms-public-status,.lms-status-pill{display:inline-flex;align-items:center;justify-content:center;border-radius:999px;padding:8px 11px;font-size:9px;font-weight:900;text-transform:uppercase;letter-spacing:.09em}.lms-public-status--closed,.lms-status-pill--entries_closed{background:#fbe5e7;color:#9e3039}.lms-status-pill--entries_open{background:#e5f5eb;color:#1d6c42}.lms-status-pill--in_progress{background:#f8f0cf;color:#775f10}
.lms-live-section{padding-top:32px}.lms-live-card{position:relative;overflow:hidden;padding:24px;border:1px solid var(--line);border-radius:26px;background:#fff;box-shadow:var(--shadow-sm)}.lms-live-card::after{content:"";position:absolute;right:-60px;top:-80px;width:190px;height:190px;border-radius:50%;background:rgba(212,175,55,.1)}
.lms-live-card__head{position:relative;z-index:1;display:grid;gap:14px}.lms-live-card__head h2{margin:4px 0 6px;font-size:clamp(1.65rem,7vw,2.7rem)}.lms-live-card__head p{margin:0}.lms-status-pill{justify-self:start}
.lms-live-stats{position:relative;z-index:1;margin-top:22px;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1px;border:1px solid var(--line);border-radius:18px;overflow:hidden;background:var(--line)}.lms-live-stats>div{min-width:0;padding:15px;background:#fafafa}.lms-live-stats span,.lms-live-stats strong{display:block}.lms-live-stats span{font-size:8px;color:var(--muted);font-weight:900;text-transform:uppercase;letter-spacing:.08em}.lms-live-stats strong{margin-top:4px;font-size:1.15rem;overflow-wrap:anywhere}
.lms-live-meta{position:relative;z-index:1;margin-top:16px;display:flex;flex-wrap:wrap;gap:8px}.lms-live-meta>span{display:inline-flex;align-items:center;gap:6px;border-radius:999px;padding:7px 10px;background:#f2f3f4;color:#535a64;font-size:9px;font-weight:800}.lms-live-meta .icon{width:14px;height:14px;color:#90751b}.lms-live-card--empty{max-width:900px}.lms-live-card--empty p{max-width:680px}
.lms-rules-layout{display:grid;gap:26px}.lms-rules-lead{max-width:720px}.lms-rule-grid{display:grid;gap:12px}.lms-rule-grid article{position:relative;min-height:190px;padding:22px;border:1px solid var(--line);border-radius:20px;background:#f8f9fa}.lms-rule-grid article>span{display:inline-flex;margin-bottom:30px;color:#9a7f24;font-size:10px;font-weight:950;letter-spacing:.13em}.lms-rule-grid h3{margin-bottom:7px}.lms-rule-grid p{font-size:12px}.lms-organiser-rules{padding:22px;border-left:4px solid var(--accent);border-radius:0 18px 18px 0;background:#fbf7e9}.lms-organiser-rules h3{margin-bottom:8px}.lms-organiser-rules p{font-size:12px;white-space:normal}
.lms-account-promo{padding-block:0 64px}.lms-account-promo__inner{padding:25px;border-radius:24px;background:linear-gradient(125deg,#f6edc8,#fff 68%);border:1px solid #e6d89b;display:grid;gap:20px;align-items:center}.lms-account-promo__inner h2{margin:4px 0 8px;font-size:clamp(1.55rem,7vw,2.45rem)}.lms-account-promo__inner p{max-width:720px}
.home-lms-feature{padding:18px 0 8px;background:var(--paper-2)}.home-lms-feature__inner{position:relative;overflow:hidden;padding:20px;border-radius:24px;background:linear-gradient(135deg,#0a0b0e,#191c22);color:#fff;display:grid;gap:18px;align-items:center;box-shadow:var(--shadow-md)}.home-lms-feature__inner::after{content:"";position:absolute;right:-60px;top:-100px;width:220px;height:220px;border-radius:50%;background:rgba(212,175,55,.1)}.home-lms-feature__mark,.home-lms-feature__copy,.home-lms-feature__stats,.home-lms-feature__action{position:relative;z-index:1}.home-lms-feature__mark{display:flex;align-items:center;gap:9px}.home-lms-feature__mark span{width:42px;height:42px;border-radius:12px;display:grid;place-items:center;background:var(--accent);color:var(--accent-ink)}.home-lms-feature__mark .icon{width:21px;height:21px}.home-lms-feature__mark strong{font-size:1.35rem;letter-spacing:-.05em}.home-lms-feature .eyebrow{color:#aeb5be}.home-lms-feature__copy h2{margin:4px 0 7px;font-size:clamp(1.45rem,7vw,2.25rem)}.home-lms-feature__copy p{color:#b7bdc5;font-size:11px}.home-lms-feature__stats{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}.home-lms-feature__stats>span{padding:10px;border:1px solid rgba(255,255,255,.1);border-radius:12px;background:rgba(255,255,255,.04)}.home-lms-feature__stats small,.home-lms-feature__stats strong{display:block}.home-lms-feature__stats small{color:#959da7;font-size:7px;font-weight:900;text-transform:uppercase;letter-spacing:.08em}.home-lms-feature__stats strong{margin-top:3px;font-size:1rem}.home-lms-feature__action{display:grid;gap:9px}.home-lms-feature__state{justify-self:start;padding:5px 8px;border-radius:999px;font-size:8px;font-weight:900;text-transform:uppercase;letter-spacing:.08em}.home-lms-feature__state.is-open{background:#dff3e6;color:#17693d}.home-lms-feature__state.is-closed{background:#f8dfe2;color:#982f38}
.lms-entry-hero,.lms-dashboard-hero{background:linear-gradient(135deg,#0b0c0f,#1b1e24);color:#fff}.lms-entry-hero p,.lms-dashboard-hero p{color:#bac0c8}.lms-entry-page,.lms-dashboard{background:#f3f4f5}.lms-entry-layout{display:grid;gap:18px}.lms-entry-main{display:grid;gap:14px}.lms-panel,.lms-entry-summary,.lms-success-card{border:1px solid var(--line);border-radius:22px;background:#fff;box-shadow:var(--shadow-sm)}.lms-panel{padding:20px}.lms-panel h2{margin:3px 0 10px}.lms-panel p{font-size:12px}.lms-entry-price{margin:22px 0 16px;padding:16px;border-radius:16px;background:#101216;color:#fff;display:flex;align-items:center;justify-content:space-between;gap:16px}.lms-entry-price span{color:#aeb4bd;font-size:9px;font-weight:900;text-transform:uppercase;letter-spacing:.08em}.lms-entry-price strong{color:var(--accent);font-size:1.55rem}.lms-payment-panel.is-locked{background:#f8f9fa}.lms-entry-summary{padding:20px;height:max-content}.lms-entry-summary h2{margin:3px 0 15px}.lms-entry-summary ol{margin:0;padding-left:20px;display:grid;gap:11px;color:#535b64;font-size:11px}.lms-entry-summary>a{display:inline-flex;margin-top:18px;color:#705c17;font-size:10px;font-weight:900;text-decoration:underline}
.lms-success-page{min-height:65vh;display:grid;align-items:center}.lms-success-card{width:min(100%,700px);margin-inline:auto;padding:34px 22px;text-align:center}.lms-success-icon{width:72px;height:72px;margin:0 auto 18px;border-radius:50%;display:grid;place-items:center;background:#111317;color:var(--accent)}.lms-success-icon .icon{width:30px;height:30px}.lms-success-card.is-success{border-top:4px solid #277b4e}.lms-success-card.is-pending{border-top:4px solid var(--accent)}.lms-success-card h1{font-size:clamp(2rem,9vw,3.5rem)}.lms-success-card p{max-width:570px;margin:0 auto 22px}
.lms-flash{margin-bottom:16px;padding:12px 14px;border-radius:12px;font-size:11px;font-weight:800}.lms-flash--success{background:#e5f5eb;color:#17683d}.lms-flash--error{background:#fbe6e8;color:#962e37}.lms-dashboard-summary{display:grid;gap:12px;margin-bottom:18px}.lms-player-status{padding:16px;border-radius:18px;background:#111317;color:#fff;display:flex;align-items:center;gap:12px}.lms-player-status>span{width:42px;height:42px;flex:none;border-radius:50%;display:grid;place-items:center;background:var(--accent);color:#111}.lms-player-status .icon{width:20px;height:20px}.lms-player-status small,.lms-player-status strong,.lms-player-status em{display:block}.lms-player-status small{color:#929aa4;font-size:7px;font-style:normal;font-weight:900;text-transform:uppercase;letter-spacing:.08em}.lms-player-status strong{font-size:1.1rem}.lms-player-status em{margin-top:2px;color:#b9c0c8;font-size:9px;font-style:normal}.lms-player-status--eliminated>span,.lms-player-status--cancelled>span{background:#d6505a;color:#fff}.lms-player-status--winner>span{box-shadow:0 0 0 5px rgba(212,175,55,.12)}.lms-dashboard-stats{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));border:1px solid var(--line);border-radius:18px;overflow:hidden;background:var(--line);gap:1px}.lms-dashboard-stats>span{min-width:0;padding:13px;background:#fff}.lms-dashboard-stats small,.lms-dashboard-stats strong{display:block}.lms-dashboard-stats small{color:var(--muted);font-size:7px;font-weight:900;text-transform:uppercase;letter-spacing:.07em}.lms-dashboard-stats strong{margin-top:3px;font-size:1rem}
.lms-notice{margin:16px 0;padding:16px;border:1px solid #e3d6a1;border-radius:16px;background:#fbf7e7;display:grid;gap:5px}.lms-notice strong{font-size:12px}.lms-notice span{color:#67604a;font-size:10px}.lms-notice .button{margin-top:8px;justify-self:start}.lms-notice--eliminated,.lms-notice--closed{border-color:#efcbd0;background:#fff0f1}.lms-notice--eliminated span,.lms-notice--closed span{color:#7d5156}.lms-winner-banner{margin:18px 0;padding:22px;border-radius:22px;background:linear-gradient(135deg,#111317,#242831);color:#fff;display:flex;gap:16px;align-items:flex-start}.lms-winner-banner>span{width:50px;height:50px;flex:none;border-radius:15px;background:var(--accent);color:#111;display:grid;place-items:center}.lms-winner-banner small{color:var(--accent);font-size:8px;font-weight:900;text-transform:uppercase;letter-spacing:.09em}.lms-winner-banner h2{margin:5px 0 6px;font-size:1.55rem}.lms-winner-banner p{color:#b6bdc5;font-size:10px}
.lms-pick-section,.lms-history-section{margin-top:22px}.lms-section-head{display:grid;gap:10px;margin-bottom:14px}.lms-section-head h2{margin:3px 0 5px;font-size:clamp(1.55rem,7vw,2.4rem)}.lms-section-head p{font-size:10px}.lms-current-pick{padding:10px 13px;border-radius:13px;background:#111317;color:#fff;justify-self:start}.lms-current-pick small,.lms-current-pick strong{display:block}.lms-current-pick small{color:#9da4ad;font-size:7px;text-transform:uppercase;font-weight:900;letter-spacing:.08em}.lms-current-pick strong{margin-top:2px;font-size:11px}
.lms-fixture-form{display:grid;gap:14px}.lms-fixture-day{display:grid;gap:9px}.lms-fixture-day>h3{position:sticky;top:76px;z-index:5;margin:5px 0 0;padding:8px 11px;border-radius:10px;background:#252930;color:#fff;font-size:10px;letter-spacing:.04em}.lms-fixture{padding:11px;border:1px solid var(--line);border-radius:18px;background:#fff;box-shadow:0 8px 26px rgba(12,15,20,.05)}.lms-fixture__meta{margin-bottom:9px;display:flex;justify-content:space-between;gap:10px;color:var(--muted);font-size:8px;font-weight:800;text-transform:uppercase;letter-spacing:.06em}.lms-fixture__teams{display:grid;grid-template-columns:minmax(0,1fr) 24px minmax(0,1fr);align-items:stretch;gap:6px}.lms-fixture__versus{align-self:center;text-align:center;color:#969da6;font-size:8px;font-weight:950}.lms-team-choice{position:relative;min-width:0;cursor:pointer}.lms-team-choice>input{position:absolute;opacity:0;pointer-events:none}.lms-team-choice>span:not(.lms-team-choice__check){pointer-events:none}.lms-team-choice{padding:10px 7px;border:1px solid #dfe2e5;border-radius:14px;background:#fafafa;display:grid;justify-items:center;align-content:start;text-align:center;gap:6px;transition:transform var(--transition),border-color var(--transition),background var(--transition),box-shadow var(--transition)}.lms-team-choice:hover{border-color:#c9ad4d}.lms-team-choice__crest{width:43px;height:43px;border-radius:11px;background:#fff;display:grid;place-items:center;overflow:hidden}.lms-team-choice__crest img{width:88%;height:88%;object-fit:contain}.lms-team-choice__crest .icon{width:23px;height:23px;color:#8d949d}.lms-team-choice__copy{min-width:0}.lms-team-choice__copy strong,.lms-team-choice__copy small{display:block;overflow-wrap:anywhere}.lms-team-choice__copy strong{font-size:9px;line-height:1.2}.lms-team-choice__copy small{margin-top:3px;color:#878e97;font-size:7px;line-height:1.3}.lms-team-choice__check{position:absolute;right:6px;top:6px;width:20px;height:20px;border-radius:50%;display:grid;place-items:center;background:#e4e6e9;color:transparent}.lms-team-choice__check .icon{width:11px;height:11px}.lms-team-choice:has(input:checked){border-color:#b99727;background:#fbf4d8;box-shadow:inset 0 0 0 1px var(--accent),0 8px 20px rgba(139,112,26,.09);transform:translateY(-1px)}.lms-team-choice:has(input:checked) .lms-team-choice__check{background:var(--accent);color:#111}.lms-team-choice.is-used{cursor:not-allowed;border-color:#ecc8cc;background:#fff0f1;opacity:.82}.lms-team-choice.is-used .lms-team-choice__copy strong{color:#992f38}.lms-team-choice.is-used .lms-team-choice__copy small{color:#a64a52}.lms-team-choice.is-used .lms-team-choice__check{background:#d34a55;color:#fff}.lms-team-choice.is-locked:not(.is-used){cursor:default;opacity:.72}.lms-pick-submit{position:sticky;bottom:calc(var(--dock-h) + 8px);z-index:12;margin-top:6px;padding:14px;border:1px solid #2c3037;border-radius:18px;background:rgba(12,14,18,.96);backdrop-filter:blur(12px);color:#fff;box-shadow:0 18px 50px rgba(0,0,0,.22);display:grid;gap:12px}.lms-pick-submit strong,.lms-pick-submit span{display:block}.lms-pick-submit strong{font-size:10px}.lms-pick-submit span{margin-top:2px;color:#9fa6af;font-size:8px}.lms-pick-submit .button{width:100%}
.lms-history-list{display:grid;gap:8px}.lms-history-list article{padding:12px;border:1px solid var(--line);border-radius:15px;background:#fff;display:grid;grid-template-columns:44px minmax(0,1fr);gap:8px 10px;align-items:center}.lms-history-round{font-size:9px;font-weight:950;color:#7d671d}.lms-history-team{min-width:0;display:flex;align-items:center;gap:8px}.lms-history-team img{width:30px;height:30px;object-fit:contain}.lms-history-team strong{font-size:10px;overflow-wrap:anywhere}.lms-history-result{grid-column:1/-1;justify-self:start;padding:5px 8px;border-radius:999px;background:#eef0f2;color:#5d646e;font-size:7px;font-weight:900;text-transform:uppercase;letter-spacing:.05em}.lms-history-result--win,.lms-history-result--revived,.lms-history-result--postponed_advance{background:#e4f4ea;color:#17663c}.lms-history-result--loss,.lms-history-result--draw,.lms-history-result--missed{background:#fbe5e7;color:#982f38}
.account-lms-panel{background:linear-gradient(145deg,#fff,#fbf7e7)}

@media (min-width:620px){
  .lms-public-hero__inner{grid-template-columns:minmax(0,1fr) auto}.lms-public-hero__mark{justify-self:end;width:205px}.lms-live-card{padding:30px}.lms-live-card__head{grid-template-columns:minmax(0,1fr) auto;align-items:start}.lms-status-pill{justify-self:end}.lms-live-stats{grid-template-columns:repeat(4,minmax(0,1fr))}.lms-rule-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.lms-account-promo__inner{grid-template-columns:minmax(0,1fr) auto;padding:30px}.home-lms-feature__inner{grid-template-columns:auto minmax(0,1fr);padding:24px}.home-lms-feature__stats,.home-lms-feature__action{grid-column:2}.home-lms-feature__action{grid-template-columns:auto auto;align-items:center;justify-content:start}.lms-dashboard-summary{grid-template-columns:minmax(240px,.8fr) minmax(0,1.2fr);align-items:stretch}.lms-section-head{grid-template-columns:minmax(0,1fr) auto;align-items:end}.lms-current-pick{justify-self:end}.lms-team-choice{grid-template-columns:52px minmax(0,1fr) 24px;justify-items:start;text-align:left;align-items:center;padding:10px}.lms-team-choice__crest{width:48px;height:48px}.lms-team-choice__copy strong{font-size:10px}.lms-team-choice__check{position:static;align-self:center}.lms-history-list article{grid-template-columns:58px minmax(0,1fr) auto}.lms-history-result{grid-column:auto;justify-self:end}.lms-pick-submit{grid-template-columns:minmax(0,1fr) auto;align-items:center}.lms-pick-submit .button{width:auto}
}
@media (min-width:860px){
  .lms-entry-layout{grid-template-columns:minmax(0,1.25fr) minmax(300px,.58fr);align-items:start}.lms-entry-summary{position:sticky;top:105px}.lms-panel,.lms-entry-summary{padding:26px}.lms-rule-grid{grid-template-columns:repeat(4,minmax(0,1fr))}.home-lms-feature__inner{grid-template-columns:auto minmax(260px,1fr) minmax(250px,.7fr) auto;gap:24px}.home-lms-feature__stats,.home-lms-feature__action{grid-column:auto}.home-lms-feature__action{display:grid;grid-template-columns:1fr;justify-items:end}.account-overview-grid{grid-template-columns:repeat(3,minmax(0,1fr))}
}
@media (min-width:1050px){.lms-public-hero__inner{min-height:590px;padding-block:90px}.lms-public-hero__mark{width:240px;border-radius:42px}.lms-fixture{padding:13px 15px}.lms-team-choice{padding:12px 14px}.lms-team-choice__copy strong{font-size:11px}}


/* Shop fulfilment choice ------------------------------------------------- */
.shop-fulfilment-choice{margin:0 0 18px;padding:0;border:0}.shop-fulfilment-choice>legend{margin-bottom:10px;font-size:10px;font-weight:900;color:var(--ink)}
.shop-fulfilment-grid{display:grid;grid-template-columns:1fr;gap:10px}.shop-fulfilment-card{position:relative;display:block;cursor:pointer}.shop-fulfilment-card>input{position:absolute;opacity:0;pointer-events:none}.shop-fulfilment-card>span{min-width:0;min-height:92px;padding:14px;border:1px solid #d9dde1;border-radius:16px;background:#f8f9fa;display:grid;grid-template-columns:42px minmax(0,1fr) auto;align-items:center;gap:11px;transition:border-color var(--transition),background var(--transition),box-shadow var(--transition),transform var(--transition)}
.shop-fulfilment-card__icon{width:42px;height:42px;border-radius:12px;display:grid;place-items:center;background:#111318;color:#fff}.shop-fulfilment-card__icon .icon{width:21px;height:21px}.shop-fulfilment-card strong,.shop-fulfilment-card small{display:block}.shop-fulfilment-card strong{font-size:12px}.shop-fulfilment-card small{margin-top:3px;color:#707781;font-size:8px;line-height:1.4}.shop-fulfilment-card b{font-size:10px;white-space:nowrap}.shop-fulfilment-card:has(input:checked)>span{border-color:#b89625;background:#fff8dc;box-shadow:inset 0 0 0 1px var(--accent),0 10px 26px rgba(148,117,22,.09);transform:translateY(-1px)}.shop-fulfilment-card:has(input:checked) .shop-fulfilment-card__icon{background:var(--accent);color:#111}.shop-delivery-fields[hidden]{display:none!important}.shop-delivery-fields{min-width:0}.shop-delivery-fields>.shop-form-grid{width:100%}.shop-collection-note{padding:16px;border:1px solid #e0d08d;border-radius:14px;background:#fff8de}.shop-collection-note strong{display:block;margin-bottom:5px}.shop-collection-note p{margin:0;font-size:11px}
@media(min-width:620px){.shop-fulfilment-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}

/* LMS hero: mobile mark beside copy, CTA underneath --------------------- */
@media(max-width:619px){
  .lms-public-hero__inner{min-height:auto;padding-block:46px;grid-template-columns:minmax(0,1fr) 116px;gap:20px 16px;align-items:start}
  .lms-public-hero__copy{min-width:0}.lms-public-hero h1{font-size:clamp(2.35rem,12vw,3.7rem);line-height:.98;margin-bottom:14px}.lms-public-hero p{font-size:.9rem;line-height:1.55}
  .lms-public-hero__mark{width:116px;justify-self:end;align-self:center;border-radius:26px}.lms-public-hero__mark>span{width:45px;height:45px}.lms-public-hero__mark .icon{width:22px;height:22px}.lms-public-hero__mark strong{font-size:1.55rem}.lms-public-hero__mark small{font-size:7px}
  .lms-public-hero__actions{grid-column:1/-1;margin-top:0}.lms-public-hero__actions .button{width:100%;justify-content:center}
}
@media(min-width:620px){
  .lms-public-hero__inner{grid-template-columns:minmax(0,1fr) auto;grid-template-areas:'copy mark' 'actions mark'}
  .lms-public-hero__copy{grid-area:copy}.lms-public-hero__mark{grid-area:mark}.lms-public-hero__actions{grid-area:actions;margin-top:-10px;align-self:start}
}

/* LMS public pick reveal + player public-name controls ------------------ */
.lms-status-pill--completed{background:#e8edf1;color:#3f4852}
.lms-public-name-section{margin-top:22px;padding:18px;border:1px solid var(--line);border-radius:20px;background:#fff;box-shadow:var(--shadow-sm)}
.lms-privacy-lock{justify-self:start;display:inline-flex;align-items:center;gap:6px;padding:7px 9px;border-radius:999px;background:#eef0f2;color:#59616b;font-size:8px;font-weight:900;text-transform:uppercase;letter-spacing:.06em}.lms-privacy-lock .icon{width:13px;height:13px}
.lms-public-name-form{display:grid;gap:14px}.lms-public-name-options{display:grid;gap:8px}.lms-public-name-option{position:relative;display:block;min-width:0;cursor:pointer}.lms-public-name-option>input{position:absolute;opacity:0;pointer-events:none}.lms-public-name-option>span{min-width:0;min-height:68px;padding:12px 13px;border:1px solid #dde1e5;border-radius:14px;background:#f8f9fa;display:grid;align-content:center;gap:3px;transition:border-color var(--transition),background var(--transition),box-shadow var(--transition)}.lms-public-name-option strong,.lms-public-name-option small{display:block;min-width:0;overflow-wrap:anywhere}.lms-public-name-option strong{font-size:10px}.lms-public-name-option small{color:#727a84;font-size:8px}.lms-public-name-option:has(input:checked)>span{border-color:#b99727;background:#fff7d9;box-shadow:inset 0 0 0 1px var(--accent)}
.lms-public-name-save{display:grid;gap:10px;align-items:center}.lms-public-name-save>span{display:flex;align-items:flex-start;gap:7px;color:#6b727c;font-size:8px;line-height:1.45}.lms-public-name-save>span .icon{width:15px;height:15px;flex:none;color:#8f751b}.lms-public-name-save .button{width:100%}
.lms-public-picks-section{background:#f3f4f5;overflow-x:clip}.lms-public-picks-panel{min-width:0;padding:18px;border:1px solid var(--line);border-radius:24px;background:#fff;box-shadow:var(--shadow-sm);overflow:hidden}.lms-public-picks-head{display:grid;gap:18px;align-items:end}.lms-public-picks-head h2{margin:4px 0 7px;font-size:clamp(1.65rem,8vw,2.7rem)}.lms-public-picks-head p{max-width:720px;font-size:10px}.lms-gameweek-select-form{min-width:0;display:grid;gap:6px}.lms-gameweek-select-form>label{font-size:8px;font-weight:900;text-transform:uppercase;letter-spacing:.08em;color:#646c76}.lms-gameweek-select-row{min-width:0;display:grid;grid-template-columns:minmax(0,1fr) auto;gap:7px}.lms-gameweek-select-row select{min-width:0;width:100%;height:44px;padding:0 38px 0 11px;border:1px solid #d6dade;border-radius:11px;background:#fff;color:#111318;font:inherit;font-size:10px;font-weight:850}.lms-gameweek-select-row .button{min-height:44px;padding-inline:14px}
.lms-public-picks-locked,.lms-public-picks-empty{margin-top:18px;padding:16px;border:1px solid #ded3a6;border-radius:16px;background:#fbf7e7;display:grid;grid-template-columns:38px minmax(0,1fr);gap:11px;align-items:start}.lms-public-picks-locked>span,.lms-public-picks-empty>span{width:38px;height:38px;border-radius:11px;background:#111317;color:var(--accent);display:grid;place-items:center}.lms-public-picks-locked .icon,.lms-public-picks-empty .icon{width:18px;height:18px}.lms-public-picks-locked strong,.lms-public-picks-empty strong{display:block;font-size:11px}.lms-public-picks-locked p,.lms-public-picks-empty p{margin:4px 0 0;color:#68614d;font-size:9px}
.lms-public-picks-round-head{margin-top:18px;padding:13px 14px;border-radius:15px;background:#111317;color:#fff;display:grid;gap:7px}.lms-public-picks-round-head>div{display:flex;align-items:center;justify-content:space-between;gap:10px}.lms-public-picks-round-head span{color:var(--accent);font-size:9px;font-weight:950;text-transform:uppercase;letter-spacing:.08em}.lms-public-picks-round-head strong{font-size:9px;text-transform:uppercase;letter-spacing:.06em}.lms-public-picks-round-head small{color:#adb4bd;font-size:8px;line-height:1.45}
.lms-public-pick-grid{min-width:0;margin-top:10px;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.lms-public-pick-card{min-width:0;min-height:142px;padding:12px 8px;border:1px solid #dfe2e5;border-radius:15px;background:#f7f8f9;color:#111318;display:grid;justify-items:center;align-content:center;text-align:center;gap:7px;overflow:hidden}.lms-public-pick-card--through{border-color:#237246;background:#28784d;color:#fff}.lms-public-pick-card--out{border-color:#9f3039;background:#b83e48;color:#fff}.lms-public-pick-card__name{max-width:100%;font-size:9px;line-height:1.2;overflow-wrap:anywhere}.lms-public-pick-card__crest{width:48px;height:48px;border-radius:12px;background:rgba(255,255,255,.94);display:grid;place-items:center;overflow:hidden}.lms-public-pick-card__crest img{width:86%;height:86%;object-fit:contain}.lms-public-pick-card__crest .icon{width:23px;height:23px;color:#7b838d}.lms-public-pick-card__team{max-width:100%;font-size:8px;font-weight:850;line-height:1.2;overflow-wrap:anywhere}.lms-public-pick-card__result{padding:4px 7px;border-radius:999px;background:#e8eaed;color:#59616b;font-size:6px;font-weight:950;text-transform:uppercase;letter-spacing:.07em}.lms-public-pick-card--through .lms-public-pick-card__result,.lms-public-pick-card--out .lms-public-pick-card__result{background:rgba(255,255,255,.17);color:#fff}
@media(min-width:620px){.lms-public-name-section{padding:22px}.lms-public-name-options{grid-template-columns:repeat(3,minmax(0,1fr))}.lms-public-name-save{grid-template-columns:minmax(0,1fr) auto}.lms-public-name-save .button{width:auto}.lms-public-picks-panel{padding:24px}.lms-public-picks-head{grid-template-columns:minmax(0,1fr) minmax(220px,300px)}.lms-gameweek-select-row{grid-template-columns:minmax(0,1fr) auto}.lms-public-pick-card{min-height:150px;padding:14px 10px}.lms-public-pick-card__crest{width:54px;height:54px}}
@media(min-width:860px){.lms-public-pick-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:10px}.lms-public-pick-card__name{font-size:10px}.lms-public-pick-card__team{font-size:9px}.lms-public-pick-card__result{font-size:7px}}


/* ===== Player / Monthly Awards Update ===== */
.player-profile-section-tabs{position:sticky;top:0;z-index:18;background:#fff;border-bottom:1px solid var(--line);box-shadow:0 8px 24px rgba(10,12,15,.05)}
.player-profile-section-tabs__inner{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:6px;padding-top:10px;padding-bottom:10px}
.player-profile-section-tabs button{min-width:0;border:0;border-radius:12px;background:#f1f2f4;color:#555b64;padding:12px 8px;font:inherit;font-size:.72rem;font-weight:900;cursor:pointer;line-height:1.2}
.player-profile-section-tabs button.is-active{background:var(--ink);color:#fff}.player-profile-section-tabs button span{display:inline-grid;place-items:center;min-width:20px;height:20px;padding:0 5px;margin-left:4px;border-radius:999px;background:var(--accent);color:#111;font-size:.65rem}
.player-profile-panel[hidden]{display:none!important}.player-facts{grid-template-columns:repeat(2,minmax(0,1fr))}
.player-card-collection{display:grid;grid-template-columns:minmax(0,1fr);gap:18px;align-items:start}
.collectible-card{position:relative;width:100%;max-width:520px;margin-inline:auto;overflow:hidden;border-radius:24px;filter:drop-shadow(0 18px 28px rgba(0,0,0,.14))}
.collectible-card>img{display:block;width:100%;height:auto}.collectible-card__overlay{position:absolute;z-index:2;left:10%;right:10%;bottom:5.2%;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;color:#fff;overflow:hidden;padding:2% 3%;text-shadow:0 2px 8px #000}.collectible-card__overlay strong,.collectible-card__overlay span,.collectible-card__overlay small,.collectible-card__overlay b{max-width:100%;overflow-wrap:anywhere}.collectible-card__overlay strong{font-size:clamp(1.22rem,6.2vw,2.05rem);line-height:1;font-weight:950;letter-spacing:-.025em}.collectible-card__overlay span,.collectible-card__overlay small,.collectible-card__overlay b{font-size:clamp(.76rem,3.15vw,1.02rem);line-height:1.18}.collectible-card__overlay--signed strong,.collectible-card__overlay--award strong{display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.collectible-card__overlay--signed{
    bottom:5.2%;
    height:31.5%;
    justify-content:flex-start;
    gap:8px;
    padding:5.8% 3% 2%;
}
.collectible-card__overlay--signed .collectible-card__signed-name{
    color:var(--accent);
    font-size:clamp(1.7rem,7.7vw,2.75rem);
    line-height:.96;
    font-weight:950;
    letter-spacing:-.035em;
    text-shadow:0 3px 12px rgba(0,0,0,.7);
}
.collectible-card__signed-line{
    width:100%;
    display:flex;
    align-items:center;
    justify-content:center;
    flex-wrap:wrap;
    gap:7px;
    color:#fff;
    font-size:clamp(.9rem,3.8vw,1.18rem);
    line-height:1.14;
    font-weight:850;
    text-shadow:0 2px 8px rgba(0,0,0,.8);
}
.collectible-card__signed-line--team{
    font-size:clamp(.88rem,3.6vw,1.12rem);
    font-weight:900;
}
.collectible-card__signed-dot{
    color:var(--accent);
    font-size:1.15em;
    line-height:1;
    font-weight:950;
}
.collectible-card__signed-flag{
    width:clamp(25px,7vw,34px)!important;
    height:auto!important;
    max-height:22px;
    object-fit:cover;
    flex:0 0 auto;
    border-radius:2px;
    box-shadow:0 1px 4px rgba(0,0,0,.35);
}.collectible-card__overlay--award{bottom:5.2%;height:18.5%;gap:4px}.collectible-card__overlay--award>span{color:var(--accent);font-weight:950;text-transform:uppercase;letter-spacing:.08em}.collectible-card__overlay--award b{color:#fff;font-size:clamp(.88rem,3.8vw,1.18rem);font-weight:950}.collectible-card__overlay--award small{font-weight:900}.collectible-card--coming{box-shadow:none;filter:none}
.monthly-leaderboard{margin-bottom:30px;padding:20px;border:1px solid var(--line);border-radius:24px;background:#fff;box-shadow:var(--shadow-sm)}.monthly-leaderboard__head{display:flex;flex-direction:column;gap:14px;margin-bottom:18px}.monthly-leaderboard__head h2{margin:6px 0}.monthly-leaderboard__archived{align-self:flex-start;border-radius:999px;padding:8px 11px;background:#e7f5ec;color:#18713b;font-size:.7rem;font-weight:900;text-transform:uppercase;letter-spacing:.08em}.monthly-leaderboard__controls{display:grid;gap:12px;padding:14px;border-radius:18px;background:#101216;color:#fff}.monthly-leaderboard__controls label>span{display:block;margin-bottom:6px;color:#d9b12f;font-size:.7rem;font-weight:900;text-transform:uppercase;letter-spacing:.08em}.monthly-leaderboard__groups{display:grid;grid-template-columns:1fr 1fr;gap:6px}.monthly-leaderboard__groups a,.monthly-leaderboard__boards a{display:grid;place-items:center;text-align:center;border-radius:12px;padding:11px 8px;background:#24272c;color:#d7d9dc;font-size:.72rem;font-weight:900}.monthly-leaderboard__groups a.is-active,.monthly-leaderboard__boards a.is-active{background:var(--accent);color:#111}.monthly-leaderboard__boards{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:6px;margin:12px 0}.monthly-player-row{display:grid;grid-template-columns:34px 48px minmax(0,1fr) 48px 62px 18px;align-items:center;gap:9px;padding:10px 8px;border-top:1px solid var(--line);color:var(--ink)}.monthly-player-row:first-child{border-top:0}.monthly-player-row--podium{background:#fbfaf3}.monthly-player-row__rank{font-size:1rem;font-weight:950;text-align:center}.monthly-player-row__photo{width:46px;height:46px;border-radius:12px;overflow:hidden;background:#eee}.monthly-player-row__photo img{width:100%;height:100%;object-fit:cover}.monthly-player-row__identity{min-width:0}.monthly-player-row__identity strong,.monthly-player-row__identity small{display:block;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.monthly-player-row__identity strong{font-size:.8rem}.monthly-player-row__identity small{margin-top:3px;color:var(--muted);font-size:.62rem}.monthly-player-row__apps,.monthly-player-row__value{text-align:center;font-weight:950;font-size:.86rem}.monthly-player-row__apps small,.monthly-player-row__value small{display:block;color:var(--muted);font-size:.52rem;text-transform:uppercase}.monthly-player-row__value{color:#9a7610}
.shop-product-card,.shop-product-gallery{position:relative;overflow:hidden}.shop-new-ribbon{position:absolute;z-index:8;top:17px;right:-39px;width:140px;padding:7px 0;transform:rotate(45deg);background:var(--accent);color:#111;text-align:center;font-size:.68rem;font-weight:950;letter-spacing:.14em;box-shadow:0 4px 14px rgba(0,0,0,.18);pointer-events:none}.shop-new-ribbon--detail{top:23px;right:-34px}
@media(min-width:700px){.player-profile-section-tabs button{font-size:.85rem;padding:14px}.player-card-collection{grid-template-columns:repeat(2,minmax(0,1fr));gap:24px}.monthly-leaderboard{padding:28px}.monthly-leaderboard__controls{grid-template-columns:minmax(220px,.7fr) 1fr;align-items:end}.monthly-leaderboard__boards{grid-template-columns:repeat(5,minmax(0,1fr))}.monthly-player-row{grid-template-columns:48px 62px minmax(0,1fr) 70px 90px 22px;padding:12px}.monthly-player-row__photo{width:58px;height:58px}.monthly-player-row__identity strong{font-size:.95rem}.monthly-player-row__identity small{font-size:.72rem}}
@media(min-width:1100px){.player-card-collection{grid-template-columns:repeat(3,minmax(0,1fr))}.monthly-leaderboard__head{flex-direction:row;justify-content:space-between;align-items:flex-start}.collectible-card__overlay strong{font-size:1.7rem}.collectible-card__overlay span,.collectible-card__overlay small{font-size:.92rem}.collectible-card__overlay--award b{font-size:1.05rem}.collectible-card__overlay--signed .collectible-card__signed-name{font-size:2.3rem}.collectible-card__overlay--signed .collectible-card__signed-line{font-size:1.05rem}.collectible-card__overlay--signed .collectible-card__signed-line--team{font-size:1rem}}

/* Team fixture calendar export */
.team-fixtures-heading{align-items:center}.team-fixtures-heading .button{flex:0 0 auto;white-space:nowrap}
@media(max-width:699px){.team-fixtures-heading .button{width:100%;justify-content:center;margin-top:14px}}

/* Leaderboards top-level Main / Monthly navigation */
.leaderboard-mode-tabs{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;margin:0 0 20px;padding:6px;border:1px solid var(--line);border-radius:18px;background:#fff;box-shadow:var(--shadow-sm)}
.leaderboard-mode-tabs a{min-width:0;padding:12px 10px;border-radius:13px;background:#f1f2f4;color:#5f6670;text-align:center;display:grid;gap:3px;transition:background var(--transition),color var(--transition),transform var(--transition)}
.leaderboard-mode-tabs a span{font-size:.83rem;font-weight:950}.leaderboard-mode-tabs a small{font-size:.6rem;line-height:1.25;color:inherit;opacity:.78}.leaderboard-mode-tabs a.is-active{background:var(--ink);color:#fff}.leaderboard-mode-tabs a:active{transform:scale(.99)}
@media(min-width:700px){.leaderboard-mode-tabs{max-width:560px;margin-bottom:26px}.leaderboard-mode-tabs a{padding:15px 14px}.leaderboard-mode-tabs a span{font-size:.95rem}.leaderboard-mode-tabs a small{font-size:.67rem}}

/* Player profile performance averages ---------------------------------- */
.player-average-section{margin-top:18px;padding:18px;border:1px solid var(--line);border-radius:20px;background:#fff;box-shadow:var(--shadow-sm)}
.player-average-section__head{margin-bottom:13px}.player-average-section__head .eyebrow{margin-bottom:5px}.player-average-section__head h3{margin:0;font-size:1.12rem}
.player-average-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.player-average-grid article{min-width:0;padding:15px 12px;border-radius:15px;background:#111317;color:#fff;display:grid;gap:3px;text-align:center}.player-average-grid article>span{color:var(--accent);font-size:.65rem;font-weight:950;letter-spacing:.08em}.player-average-grid article>strong{font-size:1.65rem;line-height:1}.player-average-grid article>small{color:#b8bec6;font-size:.62rem;line-height:1.25}.player-average-grid article:nth-child(3){grid-column:1/-1}
@media(min-width:560px){.player-average-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.player-average-grid article:nth-child(3){grid-column:auto}.player-average-grid article{padding:18px 14px}.player-average-grid article>strong{font-size:1.9rem}}


/* Fixtures page calendar export actions */
.fixtures-calendar-actions{
    display:flex;
    align-items:center;
    flex-wrap:wrap;
    gap:9px;
    margin:14px 0 20px;
}
.fixtures-calendar-actions .button{
    min-width:0;
    white-space:nowrap;
}
.fixtures-calendar-actions__all{
    padding-inline:14px;
    font-size:.72rem;
}
@media(max-width:699px){
    .fixtures-calendar-actions{
        display:grid;
        grid-template-columns:minmax(0,1fr) auto;
        gap:8px;
        margin:12px 0 18px;
    }
    .fixtures-calendar-actions .button{
        width:100%;
        min-height:44px;
        justify-content:center;
        padding:10px 12px;
        font-size:.68rem;
        line-height:1.05;
    }
    .fixtures-calendar-actions__all{
        width:auto!important;
        padding-inline:11px!important;
        font-size:.62rem!important;
    }
    .fixtures-calendar-actions .button svg{
        width:16px;
        height:16px;
        flex:0 0 auto;
    }
}

/* Product detail mobile purchase row */
@media(max-width:560px){
    .shop-buy-row{
        display:grid!important;
        grid-template-columns:112px minmax(0,1fr);
        align-items:stretch;
        gap:9px;
        width:100%;
    }
    .shop-buy-row .quantity{
        width:112px;
        min-width:112px;
        height:50px;
        grid-template-columns:32px minmax(0,1fr) 32px;
    }
    .shop-buy-row .quantity input{
        min-width:0;
        padding:0;
        font-size:1rem;
    }
    .shop-buy-row .button{
        min-width:0;
        width:100%;
        height:50px;
        padding:0 13px;
        justify-content:center;
        gap:7px;
        white-space:nowrap;
        font-size:.78rem;
        line-height:1;
    }
    .shop-buy-row .button svg{
        width:17px;
        height:17px;
        flex:0 0 auto;
    }
}
@media(max-width:380px){
    .shop-buy-row{
        grid-template-columns:102px minmax(0,1fr);
        gap:7px;
    }
    .shop-buy-row .quantity{
        width:102px;
        min-width:102px;
        grid-template-columns:30px minmax(0,1fr) 30px;
    }
    .shop-buy-row .button{
        padding-inline:10px;
        font-size:.72rem;
    }
}


/* ===== Live calendar subscriptions / monthly leaderboard alignment / Team selections ===== */
.monthly-leaderboard__table{margin-top:14px}
.monthly-leaderboard__table .leaderboard-table-wrap{box-shadow:none}
@media(max-width:699px){
  .monthly-leaderboard{padding:14px;border-radius:18px}
  .monthly-leaderboard__head{margin-bottom:14px}
  .monthly-leaderboard__controls{padding:12px;border-radius:15px}
  .monthly-leaderboard__boards{gap:7px}
  .monthly-leaderboard__boards a{padding:11px 8px}
  .monthly-leaderboard__table{margin-top:12px}
}

.collectible-card__overlay--team-selection{
  bottom:5.2%;
  height:30%;
  justify-content:flex-start;
  gap:6px;
  padding:5% 4% 2%;
}
.collectible-card__overlay--team-selection>span{
  color:var(--accent);
  font-size:clamp(.82rem,3.3vw,1rem);
  font-weight:950;
  text-transform:uppercase;
  letter-spacing:.05em;
}
.collectible-card__overlay--team-selection>strong{
  color:#fff;
  font-size:clamp(1.4rem,6vw,2.15rem);
  line-height:1;
  font-weight:950;
}
.collectible-card__overlay--team-selection>b{
  color:#fff;
  font-size:clamp(.82rem,3.5vw,1.08rem);
  line-height:1.15;
  font-weight:900;
}
.collectible-card__overlay--team-selection>small{
  color:#fff;
  font-size:clamp(.78rem,3.1vw,.98rem);
  line-height:1.15;
  font-weight:850;
}

.team-selection-public__mode{margin-bottom:14px}
.team-selection-public__filters{
  display:grid;
  grid-template-columns:1fr;
  gap:10px;
  margin-bottom:12px;
}
.team-selection-public__filters label{
  display:grid;
  gap:6px;
}
.team-selection-public__filters label>span{
  color:var(--muted);
  font-size:.68rem;
  font-weight:950;
  letter-spacing:.08em;
  text-transform:uppercase;
}
.team-selection-public__groups{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:7px;
  margin-bottom:20px;
}
.team-selection-public__groups a{
  min-width:0;
  padding:11px 7px;
  border-radius:12px;
  background:#24272c;
  color:#fff;
  text-align:center;
  font-size:.72rem;
  font-weight:950;
}
.team-selection-public__groups a.is-active{
  background:var(--accent);
  color:#111;
}
.team-selection-public__heading{
  display:flex;
  align-items:flex-start;
  justify-content:space-between;
  gap:14px;
  margin:0 0 16px;
}
.team-selection-public__heading h2{margin:5px 0}
.team-selection-pitch{
  position:relative;
  width:100%;
  max-width:820px;
  aspect-ratio:10/14;
  margin:0 auto;
  overflow:hidden;
  border:5px solid rgba(255,255,255,.85);
  border-radius:24px;
  background:
    linear-gradient(rgba(255,255,255,.045) 50%,transparent 50%) 0 0/100% 14.285%,
    linear-gradient(90deg,#13935c,#0f8653);
  box-shadow:var(--shadow-md);
}
.team-selection-pitch::before{
  content:"";
  position:absolute;
  inset:3%;
  border:2px solid rgba(255,255,255,.65);
  border-radius:4px;
  pointer-events:none;
}
.team-selection-pitch__half{
  position:absolute;
  left:3%;
  right:3%;
  top:50%;
  border-top:2px solid rgba(255,255,255,.65);
}
.team-selection-pitch__circle{
  position:absolute;
  left:50%;
  top:50%;
  width:22%;
  aspect-ratio:1;
  transform:translate(-50%,-50%);
  border:2px solid rgba(255,255,255,.65);
  border-radius:50%;
}
.team-selection-pitch__circle::after{
  content:"";
  position:absolute;
  left:50%;
  top:50%;
  width:6px;
  height:6px;
  transform:translate(-50%,-50%);
  border-radius:50%;
  background:rgba(255,255,255,.75);
}
.team-selection-pitch__box{
  position:absolute;
  left:25%;
  width:50%;
  height:14%;
  border:2px solid rgba(255,255,255,.65);
}
.team-selection-pitch__box--top{top:3%;border-top:0}
.team-selection-pitch__box--bottom{bottom:3%;border-bottom:0}
.team-selection-player{
  position:absolute;
  left:var(--player-x);
  top:var(--player-y);
  width:25%;
  max-width:150px;
  transform:translate(-50%,-50%);
  display:grid;
  justify-items:center;
  gap:4px;
  z-index:2;
  color:#fff;
  text-align:center;
}
.team-selection-player__photo{
  width:clamp(46px,14vw,92px);
  height:clamp(46px,14vw,92px);
  display:grid;
  place-items:center;
  overflow:hidden;
  border:3px solid #fff;
  border-radius:50%;
  background:#fff;
  box-shadow:0 6px 16px rgba(0,0,0,.28);
}
.team-selection-player__photo img{
  width:100%;
  height:100%;
  object-fit:contain;
  object-position:center;
}
.team-selection-player__copy{
  display:block;
  width:100%;
  padding:4px 5px;
  border-radius:7px;
  background:rgba(10,12,15,.82);
  box-shadow:0 3px 8px rgba(0,0,0,.2);
}
.team-selection-player__copy strong,
.team-selection-player__copy small{display:block}
.team-selection-player__copy strong{
  font-size:clamp(.52rem,2.3vw,.84rem);
  line-height:1.08;
  font-weight:950;
  overflow-wrap:anywhere;
}
.team-selection-player__copy small{
  overflow:hidden;
  text-overflow:ellipsis;
  white-space:nowrap;
}
.team-selection-player__copy small{
  margin-top:2px;
  color:#e0e3e6;
  font-size:clamp(.42rem,1.8vw,.62rem);
  line-height:1.1;
}
@media(min-width:700px){
  .team-selection-public__filters{grid-template-columns:repeat(2,minmax(0,260px))}
  .team-selection-public__groups{max-width:600px}
  .team-selection-pitch{aspect-ratio:11/14}
}

/* Team Of The Week / Season guide */
.team-selection-guide-launch{
  display:grid;
  gap:12px;
  margin:0 0 18px;
  padding:14px;
  border:1px solid var(--line);
  border-radius:18px;
  background:#fff;
  box-shadow:var(--shadow-sm);
}
.team-selection-guide-launch>div{display:grid;gap:3px;min-width:0}
.team-selection-guide-launch strong{font-size:12px;line-height:1.4}
.team-selection-guide-launch p{margin:0;color:var(--muted);font-size:10px;line-height:1.5}
.team-selection-guide-button{width:100%;min-height:40px;font-size:9px}
.legal-modal[data-team-selection-guide-modal],
.legal-modal[data-team-selection-guide-modal] .legal-modal__panel,
.legal-modal[data-team-selection-guide-modal] .legal-modal__body,
.team-selection-guide-content{min-width:0;max-width:100%}
.legal-modal[data-team-selection-guide-modal] .legal-modal__panel{overflow:hidden}
.legal-modal[data-team-selection-guide-modal] .legal-modal__header{gap:12px;padding:16px 15px 13px}
.legal-modal[data-team-selection-guide-modal] .legal-modal__header>div{min-width:0}
.legal-modal[data-team-selection-guide-modal] .legal-modal__header h2{font-size:clamp(1.25rem,6.4vw,1.5rem);line-height:1.05;overflow-wrap:anywhere}
.legal-modal[data-team-selection-guide-modal] .legal-modal__header p{font-size:9px;line-height:1.35;overflow-wrap:anywhere}
.legal-modal[data-team-selection-guide-modal] .legal-modal__header p:not(:empty)::before{content:none}
.legal-modal[data-team-selection-guide-modal] .legal-modal__x{width:38px;height:38px}
.legal-modal[data-team-selection-guide-modal] .legal-modal__body{padding:16px 14px 24px;overflow-x:hidden}
.legal-modal[data-team-selection-guide-modal] .legal-modal__footer{padding:10px 14px calc(10px + env(safe-area-inset-bottom))}
.team-selection-guide-content{display:grid;gap:20px;overflow-wrap:anywhere}
.team-selection-guide-content h3,.team-selection-guide-content p,.team-selection-guide-content ol{margin:0}
.team-selection-guide-content h3{font-size:1.02rem;line-height:1.2}
.team-selection-guide-content p{font-size:12px;line-height:1.6}
.team-selection-guide-intro{display:grid;grid-template-columns:40px minmax(0,1fr);gap:11px;align-items:start;padding:13px;border-radius:15px;background:#111318;color:#fff}
.team-selection-guide-intro__icon{width:40px;height:40px;display:grid;place-items:center;border-radius:11px;background:var(--accent);color:#111}
.team-selection-guide-intro__icon .icon{width:19px;height:19px}
.team-selection-guide-intro h3{color:#fff}
.team-selection-guide-intro p{margin-top:5px!important;color:#c6cbd1!important}
.team-selection-guide-section{display:grid;gap:12px;min-width:0}
.team-selection-guide-section__heading{display:grid;grid-template-columns:34px minmax(0,1fr);gap:10px;align-items:start}
.team-selection-guide-section__heading>span{width:34px;height:34px;display:grid;place-items:center;border-radius:10px;background:#f4e8b8;color:#725b12;font-size:9px;font-weight:950}
.team-selection-guide-section__heading>div{min-width:0}
.team-selection-guide-section__heading p{margin-top:3px!important;color:var(--muted)!important}
.team-selection-guide-periods,.team-selection-guide-groups{display:grid;grid-template-columns:1fr;gap:8px}
.team-selection-guide-periods article{padding:13px;border-radius:13px;background:#111318;color:#fff}
.team-selection-guide-periods article>span{display:block;color:var(--accent);font-size:8px;font-weight:950;letter-spacing:.08em;text-transform:uppercase}
.team-selection-guide-periods strong{display:block;margin:3px 0 5px;font-size:12px}
.team-selection-guide-periods p{color:#c4c9d0!important;font-size:11px!important}
.team-selection-guide-groups article{min-width:0;padding:12px;border:1px solid var(--line);border-radius:13px;background:#fff}
.team-selection-guide-groups strong{display:block;margin-bottom:4px;font-size:11px}
.team-selection-guide-groups p{color:#666d76!important;font-size:11px!important;line-height:1.55!important}
.team-selection-guide-rules{display:grid;gap:8px}
.team-selection-guide-rules p{padding:11px 12px;border-left:3px solid var(--accent);border-radius:0 10px 10px 0;background:#f7f8f9;font-size:11px!important}
.team-selection-guide-finish{padding:14px;border-radius:14px;background:linear-gradient(135deg,#111318,#1c2026);color:#fff}
.team-selection-guide-finish>strong{display:block;margin-bottom:8px;color:var(--accent);font-size:9px;letter-spacing:.07em;text-transform:uppercase}
.team-selection-guide-finish ol{display:grid;gap:5px;padding-left:20px}
.team-selection-guide-finish li{font-size:11px;line-height:1.45;color:#e2e5e9}
@media(min-width:700px){
  .team-selection-guide-launch{grid-template-columns:minmax(0,1fr) auto;align-items:center;padding:16px}
  .team-selection-guide-button{width:auto}
  .legal-modal[data-team-selection-guide-modal] .legal-modal__header{padding:22px 24px 18px}
  .legal-modal[data-team-selection-guide-modal] .legal-modal__header h2{font-size:clamp(1.45rem,4vw,2rem)}
  .legal-modal[data-team-selection-guide-modal] .legal-modal__header p{font-size:11px}
  .legal-modal[data-team-selection-guide-modal] .legal-modal__x{width:42px;height:42px}
  .legal-modal[data-team-selection-guide-modal] .legal-modal__body{padding:24px}
  .legal-modal[data-team-selection-guide-modal] .legal-modal__footer{padding:14px 24px calc(14px + env(safe-area-inset-bottom))}
  .team-selection-guide-content{gap:26px}
  .team-selection-guide-intro{grid-template-columns:48px minmax(0,1fr);gap:14px;padding:16px;border-radius:18px}
  .team-selection-guide-intro__icon{width:48px;height:48px;border-radius:14px}
  .team-selection-guide-intro__icon .icon{width:23px;height:23px}
  .team-selection-guide-periods{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}
  .team-selection-guide-groups{grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}
  .team-selection-guide-rules{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}
}

/* Managed Player Card safe-area renderer */
.collectible-card--managed{position:relative;overflow:hidden}.collectible-card--managed>img{display:block;width:100%;height:auto}.player-card-template-overlay{position:absolute;left:var(--pc-safe,7%);right:var(--pc-safe,7%);bottom:var(--pc-safe,7%);max-height:43%;display:flex;flex-direction:column;justify-content:flex-end;gap:.3em;text-align:center;color:var(--pc-text,#fff);font-size:var(--pc-line,16px);line-height:1.08;font-weight:800;overflow:hidden}.player-card-template-line{max-width:100%;overflow-wrap:normal;word-break:normal;hyphens:manual;text-wrap:balance}.player-card-template-name{display:inline;color:var(--pc-accent,#e8b943);font-size:var(--pc-name,30px);line-height:.98;font-weight:950;letter-spacing:-.035em;overflow-wrap:normal;word-break:normal;hyphens:manual}.player-card-template-dot{color:var(--pc-accent,#e8b943);font-weight:950}.player-card-template-flag{display:inline-block;width:1.55em!important;height:auto!important;max-height:1.1em;vertical-align:-.15em;border-radius:2px}@media(max-width:560px){.player-card-template-overlay{font-size:clamp(12px,var(--pc-line,16px),17px)}.player-card-template-name{font-size:clamp(23px,var(--pc-name,30px),35px)}}


/* Managed Player Card safe plaque positioning */
.collectible-card--managed .player-card-template-overlay{left:max(var(--pc-safe,7%),8%);right:max(var(--pc-safe,7%),8%);bottom:var(--pc-y,8%);height:18%;max-height:none;justify-content:center;gap:.18em;overflow:hidden}
.collectible-card--template-signed-on .player-card-template-overlay{bottom:var(--pc-y,8%);height:22%}
.collectible-card--template-team-week .player-card-template-overlay,.collectible-card--template-team-season .player-card-template-overlay{bottom:var(--pc-y,8%);height:19%}
.collectible-card--managed .player-card-template-line{width:100%;max-width:100%;line-height:1.02;overflow-wrap:normal;word-break:normal;white-space:normal}
.collectible-card--managed .player-card-template-name{display:inline-block;max-width:100%;line-height:.94;overflow-wrap:normal;word-break:normal;white-space:normal}

.collectible-card--managed .player-card-template-line--title{font-size:var(--pc-title,18px);font-weight:900;line-height:1}
.collectible-card--managed .player-card-template-line--title .player-card-template-name{font-size:var(--pc-name,30px)}


/* Managed Player Card title sizing */
.collectible-card--managed .player-card-template-line--title{font-size:var(--pc-title,18px);font-weight:950;line-height:1}

/* Public Player Cards / Cards Available */
.player-card-library-page{background:#f5f6f7}.player-card-library-intro{display:flex;justify-content:space-between;align-items:end;gap:24px;margin-bottom:24px}.player-card-library-intro>div:first-child{max-width:760px}.player-card-library-intro h2{margin:4px 0 8px}.player-card-library-intro p{margin:0;color:var(--muted);line-height:1.65}.player-card-library-intro__key{display:flex;gap:12px;flex-wrap:wrap;font-size:.72rem;font-weight:900}.player-card-library-intro__key span{display:inline-flex;align-items:center;gap:6px}.player-card-library-dot{width:9px;height:9px;border-radius:50%;display:inline-block;background:#747b84}.player-card-library-dot--unlocked{background:#2b7d55}.player-card-library-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}.player-card-library-card{overflow:hidden;border:1px solid var(--line);border-radius:20px;background:#fff;box-shadow:0 10px 28px rgba(17,19,24,.06)}.player-card-library-card__art{position:relative;aspect-ratio:5/7;overflow:hidden;background:#111318}.player-card-library-card__art img{display:block;width:100%;height:100%;object-fit:cover}.player-card-library-card.is-locked .player-card-library-card__art img{filter:saturate(.75)}.player-card-library-card__state{position:absolute;left:14px;top:14px;padding:7px 10px;border-radius:999px;background:rgba(17,19,24,.86);color:#fff;font-size:.62rem;font-weight:950;letter-spacing:.07em;text-transform:uppercase;backdrop-filter:blur(8px)}.player-card-library-card.is-unlocked .player-card-library-card__state{background:rgba(31,105,69,.9)}.player-card-library-card__copy{display:grid;gap:6px;padding:17px 18px 19px}.player-card-library-card__copy h3{margin:0;font-size:1.05rem}.player-card-library-card__copy p{margin:0;color:var(--muted);font-size:.78rem;line-height:1.55;min-height:2.4em}.player-card-library-card__count{margin-top:7px;font-size:.78rem}.player-card-library-card__copy small{color:#777e87;font-size:.66rem;line-height:1.45}@media(max-width:980px){.player-card-library-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:620px){.player-card-library-intro{align-items:flex-start;flex-direction:column;gap:13px}.player-card-library-grid{grid-template-columns:1fr;gap:15px}.player-card-library-card{display:grid;grid-template-columns:minmax(115px,38%) minmax(0,1fr);border-radius:16px}.player-card-library-card__art{aspect-ratio:auto;min-height:205px}.player-card-library-card__copy{padding:14px}.player-card-library-card__copy p{min-height:0}.player-card-library-card__state{left:9px;top:9px;padding:6px 8px;font-size:.55rem}}

/* Player Card rarity/category tabs */
.player-card-category-tabs{display:flex;gap:8px;overflow-x:auto;padding:0 0 18px;margin-top:-4px;scrollbar-width:thin}.player-card-category-tabs button{appearance:none;border:1px solid rgba(14,22,32,.15);background:#fff;color:#15202b;border-radius:999px;padding:10px 15px;font:inherit;font-size:.82rem;font-weight:850;white-space:nowrap;cursor:pointer;transition:.18s ease}.player-card-category-tabs button:hover,.player-card-category-tabs button.is-active{background:#111923;color:#fff;border-color:#111923}.player-card-collection>[hidden]{display:none!important}
.player-card-category-empty{margin-top:8px;padding:28px 22px;border:1px dashed rgba(17,25,35,.18);border-radius:16px;background:#f8f9fa;text-align:center;color:var(--muted);font-size:.9rem;font-weight:750}.player-card-category-empty[hidden]{display:none!important}

/* ===== V9.36 - Scheduled public announcements ===== */
body.announcement-modal-open{overflow:hidden}
.announcement-modal{position:fixed;inset:0;z-index:6200;display:grid;place-items:center;padding:22px;visibility:hidden;pointer-events:none;opacity:0;transition:opacity .22s ease,visibility .22s ease}
.announcement-modal.is-open{visibility:visible;pointer-events:auto;opacity:1}
.announcement-modal__backdrop{position:absolute;inset:0;background:radial-gradient(circle at 50% 15%,rgba(232,185,67,.13),transparent 34%),rgba(4,5,7,.82);backdrop-filter:blur(7px)}
.announcement-modal__panel{position:relative;width:min(820px,100%);max-height:min(88dvh,900px);display:grid;grid-template-rows:auto minmax(0,1fr) auto;background:#fff;border:1px solid rgba(232,185,67,.5);border-radius:28px;box-shadow:0 36px 120px rgba(0,0,0,.48),0 0 0 1px rgba(255,255,255,.08) inset;overflow:hidden;transform:translateY(18px) scale(.982);transition:transform .22s ease;min-width:0}
.announcement-modal.is-open .announcement-modal__panel{transform:none}
.announcement-modal__header{position:relative;display:flex;align-items:flex-start;justify-content:space-between;gap:18px;padding:25px 27px 22px 31px;background:linear-gradient(135deg,#080a0d 0%,#171a20 72%,#24201a 100%);color:#fff;border-bottom:3px solid #e8b943;min-width:0}
.announcement-modal__header::before{content:"";position:absolute;left:0;top:0;bottom:0;width:6px;background:linear-gradient(180deg,#f6d979,#d7a72d)}
.announcement-modal__header>div{min-width:0}
.announcement-modal__kicker{display:inline-flex;align-items:center;gap:7px;color:#e8b943;font-size:10px;font-weight:900;letter-spacing:.18em;text-transform:uppercase;margin-bottom:7px}
.announcement-modal__kicker::before{content:"";width:7px;height:7px;border-radius:50%;background:#e8b943;box-shadow:0 0 0 4px rgba(232,185,67,.12)}
.announcement-modal__header h2{margin:0;color:#fff;font-size:clamp(1.55rem,4.5vw,2.35rem);line-height:1.03;letter-spacing:-.035em;overflow-wrap:anywhere}
.announcement-modal__x{width:43px;height:43px;flex:0 0 auto;border:1px solid rgba(255,92,104,.32);border-radius:13px;background:#321519;color:#ff5c68;display:grid;place-items:center;cursor:pointer;transition:background .18s ease,color .18s ease,transform .18s ease}
.announcement-modal__x:hover,.announcement-modal__x:focus-visible{background:#d72e42;color:#fff;transform:rotate(4deg);outline:2px solid #fff;outline-offset:2px}
.announcement-modal__x .icon{width:20px;height:20px}
.announcement-modal__body{overflow-y:auto;overflow-x:hidden;overscroll-behavior:contain;padding:27px;background:linear-gradient(180deg,#fff,#fbfbfb);min-width:0;scrollbar-width:thin;scrollbar-color:#8f949d #eceef1}
.announcement-modal__body::-webkit-scrollbar{width:8px}.announcement-modal__body::-webkit-scrollbar-track{background:#eceef1}.announcement-modal__body::-webkit-scrollbar-thumb{background:#8f949d;border-radius:999px;border:2px solid #eceef1}
.announcement-modal__footer{display:flex;justify-content:flex-end;padding:14px 24px calc(14px + env(safe-area-inset-bottom));border-top:1px solid #e1e3e7;background:#f5f6f8}.announcement-modal__footer .button{min-width:126px}
.announcement-richtext{font-size:14px;line-height:1.72;color:#20232a;overflow-wrap:anywhere}.announcement-richtext>*:first-child{margin-top:0}.announcement-richtext>*:last-child{margin-bottom:0}.announcement-richtext h1,.announcement-richtext h2,.announcement-richtext h3{color:#0b0d10;letter-spacing:-.025em}.announcement-richtext h1{font-size:clamp(1.55rem,5vw,2rem)}.announcement-richtext h2{font-size:clamp(1.3rem,4vw,1.65rem)}.announcement-richtext h3{font-size:1.1rem}.announcement-richtext a:not(.announcement-content-button){color:#8b6810;font-weight:800;text-decoration:underline;text-underline-offset:3px}.announcement-richtext ul,.announcement-richtext ol{padding-left:21px}.announcement-richtext blockquote{margin:18px 0;padding:15px 17px;border-left:4px solid #e8b943;background:#f6f3ea;border-radius:0 13px 13px 0;color:#35312a}.announcement-richtext hr{border:0;border-top:1px solid #dfe2e6;margin:22px 0}
.announcement-richtext .article-inline-image{margin:19px 0;max-width:100%;overflow:hidden;border-radius:17px;background:#f1f2f4;border:1px solid #e0e2e5}.announcement-richtext .article-inline-image a{display:block}.announcement-richtext .article-inline-image img{display:block;width:100%;height:auto;max-height:480px;object-fit:contain}
.announcement-content-button{display:inline-flex;align-items:center;justify-content:center;max-width:100%;min-height:44px;margin:8px 7px 8px 0;padding:11px 17px;border-radius:11px;background:#0b0d10!important;color:#fff!important;text-decoration:none!important;font-size:11px;font-weight:900;letter-spacing:.04em;text-transform:uppercase;box-shadow:0 8px 24px rgba(0,0,0,.12);transition:transform .18s ease,background .18s ease}.announcement-content-button:hover{background:#252a31!important;transform:translateY(-1px)}
.announcement-content-highlight{margin:17px 0;padding:17px 18px;border:1px solid #ead89d;border-radius:16px;background:linear-gradient(135deg,#fffaf0,#f8f2df);box-shadow:0 8px 22px rgba(100,74,5,.06)}.announcement-content-highlight>*:first-child{margin-top:0}.announcement-content-highlight>*:last-child{margin-bottom:0}
.announcement-table-wrap{width:100%;max-width:100%;overflow-x:auto;margin:18px 0;border:1px solid #dfe2e6;border-radius:15px;background:#fff}.announcement-table{width:100%;min-width:420px;border-collapse:collapse;font-size:13px}.announcement-table th,.announcement-table td{padding:11px 13px;border-bottom:1px solid #e5e7ea;text-align:left;vertical-align:top}.announcement-table th{background:#101216;color:#fff;font-size:10px;text-transform:uppercase;letter-spacing:.08em}.announcement-table tr:last-child td{border-bottom:0}
.announcement-countdown{margin:19px 0;padding:17px;border-radius:18px;background:linear-gradient(135deg,#0a0c0f,#1d2127);color:#fff;border:1px solid #343941;box-shadow:0 16px 34px rgba(0,0,0,.15)}.announcement-countdown__label{display:block;margin-bottom:12px;color:#e8b943;font-size:10px;font-weight:900;letter-spacing:.12em;text-transform:uppercase}.announcement-countdown__units{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px}.announcement-countdown__units span{display:grid;place-items:center;padding:11px 5px;border:1px solid rgba(255,255,255,.1);border-radius:12px;background:rgba(255,255,255,.05)}.announcement-countdown__units strong{font-size:clamp(1.35rem,5vw,2rem);line-height:1;color:#fff}.announcement-countdown__units small{margin-top:5px;color:#aeb5bf;font-size:8px;font-weight:800;text-transform:uppercase;letter-spacing:.08em}.announcement-countdown.is-complete .announcement-countdown__units{opacity:.48}

/* Player Cards Guide */
.player-card-library-intro__actions{display:grid;justify-items:end;gap:10px}.player-cards-guide-button{min-height:40px;padding:9px 13px;font-size:9px}.legal-modal[data-player-cards-guide-modal] .legal-modal__header p:not(:empty)::before{content:none}.player-cards-guide-content{display:grid;gap:24px;min-width:0}.player-cards-guide-content section>h3{margin:4px 0 8px}.player-cards-guide-intro{display:grid;grid-template-columns:auto minmax(0,1fr);gap:14px;padding:16px;border-radius:18px;background:#f5f6f8;border:1px solid #e1e4e8}.player-cards-guide-intro__icon{width:46px;height:46px;border-radius:14px;display:grid;place-items:center;background:#0b0d10;color:#e8b943}.player-cards-guide-intro__icon .icon{width:23px;height:23px}.player-cards-guide-intro h3{margin:0 0 5px}.player-cards-guide-intro p{margin:0}.player-cards-guide-rarities{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:7px;margin:12px 0}.player-cards-guide-rarities span{padding:9px 6px;border:1px solid #dfe2e6;border-radius:10px;background:#fff;text-align:center;font-size:9px;font-weight:900;text-transform:uppercase;letter-spacing:.05em}.player-cards-guide-secret{padding:18px;border-radius:18px;background:linear-gradient(135deg,#0b0d10,#242830);color:#fff;border-bottom:3px solid #e8b943}.player-cards-guide-secret strong{color:#e8b943;font-size:16px}.player-cards-guide-secret p{margin:6px 0 0;color:#d8dbe0}
@media(max-width:640px){
  .announcement-modal{padding:12px;place-items:center}.announcement-modal__panel{width:100%;max-height:calc(100dvh - 24px);border-radius:22px}.announcement-modal__header{padding:20px 17px 17px 22px;gap:10px}.announcement-modal__header::before{width:5px}.announcement-modal__header h2{font-size:clamp(1.4rem,7vw,1.8rem)}.announcement-modal__x{width:39px;height:39px;border-radius:11px}.announcement-modal__body{padding:20px 16px 24px}.announcement-modal__footer{padding:11px 15px calc(11px + env(safe-area-inset-bottom))}.announcement-modal__footer .button{width:100%}.announcement-content-button{width:100%;margin:7px 0}.announcement-table{min-width:360px}.announcement-countdown{padding:13px}.announcement-countdown__units{gap:5px}.announcement-countdown__units span{padding:9px 3px}.player-card-library-intro__actions{justify-items:start}.player-cards-guide-rarities{grid-template-columns:repeat(2,minmax(0,1fr))}.player-cards-guide-rarities span:last-child{grid-column:1/-1}.player-cards-guide-intro{grid-template-columns:1fr}.player-cards-guide-intro__icon{width:42px;height:42px}
}

@media(max-width:640px){.announcement-table-wrap{overflow-x:hidden}.announcement-table{min-width:0;table-layout:fixed}.announcement-table th,.announcement-table td{overflow-wrap:anywhere;word-break:break-word}}

/* Player Cards library presentation: full artwork, clearer status and first unlocker */
.player-card-library-card__art{
  aspect-ratio:auto;
  overflow:hidden;
  background:#111318;
}
.player-card-library-card__art img{
  display:block;
  width:100%;
  height:auto;
  max-width:100%;
  object-fit:contain;
  object-position:center;
}
.player-card-library-badge{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  width:max-content;
  max-width:100%;
  padding:7px 10px;
  border-radius:999px;
  font-size:.62rem;
  line-height:1;
  font-weight:950;
  letter-spacing:.07em;
  text-transform:uppercase;
}
.player-card-library-card__state.player-card-library-badge{
  position:absolute;
  left:14px;
  top:14px;
  z-index:2;
  backdrop-filter:blur(8px);
}
.player-card-library-badge--locked,
.player-card-library-card.is-locked .player-card-library-card__state{
  background:#e31d2d;
  color:#fff;
  font-weight:950;
  border:1px solid rgba(0,0,0,.16);
  box-shadow:0 5px 16px rgba(227,29,45,.22);
}
.player-card-library-badge--unlocked,
.player-card-library-card.is-unlocked .player-card-library-card__state{
  background:#2b7d55;
  color:#fff;
  border:1px solid rgba(0,0,0,.08);
}
.player-card-library-card__copy{
  display:grid;
  gap:9px;
  padding:18px;
  border-top:1px solid #eceef1;
  background:linear-gradient(180deg,#fff 0%,#fafbfc 100%);
}
.player-card-library-card__copy .eyebrow{margin:0}
.player-card-library-card__status-row{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:10px;
  min-width:0;
}
.player-card-library-card__count{
  margin:0;
  color:#161b22;
  font-size:.82rem;
  line-height:1.25;
  font-weight:950;
}
.player-card-library-card__copy small{
  margin:0;
  color:#777e87;
  font-size:.68rem;
  line-height:1.5;
}
.player-card-library-card__first{
  display:grid;
  gap:4px;
  margin-top:3px;
  padding:11px 12px;
  border:1px solid #e2e5e9;
  border-radius:12px;
  background:#fff;
  min-width:0;
}
.player-card-library-card__first>span{
  color:#7a8088;
  font-size:.59rem;
  line-height:1.2;
  font-weight:900;
  letter-spacing:.07em;
  text-transform:uppercase;
}
.player-card-library-card__first>strong{
  display:block;
  min-width:0;
  color:#181c22;
  font-size:.76rem;
  line-height:1.35;
  font-weight:900;
  overflow-wrap:anywhere;
}
.player-card-library-card__first a{
  color:inherit;
  text-decoration:none;
}
.player-card-library-card__first a:hover,
.player-card-library-card__first a:focus-visible{
  color:inherit;
  text-decoration:none;
  opacity:.72;
}
.player-card-library-card__first em{
  color:inherit;
  font-style:normal;
  font-weight:750;
}
@media(max-width:620px){
  .player-card-library-card__art{
    min-height:0;
    align-self:start;
  }
  .player-card-library-card__art img{
    width:100%;
    height:auto;
  }
  .player-card-library-card__copy{padding:14px;gap:8px}
  .player-card-library-card__state.player-card-library-badge{left:9px;top:9px;padding:6px 8px;font-size:.55rem}
  .player-card-library-card__first{padding:10px}
}

/* Fantasy LAJFC */
.fantasy-page .page-hero__content p{max-width:760px;line-height:1.75}
.fantasy-hero__actions{display:flex;flex-wrap:wrap;gap:12px;margin-top:26px}
.fantasy-rule-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px}
.fantasy-rule-grid article,.fantasy-panel,.fantasy-how article,.fantasy-builder,.fantasy-formation-picker{background:#fff;border:1px solid rgba(15,18,22,.1);border-radius:18px;padding:22px;box-shadow:0 12px 30px rgba(15,18,22,.06)}
.fantasy-rule-grid small,.fantasy-budget small{display:block;font-size:.72rem;font-weight:800;letter-spacing:.08em;text-transform:uppercase;color:#777;margin-bottom:8px}.fantasy-rule-grid strong,.fantasy-budget strong{display:block;font-size:1.55rem;line-height:1.15;color:#111}.fantasy-rule-grid span{display:block;margin-top:8px;line-height:1.55;color:#666}
.fantasy-how{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}.fantasy-how b{display:grid;place-items:center;width:38px;height:38px;border-radius:50%;background:#f3c51c;color:#111;margin-bottom:16px}.fantasy-how h3{margin:0 0 10px;font-size:1.15rem}.fantasy-how p,.fantasy-panel p{margin:0;line-height:1.7;color:#64676d}
.fantasy-entry-layout{display:grid;grid-template-columns:minmax(0,1.4fr) minmax(280px,.6fr);gap:22px;align-items:start}.fantasy-panel h2{margin:8px 0 14px;line-height:1.2}.fantasy-panel .button{margin-top:22px}.fantasy-payment{margin-top:22px}.fantasy-payment .button{width:100%}
.fantasy-alert{border-radius:14px;padding:14px 16px;margin:0 0 20px;line-height:1.6}.fantasy-alert strong,.fantasy-alert span{display:block}.fantasy-alert--success{background:#ecf8ef;color:#185b2b}.fantasy-alert--error{background:#fff0f0;color:#8d2020}
.fantasy-table{overflow:auto;border:1px solid rgba(15,18,22,.1);border-radius:18px;background:#fff}.fantasy-table table{width:100%;border-collapse:collapse}.fantasy-table th,.fantasy-table td{padding:15px 18px;text-align:left;border-bottom:1px solid rgba(15,18,22,.08);line-height:1.45}.fantasy-table th{font-size:.72rem;text-transform:uppercase;letter-spacing:.07em;background:#f7f7f7}.fantasy-table tr:last-child td{border-bottom:0}
.fantasy-formation-picker{display:flex;align-items:end;gap:14px;margin-bottom:20px}.fantasy-formation-picker label,.fantasy-builder label{display:grid;gap:8px}.fantasy-formation-picker span,.fantasy-builder label>span{font-size:.78rem;font-weight:850;letter-spacing:.045em}.fantasy-formation-picker select,.fantasy-builder input,.fantasy-builder select{min-height:46px;border:1px solid #d7d9dd;border-radius:11px;background:#fff;padding:10px 12px;font:inherit;color:#17191d}
.fantasy-builder{display:grid;gap:28px}.fantasy-builder__top{display:grid;grid-template-columns:minmax(260px,1fr) 180px 180px;gap:18px;align-items:end}.fantasy-position-sections{display:grid;gap:22px}.fantasy-position-sections section{display:grid;gap:14px}.fantasy-position-title{display:flex;justify-content:space-between;align-items:center;border-bottom:1px solid #e5e6e8;padding-bottom:10px}.fantasy-position-title h2{margin:0;font-size:1.1rem}.fantasy-position-title span{font-size:.76rem;font-weight:800;color:#777}.fantasy-slot-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(210px,1fr));gap:12px}.fantasy-slot{background:#f7f8f9;border-radius:13px;padding:13px}.fantasy-captains{display:grid;grid-template-columns:1fr 1fr;gap:16px}
@media(max-width:900px){.fantasy-rule-grid{grid-template-columns:1fr 1fr}.fantasy-how,.fantasy-entry-layout{grid-template-columns:1fr}.fantasy-builder__top{grid-template-columns:1fr 1fr}.fantasy-builder__top>label{grid-column:1/-1}}
@media(max-width:620px){.fantasy-rule-grid{grid-template-columns:1fr}.fantasy-how{grid-template-columns:1fr}.fantasy-formation-picker{align-items:stretch;flex-direction:column}.fantasy-builder{padding:16px}.fantasy-builder__top,.fantasy-captains{grid-template-columns:1fr}.fantasy-slot-grid{grid-template-columns:1fr}.fantasy-rule-grid article,.fantasy-panel,.fantasy-how article{padding:18px}}

/* Fantasy LAJFC pitch builder v1.1 */
.fantasy-team-shell{max-width:980px}
.fantasy-pitch-builder{display:grid;gap:18px;min-width:0}
.fantasy-builder-controls{display:grid;grid-template-columns:minmax(0,2fr) minmax(150px,.75fr) minmax(150px,.7fr) minmax(130px,.6fr);gap:12px;align-items:end;padding:18px;border:1px solid rgba(15,18,22,.1);border-radius:18px;background:#fff;box-shadow:0 12px 30px rgba(15,18,22,.06)}
.fantasy-builder-controls label{display:grid;gap:7px;min-width:0}.fantasy-builder-controls label>span,.fantasy-builder-stat small{color:#6d7077;font-size:.7rem;font-weight:950;letter-spacing:.06em;text-transform:uppercase}
.fantasy-builder-controls input,.fantasy-builder-controls select,.fantasy-captains select{width:100%;min-width:0;min-height:48px;border:1px solid #d6d9dd;border-radius:12px;background:#fff;padding:10px 12px;font:inherit;color:#111}
.fantasy-builder-stat{display:grid;gap:5px;min-height:48px;align-content:center}.fantasy-builder-stat strong{font-size:1.45rem;line-height:1;font-weight:950}.fantasy-builder-stat strong.is-low{color:#a66a00}.fantasy-builder-stat strong.is-over{color:#b42318}
.fantasy-builder-note{display:flex;align-items:flex-start;gap:10px;padding:12px 14px;border-radius:14px;background:#f3f4f5;color:#5f6268}.fantasy-builder-note svg{width:18px;height:18px;flex:0 0 auto}.fantasy-builder-note p{margin:0;font-size:.82rem;line-height:1.5}
.fantasy-selection-pitch{position:relative;width:min(100%,700px);aspect-ratio:10/14;margin:0 auto;overflow:hidden;border:4px solid rgba(255,255,255,.88);border-radius:24px;background:linear-gradient(rgba(255,255,255,.045) 50%,transparent 50%) 0 0/100% 14.285%,linear-gradient(90deg,#13935c,#0f8653);box-shadow:var(--shadow-md);isolation:isolate}
.fantasy-selection-pitch::before{content:"";position:absolute;inset:3%;border:2px solid rgba(255,255,255,.66);border-radius:4px;pointer-events:none}
.fantasy-selection-pitch .team-selection-pitch__markings{position:absolute;inset:0;pointer-events:none}
 .fantasy-pitch-slot{position:absolute;left:var(--player-x);top:var(--player-y);transform:translate(-50%,-50%);z-index:3;width:clamp(48px,13vw,84px);min-width:0;display:grid;justify-items:center;gap:2px;padding:0;border:0;background:transparent;color:#fff;text-align:center;touch-action:manipulation}
.fantasy-pitch-slot__empty{display:grid;justify-items:center;gap:4px;width:auto;min-width:0;padding:0;border:0!important;outline:0;background:transparent!important;box-shadow:none!important;color:#fff;font:inherit;cursor:pointer;appearance:none;-webkit-appearance:none;touch-action:manipulation}
.fantasy-pitch-slot__plus{display:grid;place-items:center;width:clamp(38px,11vw,62px);height:clamp(38px,11vw,62px);border:2px solid #fff;border-radius:50%;background:rgba(10,12,15,.72);box-shadow:0 5px 14px rgba(0,0,0,.28);font-size:clamp(1.45rem,5vw,2rem);font-weight:600;line-height:1}
.fantasy-pitch-slot__empty>small{display:block;padding:0;background:transparent;color:#fff;font-size:clamp(.5rem,1.9vw,.66rem);line-height:1.1;font-weight:800;text-shadow:0 1px 3px rgba(0,0,0,.45)}
.fantasy-pitch-slot.is-selected{width:clamp(72px,20vw,118px)}
.fantasy-pitch-slot__player{position:relative;display:grid;justify-items:center;gap:0;width:100%;padding:0;border:0;background:transparent;color:inherit;font:inherit;cursor:pointer;min-width:0}
.fantasy-pitch-slot__photo{display:block;width:clamp(46px,13vw,72px);height:clamp(46px,13vw,72px);border:3px solid #fff;border-radius:50%;overflow:hidden;background:#d7d9dd;box-shadow:0 5px 14px rgba(0,0,0,.28)}
.fantasy-pitch-slot__photo img{display:block;width:100%;height:100%;object-fit:cover;object-position:center top}
.fantasy-pitch-slot__meta{position:relative;z-index:2;display:grid;gap:2px;width:100%;margin-top:-1px;padding:5px 6px 6px;border-radius:9px;background:rgba(10,12,15,.91);box-shadow:0 4px 10px rgba(0,0,0,.22);overflow:hidden}
.fantasy-pitch-slot__meta strong{display:block;width:100%;padding:0!important;border-radius:0!important;background:transparent!important;box-shadow:none!important;font-size:clamp(.58rem,2.35vw,.8rem)!important;line-height:1.12!important;font-weight:950;white-space:normal!important;overflow:visible!important;text-overflow:clip!important;overflow-wrap:anywhere;word-break:normal}
.fantasy-pitch-slot__meta small{display:block;margin:0!important;padding:0!important;border-radius:0!important;background:transparent!important;color:#fff;font-size:clamp(.49rem,1.9vw,.64rem);line-height:1.05;font-weight:850}
.fantasy-pitch-slot__remove,.fantasy-pitch-slot__info{position:absolute;top:-4px;z-index:5;display:grid;place-items:center;width:27px;height:27px;padding:0;border:2px solid #fff;border-radius:50%;font:900 18px/1 Arial,sans-serif;box-shadow:0 4px 9px rgba(0,0,0,.25);cursor:pointer;touch-action:manipulation}
.fantasy-pitch-slot__info{left:0;background:#111820;color:#fff;font-size:15px}
.fantasy-pitch-slot__remove{right:0;background:#df2538;color:#fff}
.fantasy-pitch-slot__badge{display:grid;place-items:center;min-width:29px;height:22px;padding:0 5px;border:2px solid #fff;border-radius:999px;background:#fff;color:#111;font-size:.53rem;font-weight:950;box-shadow:0 4px 9px rgba(0,0,0,.2)}
.fantasy-builder-limits{display:grid;grid-template-columns:auto 1fr;gap:12px;align-items:center;padding:14px 16px;border:1px solid rgba(15,18,22,.1);border-radius:16px;background:#fff}.fantasy-builder-limits>div:first-child{display:grid;gap:2px}.fantasy-builder-limits>div:first-child span{color:#70737a;font-size:.67rem;font-weight:900;text-transform:uppercase;letter-spacing:.05em}.fantasy-builder-limits>div:first-child strong{font-size:.82rem}.fantasy-builder-limits [data-fantasy-group-summary]{display:flex;justify-content:flex-end;flex-wrap:wrap;gap:7px}.fantasy-builder-limits [data-fantasy-group-summary]>span{padding:6px 8px;border-radius:999px;background:#f0f1f2;font-size:.7rem;font-weight:800}.fantasy-builder-limits [data-fantasy-group-summary]>span.is-full{background:#17191d;color:#fff}
.fantasy-captain-panel{display:grid;grid-template-columns:minmax(0,1fr) minmax(320px,.9fr);gap:22px;align-items:end;padding:20px;border:1px solid rgba(15,18,22,.1);border-radius:18px;background:#fff;box-shadow:0 12px 30px rgba(15,18,22,.05)}.fantasy-captain-panel h2{margin:4px 0 6px}.fantasy-captain-panel p{margin:0;color:#6e7177;font-size:.84rem;line-height:1.5}.fantasy-save-xi{width:100%;min-height:52px}
body.fantasy-picker-open{overflow:hidden}
.fantasy-player-picker{position:fixed;inset:0;z-index:1200;display:grid;place-items:end center;pointer-events:none;visibility:hidden}.fantasy-player-picker[aria-hidden="false"]{pointer-events:auto;visibility:visible}.fantasy-player-picker__backdrop{position:absolute;inset:0;width:100%;height:100%;border:0;background:rgba(8,10,12,.58);opacity:0;transition:opacity .18s ease}.fantasy-player-picker[aria-hidden="false"] .fantasy-player-picker__backdrop{opacity:1}.fantasy-player-picker__panel{position:relative;width:100%;max-height:min(82vh,760px);display:grid;grid-template-rows:auto auto auto minmax(0,1fr);overflow:hidden;border-radius:22px 22px 0 0;background:#fff;box-shadow:0 -18px 50px rgba(0,0,0,.2);transform:translateY(102%);transition:transform .2s ease}.fantasy-player-picker[aria-hidden="false"] .fantasy-player-picker__panel{transform:translateY(0)}
.fantasy-player-picker__header{display:flex;align-items:center;justify-content:space-between;gap:14px;padding:17px 18px 12px;border-bottom:1px solid #eceef0}.fantasy-player-picker__header h2{margin:3px 0 0;font-size:1.2rem}.fantasy-player-picker__close{display:grid;place-items:center;width:40px;height:40px;border:0;border-radius:50%;background:#101216;color:#fff}.fantasy-player-picker__close svg{width:18px;height:18px}.fantasy-player-picker__search{padding:12px 14px}.fantasy-player-picker__search input{width:100%;min-height:46px;border:1px solid #d6d9dd;border-radius:12px;padding:10px 12px;font:inherit}.fantasy-player-picker__current{display:flex;justify-content:space-between;align-items:center;gap:12px;margin:0 14px 10px;padding:10px 12px;border-radius:12px;background:#f1f2f3}.fantasy-player-picker__current>div{display:grid;gap:1px}.fantasy-player-picker__current small{color:#6d7077;font-size:.65rem;text-transform:uppercase;font-weight:900}.fantasy-player-picker__current strong{font-size:.82rem}.fantasy-player-picker__current button{border:0;border-radius:9px;padding:8px 10px;background:#fff;color:#9f1b12;font-weight:900}
.fantasy-player-detail{position:fixed;inset:0;z-index:1210;display:grid;place-items:end center;pointer-events:none;visibility:hidden}.fantasy-player-detail[aria-hidden="false"]{pointer-events:auto;visibility:visible}.fantasy-player-detail__backdrop{position:absolute;inset:0;width:100%;height:100%;border:0;background:rgba(8,10,12,.58)}.fantasy-player-detail__panel{position:relative;width:100%;max-height:min(86vh,760px);overflow:auto;border-radius:22px 22px 0 0;background:#fff;box-shadow:0 -18px 50px rgba(0,0,0,.2);padding:22px 18px max(22px,env(safe-area-inset-bottom));overscroll-behavior:contain}.fantasy-player-detail__close{position:absolute;top:12px;right:12px;z-index:2;display:grid;place-items:center;width:40px;height:40px;border:0;border-radius:50%;background:#101216;color:#fff}.fantasy-player-detail__close svg{width:18px;height:18px}.fantasy-detail-hero{display:grid;grid-template-columns:92px minmax(0,1fr);gap:16px;align-items:center;padding-right:38px}.fantasy-detail-photo{width:92px;height:92px;border-radius:50%;overflow:hidden;background:#e4e6e9}.fantasy-detail-photo img{display:block;width:100%;height:100%;object-fit:cover;object-position:center top}.fantasy-detail-hero h2{margin:5px 0 5px;font-size:1.35rem}.fantasy-detail-hero p{margin:0;color:#69717a;line-height:1.45;font-size:.82rem}.fantasy-detail-price{display:block;margin-top:4px}.fantasy-detail-stats{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:9px;margin:20px 0}.fantasy-detail-stats>div{display:grid;gap:3px;padding:11px;border-radius:11px;background:#f3f4f5}.fantasy-detail-stats small{font-size:.65rem;color:#6e747c;text-transform:uppercase;font-weight:850}.fantasy-detail-stats strong{font-size:.9rem}.fantasy-player-detail__panel .button{width:100%;justify-content:center}
.fantasy-player-picker__list{overflow:auto;padding:0 14px max(18px,env(safe-area-inset-bottom));overscroll-behavior:contain}.fantasy-player-picker__empty{padding:28px 12px;text-align:center;color:#74777d}.fantasy-player-option{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:12px;align-items:center;padding:12px 0;border-bottom:1px solid #eceef0}.fantasy-player-option__main{min-width:0;display:grid;gap:5px}.fantasy-player-option__name{display:flex;align-items:center;gap:7px;min-width:0}.fantasy-player-option__name strong{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:.9rem}.fantasy-player-option__main small{color:#6d7077;font-size:.71rem;line-height:1.35}.fantasy-player-tag{flex:0 0 auto;padding:4px 6px;border-radius:999px;font-size:.55rem;font-weight:950;letter-spacing:.04em}.fantasy-player-tag--adult{background:#111;color:#fff}.fantasy-player-tag--junior{background:#eceef0;color:#111}.fantasy-player-option__side{display:grid;justify-items:end;gap:5px}.fantasy-player-option__side>strong{font-size:.82rem}.fantasy-player-option__side button{min-width:72px;border:0;border-radius:9px;padding:8px 9px;background:#111;color:#fff;font-size:.7rem;font-weight:950}.fantasy-player-option__side button:disabled{background:#e7e8ea;color:#7b7e84}.fantasy-player-option.is-current{background:#fafafa}.fantasy-player-option.is-disabled .fantasy-player-option__main{opacity:.64}
@media(min-width:700px){.fantasy-selection-pitch{aspect-ratio:11/14}.fantasy-player-picker,.fantasy-player-detail{place-items:center}.fantasy-player-detail__panel{width:min(560px,calc(100vw - 40px));max-height:min(78vh,720px);border-radius:22px}.fantasy-player-picker{place-items:center}.fantasy-player-picker__panel{width:min(680px,calc(100vw - 40px));max-height:min(78vh,740px);border-radius:22px;transform:translateY(20px) scale(.98);opacity:0}.fantasy-player-picker[aria-hidden="false"] .fantasy-player-picker__panel{transform:none;opacity:1}}
@media(max-width:760px){.fantasy-team-shell{padding-left:12px;padding-right:12px}.fantasy-builder-controls{grid-template-columns:1fr 1fr;padding:14px;gap:12px}.fantasy-builder-name{grid-column:1/-1}.fantasy-builder-formation{grid-column:1/-1}.fantasy-builder-stat strong{font-size:1.25rem}.fantasy-selection-pitch{width:100%;border-width:3px;border-radius:18px}.fantasy-builder-limits{grid-template-columns:1fr;gap:9px}.fantasy-builder-limits [data-fantasy-group-summary]{justify-content:flex-start}.fantasy-captain-panel{grid-template-columns:1fr;padding:16px}.fantasy-captains{grid-template-columns:1fr 1fr;gap:10px}}
@media(max-width:430px){.fantasy-team-shell{padding-left:8px;padding-right:8px;overflow-x:hidden}.fantasy-pitch-builder{gap:14px}.fantasy-builder-controls{padding:12px;border-radius:15px}.fantasy-builder-note{padding:10px 11px}.fantasy-selection-pitch{border-radius:15px}.fantasy-pitch-slot.is-selected{width:23vw;max-width:96px}.fantasy-pitch-slot__photo{width:clamp(44px,14vw,62px);height:clamp(44px,14vw,62px)}.fantasy-pitch-slot__remove,.fantasy-pitch-slot__info{width:24px;height:24px;top:-3px}.fantasy-pitch-slot__remove{font-size:16px}.fantasy-pitch-slot__info{font-size:13px}.fantasy-pitch-slot__meta{padding:4px 4px 5px;border-radius:8px}.fantasy-pitch-slot__meta strong{font-size:clamp(.52rem,2.5vw,.68rem)!important}.fantasy-pitch-slot__badge{min-width:25px;height:19px;font-size:.47rem}.fantasy-captains{grid-template-columns:1fr}.fantasy-player-option{gap:8px}.fantasy-player-option__side button{min-width:65px;padding-left:7px;padding-right:7px}}

/* Fantasy LAJFC v1.11 - keep mobile player picker above sticky bottom dock */
@media (max-width:699px){
  .fantasy-player-picker__panel{
    margin-bottom:calc(var(--dock-h) + env(safe-area-inset-bottom));
    max-height:calc(100dvh - var(--dock-h) - env(safe-area-inset-bottom) - 18px);
    border-radius:22px 22px 0 0;
  }
  .fantasy-player-picker__list{
    padding-bottom:18px;
    scroll-padding-bottom:18px;
  }
}
/* My Account security forms */
.account-settings-grid .shop-account-panel{display:grid;gap:12px;align-content:start}.account-settings-grid .shop-account-panel>p{margin:0 0 2px;color:var(--muted);font-size:10px;line-height:1.55}.account-settings-grid .shop-field{display:grid;gap:6px}.account-settings-grid .shop-field>span{font-size:10px;font-weight:850}.account-settings-grid .shop-field input{width:100%;min-width:0;height:46px;border:1px solid #d6d9dd;border-radius:11px;padding:0 12px;font:inherit;color:#111;background:#fff}.account-settings-grid .button{margin-top:4px;justify-self:start}

/* ===== L Cards restoration: rarity themes + public/player profile card presentation ===== */
/* Restored from the final L Cards V4.2 card-only styling after live backup rollback. */

/* Public Player Cards library presentation: full artwork, clearer status and first unlocker */
.player-card-library-card__art{
  aspect-ratio:auto;
  overflow:hidden;
  background:#111318;
}
.player-card-library-card__art img{
  display:block;
  width:100%;
  height:auto;
  max-height:none;
  object-fit:contain;
  object-position:center;
}
.player-card-library-badge{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  width:max-content;
  min-height:29px;
  padding:7px 10px;
  border-radius:999px;
  font-size:.61rem;
  line-height:1;
  font-weight:900;
  letter-spacing:.07em;
  text-transform:uppercase;
}
.player-card-library-card__state.player-card-library-badge{
  position:absolute;
  left:14px;
  top:14px;
  z-index:2;
  backdrop-filter:blur(8px);
}
.player-card-library-badge--locked,
.player-card-library-card.is-locked .player-card-library-card__state{
  background:#e31d2d;
  color:#fff;
  font-weight:950;
  border:1px solid rgba(0,0,0,.16);
  box-shadow:0 5px 16px rgba(227,29,45,.22);
}
.player-card-library-badge--unlocked,
.player-card-library-card.is-unlocked .player-card-library-card__state{
  background:#2b7d55;
  color:#fff;
  border:1px solid rgba(0,0,0,.08);
}
.player-card-library-card__copy{
  display:grid;
  gap:9px;
  padding:18px;
  border-top:1px solid #eceef1;
  background:linear-gradient(180deg,#fff 0%,#fafbfc 100%);
}
.player-card-library-card__copy .eyebrow{margin:0}
.player-card-library-card__status-row{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:10px;
  min-width:0;
}
.player-card-library-card__count{
  margin:0;
  color:#161b22;
  font-size:.82rem;
  line-height:1.25;
  font-weight:950;
}
.player-card-library-card__copy small{
  margin:0;
  color:#777e87;
  font-size:.68rem;
  line-height:1.5;
}
.player-card-library-card__first{
  display:grid;
  gap:4px;
  margin-top:3px;
  padding:11px 12px;
  border:1px solid #eceef1;
  border-radius:12px;
  background:#fff;
  min-width:0;
}
.player-card-library-card__first>span{
  color:#7a8088;
  font-size:.59rem;
  line-height:1.2;
  font-weight:850;
  letter-spacing:.07em;
  text-transform:uppercase;
}
.player-card-library-card__first>strong{
  display:block;
  min-width:0;
  color:#181c22;
  font-size:.75rem;
  line-height:1.35;
  font-weight:900;
  overflow-wrap:anywhere;
}
.player-card-library-card__first a{color:inherit;text-decoration:none}
.player-card-library-card__first a:hover,
.player-card-library-card__first a:focus-visible{color:inherit;text-decoration:none;opacity:.72}
.player-card-library-card__first em{color:inherit;font-style:normal;font-weight:750}

/* Player Card rarity colours - Common / Rare / Epic / Legendary / Ultimate */
.player-card-rarity-badge{
  position:absolute;
  z-index:4;
  top:14px;
  right:14px;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  width:max-content;
  max-width:calc(100% - 28px);
  min-height:29px;
  padding:7px 11px;
  border-radius:999px;
  border:1px solid rgba(255,255,255,.28);
  font-size:.61rem;
  line-height:1;
  font-weight:950;
  letter-spacing:.075em;
  text-transform:uppercase;
  box-shadow:0 6px 18px rgba(0,0,0,.22);
  backdrop-filter:blur(7px);
}
.player-card-rarity-badge--common{background:linear-gradient(135deg,#fff,#d8d8d8);color:#111318;border-color:#c7c9cc}
.player-card-rarity-badge--rare{background:linear-gradient(135deg,#0966e8,#1680ff);color:#fff;border-color:#58a3ff;box-shadow:0 6px 18px rgba(10,111,242,.28)}
.player-card-rarity-badge--epic{background:linear-gradient(135deg,#7a00d8,#c014ff);color:#fff;border-color:#da65ff;box-shadow:0 6px 18px rgba(168,0,241,.28)}
.player-card-rarity-badge--legendary{background:linear-gradient(135deg,#ffae00,#ffd51b);color:#17120a;border-color:#ffe170;box-shadow:0 6px 18px rgba(255,184,0,.3)}
.player-card-rarity-badge--ultimate{background:linear-gradient(120deg,#6b5cff 0%,#28c9ff 23%,#ffe348 48%,#ff72ad 70%,#a827ff 100%);color:#fff;border-color:rgba(255,255,255,.72);text-shadow:0 1px 3px rgba(0,0,0,.75);box-shadow:0 6px 20px rgba(82,113,255,.3)}

.player-card-library-card__copy-head{display:block;min-width:0}
.player-card-rarity-badge--mobile{display:none}

/* Rarity-coloured filters shared by Cards Available and each Player Profile collection */
.player-card-category-tabs button[data-rarity="common"]{border-color:#cfd2d5;background:#f2f2f2;color:#20242a}
.player-card-category-tabs button[data-rarity="rare"]{border-color:#1677f2;background:#edf5ff;color:#075fcf}
.player-card-category-tabs button[data-rarity="epic"]{border-color:#b117ec;background:#fbf0ff;color:#8d00c7}
.player-card-category-tabs button[data-rarity="legendary"]{border-color:#e3a800;background:#fff8dc;color:#8c6500}
.player-card-category-tabs button[data-rarity="ultimate"]{border-color:#7c7cff;background:linear-gradient(120deg,rgba(107,92,255,.13),rgba(40,201,255,.13),rgba(255,227,72,.16),rgba(255,114,173,.13),rgba(168,39,255,.13));color:#5423a7}
.player-card-category-tabs button[data-rarity="common"]:hover,.player-card-category-tabs button[data-rarity="common"].is-active{background:linear-gradient(135deg,#fff,#d7d7d7);color:#111318;border-color:#b9bdc1}
.player-card-category-tabs button[data-rarity="rare"]:hover,.player-card-category-tabs button[data-rarity="rare"].is-active{background:linear-gradient(135deg,#0966e8,#1680ff);color:#fff;border-color:#0966e8;box-shadow:0 5px 16px rgba(10,111,242,.2)}
.player-card-category-tabs button[data-rarity="epic"]:hover,.player-card-category-tabs button[data-rarity="epic"].is-active{background:linear-gradient(135deg,#7a00d8,#c014ff);color:#fff;border-color:#9e0ae0;box-shadow:0 5px 16px rgba(168,0,241,.2)}
.player-card-category-tabs button[data-rarity="legendary"]:hover,.player-card-category-tabs button[data-rarity="legendary"].is-active{background:linear-gradient(135deg,#ffae00,#ffd51b);color:#17120a;border-color:#e4a400;box-shadow:0 5px 16px rgba(255,184,0,.22)}
.player-card-category-tabs button[data-rarity="ultimate"]:hover,.player-card-category-tabs button[data-rarity="ultimate"].is-active{background:linear-gradient(120deg,#6b5cff 0%,#28c9ff 23%,#ffe348 48%,#ff72ad 70%,#a827ff 100%);color:#fff;border-color:#6d62ff;text-shadow:0 1px 3px rgba(0,0,0,.55);box-shadow:0 5px 18px rgba(96,99,255,.25)}
.player-card-library-tabs{margin:0 0 20px;padding-bottom:4px}
.player-card-library-card[hidden]{display:none!important}

/* Guide rarity key matches the actual card themes */
.player-cards-guide-rarities span:nth-child(1){background:linear-gradient(135deg,#fff,#d8d8d8);color:#111318;border-color:#c7c9cc}
.player-cards-guide-rarities span:nth-child(2){background:linear-gradient(135deg,#0966e8,#1680ff);color:#fff;border-color:#58a3ff}
.player-cards-guide-rarities span:nth-child(3){background:linear-gradient(135deg,#7a00d8,#c014ff);color:#fff;border-color:#da65ff}
.player-cards-guide-rarities span:nth-child(4){background:linear-gradient(135deg,#ffae00,#ffd51b);color:#17120a;border-color:#ffe170}
.player-cards-guide-rarities span:nth-child(5){background:linear-gradient(120deg,#6b5cff 0%,#28c9ff 23%,#ffe348 48%,#ff72ad 70%,#a827ff 100%);color:#fff;border-color:#fff;text-shadow:0 1px 3px rgba(0,0,0,.6)}

/* Mobile: locked/unlocked and rarity badges sit together in the white details area */
.player-card-library-badge--mobile-state{display:none}
@media(max-width:620px){
  .player-card-library-card__art{min-height:0;align-self:start}
  .player-card-library-card__art img{width:100%;height:auto}
  .player-card-library-card__copy{padding:14px;gap:8px}
  .player-card-library-card__first{padding:10px}
  .player-card-rarity-badge{top:9px;right:9px;min-height:25px;padding:6px 8px;font-size:.54rem}
  .player-card-rarity-badge--art{display:none}
  .player-card-library-card__state.player-card-library-badge{display:none}
  .player-card-library-card__copy-head{
    display:grid;
    grid-template-columns:max-content max-content;
    align-items:center;
    justify-content:space-between;
    gap:9px 10px;
    min-width:0;
  }
  .player-card-library-badge--mobile-state{
    display:inline-flex;
    align-items:center;
    justify-content:center;
    width:max-content;
    min-height:25px;
    padding:6px 9px;
    border-radius:999px;
    font-size:.55rem;
    line-height:1;
    font-weight:950;
    letter-spacing:.07em;
    text-transform:uppercase;
    white-space:nowrap;
  }
  .player-card-rarity-badge--mobile{
    display:inline-flex;
    position:static;
    top:auto;
    right:auto;
    justify-self:end;
    flex:0 0 auto;
    max-width:none;
    margin:0;
  }
  .player-card-library-card__copy-head .eyebrow{
    grid-column:1 / -1;
    grid-row:2;
    min-width:0;
    padding-top:1px;
  }
  .player-card-library-card.is-locked .player-card-library-card__status-row{display:none}
  .player-card-library-tabs{margin-bottom:14px}
}


/* Fixtures subscription actions + LMS live competition summary -------- */
.fixtures-calendar-actions .button{max-width:100%;}
@media(max-width:699px){
    .fixtures-calendar-actions{display:grid;grid-template-columns:1fr;gap:9px;width:100%;}
    .fixtures-calendar-actions .button,
    .fixtures-calendar-actions__all,
    .fixtures-calendar-actions__team{width:100%!important;min-width:0;min-height:48px;padding:11px 14px!important;white-space:normal!important;text-align:center;line-height:1.25;font-size:.72rem!important;justify-content:center;}
    .fixtures-calendar-actions .button svg{flex:0 0 17px;width:17px;height:17px;}
}

.lms-live-stats--competition{grid-template-columns:repeat(3,minmax(0,1fr));}
.lms-live-stats--competition .lms-live-stat{position:relative;padding:14px 12px;display:flex;flex-direction:column;justify-content:center;min-height:86px;}
.lms-live-stats--competition .lms-live-stat>span{font-size:7px;line-height:1.2;}
.lms-live-stats--competition .lms-live-stat>strong{font-size:1rem;line-height:1.08;}
.lms-live-stats--competition .lms-live-stat>small{display:flex;align-items:center;gap:4px;margin-top:5px;color:#777f88;font-size:7px;font-weight:800;line-height:1.15;}
.lms-live-stats--competition .lms-live-stat>small .icon{width:11px;height:11px;flex:none;}
.lms-live-stats--competition .lms-live-stat--jackpot{background:linear-gradient(145deg,#fff8dc,#f7e9a7);}
.lms-live-stats--competition .lms-live-stat--jackpot>span{color:#7b6414;}
.lms-live-stats--competition .lms-live-stat--jackpot>strong{color:#111317;font-size:1.28rem;}
.lms-live-stats--competition .lms-live-stat--jackpot>small{color:#806d2b;}
.lms-live-stats--competition .lms-live-stat--deadline>strong{font-size:.84rem;}
@media(min-width:620px){
    .lms-live-stats.lms-live-stats--competition{grid-template-columns:repeat(3,minmax(0,1fr));}
    .lms-live-stats--competition .lms-live-stat{min-height:98px;padding:17px 16px;}
    .lms-live-stats--competition .lms-live-stat>span{font-size:8px;}
    .lms-live-stats--competition .lms-live-stat>strong{font-size:1.18rem;}
    .lms-live-stats--competition .lms-live-stat--jackpot>strong{font-size:1.55rem;}
    .lms-live-stats--competition .lms-live-stat--deadline>strong{font-size:1rem;}
    .lms-live-stats--competition .lms-live-stat>small{font-size:8px;}
}

/* Public Match Centre tabs */
.match-tabs{display:grid;gap:22px}
.match-tabs__nav{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px;padding:7px;background:rgba(10,18,31,.06);border:1px solid rgba(10,18,31,.09);border-radius:16px;position:sticky;top:calc(var(--site-header-height,72px) + 8px);z-index:18;backdrop-filter:blur(14px)}
.match-tabs__button{min-width:0;border:0;border-radius:11px;padding:12px 10px;background:transparent;color:var(--ink);font:inherit;font-weight:800;cursor:pointer;transition:.2s ease}
.match-tabs__button:hover{background:rgba(255,255,255,.7)}
.match-tabs__button.is-active{background:var(--ink);color:#fff;box-shadow:0 7px 18px rgba(10,18,31,.16)}
.match-tabs__panel[hidden]{display:none!important}
.match-tabs__panel{min-width:0}
.match-detail-card--single{width:100%}
.public-event-symbol{display:inline-flex;align-items:center;justify-content:center;min-width:30px;height:30px;margin-right:9px;padding:0 5px;border-radius:8px;background:rgba(10,18,31,.07);font-size:17px;line-height:1;vertical-align:middle}
.public-event-symbol--yellow_card{color:#f6c900;background:#fff7c7}
.public-event-symbol--red_card{color:#d52525;background:#ffe0e0}
.public-event-symbol--substitution{font-size:21px;color:#137a40;background:#dff6e8}
.public-event-symbol--own_goal{font-size:12px;font-weight:900;color:#b82121;background:#ffe7e7;white-space:nowrap}
.timeline-event__sub{display:flex!important;gap:7px;align-items:center;flex-wrap:wrap}
.timeline-event__sub b{color:var(--ink)}
@media (max-width:720px){
  .match-tabs{gap:16px}
  .match-tabs__nav{grid-template-columns:repeat(2,minmax(0,1fr));gap:6px;padding:6px;top:calc(var(--site-header-height,64px) + 5px)}
  .match-tabs__button{padding:10px 7px;font-size:12px;line-height:1.2}
  .public-event-symbol{min-width:28px;height:28px;margin-right:7px}
}

/* 1 September 2026 - LMS account state, Player Ratings and Training Schedule */
.lms-account-status-section{padding-top:0}
.lms-account-status{display:flex;align-items:center;justify-content:space-between;gap:28px;padding:30px;border:1px solid #dfe3e8;border-radius:22px;background:#fff;box-shadow:0 16px 38px rgba(12,17,24,.06)}
.lms-account-status__copy{max-width:760px}.lms-account-status h2{margin:6px 0 10px}.lms-account-status p{margin:0;line-height:1.7;color:#56606d}
.lms-account-status--eliminated{background:#fff4f4;border-color:#efbcbc}.lms-account-status--through{background:#f0fbf3;border-color:#b9dfc2}
.player-ratings-block{margin-top:34px}.player-ratings-window,.player-ratings-login{display:flex;align-items:center;justify-content:space-between;gap:18px;padding:20px 22px;border:1px solid #dfe3e8;border-radius:18px;background:#fff;margin-bottom:18px}.player-ratings-window>span{display:grid;place-items:center;width:44px;height:44px;border-radius:12px;background:#f2c94c}.player-ratings-window div{flex:1}.player-ratings-window strong,.player-ratings-window small{display:block}.player-ratings-window small{margin-top:4px;color:#68717c}.player-ratings-login p{margin:6px 0 0;color:#66707c;line-height:1.6}.rating-alert{padding:14px 16px;border-radius:12px;margin:12px 0 18px}.rating-alert--success{background:#eefaf1;border:1px solid #b7ddc0}.rating-alert--error{background:#fff1f1;border:1px solid #efbcbc}
.player-ratings-vote__list{display:grid;gap:10px;margin-bottom:18px}.player-rating-vote-row{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:15px 18px;border:1px solid #e1e5e9;border-radius:14px;background:#fff;min-width:0}.player-rating-vote-row>span{min-width:0}.player-rating-vote-row span strong,.player-rating-vote-row span small{display:block}.player-rating-vote-row span small{margin-top:3px;color:#747d87}.player-rating-stepper{display:grid;grid-template-columns:44px 64px 44px;align-items:center;gap:7px;flex:0 0 auto}.player-rating-stepper button{width:44px;height:44px;padding:0;border:1px solid #cfd5db;border-radius:9px;background:#0d1117;color:#fff;font:800 1.35rem/1 Arial,sans-serif;cursor:pointer;touch-action:manipulation}.player-rating-stepper button:disabled{opacity:.38;cursor:not-allowed}.player-rating-stepper input{width:64px;height:44px;box-sizing:border-box;border:1px solid #cfd5db;border-radius:9px;background:#fff;color:#111;text-align:center;font:800 1rem/1 inherit;padding:0 6px}
.player-ratings-final{display:grid;gap:18px;padding:22px;border:1px solid #dfe3e8;border-radius:20px;background:#fff}.player-rating-result-row__head{display:flex;align-items:flex-end;justify-content:space-between;gap:18px;margin-bottom:8px}.player-rating-result-row__head span strong,.player-rating-result-row__head span small{display:block}.player-rating-result-row__head span small{margin-top:2px;color:#747d87}.player-rating-result-row__head b{font-size:1.55rem}.player-rating-result-row__bar{height:10px;border-radius:999px;background:#0d1117;overflow:hidden}.player-rating-result-row__bar span{display:block;height:100%;background:#d9a526;border-radius:999px 0 0 999px}
.training-public-section{background:#f5f6f7}.training-public-head{display:flex;justify-content:space-between;align-items:end;margin-bottom:18px}.training-day-selector{display:grid;grid-template-columns:repeat(7,1fr);gap:8px;margin-bottom:30px}.training-day-selector a{display:flex;min-width:0;flex-direction:column;align-items:center;gap:2px;padding:12px 5px;border:1px solid #dfe3e8;border-radius:13px;background:#fff;color:#15191f;text-decoration:none}.training-day-selector a small{font-size:.72rem;color:#737c87}.training-day-selector a em{font-size:.62rem;color:#b02525;font-style:normal;font-weight:800}.training-day-selector a.is-active{background:#0b0d10;color:#fff;border-color:#0b0d10}.training-day-selector a.is-active small{color:#c9ced5}.training-selected-heading{margin-bottom:18px}.training-selected-heading h2{margin:5px 0 0}.training-week-closed,.training-day-closed,.training-empty-public{padding:38px 26px;text-align:center;border-radius:22px;border:1px solid #efc0c0;background:#fff5f5}.training-week-closed>span:first-child,.training-day-closed>span:first-child,.training-empty-public>span:first-child{display:inline-grid;place-items:center;width:54px;height:54px;border-radius:16px;background:#fff;margin-bottom:12px}.training-week-closed h2,.training-day-closed h3,.training-empty-public h2{margin:8px 0}.training-week-closed p,.training-day-closed p,.training-empty-public p{margin:0 auto 8px;max-width:680px;color:#626c77;line-height:1.7}.training-day-closed--neutral,.training-empty-public{background:#fff;border-color:#dfe3e8}
.training-venue-card{border:1px solid #dce1e6;border-radius:22px;background:#fff;overflow:hidden;margin-bottom:24px;box-shadow:0 14px 34px rgba(12,17,24,.05)}.training-venue-card__head{padding:20px 22px}.training-venue-card__head h3{margin:4px 0 0}.training-layout-public{background:#edf0f2;padding:12px}.training-layout-public img{display:block;width:100%;max-height:420px;object-fit:contain;border-radius:14px}.training-time-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;padding:16px}.training-time-card{border:1px solid #e1e5e9;border-radius:16px;overflow:hidden;background:#fff}.training-time-card__head{display:flex;justify-content:center;align-items:center;gap:8px;padding:12px;background:#0b0d10;color:#fff;font-weight:900}.training-time-card__body{padding:8px 12px}.training-pitch-row{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:10px 0;border-bottom:1px solid #edf0f2}.training-pitch-row:last-child{border-bottom:0}.training-pitch-row span strong,.training-pitch-row span small{display:block}.training-pitch-row span small{margin-top:2px;color:#7b8490;font-size:.72rem}.training-assignment{font-style:normal;font-size:.76rem;font-weight:900;text-align:right}.training-assignment--free{color:#218746}.training-assignment--na{color:#a42a2a}.training-time-card__empty{font-size:.8rem;color:#77818d;text-align:center}
@media(max-width:760px){.lms-account-status,.player-ratings-login{align-items:stretch;flex-direction:column}.lms-account-status .button,.player-ratings-login .button{width:100%;justify-content:center}.training-day-selector{gap:4px}.training-day-selector a{padding:10px 2px;border-radius:10px}.training-day-selector a strong{font-size:.78rem}.training-day-selector a small{font-size:.61rem}.training-time-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:7px;padding:9px}.training-time-card__head{font-size:.78rem;padding:9px 4px}.training-time-card__body{padding:6px 8px}.training-pitch-row{display:block;padding:8px 0}.training-pitch-row span strong{font-size:.77rem}.training-assignment{display:block;margin-top:4px;text-align:left;font-size:.7rem}.training-layout-public{padding:8px}.player-rating-vote-row{align-items:center;flex-direction:row;padding:13px 12px;gap:10px}.player-rating-stepper{grid-template-columns:40px 58px 40px;gap:5px}.player-rating-stepper button{width:40px;height:40px}.player-rating-stepper input{width:58px;height:40px}}

/* LAJFC public Training Schedule spacing polish - v1.2 */
.training-public-section{padding-top:42px;padding-bottom:54px}
.training-public-section .shell{display:flex;flex-direction:column;gap:24px}
.training-public-head{margin:0}
.training-public-head h2,.training-selected-heading h2{line-height:1.25}
.training-day-selector{margin:0}
.training-selected-heading{margin:0;padding-top:2px}
.training-selected-heading .eyebrow{display:block;margin-bottom:7px}
.training-week-closed,.training-day-closed,.training-empty-public{margin:0;line-height:1.6}
.training-week-closed h2,.training-day-closed h3,.training-empty-public h2{line-height:1.3;margin:10px 0 9px}
.training-venue-card{margin:0}
.training-venue-card__head{padding:22px}
.training-venue-card__head .eyebrow{display:block;margin-bottom:6px}
.training-venue-card__head h3{line-height:1.3;margin:0}
.training-time-grid{gap:14px;padding:18px}
.training-time-card__head{line-height:1.25}
.training-pitch-row{line-height:1.4}
.training-time-card__empty{line-height:1.55;margin:8px 0}
@media(max-width:760px){.training-public-section{padding-top:28px;padding-bottom:38px}.training-public-section .shell{gap:18px}.training-venue-card__head{padding:18px}.training-time-grid{gap:8px;padding:10px}.training-week-closed,.training-day-closed,.training-empty-public{padding:28px 18px}}

/* 2 Sept 2026 - Training rules and Fans Player Awards */
.page-hero .button--outline{color:var(--paper);border-color:rgba(255,255,255,.62);background:transparent}
.page-hero .button--outline:hover{color:var(--paper);border-color:var(--paper);background:rgba(255,255,255,.1)}
.training-hero-actions{display:flex;gap:12px;flex-wrap:wrap;margin-top:24px}.training-rules-content{display:grid;gap:24px}.training-rules-intro,.fan-guide-intro{display:flex;gap:18px;align-items:flex-start;padding:20px;border:1px solid #e5e7eb;border-radius:18px;background:#fafafa}.training-rules-intro>span,.fan-guide-intro>span{display:grid;place-items:center;width:48px;height:48px;flex:0 0 48px;border-radius:14px;background:#e1b72f;color:#08090b}.training-rules-intro h3,.fan-guide-intro h3{margin:0 0 8px}.training-rules-intro p,.fan-guide-intro p{margin:0;line-height:1.7}.training-rules-grid{display:grid;gap:16px}.training-rule-group{display:flex;gap:16px;padding:20px;border:1px solid #e1e4e8;border-radius:18px;background:#fff}.training-rule-group__icon{font-size:28px;line-height:1}.training-rule-group h3{margin:0 0 12px}.training-rule-group ul{margin:0;padding-left:20px;display:grid;gap:10px}.training-rule-group li{line-height:1.65}.training-rules-thanks{padding:20px;border-radius:18px;background:#0a0c10;color:#fff}.training-rules-thanks strong{display:block;color:#e2bb35;font-size:1.1rem;margin-bottom:6px}.training-rules-thanks p{margin:0;line-height:1.65;color:#e6e7e9}
.fan-awards-hero__actions{margin-top:24px}.fan-awards-section{background:#f5f6f8}.fan-award-switcher{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin-bottom:22px}.fan-award-switcher a{display:flex;flex-direction:column;gap:5px;padding:18px 20px;border:1px solid #dfe3e8;border-radius:16px;background:#fff;color:#0a0b0d;text-decoration:none}.fan-award-switcher a.is-active{border-color:#d4ab29;box-shadow:inset 0 0 0 2px #e1b72f}.fan-award-switcher span{font-size:.75rem;font-weight:800;text-transform:uppercase;letter-spacing:.08em;color:#6c7280}.fan-award-switcher strong{font-size:1.05rem}.fan-award-status-card{display:flex;align-items:center;justify-content:space-between;gap:28px;padding:28px;border-radius:22px;border:1px solid #dfe3e8;background:#fff;margin-bottom:24px}.fan-award-status-card h2{margin:6px 0 10px;font-size:clamp(1.5rem,4vw,2.2rem)}.fan-award-status-card p{margin:0 0 10px;max-width:760px;line-height:1.7}.fan-award-status-card>div>strong{font-size:.9rem}.fan-award-status-card.is-open{background:#f2fbf4;border-color:#abd7b6}.fan-award-status-card.is-upcoming{background:#fffaf0;border-color:#e7cf84}.fan-award-status-card__icon{display:grid;place-items:center;width:64px;height:64px;flex:0 0 64px;border-radius:18px;background:#0b0c0f;color:#e2bb35}.fan-award-notice{padding:15px 18px;border-radius:13px;margin:0 0 20px;font-weight:700}.fan-award-notice--success{background:#eaf8ed;border:1px solid #abd7b6;color:#1e5d2d}.fan-award-notice--error{background:#fff0f0;border:1px solid #e3b1b1;color:#872b2b}.fan-award-login,.fan-award-team-head{display:flex;align-items:center;justify-content:space-between;gap:24px;padding:24px;border-radius:20px;background:#fff;border:1px solid #dfe3e8;margin-bottom:24px}.fan-award-login h2,.fan-award-team-head h2{margin:5px 0 8px}.fan-award-login p,.fan-award-team-head p{margin:0;line-height:1.65}.fan-team-picker{margin-top:10px}.fan-team-picker__grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.fan-team-choice{display:flex;align-items:center;gap:16px;padding:18px;border:1px solid #dfe3e8;border-radius:18px;background:#fff;text-decoration:none;color:#090a0c}.fan-team-choice:hover{border-color:#d5ac2d}.fan-team-choice__crest,.fan-award-team-head__crest{display:grid;place-items:center;width:66px;height:66px;flex:0 0 66px;border-radius:16px;background:#f3f4f6;overflow:hidden}.fan-team-choice__crest img,.fan-award-team-head__crest img{max-width:54px;max-height:54px;object-fit:contain}.fan-team-choice>span:nth-child(2){display:grid;gap:4px;flex:1}.fan-team-choice small{color:#747a85}.fan-player-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}.fan-player-choice{position:relative;display:block;overflow:hidden;border:1px solid #dfe3e8;border-radius:20px;background:#fff;cursor:pointer;transition:border-color .18s ease,box-shadow .18s ease}.fan-player-choice input{position:absolute;opacity:0;pointer-events:none}.fan-player-choice.is-selected{border-color:#d6ad2d;box-shadow:inset 0 0 0 2px #e1b72f}.fan-player-choice__select{position:absolute;top:12px;right:12px;z-index:2;display:none;align-items:center;gap:6px;padding:7px 10px;border-radius:999px;background:#e1b72f;color:#0a0b0d;font-size:.72rem;font-weight:900}.fan-player-choice.is-selected .fan-player-choice__select{display:flex}.fan-player-choice__media{display:block;aspect-ratio:16/10;background:#eceff2;overflow:hidden}.fan-player-choice__media img{width:100%;height:100%;object-fit:cover}.fan-player-choice__body{display:block;padding:17px}.fan-player-choice__body>strong{display:block;font-size:1.06rem}.fan-player-choice__body>small{display:block;margin-top:4px;color:#737985}.fan-player-choice__stats{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:7px;margin-top:15px}.fan-player-choice__stats b{display:grid;gap:2px;padding:8px 6px;border-radius:10px;background:#f3f4f6;text-align:center;font-size:.65rem;color:#666d78}.fan-player-choice__stats em{font-style:normal;font-size:1rem;color:#090a0c}.fan-player-vote-form__submit{display:flex;align-items:center;gap:18px;flex-wrap:wrap;margin-top:22px;padding-top:20px;border-top:1px solid #dfe3e8}.fan-player-vote-form__submit p{margin:0;color:#727984;line-height:1.5}.fan-award-history-link,.fan-award-empty{padding:28px;border:1px solid #dfe3e8;border-radius:20px;background:#fff;text-align:center}.fan-award-history-link{display:flex;text-align:left;align-items:center;gap:18px}.fan-award-history-link>span{display:grid;place-items:center;width:54px;height:54px;border-radius:15px;background:#0b0c0f;color:#e1b72f}.fan-award-history-link h2,.fan-award-empty h2,.fan-award-empty h3{margin:0 0 8px}.fan-award-history-link p,.fan-award-empty p{margin:0;line-height:1.65;color:#6e7480}.fan-guide-content{display:grid;gap:22px}.fan-guide-steps{display:grid;gap:12px}.fan-guide-steps>div{display:flex;gap:14px;align-items:flex-start;padding:16px;border:1px solid #e1e4e8;border-radius:15px}.fan-guide-steps b{display:grid;place-items:center;width:34px;height:34px;flex:0 0 34px;border-radius:50%;background:#0b0c0f;color:#e1b72f}.fan-guide-steps span{display:grid;gap:4px}.fan-guide-steps small{line-height:1.6;color:#6d7380}.collectible-card--fan-award{position:relative}.fan-award-player-card-overlay{position:absolute;left:17%;right:17%;bottom:10%;height:22%;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;color:#fff;pointer-events:none}.fan-award-player-card-overlay span{font-size:.72rem;color:#e2bb35;text-transform:uppercase;letter-spacing:.08em}.fan-award-player-card-overlay strong{font-size:clamp(.9rem,2vw,1.25rem);margin:5px 0}.fan-award-player-card-overlay b{font-size:.58rem;letter-spacing:.05em;color:#e5c85e}.fan-award-player-card-overlay small{margin-top:5px;font-size:.58rem;color:#ccc}
@media(max-width:820px){.fan-player-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.fan-team-picker__grid{grid-template-columns:1fr}.fan-award-status-card,.fan-award-login,.fan-award-team-head{align-items:flex-start;flex-direction:column}.fan-award-status-card__icon{width:52px;height:52px;flex-basis:52px}.fan-player-choice__stats{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:520px){.fan-award-switcher{grid-template-columns:1fr}.fan-player-grid{grid-template-columns:1fr}.training-rule-group{padding:16px}.fan-award-status-card,.fan-award-login,.fan-award-team-head{padding:20px}.fan-award-team-head .button{width:100%}}
.fan-awards-history{margin-top:34px;padding-top:30px;border-top:1px solid #dfe3e8}.fan-awards-history__grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.fan-awards-history__grid article{display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:14px;padding:16px;border:1px solid #dfe3e8;border-radius:16px;background:#fff}.fan-awards-history__crest{width:48px;height:48px;display:grid;place-items:center;border-radius:12px;background:#f2f3f5}.fan-awards-history__crest img{max-width:40px;max-height:40px}.fan-awards-history__grid article>div{display:grid;gap:3px}.fan-awards-history__grid small{color:#a27f18;font-weight:800;text-transform:uppercase;letter-spacing:.06em}.fan-awards-history__grid strong{font-size:1rem}.fan-awards-history__grid article>div>span{font-size:.78rem;color:#6f7681}.fan-awards-history__grid article>b{font-size:.78rem;white-space:nowrap}@media(max-width:700px){.fan-awards-history__grid{grid-template-columns:1fr}.fan-awards-history__grid article{grid-template-columns:auto 1fr}.fan-awards-history__grid article>b{grid-column:2}}


/* Fans Player Awards compact category voting */
.fan-category-picker{margin-top:10px}.fan-category-picker__grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.fan-category-choice{display:flex;align-items:center;gap:16px;padding:20px;border:1px solid #dfe3e8;border-radius:18px;background:#fff;color:#090a0c;text-decoration:none}.fan-category-choice:hover{border-color:#d4ab29}.fan-category-choice__icon{display:grid;place-items:center;width:54px;height:54px;flex:0 0 54px;border-radius:15px;background:#0b0c0f;color:#e1b72f}.fan-category-choice__copy{display:grid;gap:4px;min-width:0;flex:1}.fan-category-choice__copy small{font-size:.72rem;font-weight:800;text-transform:uppercase;letter-spacing:.08em;color:#8a6d12}.fan-category-choice__copy strong{font-size:1.08rem}.fan-category-choice__copy em{font-style:normal;font-size:.82rem;color:#707782;line-height:1.4}.fan-category-choice__action{display:flex;align-items:center;gap:7px;font-size:.8rem;font-weight:900;white-space:nowrap}.fan-category-context{display:flex;align-items:center;justify-content:space-between;gap:22px;padding:22px 24px;margin-bottom:20px;border:1px solid #dfe3e8;border-radius:18px;background:#fff}.fan-category-context h2{margin:5px 0 8px}.fan-category-context p{margin:0;max-width:760px;line-height:1.65}.fan-player-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.fan-player-choice{display:flex;align-items:stretch;min-height:142px;border-radius:18px;overflow:hidden}.fan-player-choice__media{width:118px;min-width:118px;aspect-ratio:auto;background:#eef0f3;display:flex;align-items:center;justify-content:center;padding:6px}.fan-player-choice__media img{width:100%;height:100%;max-height:142px;object-fit:contain;object-position:center}.fan-player-choice__body{display:flex;flex:1;min-width:0;flex-direction:column;justify-content:center;padding:15px 16px}.fan-player-choice__top{display:flex;align-items:flex-start;justify-content:space-between;gap:10px}.fan-player-choice__top>span:first-child{display:grid;gap:3px;min-width:0}.fan-player-choice__top strong{font-size:1rem;line-height:1.25}.fan-player-choice__top small{font-size:.78rem;color:#737985}.fan-player-choice__tick{display:grid;place-items:center;width:27px;height:27px;flex:0 0 27px;border-radius:50%;border:1px solid #d9dde2;background:#f3f4f6;color:transparent;font-size:.78rem;font-weight:900}.fan-player-choice.is-selected .fan-player-choice__tick{background:#e1b72f;border-color:#e1b72f;color:#08090b}.fan-player-choice__stats{display:flex;flex-wrap:wrap;gap:6px;margin-top:12px}.fan-player-choice__stats b{display:flex;align-items:baseline;gap:4px;min-width:58px;padding:7px 8px;border-radius:9px;text-align:left;font-size:.62rem}.fan-player-choice__stats em{font-size:.88rem}.fan-award-team-head{margin-top:18px}.fan-award-team-head__crest{width:58px;height:58px;flex-basis:58px}.fan-award-team-head__crest img{max-width:48px;max-height:48px}
@media(max-width:820px){.fan-category-picker__grid{grid-template-columns:1fr}.fan-category-context{align-items:flex-start;flex-direction:column}.fan-player-grid{grid-template-columns:1fr}.fan-player-choice{min-height:124px}.fan-player-choice__media{width:98px;min-width:98px}.fan-player-choice__media img{max-height:124px}.fan-player-choice__body{padding:12px}.fan-player-choice__stats{margin-top:9px}.fan-player-choice__stats b{min-width:52px;padding:6px 7px}.fan-category-choice__action{white-space:normal}}
@media(max-width:430px){.fan-category-choice{padding:16px;gap:12px}.fan-category-choice__icon{width:46px;height:46px;flex-basis:46px}.fan-category-choice__action{font-size:.72rem}.fan-player-choice__media{width:88px;min-width:88px}.fan-player-choice__top strong{font-size:.94rem}.fan-player-choice__stats b{font-size:.58rem;min-width:48px}}

/* Fans Player Awards - one vote per enabled team */
.fan-team-choice__action{margin-left:auto;display:flex;align-items:center;gap:7px;font-size:.8rem;font-weight:900;color:#17191d;white-space:nowrap}.fan-player-vote-form__submit{scroll-margin-block:140px}.fan-awards-section .fan-team-picker .section-heading{margin-bottom:18px}.fan-awards-section .fan-team-choice small{line-height:1.45}.fan-awards-section .fan-award-team-head>div{min-width:0}.fan-awards-section .fan-award-team-head>div p{max-width:760px}.fan-awards-section .fan-player-choice__media img{object-fit:contain;object-position:center bottom}.fan-awards-section .fan-player-choice__body{min-width:0}
@media(max-width:620px){.fan-team-choice{padding:15px;gap:12px}.fan-team-choice__crest{width:54px;height:54px;flex-basis:54px}.fan-team-choice__crest img{max-width:44px;max-height:44px}.fan-team-choice__action{font-size:.72rem;white-space:normal}.fan-player-vote-form__submit{display:grid;gap:10px}.fan-player-vote-form__submit .button{width:100%}}

/* Fans Player Awards - compact team vote header */
.fan-awards-section .fan-award-team-head{
  display:grid;
  grid-template-columns:auto minmax(0,1fr) auto;
  align-items:center;
  justify-content:stretch;
  gap:16px;
  padding:18px 20px;
  margin-top:18px;
  margin-bottom:22px;
}
.fan-awards-section .fan-award-team-head__crest{
  width:64px;
  height:64px;
  flex:none;
  border-radius:16px;
}
.fan-awards-section .fan-award-team-head__crest img{
  max-width:52px;
  max-height:52px;
}
.fan-awards-section .fan-award-team-head>div{
  min-width:0;
}
.fan-awards-section .fan-award-team-head .eyebrow{
  display:inline-flex;
  margin:0 0 5px;
}
.fan-awards-section .fan-award-team-head h2{
  margin:0 0 4px;
  line-height:1.15;
}
.fan-awards-section .fan-award-team-head p{
  margin:0;
  max-width:none;
  line-height:1.45;
}
.fan-awards-section .fan-award-team-head>.button{
  align-self:center;
  margin:0;
  white-space:nowrap;
}
@media(max-width:820px){
  .fan-awards-section .fan-award-team-head{
    grid-template-columns:58px minmax(0,1fr);
    align-items:center;
    gap:13px;
    padding:16px;
  }
  .fan-awards-section .fan-award-team-head__crest{
    width:58px;
    height:58px;
  }
  .fan-awards-section .fan-award-team-head__crest img{
    max-width:48px;
    max-height:48px;
  }
  .fan-awards-section .fan-award-team-head h2{
    font-size:clamp(1.45rem,7vw,2rem);
  }
  .fan-awards-section .fan-award-team-head p{
    font-size:.88rem;
  }
  .fan-awards-section .fan-award-team-head>.button{
    grid-column:1/-1;
    width:100%;
    margin-top:2px;
  }
}
@media(max-width:380px){
  .fan-awards-section .fan-award-team-head{
    grid-template-columns:52px minmax(0,1fr);
    gap:11px;
    padding:14px;
  }
  .fan-awards-section .fan-award-team-head__crest{
    width:52px;
    height:52px;
  }
  .fan-awards-section .fan-award-team-head__crest img{
    max-width:43px;
    max-height:43px;
  }
  .fan-awards-section .fan-award-team-head .eyebrow{
    font-size:.63rem;
  }
  .fan-awards-section .fan-award-team-head h2{
    font-size:1.35rem;
  }
  .fan-awards-section .fan-award-team-head p{
    font-size:.8rem;
    line-height:1.4;
  }
}

/* 100 Club */
.hc-stack{display:flex;flex-direction:column;gap:24px}.hc-hero__actions{display:flex;gap:12px;flex-wrap:wrap;margin-top:24px}.hc-stat-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px}.hc-stat-grid article,.hc-section-card{background:#fff;border:1px solid #e5e7eb;border-radius:20px}.hc-stat-grid article{padding:18px;display:flex;flex-direction:column;gap:5px}.hc-stat-grid span,.hc-stat-grid small{color:#68707c}.hc-stat-grid strong{font-size:1.45rem;line-height:1.15}.hc-section-card{padding:24px}.hc-section-card h1,.hc-section-card h2,.hc-section-card h3{margin:6px 0 10px;line-height:1.2}.hc-section-card p{margin:0 0 18px;line-height:1.65}.hc-section-head{display:flex;justify-content:space-between;align-items:flex-start;gap:18px;margin-bottom:18px}.hc-feature-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin-top:22px}.hc-feature-grid>div{padding:16px;border-radius:16px;background:#f6f7f8;display:flex;flex-direction:column;gap:7px;min-width:0}.hc-feature-grid b{width:30px;height:30px;border-radius:50%;display:grid;place-items:center;background:#d5ad24;color:#111}.hc-feature-grid span{color:#65707b;line-height:1.5;font-size:.9rem}.hc-draw-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}.hc-draw-grid article{padding:16px;border:1px solid #e1e5e9;border-radius:16px;display:flex;flex-direction:column;gap:6px}.hc-draw-grid strong{font-size:1.4rem}.hc-draw-grid small{color:#6f7781}.hc-benefit-grid,.hc-benefit-cards{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}.hc-benefit-grid article,.hc-benefit-card{border:1px solid #e2e6e9;border-radius:16px;padding:15px;display:flex;gap:13px;align-items:center}.hc-benefit-grid img,.hc-benefit-card img{width:52px;height:52px;object-fit:contain;border-radius:12px;background:#f5f6f7}.hc-benefit-grid strong,.hc-benefit-grid span,.hc-benefit-card span,.hc-benefit-card strong{display:block}.hc-benefit-grid span,.hc-benefit-card span{margin-top:4px;color:#68717c}.hc-benefit-card{align-items:flex-start}.hc-benefit-card h2{font-size:1.1rem;margin:4px 0 6px}.hc-benefit-card p{margin:8px 0;line-height:1.55}.hc-benefit-card small{display:block;line-height:1.5;color:#737b84}.hc-join-shell{max-width:1080px}.hc-join-form{display:flex;flex-direction:column;gap:24px}.hc-qty-row{display:grid;grid-template-columns:repeat(10,1fr);gap:8px;margin:18px 0}.hc-qty-row button{min-height:46px;border-radius:12px;border:1px solid #dce1e5;background:#fff;font-weight:900;cursor:pointer}.hc-qty-row button.is-active{background:#111;color:#fff;border-color:#111}.hc-price-summary{display:flex;align-items:baseline;gap:10px;flex-wrap:wrap;padding:14px 16px;border-radius:14px;background:#f5f6f7}.hc-price-summary strong{font-size:1.35rem}.hc-price-summary small{width:100%;color:#68717c}.hc-selected-wrap{padding:16px;background:#fffaf0;border:1px solid #ead8a5;border-radius:16px;margin:16px 0}.hc-selected-chips,.hc-number-badges{display:flex;gap:8px;flex-wrap:wrap;margin:10px 0}.hc-chip,.hc-number-badges span{border:0;border-radius:999px;background:#d5ad24;color:#111;padding:7px 11px;font-weight:900}.hc-number-tools{display:grid;grid-template-columns:1fr auto;gap:12px;align-items:end;margin:16px 0}.hc-number-tools label span{display:block;font-weight:800;margin-bottom:7px}.hc-number-tools input{width:100%;min-height:46px;border:1px solid #dfe3e6;border-radius:12px;padding:0 13px;font-size:16px}.hc-number-grid{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:10px}.hc-number{border-radius:14px;padding:14px 8px;border:2px solid transparent;display:flex;flex-direction:column;align-items:center;gap:4px;cursor:pointer;min-width:0}.hc-number strong{font-size:1.2rem}.hc-number span{font-size:.72rem;font-weight:800}.hc-number.is-available{background:#e9f8ee;border-color:#bee6ca;color:#176c36}.hc-number.is-taken{background:#fff0f0;border-color:#efc3c3;color:#a72d2d;cursor:not-allowed;opacity:.72}.hc-number.is-selected{background:#fff4ce;border-color:#d5ad24;color:#111;box-shadow:0 0 0 2px rgba(213,173,36,.16)}.hc-pagination{display:flex;justify-content:center;align-items:center;gap:12px;margin-top:18px}.hc-pagination button{border:1px solid #dfe3e7;background:#fff;border-radius:10px;padding:9px 13px;font-weight:800}.hc-field-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}.hc-field-wide{min-width:0}.hc-sort-code{display:flex;align-items:center;gap:7px}.hc-sort-code input{width:54px!important;min-width:54px!important;text-align:center;padding-left:6px!important;padding-right:6px!important}.hc-sort-code b{font-size:1rem}.hc-payment-options{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin:16px 0}.hc-payment-options label{display:flex;gap:12px;padding:16px;border:1px solid #dfe3e6;border-radius:16px;cursor:pointer}.hc-payment-options input{margin-top:3px}.hc-payment-options strong,.hc-payment-options small{display:block}.hc-payment-options small{margin-top:6px;line-height:1.5;color:#69727c}.hc-payment-note{display:flex;flex-direction:column;gap:4px;margin:18px 0;padding:14px;border-radius:14px;background:#f5f6f7}.hc-account-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}.hc-status-row,.hc-card-actions{display:flex;gap:10px;align-items:center;flex-wrap:wrap;margin-top:16px}.hc-status{padding:6px 10px;border-radius:999px;font-size:.75rem;font-weight:900;background:#eef0f2}.hc-status--active{background:#e8f7ed;color:#20723f}.hc-status--past_due,.hc-status--payment_due{background:#fff0f0;color:#9e2525}.hc-alert{display:flex;justify-content:space-between;align-items:center;gap:18px;padding:17px 18px;border-radius:16px}.hc-alert>div{display:flex;flex-direction:column;gap:5px}.hc-alert span{line-height:1.5}.hc-alert--danger{background:#fff0f0;border:1px solid #efc2c2;color:#7f2020}.hc-payment-history{display:flex;flex-direction:column}.hc-payment-history>div{display:grid;grid-template-columns:1fr auto auto;gap:14px;align-items:center;padding:13px 0;border-bottom:1px solid #edf0f2}.hc-pay-status{font-style:normal;border-radius:999px;padding:5px 9px;background:#eef1f3;font-size:.74rem;font-weight:900}.hc-pay-status--paid{background:#e7f7ed;color:#216f3d}.hc-pay-status--failed{background:#fff0f0;color:#9c2727}.hc-draw-tabs{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px}.hc-draw-tabs a{padding:12px;border:1px solid #dfe3e7;border-radius:14px;text-decoration:none;color:#111;display:flex;flex-direction:column;gap:3px;text-align:center}.hc-draw-tabs a.is-active{background:#111;color:#fff;border-color:#111}.hc-live-stage{position:relative;aspect-ratio:16/9;min-height:360px;border-radius:24px;overflow:hidden;background:#0b0d10 var(--hc-bg) center/cover no-repeat;color:#fff}.hc-live-copy{position:absolute;left:5%;top:6%;z-index:2}.hc-live-copy h2{margin:5px 0}.hc-reel{position:absolute;top:var(--ry);width:var(--rw);height:var(--rh);transform:translate(-50%,-50%);background:var(--reel-bg);border:3px solid var(--reel-border);border-radius:16px;display:grid;place-items:center;overflow:hidden}.hc-reel[data-reel="0"]{left:var(--r1)}.hc-reel[data-reel="1"]{left:var(--r2)}.hc-reel[data-reel="2"]{left:var(--r3)}.hc-reel span{font-size:var(--digit);font-weight:1000;line-height:1;color:var(--digit-color);font-variant-numeric:tabular-nums}.hc-reel.is-spinning span{filter:blur(1px)}.hc-live-winner{position:absolute;left:50%;bottom:5%;transform:translateX(-50%);display:flex;align-items:center;gap:10px;background:rgba(0,0,0,.78);padding:12px 18px;border-radius:999px;white-space:nowrap}.hc-live-winner strong{font-size:1.7rem;color:#d5ad24}.hc-live-message{position:fixed;left:50%;top:95px;transform:translateX(-50%);z-index:10000;max-width:min(92vw,720px);padding:14px 18px;border-radius:14px;background:#111;color:#fff;font-weight:900;box-shadow:0 16px 40px rgba(0,0,0,.28);text-align:center}.hc-live-message.type-important,.hc-live-message.type-winner{background:#d5ad24;color:#111}.hc-live-message.type-delay{background:#9f2929}.hc-card-wrap{max-width:760px;margin:0 auto}.hc-member-card{position:relative;aspect-ratio:1.586/1;border-radius:24px;overflow:hidden;background:#15191e var(--card-bg) center/cover no-repeat;color:var(--text);box-shadow:0 18px 48px rgba(0,0,0,.18)}.hc-card-logo{position:absolute;top:6%;left:5%;width:12%;height:20%;object-fit:contain}.hc-card-title{position:absolute;right:5%;top:8%;font-weight:1000;font-size:clamp(1rem,3vw,1.8rem);color:var(--accent)}.hc-card-photo{position:absolute;border-radius:16px;overflow:hidden;background:#252b31}.hc-card-photo img{width:100%;height:100%;object-fit:cover}.hc-card-field{position:absolute;display:flex;flex-direction:column;gap:4px}.hc-card-field small{text-transform:uppercase;letter-spacing:.08em;opacity:.72;font-weight:800}.hc-card-field strong{font-size:clamp(.9rem,2.4vw,1.5rem)}.hc-payment-result{max-width:700px;margin:auto;text-align:center}.hc-payment-result .button{margin-top:8px}
@media(max-width:900px){.hc-stat-grid,.hc-draw-grid,.hc-feature-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.hc-benefit-grid,.hc-benefit-cards{grid-template-columns:repeat(2,minmax(0,1fr))}.hc-qty-row{grid-template-columns:repeat(5,1fr)}}
@media(max-width:650px){.hc-stack,.hc-join-form{gap:18px}.hc-section-card{padding:18px}.hc-section-head{flex-direction:column;align-items:stretch}.hc-stat-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:9px}.hc-stat-grid article{padding:14px}.hc-feature-grid,.hc-draw-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:9px}.hc-benefit-grid,.hc-benefit-cards,.hc-account-grid,.hc-payment-options,.hc-field-grid{grid-template-columns:1fr}.hc-number-tools{grid-template-columns:1fr}.hc-number-grid{grid-template-columns:repeat(5,minmax(0,1fr));gap:6px}.hc-number{padding:11px 2px;border-radius:10px}.hc-number strong{font-size:.98rem}.hc-number span{font-size:.58rem}.hc-draw-tabs{grid-template-columns:repeat(2,minmax(0,1fr))}.hc-live-stage{min-height:310px;aspect-ratio:4/5}.hc-live-copy{left:6%;top:5%}.hc-reel{border-width:2px;border-radius:12px}.hc-reel span{font-size:min(var(--digit),16vw)}.hc-live-winner{bottom:6%;width:88%;justify-content:center;white-space:normal;flex-wrap:wrap}.hc-alert{align-items:stretch;flex-direction:column}.hc-alert .button{width:100%}.hc-payment-history>div{grid-template-columns:1fr auto}.hc-payment-history em{grid-column:1/-1;justify-self:start}.hc-hero__actions .button{flex:1 1 auto}.hc-sort-code{justify-content:flex-start}.hc-sort-code input{width:50px!important;min-width:50px!important}}
@media(max-width:365px){.hc-number-grid{grid-template-columns:repeat(4,minmax(0,1fr))}.hc-feature-grid,.hc-draw-grid{grid-template-columns:1fr}}
.hc-live-availability{display:flex;align-items:baseline;gap:8px;margin:14px 0 4px}.hc-live-availability strong{font-size:1.45rem;color:#1f7a43}.hc-live-availability span{color:#68717c;font-weight:750}.hc-reel.is-spinning span{animation:hc-slot-pulse .14s linear infinite}@keyframes hc-slot-pulse{0%{transform:translateY(-18%);opacity:.72}50%{transform:translateY(0);opacity:1}100%{transform:translateY(18%);opacity:.72}}

/* 100 Club polish - 3 Sep */
.hc-join-cta{display:flex;align-items:center;justify-content:space-between;gap:24px;padding:22px 24px;border:1px solid #ead89e;border-radius:20px;background:linear-gradient(135deg,#fffaf0,#fff);box-shadow:0 10px 30px rgba(15,17,20,.05)}.hc-join-cta h2{margin:6px 0 8px;font-size:clamp(1.35rem,2.4vw,2rem)}.hc-join-cta p{margin:0;max-width:760px;line-height:1.6;color:#616a74}.hc-join-cta .button{flex:none}.hc-card-logo{position:absolute;object-fit:contain}.hc-card-barcode{position:absolute;color:#111;background:#fff;padding:4px 6px;border-radius:6px;overflow:hidden}.hc-card-barcode svg{display:block;width:100%;height:100%}.hc-barcode-svg text{fill:currentColor}.hc-live-stage{--m-hc-bg:var(--hc-bg);--m-r1:22%;--m-r2:50%;--m-r3:78%;--m-ry:48%;--m-rw:24%;--m-rh:24%;--m-digit:76px;--m-digit-color:#fff;--m-reel-bg:#090b0f;--m-reel-border:#d5ad24}
@media(max-width:650px){.hc-join-cta{align-items:stretch;flex-direction:column;padding:18px}.hc-join-cta .button{width:100%}.hc-live-stage{background-image:var(--m-hc-bg);}.hc-reel[data-reel="0"]{left:var(--m-r1)}.hc-reel[data-reel="1"]{left:var(--m-r2)}.hc-reel[data-reel="2"]{left:var(--m-r3)}.hc-reel{top:var(--m-ry);width:var(--m-rw);height:var(--m-rh);background:var(--m-reel-bg);border-color:var(--m-reel-border)}.hc-reel span{font-size:min(var(--m-digit),18vw);color:var(--m-digit-color)}}
.hc-live-copy{left:var(--tx);top:var(--ty);transform:translate(-50%,-50%);text-align:center}.hc-live-prize-copy{position:absolute;left:var(--px);top:var(--py);transform:translate(-50%,-50%);z-index:2;display:grid;gap:3px;text-align:center}.hc-live-prize-copy span{font-size:.7rem;text-transform:uppercase;letter-spacing:.1em;font-weight:900;opacity:.7}.hc-live-prize-copy strong{font-size:1.45rem;color:#d5ad24}
@media(max-width:650px){.hc-live-copy{left:var(--m-tx);top:var(--m-ty)}.hc-live-prize-copy{left:var(--m-px);top:var(--m-py)}}

/* 100 Club v1.2 - number picker, payout and live draw polish */
.hc-number[hidden]{display:none!important}
.hc-pagination button:disabled{opacity:.45;cursor:not-allowed;background:#f3f4f5}
.hc-payout-card{scroll-margin-top:110px}
.hc-payout-note{display:flex;flex-direction:column;gap:5px;margin:18px 0 22px;padding:15px 17px;border:1px solid #ead89e;border-radius:15px;background:#fffaf0}.hc-payout-note strong{font-size:.88rem}.hc-payout-note span{color:#666f79;line-height:1.55}
.hc-payout-grid{padding:18px;border:1px solid #e3e6e9;border-radius:18px;background:#fafbfc}.hc-payout-grid .shop-field{display:grid;gap:8px}.hc-payout-grid .shop-field>span:first-child{font-weight:850}.hc-payout-grid input[type="text"],.hc-payout-grid input:not([type]){width:100%;min-height:48px;border:1px solid #d8dde2;border-radius:12px;background:#fff;padding:10px 12px;font:inherit}.hc-payout-grid input[type="file"]{width:100%;border:1px solid #d8dde2;border-radius:12px;background:#fff;padding:10px}.hc-payout-grid small{line-height:1.5;color:#69727c}.hc-sort-code{min-height:48px}.hc-sort-code input{height:46px;border:1px solid #d8dde2!important;border-radius:11px!important;background:#fff!important;font-size:16px!important}
.hc-draw-tabs>span.is-disabled{padding:12px;border:1px solid #e1e4e8;border-radius:14px;color:#8a9098;background:#f5f6f7;display:flex;flex-direction:column;gap:3px;text-align:center;cursor:not-allowed}.hc-draw-tabs>span.is-disabled small{font-size:.6rem;font-weight:800;color:#a1a6ad}.hc-draw-tabs>a,.hc-draw-tabs>span{min-width:0}
.hc-reel[data-reel="0"]{left:var(--r1);top:var(--r1y);width:var(--r1w);height:var(--r1h)}.hc-reel[data-reel="1"]{left:var(--r2);top:var(--r2y);width:var(--r2w);height:var(--r2h)}.hc-reel[data-reel="2"]{left:var(--r3);top:var(--r3y);width:var(--r3w);height:var(--r3h)}
.hc-live-copy h2{font-size:var(--title-size);color:var(--title-color)}.hc-live-prize-copy strong{font-size:var(--prize-size);color:var(--prize-color)}.hc-live-extra{position:absolute;left:var(--ex);top:var(--ey);transform:translate(-50%,-50%);z-index:2;font-size:var(--extra-size);color:var(--extra-color);font-weight:850;text-align:center;max-width:86%;line-height:1.35}
@media(max-width:650px){.hc-payout-grid{padding:14px}.hc-sort-code{justify-content:flex-start;flex-wrap:nowrap}.hc-sort-code input{width:52px!important;min-width:52px!important;max-width:52px!important}.hc-reel[data-reel="0"]{left:var(--m-r1);top:var(--m-r1y);width:var(--m-r1w);height:var(--m-r1h)}.hc-reel[data-reel="1"]{left:var(--m-r2);top:var(--m-r2y);width:var(--m-r2w);height:var(--m-r2h)}.hc-reel[data-reel="2"]{left:var(--m-r3);top:var(--m-r3y);width:var(--m-r3w);height:var(--m-r3h)}.hc-live-copy h2{font-size:var(--m-title-size);color:var(--m-title-color)}.hc-live-prize-copy strong{font-size:var(--m-prize-size);color:var(--m-prize-color)}.hc-live-extra{left:var(--m-ex);top:var(--m-ey);font-size:var(--m-extra-size);color:var(--m-extra-color)} }
.hc-device-text--mobile,.hc-live-extra--mobile{display:none}
@media(max-width:650px){.hc-device-text--desktop,.hc-live-extra--desktop{display:none}.hc-device-text--mobile,.hc-live-extra--mobile{display:inline}.hc-live-extra--mobile{display:block}}
\n/* 100 Club v1.3 polish */\n.hc-alert{padding:20px 22px;gap:22px}.hc-alert>div{gap:8px}.hc-alert strong{display:block;line-height:1.35}.hc-alert span{display:block;line-height:1.65}.account-hc-alert{margin-bottom:20px}.hc-alert form{margin:0}.hc-alert .button{margin:0}\n.hc-card-photo{display:grid;place-items:center}.hc-card-photo img{width:100%;height:100%;object-fit:contain;object-position:center;background:#252b31}\n.hc-live-message{position:absolute;left:50%;top:20%;transform:translate(-50%,-50%);z-index:30;width:min(88%,720px);max-width:720px;padding:16px 20px;border-radius:16px;font-weight:900;line-height:1.45;text-align:center;box-shadow:0 18px 42px rgba(0,0,0,.32);border:2px solid transparent}.hc-live-message.type-info{background:#eaf5ff;color:#123b5d;border-color:#72b7e6}.hc-live-message.type-important{background:#fff1c8;color:#5f4200;border-color:#d7a900}.hc-live-message.type-delay{background:#ffe5e5;color:#7f1717;border-color:#d84b4b}.hc-live-message.type-winner{background:#e3f8ea;color:#155d31;border-color:#35a961}\n@media(max-width:650px){.hc-live-message{top:20%;width:90%;padding:13px 14px;border-radius:14px;font-size:.92rem}.hc-card-wrap{padding:0}.hc-member-card{border-radius:18px}}\n\n/* 100 Club v1.4 - live draw mobile alignment and public artwork */\n.hc-live-copy{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:8px;min-width:max-content}\n.hc-live-copy .eyebrow{display:block;margin:0;line-height:1.1;white-space:nowrap}\n.hc-live-copy h2{margin:0!important;line-height:1.05!important;white-space:nowrap}\n.hc-live-prize-copy{display:flex!important;flex-direction:column;align-items:center;justify-content:center;gap:5px;min-width:max-content}\n.hc-live-prize-copy span{display:block;margin:0;line-height:1.1;white-space:nowrap}\n.hc-live-prize-copy strong{display:block;margin:0;line-height:1.05;white-space:nowrap}\n@media(max-width:650px){\n  .hc-live-copy{gap:6px;max-width:94%;min-width:0}\n  .hc-live-copy .eyebrow{font-size:.62rem;letter-spacing:.16em}\n  .hc-live-copy h2{max-width:100%;white-space:normal;text-align:center}\n  .hc-live-prize-copy{gap:4px;max-width:94%;min-width:0}\n  .hc-live-prize-copy span{font-size:.62rem}\n}\n
/* 100 Club membership guide */
.hc-guide-modal__panel{max-width:900px}.hc-guide-content{display:grid;gap:22px}.hc-guide-intro{display:grid;grid-template-columns:auto 1fr;gap:18px;align-items:start;padding:20px;border:1px solid #e2e4e7;border-radius:18px;background:linear-gradient(135deg,#fbfbfc,#f4f0e5)}.hc-guide-intro>span{display:grid;place-items:center;width:50px;height:50px;border-radius:15px;background:#0b0c0f;color:#e0b831}.hc-guide-intro h3{margin:0 0 8px}.hc-guide-intro p{margin:0;line-height:1.7}.hc-guide-section{padding:19px 20px;border:1px solid #e2e5e8;border-radius:17px;background:#fff}.hc-guide-section .eyebrow{display:block;margin-bottom:8px;color:#9a7610}.hc-guide-section h3{margin:0 0 10px}.hc-guide-section p{margin:0;line-height:1.72;color:#555d68}.hc-guide-section p+p{margin-top:11px}.hc-guide-finish{padding:20px;border-radius:17px;background:#0b0c0f;color:#fff}.hc-guide-finish strong{display:block;margin-bottom:7px;color:#e0b831;font-size:1.08rem}.hc-guide-finish p{margin:0;line-height:1.7;color:#eceef1}
@media(max-width:620px){.hc-guide-intro{grid-template-columns:1fr}.hc-guide-section{padding:17px}.hc-hero__actions .button{width:100%;justify-content:center}}

/* Members Club public-closure state: disabled controls are intentionally non-interactive. */
.button:disabled,
.button[aria-disabled="true"] {
  opacity: .48;
  cursor: not-allowed;
  pointer-events: none;
}

/* Fantasy public team view + membership paid period */
.fantasy-team-link{color:inherit;text-decoration:none}.fantasy-team-link:hover,.fantasy-team-link:focus{color:inherit;text-decoration:none;opacity:.72}
.fantasy-league-heading{display:flex;align-items:flex-end;justify-content:space-between;gap:18px;flex-wrap:wrap;margin-bottom:18px}.fantasy-league-heading h2{margin:5px 0 0}.fantasy-league-count{display:inline-flex;align-items:center;min-height:38px;padding:8px 12px;border:1px solid var(--line);border-radius:999px;background:#fff;color:var(--muted);font-size:.78rem;font-weight:850}.fantasy-pagination{display:flex;align-items:center;justify-content:center;gap:8px;flex-wrap:wrap;margin-top:26px}.fantasy-pagination__button{min-width:42px;height:42px;padding:0 12px;display:inline-flex;align-items:center;justify-content:center;border:1px solid var(--line);border-radius:12px;background:#fff;color:inherit;text-decoration:none;font-size:.82rem;font-weight:900;box-shadow:0 5px 15px rgba(15,18,22,.04);transition:background .18s ease,border-color .18s ease,color .18s ease,transform .18s ease}.fantasy-pagination__button:hover,.fantasy-pagination__button:focus{background:#111318;border-color:#111318;color:#fff;text-decoration:none;transform:translateY(-1px)}.fantasy-pagination__button.is-active{background:var(--accent);border-color:var(--accent);color:#111;pointer-events:none}.fantasy-pagination__button--wide{min-width:104px}.fantasy-pagination__ellipsis{padding:0 2px;color:var(--muted);font-weight:900}@media(max-width:560px){.fantasy-league-heading{align-items:flex-start;flex-direction:column}.fantasy-pagination{gap:6px}.fantasy-pagination__button{min-width:38px;height:38px;padding:0 10px;font-size:.76rem}.fantasy-pagination__button--wide{min-width:auto}}
.fantasy-public-team-shell{display:grid;gap:18px}
.fantasy-public-team-head{display:flex;align-items:end;justify-content:space-between;gap:16px;flex-wrap:wrap}
.fantasy-public-team-head h2{margin:2px 0 0}
.fantasy-public-team-pitch{margin-top:4px}
.fantasy-pitch-slot--static .fantasy-pitch-slot__player{cursor:default}
.fantasy-public-captain-badge{position:absolute;z-index:5;top:-3px;right:1px;display:grid;place-items:center;min-width:27px;height:22px;padding:0 5px;border:2px solid #fff;border-radius:999px;background:var(--accent);color:#111;font-size:.52rem;font-weight:950;box-shadow:0 4px 9px rgba(0,0,0,.2)}
.fantasy-public-team-note{max-width:700px;margin:0 auto;color:var(--muted);font-size:.82rem;text-align:center;line-height:1.55}
.hc-card-field--status{gap:2px}
.hc-card-field--status em{display:block;color:var(--accent);font-size:clamp(.56rem,1.65vw,.78rem);font-style:normal;font-weight:900;line-height:1.1;white-space:nowrap}
@media(min-width:900px){.player-basic-stats .player-facts{grid-template-columns:repeat(5,minmax(0,1fr))}}

/* Fantasy ownership + player statistics */
.fantasy-player-option__picked{display:inline-flex;width:max-content;max-width:100%;align-items:center;padding:4px 8px;border-radius:999px;background:#f1f2f3;color:#626870;font-size:.62rem;font-weight:900;line-height:1.2}.fantasy-player-option__picked.is-picked{background:#fff4cf;color:#73580a}.fantasy-player-option__picked.is-unpicked{background:#f1f2f3;color:#737982}
.fantasy-hero-title-row{display:flex;align-items:flex-end;justify-content:space-between;gap:22px}.fantasy-hero-title-row>div{min-width:0;max-width:760px}.fantasy-hero-title-row h1{margin-bottom:12px}.fantasy-hero-title-row p{margin:0}.fantasy-hero-title-row>.button{flex:0 0 auto;margin-bottom:4px}
.fantasy-player-stats-shell{display:grid;gap:24px}.fantasy-player-stat-cards{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}.fantasy-player-stat-cards article{min-width:0;padding:17px 18px;border:1px solid var(--line);border-radius:17px;background:#fff;box-shadow:var(--shadow-sm);display:grid;gap:5px}.fantasy-player-stat-cards small{color:var(--muted);font-size:.67rem;font-weight:900;text-transform:uppercase;letter-spacing:.055em}.fantasy-player-stat-cards strong{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:1.06rem}.fantasy-player-stat-cards span{color:var(--muted);font-size:.77rem;line-height:1.4}
.fantasy-stats-tabs{display:flex;gap:8px;flex-wrap:wrap;padding:7px;border:1px solid var(--line);border-radius:16px;background:#f5f6f7;width:max-content;max-width:100%}.fantasy-stats-tabs a{display:inline-flex;align-items:center;justify-content:center;min-height:42px;padding:8px 14px;border-radius:11px;color:#2f3338;text-decoration:none;font-size:.76rem;font-weight:900}.fantasy-stats-tabs a:hover,.fantasy-stats-tabs a:focus{background:#fff;color:#111}.fantasy-stats-tabs a.is-active{background:#111318;color:#fff;box-shadow:0 5px 14px rgba(0,0,0,.12)}
.fantasy-player-stats-heading{display:flex;align-items:flex-end;justify-content:space-between;gap:20px}.fantasy-player-stats-heading h2{margin:5px 0 0}.fantasy-player-stats-heading p{max-width:520px;margin:0;color:var(--muted);font-size:.82rem;line-height:1.55;text-align:right}.fantasy-player-stats-table{overflow-x:auto}.fantasy-player-stats-table table{min-width:1120px}.fantasy-player-stats-table th,.fantasy-player-stats-table td{white-space:nowrap}.fantasy-stats-player{display:flex;align-items:center;gap:10px;min-width:220px}.fantasy-stats-player__photo{width:38px;height:38px;flex:0 0 38px;overflow:hidden;border-radius:50%;background:#edf0f2}.fantasy-stats-player__photo img{width:100%;height:100%;object-fit:cover;display:block}.fantasy-stats-player>span:last-child{display:grid;gap:2px}.fantasy-stats-player small{color:var(--muted);font-size:.66rem;font-weight:750}
@media(max-width:900px){.fantasy-player-stat-cards{grid-template-columns:repeat(2,minmax(0,1fr))}.fantasy-hero-title-row{align-items:flex-start;flex-direction:column}.fantasy-hero-title-row>.button{margin:0}.fantasy-player-stats-heading{align-items:flex-start;flex-direction:column}.fantasy-player-stats-heading p{text-align:left}}
@media(max-width:560px){.fantasy-player-stat-cards{grid-template-columns:1fr}.fantasy-stats-tabs{display:grid;grid-template-columns:1fr;width:100%}.fantasy-stats-tabs a{width:100%}.fantasy-hero-title-row>.button{width:100%;justify-content:center}.fantasy-player-option{gap:9px}.fantasy-player-option__picked{font-size:.59rem}}

/* News reactions - compact, mobile-first, aggregate only */
.article-reactions{position:relative;width:100%;max-width:455px;margin-top:16px;padding:10px 11px;border:1px solid rgba(255,255,255,.14);border-radius:14px;background:rgba(255,255,255,.055)}
.article-reactions__bar{display:flex;align-items:center;gap:9px;min-width:0}
.article-reactions__label{flex:0 0 auto;color:#fff;font-size:.72rem;font-weight:900;letter-spacing:.02em}
.article-reactions__options{min-width:0;flex:1;display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:4px}
.article-reaction-option{min-width:0;width:100%;aspect-ratio:1;max-width:38px;max-height:38px;padding:0;border:1px solid transparent;border-radius:50%;background:rgba(255,255,255,.07);color:#fff;display:grid;place-items:center;cursor:pointer;font:inherit;transition:transform .14s ease,background .14s ease,border-color .14s ease,box-shadow .14s ease}
.article-reaction-option:hover,.article-reaction-option:focus-visible{transform:translateY(-1px);background:rgba(255,255,255,.14);border-color:rgba(255,255,255,.22);outline:none}
.article-reaction-option.is-selected{background:#fff3c8;border-color:var(--accent);box-shadow:0 0 0 2px rgba(213,173,36,.16)}
.article-reaction-option__emoji{font-size:1.18rem;line-height:1}
.article-reactions__summary-wrap{position:relative;margin-top:7px}
.article-reactions__summary{width:auto;min-height:26px;padding:2px 6px 2px 3px;border:0;border-radius:9px;background:transparent;color:#fff;display:inline-flex;align-items:center;gap:6px;text-align:left;cursor:pointer}
.article-reactions__summary:hover,.article-reactions__summary:focus-visible{background:rgba(255,255,255,.07);outline:none}
.article-reactions__summary>strong{font-size:.66rem;line-height:1}
.article-reactions__summary>small{color:#c9cdd2;font-size:.61rem;font-weight:800}
.article-reactions__top{display:flex;align-items:center;padding-left:4px}
.article-reactions__top span{display:grid;place-items:center;width:21px;height:21px;margin-left:-4px;border:1px solid #26292e;border-radius:50%;background:#fff;font-size:.72rem}
.article-reactions__breakdown{position:absolute;z-index:20;left:0;top:calc(100% + 6px);width:min(270px,calc(100vw - 32px));padding:7px;border:1px solid #e1e4e7;border-radius:12px;background:#fff;color:#16191d;box-shadow:0 16px 38px rgba(0,0,0,.24)}
.article-reactions__breakdown[hidden]{display:none!important}
.article-reactions__breakdown>div{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:6px 7px;border-radius:8px}
.article-reactions__breakdown>div+div{border-top:1px solid #eff1f3}
.article-reactions__breakdown span{display:flex;align-items:center;gap:7px;font-size:.7rem;font-weight:800}
.article-reactions__breakdown b{font-size:.95rem}
.article-reactions__breakdown strong{font-size:.72rem}
.news-like .icon,.article-like .icon{stroke-width:2}.news-like.is-liked,.article-like.is-liked{color:var(--accent)}
@media(max-width:480px){.article-reactions{max-width:none;margin-top:14px;padding:9px}.article-reactions__bar{gap:7px}.article-reactions__label{font-size:.66rem}.article-reactions__options{gap:3px}.article-reaction-option{max-width:35px;max-height:35px}.article-reaction-option__emoji{font-size:1.08rem}.article-reactions__summary-wrap{margin-top:5px}}
@media(max-width:350px){.article-reactions{padding:8px}.article-reactions__bar{gap:5px}.article-reactions__label{font-size:.62rem}.article-reactions__options{gap:2px}.article-reaction-option{max-width:32px;max-height:32px}.article-reaction-option__emoji{font-size:1rem}.article-reactions__summary>small{font-size:.56rem}}

/* Reaction breakdown popup layering fix - keep above article media/content on all screen sizes */
.article-hero{
  z-index:5;
  overflow:visible;
}
.article-hero::after{
  right:0;
  bottom:0;
}
.article-hero__media{
  z-index:1;
}
.article-head{
  z-index:10;
}
.article-reactions{
  z-index:20;
  overflow:visible;
}
.article-reactions__summary-wrap{
  z-index:30;
}
.article-reactions__breakdown{
  z-index:9999;
}
.article-reactions__breakdown>div[hidden]{display:none!important}

/* Parent player photo submission */
.parent-photo-page{background:#f5f5f3}.parent-photo-progress{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:6px;margin:0 0 18px}.parent-photo-progress span{display:flex;align-items:center;gap:7px;min-width:0;padding:9px 8px;border-radius:12px;background:#e8e8e5;color:#6a6a66;font-size:11px;font-weight:800}.parent-photo-progress span b{display:grid;place-items:center;flex:0 0 24px;width:24px;height:24px;border-radius:50%;background:#d5d5d0;color:#222}.parent-photo-progress span.is-active{background:#151515;color:#fff}.parent-photo-progress span.is-active b{background:#d5ad24;color:#080808}.parent-photo-step{animation:parentPhotoIn .2s ease}.parent-photo-card{background:#fff;border:1px solid #e1e1dc;border-radius:20px;padding:18px;box-shadow:0 12px 32px rgba(0,0,0,.05)}.parent-photo-card h2{margin:.25rem 0 .55rem;font-size:clamp(1.45rem,5vw,2.1rem)}.parent-photo-card p{margin:0 0 16px;color:#5c5c57;line-height:1.65}.parent-photo-example-card{display:grid;gap:18px}.parent-photo-example{overflow:hidden;border-radius:16px;background:#adb5c4}.parent-photo-example img{display:block;width:100%;height:auto}.parent-photo-tips{display:grid;gap:8px}.parent-photo-tips span{padding:10px 12px;border-radius:10px;background:#f5f5f2;font-size:13px;font-weight:700}.parent-photo-actions{display:flex;justify-content:space-between;gap:10px;margin-top:14px}.parent-photo-actions .button:only-child{margin-left:auto}.parent-player-picker{display:grid;gap:12px}.parent-player-options{display:grid;gap:7px;max-height:360px;overflow:auto;padding:4px;border:1px solid #deded8;border-radius:14px;background:#f8f8f6}.parent-player-options button{display:flex;align-items:center;justify-content:space-between;gap:12px;width:100%;border:0;border-radius:10px;padding:12px;text-align:left;background:#fff;color:#151515;cursor:pointer}.parent-player-options button strong{font-size:14px}.parent-player-options button span{font-size:12px;color:#777}.parent-player-options button:hover,.parent-player-options button.is-selected{background:#111;color:#fff}.parent-player-options button.is-selected span{color:#d7d7d7}.parent-player-selected{padding:12px 14px;border:1px solid #d5ad24;border-radius:12px;background:#fff9e7}.parent-player-selected span,.parent-player-selected small{display:block;color:#6e6242}.parent-player-selected strong{display:block;margin:2px 0;font-size:16px}.parent-photo-empty{padding:12px;text-align:center;color:#777}.parent-photo-alert{display:flex;flex-direction:column;gap:3px;margin:12px 0;padding:12px 14px;border-radius:12px;font-size:13px;line-height:1.45}.parent-photo-alert--error{background:#fde8e8;border:1px solid #f4bcbc;color:#7c1f1f}.parent-photo-alert--success{background:#e8f7ec;border:1px solid #b9dfc3;color:#175b2b}.parent-photo-upload{display:grid;place-items:center;text-align:center;gap:6px;border:2px dashed #cfcfc8;border-radius:16px;padding:28px 18px;background:#fafaf8;cursor:pointer}.parent-photo-upload input{position:absolute;width:1px;height:1px;opacity:0;pointer-events:none}.parent-photo-upload>span{display:grid;place-items:center;width:48px;height:48px;border-radius:50%;background:#111;color:#d5ad24}.parent-photo-upload strong{font-size:16px}.parent-photo-upload small{color:#777}.parent-photo-local-preview{display:flex;align-items:center;gap:12px;margin:12px 0;padding:10px;border-radius:14px;background:#f4f4f1}.parent-photo-local-preview img{width:68px;height:84px;border-radius:10px;object-fit:cover}.parent-photo-local-preview div{min-width:0}.parent-photo-local-preview strong,.parent-photo-local-preview span{display:block}.parent-photo-local-preview strong{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.parent-photo-local-preview span{margin-top:3px;color:#6c6c67;font-size:12px}.parent-photo-processing{display:flex;align-items:center;gap:12px;margin:12px 0;padding:13px;border-radius:12px;background:#fff9e7;border:1px solid #ead584}.parent-photo-processing strong,.parent-photo-processing small{display:block}.parent-photo-processing small{margin-top:3px;color:#6c6247}.parent-photo-spinner{width:30px;height:30px;flex:0 0 30px;border:3px solid #e2d49c;border-top-color:#111;border-radius:50%;animation:parentPhotoSpin .7s linear infinite}.parent-photo-finish{text-align:center}.parent-photo-finish__icon{display:grid;place-items:center;width:66px;height:66px;margin:0 auto 14px;border-radius:50%;background:#e8f7ec;color:#1a6c32;font-size:32px;font-weight:900}@keyframes parentPhotoSpin{to{transform:rotate(360deg)}}@keyframes parentPhotoIn{from{opacity:.35;transform:translateY(5px)}to{opacity:1;transform:none}}@media(min-width:760px){.parent-photo-progress{gap:10px}.parent-photo-progress span{font-size:13px;padding:11px 12px}.parent-photo-example-card{grid-template-columns:1fr minmax(320px,.9fr);align-items:center;padding:24px}.parent-photo-card{padding:24px}}

/* Gold Members Club hero branding — integrated into the hero rather than a separate strip */
.hc-members-hero__layout{display:grid;grid-template-columns:minmax(0,1fr);gap:22px;align-items:center}
.hc-members-hero__copy{min-width:0}
.hc-members-hero__brand{display:flex;align-items:center;justify-content:center;order:-1;min-width:0}
.hc-members-hero__brand img{display:block;width:min(138px,38vw);height:auto;max-height:138px;object-fit:contain;filter:drop-shadow(0 14px 26px rgba(0,0,0,.42))}
@media(min-width:760px){
 .hc-members-hero__layout{grid-template-columns:minmax(0,1.25fr) minmax(220px,.75fr);gap:clamp(36px,6vw,96px)}
 .hc-members-hero__copy{max-width:760px}
 .hc-members-hero__brand{order:0;justify-content:center;align-self:stretch}
 .hc-members-hero__brand img{width:min(290px,23vw);max-height:300px}
}
@media(min-width:1180px){.hc-members-hero__brand img{width:310px;max-height:320px}}
@media(max-width:759px){
 .hc-members-hero__layout{text-align:left}
 .hc-members-hero__brand{justify-content:flex-start;margin-bottom:2px}
 .hc-members-hero__brand img{width:118px;max-height:118px}
}

/* Parent player-photo flow polish — 10 Sep 2026 */
.parent-photo-card .shop-field{display:grid;gap:8px;width:100%;margin:0}.parent-photo-card .shop-field>span{display:block;font-size:12px;font-weight:850;line-height:1.25;color:#191919}.parent-photo-card .shop-field input{width:100%;min-width:0;height:50px;border:1px solid #d3d6da;border-radius:12px;background:#fbfbfc;color:#111;padding:0 14px;font:inherit;font-size:15px;outline:0;box-shadow:0 1px 0 rgba(0,0,0,.02);transition:border-color .18s ease,box-shadow .18s ease,background .18s ease}.parent-photo-card .shop-field input:hover{border-color:#bfc4c9;background:#fff}.parent-photo-card .shop-field input:focus{border-color:#caa21d;background:#fff;box-shadow:0 0 0 3px rgba(213,173,36,.16)}.parent-photo-card .shop-field input[type="date"]{appearance:auto}.parent-photo-form{display:grid;gap:14px;margin-top:18px}.parent-photo-form>.button{justify-self:start;margin-top:2px}.parent-player-picker{display:grid;gap:14px;margin-top:18px}.parent-player-search-field{gap:9px!important}.parent-player-options{margin-top:1px}.parent-player-options button[hidden]{display:none!important}.parent-player-options button{min-height:48px;transition:background .16s ease,color .16s ease,transform .16s ease}.parent-player-options button:focus-visible{outline:3px solid rgba(213,173,36,.28);outline-offset:1px}.parent-photo-empty{border:1px dashed #d7d9dc;border-radius:12px;background:#fafafa}.parent-photo-step[data-photo-step="3"] .parent-photo-card,.parent-photo-step[data-photo-step="4"] .parent-photo-card{display:grid;gap:0}.parent-photo-step[data-photo-step="3"] .parent-photo-card>p,.parent-photo-step[data-photo-step="4"] .parent-photo-card>p{margin-bottom:0}.parent-photo-alert[hidden],.parent-player-selected[hidden],.parent-photo-empty[hidden],.parent-photo-local-preview[hidden],.parent-photo-processing[hidden]{display:none!important}@media(max-width:559px){.parent-photo-card .shop-field input{height:48px;font-size:16px}.parent-photo-form>.button{width:100%;justify-content:center}.parent-player-options button{align-items:flex-start}.parent-player-options button span{text-align:right;line-height:1.25}}
