.events-page { min-width: 0; }
.events-heading { display:flex; justify-content:space-between; align-items:flex-end; gap:24px; margin-bottom:28px; }
.events-heading h1 { font-size:clamp(31px,3.2vw,45px); line-height:1.12; margin:0 0 12px; letter-spacing:-1.2px; }
.events-heading p:not(.league-event-eyebrow) { color:var(--muted); max-width:560px; margin:0; }
.league-event-eyebrow { color:#ef6971; font-size:10px; line-height:1.5; letter-spacing:1.8px; font-weight:750; margin:0 0 10px; }
.events-totals { display:flex; gap:24px; flex-shrink:0; color:var(--muted); font-size:11px; }
.events-totals strong { color:#fff; font-size:25px; display:block; line-height:1.2; }
.league-event-hero { isolation:isolate; position:relative; display:grid; grid-template-columns:minmax(0,1.15fr) minmax(240px,.85fr); overflow:hidden; min-height:360px; border:1px solid #ffffff20; border-top:2px solid var(--red); border-radius:12px; background:radial-gradient(ellipse at 93% 22%,#355b842e,transparent 48%),radial-gradient(ellipse at 14% 85%,#9d152624,transparent 52%),linear-gradient(135deg,#1b202a,#0d1119 72%); box-shadow:0 22px 55px #0004; }
.league-event-hero:before { content:''; position:absolute; inset:0; z-index:-1; background:repeating-linear-gradient(125deg,transparent 0 115px,#ffffff03 116px 117px,transparent 118px 232px); pointer-events:none; }
.league-event-hero-copy { padding:32px; align-self:center; min-width:0; z-index:2; }
.league-event-topline { display:flex; align-items:center; flex-wrap:wrap; gap:10px 18px; margin-bottom:27px; }
.league-event-topline .league-event-eyebrow { margin:0; }
.league-event-topline .badge { font-size:9px; }
.league-event-date { display:flex; align-items:center; gap:12px; margin-bottom:24px; }
.league-event-date>strong { font-size:57px; font-weight:850; letter-spacing:-3px; line-height:.9; }
.league-event-date>span { font-size:14px; font-weight:650; line-height:1.2; }
.league-event-date small { display:block; font-size:11px; color:var(--muted); font-weight:400; margin-top:4px; }
.league-event-date-unknown { display:block; color:var(--muted); margin-bottom:20px; }
.league-event-hero h1,.league-event-hero h2 { font-size:clamp(28px,3.5vw,47px); line-height:1.04; letter-spacing:-1.3px; font-weight:850; overflow-wrap:anywhere; margin:0 0 20px; }
.league-event-meta { display:flex; flex-wrap:wrap; align-items:center; gap:9px 14px; color:#b9c3d2; font-size:11px; }
.league-event-meta>span:first-child { flex-basis:100%; color:#e1e5ec; font-size:13px; margin-bottom:4px; }
.league-event-meta>span:not(:first-child) { display:flex; gap:7px; align-items:center; }
.league-event-meta>span:not(:first-child):before { content:''; width:4px; height:4px; border-radius:50%; background:#d85b65; }
.league-event-hero-bottom { display:flex; align-items:center; flex-wrap:wrap; gap:12px; margin-top:25px; }
.league-event-hero-bottom .button { font-size:12px; padding:11px 16px; }
.league-event-edition { color:#a5afbf; font-size:11px; }
.league-event-bonus { color:#e0b77c; font-size:10px; font-weight:600; padding:5px 8px; border:1px solid #d9a64730; border-radius:4px; }
.league-event-art { display:grid; grid-template-columns:minmax(0,1fr) 22px minmax(0,1fr); align-items:center; position:relative; min-width:0; align-self:stretch; padding:44px 26px 42px 0; gap:5px; }
.league-event-art:before { content:''; position:absolute; width:70%; height:75%; top:13%; left:15%; border:1px solid #ffffff0d; background:linear-gradient(145deg,#e7313a12,#3bd4ff09); transform:skew(-15deg); pointer-events:none; }
.league-event-portrait { z-index:1; min-width:0; align-self:center; }
.league-event-portrait .avatar.large { width:100%; height:auto; aspect-ratio:4 / 5; border-radius:9px; font-size:clamp(26px,3vw,42px); border-color:#ffffff1b; box-shadow:0 12px 35px #0007; }
.league-event-portrait-a .avatar { border-bottom:3px solid #e7313a; }
.league-event-portrait-b .avatar { border-bottom:3px solid #3bd4ff; }
.league-event-portrait>span:not(.avatar) { display:block; color:#e8ebf2; text-align:center; font-weight:750; font-size:12px; line-height:1.35; margin-top:12px; overflow-wrap:anywhere; }
.league-event-versus { z-index:2; color:#e4e8f1; font-size:14px; font-weight:900; font-style:italic; text-align:center; text-shadow:0 3px 12px #000; }
.league-event-art-caption { position:absolute; bottom:18px; left:0; right:26px; text-align:center; font-size:8px; letter-spacing:1.8px; text-transform:uppercase; color:#78859a; }
.league-event-art-empty { display:flex; flex-direction:column; justify-content:center; gap:22px; }
.league-event-art-empty img { position:relative; width:min(65%,185px); height:auto; filter:drop-shadow(0 15px 30px #0006); }
.league-event-art-empty>span { position:relative; color:#aeb7c8; font-size:9px; letter-spacing:2px; text-align:center; }
.events-section { margin-top:36px; }
.events-section-heading { display:flex; align-items:center; justify-content:space-between; gap:20px; margin:0 0 20px; }
.events-section-heading h2 { margin:0; font-size:23px; line-height:1.2; letter-spacing:-.6px; }
.events-section-heading p:not(.league-event-eyebrow) { margin:7px 0 0; color:#8d99ac; font-size:12px; }
.events-section-heading>span { border:1px solid var(--border); border-radius:50%; color:#aab6ca; display:grid; place-items:center; width:32px; height:32px; flex-shrink:0; font-size:12px; }
.events-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:20px; }
.events-card { display:flex; flex-direction:column; min-width:0; overflow:hidden; border:1px solid #ffffff1b; border-radius:10px; background:linear-gradient(130deg,#171e29,#10151d); transition:border-color .15s,transform .15s; }
.events-card:hover { border-color:#e7313a77; transform:translateY(-2px); }
.events-card-visual { position:relative; overflow:hidden; background:radial-gradient(ellipse at 20% 75%,#e7313a26,transparent 60%),radial-gradient(ellipse at 90% 35%,#3bd4ff16,transparent 55%),#080b11; border-bottom:1px solid #ffffff13; }
.events-card .league-event-art { min-height:212px; padding:43px 24px 23px; gap:8px; }
.events-card .league-event-art-caption { display:none; }
.events-card .league-event-portrait .avatar { max-height:150px; width:auto; margin-inline:auto; max-width:100%; }
.events-card .league-event-portrait>span:not(.avatar) { font-size:10px; margin-top:8px; }
.events-card-status { position:absolute; top:12px; left:12px; z-index:3; }
.events-card-status .badge { background:#090d16ed; padding:4px 8px; font-size:8px; }
.events-card-copy { display:flex; flex-direction:column; flex:1; padding:20px; min-width:0; }
.events-card-copy h3 { margin:0 0 11px; font-size:21px; font-weight:800; line-height:1.17; overflow-wrap:anywhere; }
.events-card-copy>p { color:#a2aec1; font-size:11px; margin:0 0 20px; }
.events-card-bottom { display:flex; justify-content:space-between; align-items:center; gap:12px; margin-top:auto; padding-top:14px; border-top:1px solid #ffffff0e; color:#a4afc0; font-size:10px; }
.events-card-bottom>span:last-child { color:#fb646e; font-size:19px; }
.league-event-description { display:grid; grid-template-columns:155px minmax(0,1fr); gap:20px; padding:28px 0; border-bottom:1px solid #ffffff15; }
.league-event-description>p { margin:0; }
.league-event-description>p:last-child { white-space:pre-line; color:#b7c0ce; font-size:13px; line-height:1.8; max-width:900px; overflow-wrap:anywhere; }
.league-event-program { margin-top:35px; }
.league-event-fights { display:grid; gap:16px; }
.league-event-broadcast { margin-top:38px; padding:25px; border:1px solid #ffffff17; border-radius:10px; background:#111722; }
.league-event-broadcast .video-player { border-radius:7px; overflow:hidden; }
.league-event-all { display:flex; justify-content:space-between; gap:15px; align-items:center; margin-top:26px; border-top:1px solid #ffffff16; padding-top:22px; color:#b6c1d4; font-size:12px; }
.league-event-all>span { color:#ed6571; font-size:19px; }
@media(max-width:1200px) {
  .events-grid { grid-template-columns:repeat(2,minmax(0,1fr)); }
  .league-event-hero { grid-template-columns:minmax(0,1.2fr) minmax(210px,.8fr); }
  .league-event-hero-copy { padding:26px; }
  .league-event-art { padding-right:20px; }
  .league-event-portrait>span:not(.avatar) { font-size:11px; }
}
@media(max-width:850px) {
  .events-heading { align-items:flex-start; }
  .events-totals { gap:15px; }
  .league-event-hero { grid-template-columns:minmax(0,1fr); }
  .league-event-hero-copy { padding:27px 27px 0; }
  .league-event-art { max-width:460px; width:100%; justify-self:center; padding:25px 27px 38px; grid-template-columns:minmax(0,1fr) 30px minmax(0,1fr); }
  .league-event-art-caption { right:0; bottom:12px; }
  .league-event-portrait .avatar.large { max-height:245px; }
  .league-event-art-empty { min-height:235px; }
  .league-event-hero h1,.league-event-hero h2 { max-width:600px; }
  .league-event-description { grid-template-columns:1fr; gap:10px; }
}
@media(max-width:560px) {
  .events-heading { display:block; margin-bottom:22px; }
  .events-heading h1 { font-size:32px; }
  .events-heading p:not(.league-event-eyebrow) { font-size:12px; }
  .events-totals { margin-top:20px; gap:22px; font-size:10px; }
  .events-totals strong { display:inline; font-size:19px; margin-right:5px; }
  .league-event-hero { border-radius:9px; }
  .league-event-hero-copy { padding:22px 20px 0; }
  .league-event-topline { gap:8px 12px; margin-bottom:23px; }
  .league-event-topline .league-event-eyebrow { font-size:8px; letter-spacing:1.4px; }
  .league-event-topline .badge { font-size:8px; padding:4px 7px; }
  .league-event-date { margin-bottom:20px; }
  .league-event-date>strong { font-size:48px; }
  .league-event-hero h1,.league-event-hero h2 { font-size:32px; letter-spacing:-1px; }
  .league-event-hero-bottom { gap:11px; margin-top:22px; }
  .league-event-hero-bottom .button { font-size:11px; }
  .league-event-art { padding:25px 20px 35px; grid-template-columns:minmax(0,1fr) 24px minmax(0,1fr); gap:6px; }
  .league-event-portrait .avatar.large { max-height:none; }
  .league-event-portrait>span:not(.avatar) { font-size:11px; }
  .events-grid { grid-template-columns:1fr; gap:16px; }
  .events-card .league-event-art { max-width:350px; margin:auto; }
  .events-card-copy { padding:20px; }
  .events-section-heading h2 { font-size:21px; }
  .events-section-heading p:not(.league-event-eyebrow) { font-size:11px; }
  .league-event-broadcast { padding:16px; }
}
@media(prefers-reduced-motion:reduce) { .events-card { transition:none; } .events-card:hover { transform:none; } }
