:root {
  --navy: #020817;
  --navy-soft: #07142d;
  --blue: #0849d8;
  --blue-bright: #1768ff;
  --gold: #ffd530;
  --white: #f7f9ff;
  --muted: #9aa8c4;
}

* { box-sizing: border-box; }
html { scroll-behavior: smooth; }
body { margin: 0; overflow-x: hidden; background: var(--navy); color: var(--white); font-family: "Poppins", Arial, sans-serif; }
button, input, select, textarea { font: inherit; }
img { max-width: 100%; height: auto; }
.screen-reader-text { position: absolute; width: 1px; height: 1px; padding: 0; margin: -1px; overflow: hidden; clip: rect(0,0,0,0); white-space: nowrap; border: 0; }
.admin-bar .hero { padding-top: 32px; }
a { color: inherit; text-decoration: none; }
.shell { width: min(1180px, calc(100% - 48px)); margin-inline: auto; }
.section { padding: 116px 0; }
.section-heading { margin-bottom: 44px; }
.split-heading, .stats-heading, .sponsors-heading { display: flex; align-items: end; justify-content: space-between; gap: 50px; }
.section-heading h2 { margin: 0; font-size: clamp(46px, 5.8vw, 78px); line-height: .92; letter-spacing: -.065em; text-transform: uppercase; }
.section-heading > p, .sponsors-heading > p { max-width: 420px; margin: 0 0 5px; color: #59657b; line-height: 1.7; }
.blue-eyebrow { color: #1556cf !important; }
.mini-label { display: block; color: #5471a8; font-size: 10px; font-weight: 900; letter-spacing: .18em; text-transform: uppercase; }

.hero { position: relative; min-height: 900px; overflow: hidden; background: var(--navy); }
.hero::after { content: ""; position: absolute; inset: 0; background: linear-gradient(90deg, rgba(1, 6, 18, .99) 0%, rgba(1, 7, 21, .94) 31%, rgba(1, 7, 21, .52) 59%, rgba(1, 7, 21, .12) 100%); pointer-events: none; }
.hero-image { position: absolute; inset: 0 0 0 34%; background: url('/team-kit.png') center 34% / cover no-repeat; filter: saturate(1.12) contrast(1.04); transform: scale(1.03); }
.hero-glow { position: absolute; z-index: 1; width: 700px; height: 700px; left: 21%; top: 6%; background: radial-gradient(circle, rgba(16, 86, 255, .25), transparent 66%); filter: blur(20px); }

.nav { position: relative; z-index: 5; height: 98px; display: flex; align-items: center; justify-content: space-between; border-bottom: 1px solid rgba(255,255,255,.13); }
.brand { display: flex; align-items: center; gap: 13px; }
.brand-logo { width: 60px !important; height: 60px !important; min-width: 60px !important; max-width: 60px !important; min-height: 60px !important; max-height: 60px !important; display: flex !important; align-items: center !important; justify-content: center !important; flex: 0 0 60px !important; overflow: hidden !important; padding: 3px !important; border: 2px solid var(--gold); border-radius: 50% !important; background: #fff; box-shadow: 0 0 0 5px rgba(255,255,255,.06); line-height: 0; }
.brand-logo .custom-logo-link { width: 100% !important; height: 100% !important; max-width: 100% !important; max-height: 100% !important; display: flex !important; align-items: center !important; justify-content: center !important; overflow: hidden !important; margin: 0 !important; padding: 0 !important; border-radius: 50% !important; }
.brand-logo img,
.brand-logo img.custom-logo,
.brand-logo .custom-logo-link img.custom-logo { position: static !important; inset: auto !important; display: block !important; width: 100% !important; height: 100% !important; min-width: 0 !important; max-width: 100% !important; min-height: 0 !important; max-height: 100% !important; margin: 0 !important; padding: 0 !important; border: 0 !important; border-radius: 50% !important; object-fit: contain !important; transform: none !important; }
.brand-mark { width: 54px; height: 54px; display: grid; place-content: center; text-align: center; border: 2px solid var(--gold); border-radius: 50%; background: #052b78; box-shadow: 0 0 0 5px rgba(255,255,255,.05); transform: rotate(-4deg); }
.brand-mark b { font-size: 14px; line-height: 1; letter-spacing: .04em; }
.brand-mark small { margin-top: 3px; font-size: 8px; color: var(--gold); letter-spacing: .15em; }
.brand-name { max-width: 150px; font-size: 14px; font-weight: 800; line-height: 1.05; text-transform: uppercase; letter-spacing: .04em; }
.brand-name small { display: block; margin-top: 5px; color: var(--gold); letter-spacing: .25em; }
.nav-links { display: flex; align-items: center; gap: 34px; font-size: 13px; font-weight: 700; color: #d7def0; }
.nav-links a { transition: color .2s ease; }
.nav-links a:hover { color: var(--gold); }
.nav-toggle { display: none; width: 46px; height: 42px; padding: 10px; border: 1px solid rgba(255,255,255,.2); background: transparent; cursor: pointer; }
.nav-toggle > span:not(.screen-reader-text) { display: block; height: 2px; margin: 4px 0; background: white; transition: .2s ease; }
.nav-cta { padding: 14px 19px; border: 1px solid rgba(255,255,255,.22); font-size: 12px; font-weight: 800; text-transform: uppercase; letter-spacing: .08em; transition: .2s ease; }
.nav-cta:hover { color: var(--navy); background: var(--gold); border-color: var(--gold); }
.nav-cta span, .button span { margin-left: 10px; }

.hero-content { position: relative; z-index: 3; min-height: 690px; display: flex; align-items: center; padding: 44px 0 112px; }
.hero-copy { width: min(630px, 59%); }
.eyebrow { display: flex; align-items: center; gap: 11px; margin: 0 0 22px; color: #c5d0e8; font-size: 12px; font-weight: 800; letter-spacing: .2em; text-transform: uppercase; }
.eyebrow span { display: inline-block; width: 34px; height: 3px; background: var(--gold); }
h1 { margin: 0; font-size: clamp(72px, 8.2vw, 124px); line-height: .79; letter-spacing: -.075em; text-transform: uppercase; font-weight: 950; }
h1 em { color: transparent; font-style: normal; -webkit-text-stroke: 2px #f7f9ff; }
.hero-lead { max-width: 500px; margin: 32px 0 0; color: #c4cde0; font-size: 18px; line-height: 1.65; }
.hero-actions { display: flex; gap: 12px; margin-top: 36px; }
.button { min-height: 54px; display: inline-flex; align-items: center; justify-content: center; padding: 0 24px; font-size: 12px; font-weight: 900; letter-spacing: .09em; text-transform: uppercase; transition: transform .2s ease, background .2s ease, color .2s ease; }
.button:hover { transform: translateY(-2px); }
.button-primary { color: #02102d; background: var(--gold); }
.button-ghost { border: 1px solid rgba(255,255,255,.24); background: rgba(2,8,23,.24); backdrop-filter: blur(8px); }
.hero-stats { display: flex; gap: 46px; margin-top: 54px; padding-top: 27px; border-top: 1px solid rgba(255,255,255,.13); }
.hero-stats div { display: flex; flex-direction: column; gap: 6px; }
.hero-stats strong { font-size: 24px; letter-spacing: -.04em; }
.hero-stats span { color: var(--muted); font-size: 10px; font-weight: 800; text-transform: uppercase; letter-spacing: .15em; }

.fixture-bar { position: absolute; z-index: 4; inset: auto 0 0; min-height: 112px; display: flex; align-items: center; background: rgba(5, 48, 139, .9); border-top: 1px solid rgba(255,255,255,.16); backdrop-filter: blur(18px); }
.fixture-inner { display: grid; grid-template-columns: .9fr 2fr 1fr auto; align-items: center; gap: 24px; }
.fixture-label, .fixture-detail { display: flex; flex-direction: column; gap: 6px; }
.fixture-label span { color: var(--gold); font-size: 11px; font-weight: 900; letter-spacing: .18em; text-transform: uppercase; }
.fixture-label small, .fixture-detail span { color: #b9c7e8; font-size: 11px; }
.fixture-teams { display: flex; align-items: center; justify-content: center; gap: 22px; font-size: 15px; text-transform: uppercase; }
.versus { display: grid; width: 40px; height: 40px; place-items: center; border-radius: 50%; background: var(--gold); color: #02102d; font-size: 11px; font-weight: 950; }
.fixture-detail strong { text-transform: uppercase; }
.fixture-inner > a { padding-bottom: 5px; border-bottom: 1px solid rgba(255,255,255,.45); font-size: 11px; font-weight: 800; text-transform: uppercase; letter-spacing: .08em; }
.fixture-inner > a span { margin-left: 8px; color: var(--gold); }

@media (max-width: 900px) {
  .nav { flex-wrap: wrap; }
  .nav-toggle { display: block; margin-left: auto; }
  .nav-links { position: absolute; top: 80px; left: 0; right: 0; display: none; flex-direction: column; align-items: stretch; gap: 0; padding: 12px; background: rgba(2,8,23,.98); border: 1px solid rgba(255,255,255,.12); box-shadow: 0 20px 50px rgba(0,0,0,.35); }
  .nav-links.is-open { display: flex; }
  .nav-links a { padding: 14px 12px; border-bottom: 1px solid rgba(255,255,255,.08); }
  .nav-links a:last-child { border-bottom: 0; }
  .hero { min-height: 850px; }
  .hero-image { left: 16%; opacity: .88; }
  .hero::after { background: linear-gradient(90deg, rgba(1,6,18,.98) 0%, rgba(1,7,21,.8) 58%, rgba(1,7,21,.25)); }
  .hero-copy { width: min(620px, 76%); }
  .fixture-inner { grid-template-columns: 1fr 2fr auto; }
  .fixture-detail { display: none; }
}

@media (max-width: 640px) {
  .shell { width: min(100% - 32px, 1180px); }
  .hero { min-height: 860px; }
  .nav { height: 82px; }
  .brand-name { display: none; }
  .brand-logo { width: 54px !important; height: 54px !important; min-width: 54px !important; max-width: 54px !important; min-height: 54px !important; max-height: 54px !important; flex-basis: 54px !important; }
  .nav-cta { display: none; }
  .hero-image { inset: 0 -30% 0 -12%; background-position: 63% 28%; opacity: .66; }
  .hero::after { background: linear-gradient(180deg, rgba(1,6,18,.35) 0%, rgba(1,6,18,.6) 43%, rgba(1,6,18,.98) 79%); }
  .hero-content { min-height: 672px; align-items: flex-end; padding-bottom: 90px; }
  .hero-copy { width: 100%; }
  h1 { font-size: clamp(58px, 20vw, 82px); }
  .hero-lead { font-size: 15px; }
  .hero-actions { flex-direction: column; align-items: stretch; max-width: 330px; }
  .hero-stats { gap: 28px; margin-top: 34px; }
  .hero-stats strong { font-size: 20px; }
  .fixture-bar { min-height: 106px; }
  .fixture-inner { grid-template-columns: 1fr auto; gap: 12px; }
  .fixture-label small, .fixture-inner > a { display: none; }
  .fixture-teams { justify-content: flex-end; gap: 9px; font-size: 10px; text-align: center; }
  .versus { width: 32px; height: 32px; font-size: 9px; }
}

/* Match centre */
.match-section { background: #f5f7fb; color: #07132b; }
.match-grid { display: grid; grid-template-columns: 1.15fr .85fr; gap: 20px; }
.match-card { position: relative; min-height: 450px; overflow: hidden; padding: 34px; }
.next-match { background: linear-gradient(145deg, #0645c3 0%, #031f6c 100%); color: white; }
.next-match::after { content: "VCT"; position: absolute; right: -16px; bottom: -60px; color: rgba(255,255,255,.055); font-size: 180px; font-weight: 950; letter-spacing: -.08em; transform: rotate(-7deg); }
.last-match { display: flex; flex-direction: column; justify-content: space-between; background: #07132b; color: white; }
.match-card-top { position: relative; z-index: 1; display: flex; align-items: center; justify-content: space-between; padding-bottom: 20px; border-bottom: 1px solid rgba(255,255,255,.15); }
.match-card-top span { color: var(--gold); font-size: 11px; font-weight: 900; text-transform: uppercase; letter-spacing: .15em; }
.match-card-top small { color: #99a9c9; text-transform: uppercase; letter-spacing: .1em; }
.match-date { position: absolute; left: 34px; top: 110px; display: flex; flex-direction: column; color: #a9b6d2; font-size: 10px; font-weight: 800; letter-spacing: .12em; text-transform: uppercase; }
.match-date strong { margin: 2px 0; color: white; font-size: 58px; line-height: 1; letter-spacing: -.07em; }
.teams-stack { position: relative; z-index: 1; margin: 52px 0 50px 155px; }
.teams-stack > div { display: flex; align-items: center; gap: 15px; padding: 15px 0; font-size: 18px; text-transform: uppercase; }
.teams-stack > b { display: block; margin-left: 21px; color: var(--gold); font-size: 11px; }
.mini-crest { width: 46px; height: 46px; display: grid; place-items: center; flex: 0 0 auto; border: 2px solid var(--gold); border-radius: 50%; background: #063a9e; font-size: 9px; font-weight: 900; }
.mini-crest.away { border-color: #8fa2c4; background: #172846; color: #ced7e9; }
.match-meta { position: relative; z-index: 1; display: flex; justify-content: space-between; align-items: center; padding-top: 22px; border-top: 1px solid rgba(255,255,255,.15); color: #b2bfda; font-size: 11px; }
.match-meta a { color: white; font-weight: 800; text-transform: uppercase; letter-spacing: .08em; }
.match-meta a span { color: var(--gold); margin-left: 8px; }
.result-copy { padding: 34px 0; }
.result-copy > span { color: #73819f; font-size: 10px; font-weight: 800; text-transform: uppercase; letter-spacing: .16em; }
.result-copy strong { display: block; margin: 12px 0 18px; font-size: 48px; line-height: .9; letter-spacing: -.055em; text-transform: uppercase; }
.result-copy p { max-width: 370px; color: #aebad2; font-size: 13px; line-height: 1.7; }
.score-line { display: grid; grid-template-columns: 1fr auto 1fr; align-items: center; gap: 14px; padding: 18px 0 0; border-top: 1px solid rgba(255,255,255,.15); font-size: 10px; font-weight: 800; text-align: center; text-transform: uppercase; }
.score-line b { color: var(--gold); font-size: 24px; }

/* Player statistics */
.stats-section { background: #06132d; color: white; }
.stats-heading .eyebrow { color: #a5b4d1; }
.season-pill { min-width: 150px; padding: 17px 20px; border: 1px solid rgba(255,255,255,.14); }
.season-pill span { display: block; color: #8494b4; font-size: 9px; font-weight: 900; letter-spacing: .18em; text-transform: uppercase; }
.season-pill strong { display: block; margin-top: 5px; color: var(--gold); font-size: 20px; }
.stats-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 20px; }
.stat-card { padding: 30px 32px 16px; background: #0b1c3d; border: 1px solid rgba(255,255,255,.08); }
.stat-card:first-child { background: linear-gradient(145deg, #0b2455, #081832); }
.stat-card-head { display: flex; align-items: center; justify-content: space-between; margin-bottom: 22px; padding-bottom: 23px; border-bottom: 1px solid rgba(255,255,255,.12); }
.stat-card-head h3 { margin: 6px 0 0; font-size: 29px; letter-spacing: -.04em; text-transform: uppercase; }
.stat-icon { width: 46px; height: 46px; display: grid; place-items: center; border-radius: 50%; background: var(--gold); color: #07132b; font-size: 17px; font-weight: 950; }
.stat-list { display: flex; flex-direction: column; }
.stat-row { min-height: 64px; display: grid; grid-template-columns: 32px 42px 1fr auto; align-items: center; gap: 12px; border-bottom: 1px solid rgba(255,255,255,.08); }
.stat-row:last-child { border-bottom: 0; }
.rank { color: #607496; font-family: var(--font-geist-mono), monospace; font-size: 10px; }
.player-avatar { width: 32px; height: 32px; display: grid; place-items: center; border-radius: 50%; background: #133a7e; color: #aecaFF; font-size: 10px; font-weight: 900; }
.stat-row strong { font-size: 13px; text-transform: uppercase; }
.total { display: flex; align-items: baseline; gap: 6px; text-align: right; }
.total b { color: var(--gold); font-size: 20px; }
.total small { width: 38px; color: #6f80a0; font-size: 7px; letter-spacing: .1em; text-align: left; text-transform: uppercase; }
.demo-note { margin: 18px 0 0; color: #667797; font-size: 10px; }

/* Last Man Standing */
.lms-section { position: relative; min-height: 650px; display: flex; align-items: center; overflow: hidden; background: #02102c; }
.lms-image { position: absolute; inset: 0; background: url('/team-kit.png') 78% 34% / cover no-repeat; filter: saturate(.75) contrast(1.18); }
.lms-overlay { position: absolute; inset: 0; background: linear-gradient(90deg, rgba(1,8,24,.98) 0%, rgba(2,14,42,.95) 45%, rgba(2,14,42,.45) 72%, rgba(4,32,102,.35)); }
.lms-overlay::after { content: ""; position: absolute; inset: 0; background: repeating-linear-gradient(120deg, transparent 0 90px, rgba(255,255,255,.015) 90px 91px); }
.lms-content { position: relative; z-index: 1; display: grid; grid-template-columns: 120px minmax(0, 1fr) 250px; align-items: end; gap: 40px; }
.lms-number { align-self: start; padding-top: 10px; color: rgba(255,255,255,.13); font-size: 110px; font-weight: 950; line-height: .8; letter-spacing: -.08em; writing-mode: vertical-rl; }
.lms-copy { max-width: 580px; }
.lms-copy h2 { margin: 0; font-size: clamp(60px, 7.5vw, 100px); line-height: .82; letter-spacing: -.07em; text-transform: uppercase; }
.lms-copy > p:not(.eyebrow) { max-width: 520px; margin: 28px 0 0; color: #b9c5db; font-size: 16px; line-height: 1.75; }
.lms-actions { display: flex; align-items: center; gap: 28px; margin-top: 32px; }
.text-link { padding-bottom: 7px; border-bottom: 1px solid rgba(255,255,255,.35); font-size: 11px; font-weight: 900; letter-spacing: .1em; text-transform: uppercase; }
.text-link span { margin-left: 8px; color: var(--gold); }
.lms-prize { padding: 24px; border-left: 3px solid var(--gold); background: rgba(2,13,39,.74); backdrop-filter: blur(12px); }
.lms-prize span, .lms-prize small { display: block; color: #97a8c6; font-size: 9px; font-weight: 800; letter-spacing: .12em; text-transform: uppercase; }
.lms-prize strong { display: block; margin: 8px 0 13px; color: var(--gold); font-size: 48px; letter-spacing: -.06em; }

/* Gallery */
.gallery-section { background: #f5f7fb; color: #07132b; }
.dark-link { color: #0b3b9d; border-color: #98a8c7; }
.gallery-grid { display: grid; grid-template-columns: 1.2fr .8fr .8fr; grid-template-rows: 280px 280px; gap: 14px; }
.gallery-item { position: relative; min-width: 0; min-height: 0; margin: 0; overflow: hidden; background-image: linear-gradient(180deg, transparent 30%, rgba(1,7,20,.9) 100%), url('/team-kit.png'); background-size: cover; transition: transform .35s ease; }
.gallery-item::after { content: ""; position: absolute; inset: 0; border: 1px solid rgba(255,255,255,.1); pointer-events: none; }
.gallery-item:hover { transform: translateY(-4px); }
.gallery-one { grid-row: 1 / 3; background-position: 61% 30%; }
.gallery-two { grid-column: 2 / 4; background-position: 66% 38%; }
.gallery-three { background-position: 35% 60%; filter: saturate(.8); }
.gallery-four { background-position: 86% 57%; }
.gallery-item figcaption { position: absolute; z-index: 1; left: 24px; right: 24px; bottom: 22px; display: flex; flex-direction: column; gap: 5px; color: white; }
.gallery-item figcaption span { color: var(--gold); font-size: 9px; font-weight: 900; letter-spacing: .16em; text-transform: uppercase; }
.gallery-item figcaption strong { font-size: 20px; text-transform: uppercase; }

/* Join the team */
.join-section { position: relative; overflow: hidden; padding: 112px 0; background: #0649d9; }
.join-section::before { content: "VCT"; position: absolute; right: -3vw; bottom: -95px; color: rgba(255,255,255,.06); font-size: 330px; font-weight: 950; line-height: 1; letter-spacing: -.1em; }
.join-grid { position: relative; display: grid; grid-template-columns: 1fr 1fr; gap: 110px; align-items: center; }
.join-copy h2 { margin: 0; font-size: clamp(56px, 6.5vw, 90px); line-height: .85; letter-spacing: -.07em; text-transform: uppercase; }
.join-copy > p:not(.eyebrow) { max-width: 540px; margin: 26px 0 31px; color: #d6e1fb; line-height: 1.75; }
.join-details { border-top: 1px solid rgba(255,255,255,.25); }
.join-details > div { display: grid; grid-template-columns: 50px 1fr; gap: 18px; padding: 24px 0; border-bottom: 1px solid rgba(255,255,255,.25); }
.join-details > div > span { color: var(--gold); font-family: var(--font-geist-mono), monospace; font-size: 11px; }
.join-details p { margin: 0; color: #c6d5f7; font-size: 13px; line-height: 1.65; }
.join-details strong { display: block; margin-bottom: 4px; color: white; font-size: 16px; text-transform: uppercase; }

/* Sponsors and footer */
.sponsors-section { background: white; color: #07132b; }
.sponsor-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 16px; }
.sponsor-card { min-height: 205px; display: flex; flex-direction: column; align-items: center; justify-content: center; gap: 9px; padding: 28px; border: 1px solid #dbe1ec; background: #f8f9fc; text-align: center; }
.sponsor-card span, .sponsor-card small { color: #6f7b91; font-size: 8px; font-weight: 900; letter-spacing: .16em; text-transform: uppercase; }
.sponsor-card strong { font-size: 30px; letter-spacing: -.045em; }
.featured-sponsor { color: white; background: #07132b; border-color: #07132b; }
.featured-sponsor strong { font-size: 38px; font-weight: 500; }
.featured-sponsor span, .featured-sponsor small { color: #8596b7; }
.sponsor-cta { border-style: dashed; transition: .2s ease; }
.sponsor-cta:hover { color: white; background: #0649d9; border-color: #0649d9; }
.sponsor-cta:hover span, .sponsor-cta:hover small { color: #d9e5ff; }
footer { padding: 76px 0 22px; background: #020817; }
.footer-main { display: grid; grid-template-columns: 1.1fr 1fr 1fr; align-items: start; gap: 70px; padding-bottom: 56px; }
.footer-brand { width: max-content; align-items: center; }
.footer-logo-frame { width: 78px; height: 78px; display: flex; align-items: center; justify-content: center; flex: 0 0 78px; overflow: hidden; padding: 4px; border: 2px solid var(--gold); border-radius: 50%; background: #fff; box-shadow: 0 0 0 6px rgba(255,255,255,.05); }
.footer-logo-frame img { position: static !important; display: block !important; width: 100% !important; height: 100% !important; min-width: 0 !important; max-width: 100% !important; min-height: 0 !important; max-height: 100% !important; margin: 0 !important; padding: 0 !important; border-radius: 50% !important; object-fit: contain !important; transform: none !important; }
.footer-main > p { margin: 7px 0 0; color: #7686a4; font-size: 13px; line-height: 1.7; }
.footer-links { display: grid; grid-template-columns: 1fr 1fr; gap: 18px; font-size: 11px; font-weight: 800; text-transform: uppercase; }
.footer-links a:hover { color: var(--gold); }
.footer-bottom { display: flex; justify-content: space-between; padding-top: 22px; border-top: 1px solid rgba(255,255,255,.1); color: #55627a; font-size: 9px; letter-spacing: .1em; text-transform: uppercase; }

@media (max-width: 900px) {
  .section { padding: 88px 0; }
  .match-grid, .stats-grid { grid-template-columns: 1fr; }
  .match-card { min-height: 410px; }
  .lms-content { grid-template-columns: 1fr 220px; }
  .lms-number { display: none; }
  .gallery-grid { grid-template-columns: 1fr 1fr; grid-template-rows: 390px 240px 240px; }
  .gallery-one { grid-row: 1; grid-column: 1 / 3; }
  .gallery-two { grid-column: 1 / 3; }
  .join-grid { gap: 55px; }
  .footer-main { gap: 38px; }
}

@media (max-width: 640px) {
  .section { padding: 72px 0; }
  .split-heading, .stats-heading, .sponsors-heading { align-items: flex-start; flex-direction: column; gap: 22px; }
  .section-heading h2 { font-size: 48px; }
  .section-heading > p, .sponsors-heading > p { font-size: 14px; }
  .match-card { min-height: 420px; padding: 25px; }
  .match-date { left: 25px; top: 100px; }
  .teams-stack { margin: 48px 0 45px 112px; }
  .teams-stack > div { gap: 10px; font-size: 13px; }
  .mini-crest { width: 38px; height: 38px; }
  .result-copy strong { font-size: 41px; }
  .stat-card { padding: 24px 18px 12px; }
  .stat-row { grid-template-columns: 24px 38px 1fr auto; gap: 9px; }
  .total small { display: none; }
  .lms-section { min-height: 720px; align-items: flex-end; padding: 80px 0; }
  .lms-image { background-position: 66% 25%; }
  .lms-overlay { background: linear-gradient(180deg, rgba(1,8,24,.2) 0%, rgba(1,8,24,.82) 43%, rgba(1,8,24,.99) 75%); }
  .lms-content { grid-template-columns: 1fr; gap: 38px; }
  .lms-copy h2 { font-size: 62px; }
  .lms-copy > p:not(.eyebrow) { font-size: 14px; }
  .lms-actions { align-items: flex-start; flex-direction: column; }
  .lms-prize { max-width: 280px; }
  .gallery-grid { grid-template-columns: 1fr 1fr; grid-template-rows: 380px 190px 190px; gap: 8px; }
  .gallery-item figcaption { left: 16px; bottom: 16px; }
  .gallery-item figcaption strong { font-size: 15px; }
  .join-section { padding: 76px 0; }
  .join-grid { grid-template-columns: 1fr; gap: 58px; }
  .join-copy h2 { font-size: 58px; }
  .sponsor-grid { grid-template-columns: 1fr; }
  .footer-main { grid-template-columns: 1fr; gap: 38px; }
  .footer-bottom { gap: 15px; flex-direction: column; }
}

/* WordPress dynamic content */
.stat-empty { opacity: .55; }
.sponsor-logo { max-width: 180px; max-height: 78px; width: auto; object-fit: contain; }
.standard-page { min-height: 70vh; padding-top: 150px; padding-bottom: 100px; }
.standard-page h1 { font-size: clamp(48px, 7vw, 90px); }
.entry-content { max-width: 820px; color: #c4cde0; font-size: 17px; line-height: 1.8; }

/* Registration form */
.join-grid { grid-template-columns: .8fr 1.2fr; gap: 80px; align-items: start; }
.interest-form-wrap { position: relative; padding: 36px; background: #032f97; border: 1px solid rgba(255,255,255,.18); box-shadow: 0 25px 60px rgba(0,26,90,.28); }
.interest-form { position: relative; z-index: 1; }
.form-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 19px; }
.interest-form label { display: block; }
.interest-form label > span { display: block; margin-bottom: 8px; color: #d9e5ff; font-size: 9px; font-weight: 800; letter-spacing: .11em; text-transform: uppercase; }
.interest-form input:not([type="checkbox"]), .interest-form select, .interest-form textarea { width: 100%; padding: 13px 14px; border: 1px solid rgba(255,255,255,.24); border-radius: 0; outline: 0; background: rgba(2,22,70,.48); color: white; font-size: 13px; transition: border-color .2s ease, background .2s ease; }
.interest-form input:focus, .interest-form select:focus, .interest-form textarea:focus { border-color: var(--gold); background: rgba(2,22,70,.72); }
.interest-form select option { color: #07132b; }
.interest-form textarea { resize: vertical; }
.full-field { margin-top: 19px; }
.consent-field { display: grid !important; grid-template-columns: 18px 1fr; align-items: start; gap: 10px; margin: 21px 0; }
.consent-field input { margin: 2px 0 0; accent-color: var(--gold); }
.consent-field span { margin: 0 !important; color: #c7d6f7 !important; font-size: 9px !important; line-height: 1.6; text-transform: none !important; letter-spacing: .03em !important; }
.interest-form button { border: 0; cursor: pointer; }
.form-message { margin-bottom: 20px; padding: 14px 16px; border-left: 4px solid; font-size: 12px; line-height: 1.6; }
.form-message.success { color: #0c2913; background: #dff7e4; border-color: #43b45d; }
.form-message.error { color: #4b1010; background: #ffe4e4; border-color: #d94141; }
.honeypot { position: absolute !important; left: -9999px !important; width: 1px !important; height: 1px !important; overflow: hidden !important; }

@media (max-width: 900px) {
  .join-grid { grid-template-columns: 1fr; gap: 50px; }
}

@media (max-width: 640px) {
  .admin-bar .hero { padding-top: 46px; }
  .interest-form-wrap { padding: 24px 18px; }
  .form-grid { grid-template-columns: 1fr; gap: 16px; }
}
