:root {
  --bg: #090d11;
  --surface: rgba(15, 21, 27, .94);
  --surface-2: #141c23;
  --surface-3: #1a242d;
  --line: rgba(255,255,255,.09);
  --text: #f4f6f7;
  --muted: #8e9aa4;
  --gold: #d7ad63;
  --gold-2: #f4d391;
  --teal: #36c3b0;
  --red: #d8574f;
  --blue: #4e95dc;
  --radius: 4px;
  --shadow: 0 18px 60px rgba(0,0,0,.34);
  --max: 1420px;
}

* { box-sizing: border-box; }
html { scroll-behavior: smooth; background: var(--bg); }
body {
  margin: 0;
  min-width: 320px;
  color: var(--text);
  background: var(--bg) url('../images/bg.jpg') center 92px / 2048px auto no-repeat fixed;
  font: 14px/1.55 Inter, Arial, sans-serif;
}
body::before { content:""; position:fixed; inset:0; z-index:-1; background:linear-gradient(180deg, rgba(7,11,15,.12) 0, rgba(7,11,15,.82) 690px, #090d11 1080px); pointer-events:none; }
a { color: inherit; text-decoration: none; }
button, input, select { font: inherit; }
button { color: inherit; }
img { max-width: 100%; display: block; }
.skip-link { position:fixed; top:-60px; left:16px; z-index:100; padding:10px 14px; background:var(--gold); color:#111; font-weight:700; }
.skip-link:focus { top:10px; }
.container { width:min(calc(100% - 40px), var(--max)); margin-inline:auto; }

.topbar { height:74px; display:flex; align-items:center; border-bottom:1px solid var(--line); background:rgba(8,12,16,.93); backdrop-filter:blur(18px); position:sticky; top:0; z-index:30; }
.nav { display:flex; align-items:center; gap:34px; width:100%; position:relative; }
.brand { display:flex; align-items:center; gap:12px; flex:0 0 auto; }
.brand-mark { width:41px; height:41px; border:1px solid rgba(215,173,99,.55); display:grid; place-items:center; transform:rotate(45deg); background:linear-gradient(145deg,#252016,#10171c); }
.brand-mark::after { content:"TI"; transform:rotate(-45deg); font:800 17px/1 'Barlow Condensed'; color:var(--gold-2); }
.brand-text { font:800 20px/1 'Barlow Condensed'; letter-spacing:.08em; }
.brand-text small { display:block; margin-top:5px; font:600 9px/1 Inter; color:var(--gold); letter-spacing:.24em; }
.nav-links { display:flex; align-items:center; gap:24px; margin-left:auto; }
.nav-links a { position:relative; font:700 13px/1 'Barlow Condensed'; text-transform:uppercase; letter-spacing:.09em; color:#c7cdd1; }
.nav-links a:hover, .nav-links a.active { color:#fff; }
.nav-links a.active::after { content:""; position:absolute; left:0; right:0; bottom:-29px; height:2px; background:var(--gold); }
.nav-actions { display:flex; align-items:center; gap:10px; margin-left:12px; }
.icon-btn { width:38px; height:38px; display:grid; place-items:center; border:1px solid var(--line); background:rgba(255,255,255,.03); cursor:pointer; }
.icon-btn:hover { border-color:rgba(215,173,99,.65); color:var(--gold-2); }
.lang { padding:9px 11px; border-left:1px solid var(--line); color:var(--gold-2); font-weight:700; font-size:12px; }
.menu-toggle { display:none; }

.ticker-wrap { height:88px; background:rgba(10,15,19,.96); border-bottom:1px solid var(--line); overflow:hidden; }
.ticker { height:100%; display:grid; grid-template-columns:210px 1fr 44px; align-items:stretch; }
.ticker-bonus { display:flex; align-items:center; gap:12px; padding:0 19px; background:linear-gradient(125deg,#d7ad63,#b8812c); color:#15110a; }
.ticker-bonus strong { display:block; font:800 18px/1 'Barlow Condensed'; letter-spacing:.06em; }
.ticker-bonus small { font-size:10px; font-weight:700; letter-spacing:.05em; }
.bonus-gift { width:38px; height:38px; display:grid; place-items:center; border:1px solid rgba(0,0,0,.28); font-size:19px; }
.ticker-track { display:flex; overflow-x:auto; scroll-behavior:smooth; scrollbar-width:none; }
.ticker-track::-webkit-scrollbar { display:none; }
.ticker-match { flex:0 0 272px; padding:12px 18px; border-right:1px solid var(--line); display:grid; grid-template-columns:1fr auto; gap:5px 12px; align-content:center; transition:.2s; }
.ticker-match:hover { background:rgba(255,255,255,.035); }
.ticker-label { grid-column:1/-1; color:var(--muted); font-size:9px; letter-spacing:.13em; text-transform:uppercase; }
.ticker-teams { font:700 14px/1.35 'Barlow Condensed'; letter-spacing:.03em; }
.ticker-team { display:flex; align-items:center; gap:8px; }
.ticker-team + .ticker-team { margin-top:5px; }
.mini-logo { width:22px; height:22px; border:1px solid rgba(255,255,255,.12); display:grid; place-items:center; font:800 9px/1 'Barlow Condensed'; color:var(--gold-2); background:#1d2730; }
.ticker-time { text-align:right; align-self:center; }
.ticker-time strong { display:block; font:800 18px/1 'Barlow Condensed'; }
.ticker-time span { font-size:9px; color:var(--gold); }
.ticker-next { border:0; border-left:1px solid var(--line); background:rgba(255,255,255,.025); cursor:pointer; font-size:22px; }

main { min-height:700px; }
.hero { min-height:510px; display:flex; align-items:center; padding:62px 0 52px; }
.hero-grid { display:grid; grid-template-columns:minmax(0,1.1fr) minmax(330px,.9fr); gap:72px; align-items:end; }
.eyebrow { display:flex; align-items:center; gap:12px; color:var(--gold-2); font:700 11px/1 Inter; letter-spacing:.2em; text-transform:uppercase; }
.eyebrow::before { content:""; width:30px; height:1px; background:var(--gold); }
.hero h1 { margin:18px 0 17px; max-width:790px; font:800 clamp(56px,7vw,104px)/.83 'Barlow Condensed'; letter-spacing:-.035em; text-transform:uppercase; }
.hero h1 span { display:block; color:var(--gold-2); font-size:.55em; letter-spacing:.04em; }
.hero-copy { max-width:635px; color:#b6c0c7; font-size:16px; line-height:1.7; }
.hero-actions { display:flex; flex-wrap:wrap; gap:12px; margin-top:29px; }
.btn { min-height:44px; padding:0 20px; border:1px solid var(--line); display:inline-flex; align-items:center; justify-content:center; gap:10px; font:700 12px/1 Inter; letter-spacing:.07em; text-transform:uppercase; cursor:pointer; }
.btn-primary { color:#15110a; background:var(--gold); border-color:var(--gold); }
.btn-primary:hover { background:var(--gold-2); }
.btn-ghost { background:rgba(15,21,27,.54); backdrop-filter:blur(10px); }
.btn-ghost:hover { border-color:var(--gold); }
.event-card { position:relative; padding:28px; border:1px solid rgba(215,173,99,.28); background:linear-gradient(145deg,rgba(16,22,28,.94),rgba(10,15,20,.86)); box-shadow:var(--shadow); }
.event-card::before { content:""; position:absolute; top:-1px; left:28px; width:78px; height:2px; background:var(--gold); }
.event-card-head { display:flex; align-items:center; justify-content:space-between; gap:15px; padding-bottom:20px; border-bottom:1px solid var(--line); }
.event-card-head span { color:var(--muted); font-size:11px; text-transform:uppercase; letter-spacing:.12em; }
.event-card-head strong { color:var(--teal); font:700 11px/1 Inter; text-transform:uppercase; letter-spacing:.1em; }
.countdown-title { margin:20px 0 8px; color:var(--muted); font-size:10px; text-transform:uppercase; letter-spacing:.14em; }
.countdown { display:grid; grid-template-columns:repeat(4,1fr); gap:8px; }
.time-unit { padding:13px 8px 10px; text-align:center; background:rgba(255,255,255,.035); border:1px solid var(--line); }
.time-unit b { display:block; font:700 31px/1 'Barlow Condensed'; }
.time-unit small { color:var(--muted); font-size:8px; text-transform:uppercase; letter-spacing:.12em; }
.event-facts { display:grid; grid-template-columns:repeat(3,1fr); margin-top:20px; }
.event-fact { padding:0 12px; border-right:1px solid var(--line); }
.event-fact:first-child { padding-left:0; }.event-fact:last-child { border:0; }
.event-fact small { display:block; color:var(--muted); font-size:9px; text-transform:uppercase; }
.event-fact b { display:block; margin-top:5px; font:700 16px/1.1 'Barlow Condensed'; }

.content-zone { background:linear-gradient(180deg,rgba(9,13,17,.94),#090d11 320px); padding:52px 0 80px; border-top:1px solid var(--line); }
.layout { display:grid; grid-template-columns:minmax(0,1fr) 350px; gap:28px; align-items:start; }
.main-column { min-width:0; }
.sidebar { position:sticky; top:92px; display:grid; gap:18px; }
.section-head { display:flex; align-items:end; justify-content:space-between; gap:20px; margin-bottom:22px; }
.section-kicker { color:var(--gold); font:700 10px/1 Inter; letter-spacing:.18em; text-transform:uppercase; }
.section-title { margin:6px 0 0; font:800 clamp(27px,3vw,38px)/1 'Barlow Condensed'; text-transform:uppercase; letter-spacing:.01em; }
.text-link { color:#cbd1d5; font-size:11px; font-weight:700; text-transform:uppercase; letter-spacing:.08em; }
.text-link:hover { color:var(--gold-2); }
.panel { border:1px solid var(--line); background:var(--surface); box-shadow:0 10px 30px rgba(0,0,0,.16); }
.panel-body { padding:22px; }
.panel-title { display:flex; align-items:center; justify-content:space-between; min-height:50px; padding:0 18px; border-bottom:1px solid var(--line); font:700 14px/1 'Barlow Condensed'; text-transform:uppercase; letter-spacing:.08em; }
.panel-title::before { content:""; width:3px; height:18px; background:var(--gold); margin-right:10px; }
.panel-title span:first-of-type { margin-right:auto; }
.match-list { display:grid; }
.match-row { display:grid; grid-template-columns:68px 1fr auto; gap:12px; align-items:center; padding:15px 17px; border-bottom:1px solid var(--line); }
.match-row:last-child { border-bottom:0; }
.match-row:hover { background:rgba(255,255,255,.025); }
.match-date { color:var(--muted); font-size:10px; line-height:1.45; }
.match-date b { display:block; color:var(--text); font:700 15px/1 'Barlow Condensed'; }
.match-pair { font:700 14px/1.35 'Barlow Condensed'; }
.match-pair span { display:block; }.match-pair span + span { margin-top:3px; }
.match-format { color:var(--gold); font:700 10px/1 Inter; }
.form-badge { padding:4px 7px; font-size:9px; font-weight:800; background:rgba(54,195,176,.12); color:var(--teal); }
.bonus-card { padding:25px; overflow:hidden; position:relative; min-height:210px; background:radial-gradient(circle at 80% 20%,rgba(255,224,126,.24),transparent 36%), linear-gradient(135deg,#c39649,#755526); color:#120f09; }
.bonus-card::after { content:"+"; position:absolute; right:-8px; bottom:-64px; font:800 190px/1 'Barlow Condensed'; color:rgba(255,255,255,.10); }
.bonus-card small { text-transform:uppercase; font-weight:800; letter-spacing:.13em; }
.bonus-card h3 { margin:13px 0 7px; font:800 34px/.9 'Barlow Condensed'; text-transform:uppercase; }
.bonus-card p { max-width:230px; font-size:11px; font-weight:600; }
.bonus-card .btn { position:relative; z-index:1; margin-top:10px; background:#111820; color:#fff; border-color:#111820; }
.notice { padding:15px 17px; color:var(--muted); font-size:10px; border:1px solid var(--line); background:rgba(255,255,255,.018); }

.schedule { display:grid; gap:10px; }
.schedule-card { display:grid; grid-template-columns:96px 1fr 55px 1fr 86px; gap:12px; align-items:center; min-height:82px; padding:13px 18px; border:1px solid var(--line); background:linear-gradient(90deg,rgba(255,255,255,.025),transparent); }
.schedule-card:hover { border-color:rgba(215,173,99,.3); }
.schedule-time { color:var(--muted); font-size:10px; }.schedule-time b { display:block; color:var(--text); font:700 18px/1 'Barlow Condensed'; }
.schedule-team { display:flex; align-items:center; gap:11px; font:700 16px/1 'Barlow Condensed'; }
.team-logo { flex:0 0 auto; width:42px; height:42px; border:1px solid var(--line); background:#1a232b; display:grid; place-items:center; overflow:hidden; color:var(--gold-2); font:800 14px/1 'Barlow Condensed'; }
.team-logo span,.team-logo img { grid-area:1/1; }
.team-logo img { width:82%; height:82%; object-fit:contain; filter:drop-shadow(0 3px 5px rgba(0,0,0,.3)); }
.versus { text-align:center; color:var(--muted); font:800 12px/1 Inter; }
.schedule-starts { text-align:right; color:var(--gold); font:700 10px/1.4 Inter; }.schedule-starts b { display:block; color:var(--text); }

.teams-grid { display:grid; grid-template-columns:repeat(4,1fr); gap:12px; }
.team-card { min-height:170px; padding:20px; border:1px solid var(--line); background:linear-gradient(145deg,rgba(25,34,42,.9),rgba(12,17,22,.9)); position:relative; overflow:hidden; }
.team-card:hover { border-color:rgba(215,173,99,.4); transform:translateY(-2px); transition:.2s; }
.team-card .team-logo { width:56px; height:56px; margin-bottom:24px; }
.team-card h3 { margin:0; font:700 18px/1 'Barlow Condensed'; }
.team-card p { margin:7px 0 0; color:var(--muted); font-size:10px; }
.rank { position:absolute; right:16px; top:15px; font:700 12px/1 'Barlow Condensed'; color:var(--gold); }

.history-strip { display:grid; grid-template-columns:repeat(5,1fr); gap:10px; }
.history-card { min-height:132px; padding:17px; border:1px solid var(--line); background:rgba(255,255,255,.025); }
.history-card:hover { background:rgba(215,173,99,.06); border-color:rgba(215,173,99,.3); }
.history-year { color:var(--gold); font:800 27px/1 'Barlow Condensed'; }
.history-card h3 { margin:19px 0 4px; font:700 15px/1 'Barlow Condensed'; }
.history-card p { margin:0; color:var(--muted); font-size:9px; }
.section-space { margin-top:48px; }

.breadcrumb { display:flex; align-items:center; gap:8px; padding:28px 0 18px; color:var(--muted); font-size:10px; text-transform:uppercase; letter-spacing:.08em; }
.breadcrumb a:hover { color:var(--gold); }
.profile-hero { padding:26px 0 32px; }
.profile-grid { display:grid; grid-template-columns:220px minmax(0,1fr); gap:34px; align-items:end; }
.profile-visual { height:270px; position:relative; display:grid; place-items:end center; border:1px solid var(--line); background:radial-gradient(circle at 50% 30%,rgba(71,125,143,.26),transparent 55%),#111820; overflow:hidden; }
.profile-visual img { width:100%; height:100%; object-fit:cover; object-position:top center; }
.profile-visual .team-logo { width:135px; height:135px; margin:auto; border:0; background:transparent; font-size:32px; }
.profile-visual .player-photo-box { width:100%; height:100%; }
.profile-visual .team-logo img { width:82%; height:82%; object-fit:contain; }
.profile-info h1 { margin:9px 0 12px; font:800 clamp(48px,6vw,78px)/.9 'Barlow Condensed'; text-transform:uppercase; }
.profile-sub { color:#b2bbc1; font-size:13px; }
.profile-sub strong { color:#fff; }.flag { font-size:17px; vertical-align:-1px; margin-right:7px; }
.stats-line { display:grid; grid-template-columns:repeat(4,1fr); margin-top:27px; border-top:1px solid var(--line); border-bottom:1px solid var(--line); }
.stat-box { padding:17px 18px; border-right:1px solid var(--line); }.stat-box:last-child { border:0; }
.stat-box small { display:block; color:var(--muted); font-size:9px; text-transform:uppercase; letter-spacing:.1em; }
.stat-box b { display:block; margin-top:7px; font:700 21px/1 'Barlow Condensed'; }
.tabs { display:flex; overflow-x:auto; border-bottom:1px solid var(--line); margin-bottom:24px; }
.tab { flex:1; min-width:120px; padding:16px 18px; text-align:center; color:var(--muted); font:700 11px/1 Inter; text-transform:uppercase; border-bottom:2px solid transparent; cursor:pointer; }
.tab.active { color:var(--text); border-color:var(--gold); }

.roster-grid { display:grid; grid-template-columns:repeat(5,1fr); gap:10px; }
.player-card { position:relative; min-height:262px; border:1px solid var(--line); overflow:hidden; background:linear-gradient(160deg,#222d35,#11171c); }
.player-card:hover { border-color:rgba(215,173,99,.38); }
.player-photo { width:100%; height:190px; object-fit:cover; object-position:top center; filter:saturate(.78); }
.player-photo-box { display:block; width:100%; height:190px; overflow:hidden; }
.player-photo-box .player-photo,.player-photo-box .photo-fallback { width:100%; height:100%; }
.photo-fallback { height:190px; display:grid; place-items:center; font:800 52px/1 'Barlow Condensed'; color:rgba(215,173,99,.65); background:radial-gradient(circle,#263642,#12191f 68%); }
.role { position:absolute; top:12px; left:12px; padding:5px 8px; background:rgba(9,13,17,.86); color:var(--gold-2); font-size:8px; font-weight:800; text-transform:uppercase; letter-spacing:.08em; }
.player-card-info { padding:13px 14px; }.player-card-info h3 { margin:0; font:700 16px/1 'Barlow Condensed'; }.player-card-info p { margin:6px 0 0; color:var(--muted); font-size:9px; }

.hero-table { display:grid; }
.hero-row { display:grid; grid-template-columns:minmax(160px,1fr) 90px 90px 90px; gap:12px; align-items:center; min-height:67px; padding:10px 14px; border-bottom:1px solid var(--line); }
.hero-row:last-child { border:0; }.hero-row:hover { background:rgba(255,255,255,.02); }
.hero-ident { display:flex; align-items:center; gap:12px; font:700 14px/1 'Barlow Condensed'; }
.hero-thumb { width:70px; height:40px; object-fit:cover; background:#202a31; }
.metric { text-align:right; font:700 13px/1 Inter; }.metric small { display:block; margin-bottom:6px; color:var(--muted); font-size:8px; text-transform:uppercase; }
.bar { width:100%; height:4px; margin-top:7px; background:#293139; }.bar span { display:block; height:100%; background:var(--teal); }

.bio { color:#b3bdc4; line-height:1.8; }.bio p:first-child { margin-top:0; }
.achievement-list { display:grid; grid-template-columns:repeat(3,1fr); gap:10px; }
.achievement { padding:18px; border:1px solid var(--line); background:rgba(255,255,255,.02); }
.achievement b { display:block; color:var(--gold-2); font:700 17px/1 'Barlow Condensed'; }.achievement span { display:block; margin-top:8px; color:var(--muted); font-size:10px; }

.match-hero-card { padding:34px; border:1px solid rgba(215,173,99,.24); background:linear-gradient(135deg,rgba(18,26,32,.97),rgba(10,15,19,.96)); }
.match-meta { display:flex; align-items:center; justify-content:center; gap:10px; color:var(--muted); font-size:10px; text-transform:uppercase; letter-spacing:.12em; }
.matchup { display:grid; grid-template-columns:1fr 120px 1fr; align-items:center; margin-top:26px; }
.matchup-team { display:flex; align-items:center; gap:19px; }.matchup-team:last-child { flex-direction:row-reverse; text-align:right; }
.matchup-team .team-logo { width:94px; height:94px; }.matchup-team h1 { margin:0; font:800 31px/1 'Barlow Condensed'; text-transform:uppercase; }.matchup-team p { margin:8px 0 0; color:var(--muted); font-size:10px; }
.matchup-center { text-align:center; }.matchup-center .vs { font:800 32px/1 'Barlow Condensed'; color:var(--gold); }.matchup-center .match-clock { margin-top:8px; font:700 12px/1 'Barlow Condensed'; }
.prediction { display:grid; grid-template-columns:1fr 1fr; height:6px; margin-top:32px; gap:2px; }.prediction span:first-child { background:var(--teal); }.prediction span:last-child { background:var(--red); }
.prediction-labels { display:flex; justify-content:space-between; margin-top:8px; color:var(--muted); font-size:9px; }
.lineup-columns { display:grid; grid-template-columns:1fr 1fr; gap:18px; }
.lineup { display:grid; }.lineup-player { display:flex; align-items:center; gap:12px; padding:12px; border-bottom:1px solid var(--line); }.lineup-player:last-child { border:0; }.avatar { width:36px; height:36px; display:grid; place-items:center; background:#202a32; color:var(--gold-2); font:700 12px/1 'Barlow Condensed'; }

.event-overview { display:grid; grid-template-columns:1.3fr .7fr; gap:24px; }
.event-intro { padding:30px; border:1px solid var(--line); background:linear-gradient(135deg,rgba(23,31,38,.95),rgba(10,15,19,.95)); }
.event-intro h1 { margin:12px 0 14px; font:800 clamp(42px,5vw,66px)/.9 'Barlow Condensed'; text-transform:uppercase; }
.event-intro p { color:#b4bdc4; max-width:750px; line-height:1.75; }
.event-summary { display:grid; grid-template-columns:1fr 1fr; border:1px solid var(--line); background:var(--surface); }
.event-summary div { padding:20px; border-right:1px solid var(--line); border-bottom:1px solid var(--line); }.event-summary div:nth-child(even) { border-right:0; }.event-summary div:nth-last-child(-n+2) { border-bottom:0; }
.event-summary small { display:block; color:var(--muted); font-size:9px; text-transform:uppercase; }.event-summary b { display:block; margin-top:7px; font:700 17px/1 'Barlow Condensed'; }
.archive-grid { display:grid; grid-template-columns:repeat(3,1fr); gap:12px; }
.archive-card { padding:20px; min-height:170px; border:1px solid var(--line); background:rgba(255,255,255,.022); position:relative; }.archive-card:hover { border-color:rgba(215,173,99,.35); }.archive-card .history-year { font-size:33px; }.archive-card h3 { margin:26px 0 5px; font:700 18px/1 'Barlow Condensed'; }.archive-card p { margin:0; color:var(--muted); font-size:10px; }.champion { position:absolute; top:18px; right:18px; color:var(--gold-2); font-size:9px; text-align:right; }.champion b { display:block; margin-top:4px; font:700 12px/1 'Barlow Condensed'; }

.filters { display:flex; flex-wrap:wrap; gap:10px; margin-bottom:18px; }.filter { padding:9px 13px; border:1px solid var(--line); background:rgba(255,255,255,.02); color:var(--muted); font-size:10px; cursor:pointer; }.filter.active,.filter:hover { color:#15110a; background:var(--gold); border-color:var(--gold); }
.heroes-grid { display:grid; grid-template-columns:repeat(4,1fr); gap:11px; }
.hero-card { border:1px solid var(--line); background:var(--surface); overflow:hidden; cursor:pointer; }.hero-card:hover { border-color:rgba(215,173,99,.4); transform:translateY(-2px); transition:.2s; }.hero-card img { width:100%; aspect-ratio:1.76; object-fit:cover; }.hero-card-info { padding:13px; }.hero-card-info h3 { margin:0 0 10px; font:700 16px/1 'Barlow Condensed'; }.hero-numbers { display:flex; justify-content:space-between; color:var(--muted); font-size:9px; }.hero-numbers b { display:block; margin-top:2px; color:var(--text); font-size:12px; }

.site-footer { border-top:1px solid var(--line); background:#080c0f; padding:38px 0; color:var(--muted); }
.footer-grid { display:grid; grid-template-columns:1fr auto; gap:30px; align-items:center; }.footer-copy { max-width:760px; font-size:10px; line-height:1.6; }.footer-links { display:flex; flex-wrap:wrap; gap:18px; font-size:10px; text-transform:uppercase; }.footer-links a:hover { color:var(--gold); }

.mobile-menu { display:none; }
.search-popover { position:absolute; z-index:50; top:56px; right:0; width:min(430px,calc(100vw - 28px)); padding:17px; border:1px solid var(--line); background:#0d1419; box-shadow:var(--shadow); }
.search-popover label { display:block; margin-bottom:9px; color:var(--muted); font-size:9px; text-transform:uppercase; letter-spacing:.1em; }
.search-popover input { width:100%; padding:12px 13px; border:1px solid var(--line); outline:0; color:var(--text); background:#141c22; }
.search-popover input:focus { border-color:var(--gold); }
#search-results { display:grid; margin-top:8px; }
#search-results a,#search-results>span { padding:10px 11px; border-bottom:1px solid var(--line); color:var(--muted); font-size:11px; }
#search-results a:hover { color:var(--gold-2); background:rgba(255,255,255,.025); }
[hidden] { display:none!important; }
@media (max-width:1180px) {
  .nav-links { gap:16px; }.nav-links a { font-size:12px; }
  .layout { grid-template-columns:minmax(0,1fr) 310px; }
  .teams-grid { grid-template-columns:repeat(3,1fr); }
  .history-strip { grid-template-columns:repeat(3,1fr); }
  .roster-grid { grid-template-columns:repeat(3,1fr); }
}
@media (max-width:900px) {
  .container { width:min(calc(100% - 28px), var(--max)); }
  .nav-links { display:none; }.menu-toggle { display:grid; }
  .ticker { grid-template-columns:150px 1fr 40px; }.ticker-bonus { padding:0 13px; }.ticker-bonus strong { font-size:15px; }.ticker-bonus small { display:none; }
  .hero { min-height:auto; }.hero-grid { grid-template-columns:1fr; gap:35px; }.hero h1 { font-size:75px; }.event-card { max-width:540px; }
  .layout { grid-template-columns:1fr; }.sidebar { position:static; grid-template-columns:1fr 1fr; }.sidebar .notice { grid-column:1/-1; }
  .event-overview { grid-template-columns:1fr; }
  .heroes-grid { grid-template-columns:repeat(3,1fr); }
  .mobile-menu.open { display:grid; position:fixed; inset:74px 0 auto 0; z-index:40; padding:16px 20px 24px; background:#0c1217; border-bottom:1px solid var(--line); box-shadow:var(--shadow); }
  .mobile-menu a { padding:14px 0; border-bottom:1px solid var(--line); font:700 14px/1 'Barlow Condensed'; text-transform:uppercase; letter-spacing:.08em; }
}
@media (max-width:650px) {
  body { background-size:auto 620px; background-position:center 150px; }
  .topbar { height:64px; }.brand-text { font-size:16px; }.brand-mark { width:36px; height:36px; }.nav-actions .icon-btn:first-child,.lang { display:none; }
  .ticker-wrap { height:76px; }.ticker { grid-template-columns:86px 1fr 36px; }.ticker-bonus { gap:5px; padding:0 8px; }.bonus-gift { width:27px; height:27px; font-size:14px; }.ticker-bonus strong { font-size:12px; }.ticker-match { flex-basis:230px; padding:8px 12px; }.ticker-label { display:none; }
  .hero { padding:43px 0 42px; }.hero h1 { margin-top:14px; font-size:58px; }.hero-copy { font-size:14px; }.event-card { padding:20px; }.event-facts { grid-template-columns:1fr 1fr; gap:16px; }.event-fact:nth-child(2) { border:0; }.event-fact:last-child { grid-column:1/-1; padding:0; }
  .content-zone { padding-top:38px; }.sidebar { grid-template-columns:1fr; }.sidebar .notice { grid-column:auto; }
  .schedule-card { grid-template-columns:61px 1fr 31px 1fr; padding:11px 10px; }.schedule-starts { grid-column:2/-1; text-align:left; padding-left:53px; }.schedule-team { font-size:13px; gap:7px; }.schedule-team .team-logo { width:34px; height:34px; }
  .teams-grid,.history-strip,.archive-grid { grid-template-columns:1fr 1fr; }.team-card { min-height:150px; }
  .profile-grid { grid-template-columns:120px 1fr; gap:17px; }.profile-visual { height:175px; }.profile-info h1 { font-size:43px; }.stats-line { grid-template-columns:1fr 1fr; }.stat-box:nth-child(2) { border-right:0; }.stat-box:nth-child(-n+2) { border-bottom:1px solid var(--line); }
  .roster-grid { grid-template-columns:1fr 1fr; }.player-card { min-height:230px; }.player-photo,.photo-fallback { height:160px; }
  .hero-row { grid-template-columns:minmax(140px,1fr) 70px 70px; }.hero-row .metric:last-child { display:none; }.hero-thumb { width:58px; height:34px; }
  .achievement-list { grid-template-columns:1fr; }
  .match-hero-card { padding:20px 13px; }.matchup { grid-template-columns:1fr 50px 1fr; }.matchup-team { display:grid; text-align:center; justify-items:center; gap:8px; }.matchup-team:last-child { display:grid; text-align:center; }.matchup-team .team-logo { width:62px; height:62px; }.matchup-team h1 { font-size:20px; }.matchup-center .vs { font-size:23px; }.lineup-columns { grid-template-columns:1fr; }
  .event-summary { grid-template-columns:1fr 1fr; }.heroes-grid { grid-template-columns:1fr 1fr; }
  .footer-grid { grid-template-columns:1fr; }.footer-links { gap:12px; }
}
@media (max-width:420px) {
  .hero h1 { font-size:49px; }.teams-grid,.history-strip,.archive-grid,.heroes-grid { grid-template-columns:1fr; }.profile-grid { grid-template-columns:1fr; }.profile-visual { width:160px; }.roster-grid { grid-template-columns:1fr; }.event-summary { grid-template-columns:1fr; }.event-summary div { border-right:0; }.event-summary div:nth-last-child(-n+2) { border-bottom:1px solid var(--line); }.event-summary div:last-child { border-bottom:0; }
}

@media (prefers-reduced-motion: reduce) { *,*::before,*::after { scroll-behavior:auto!important; transition:none!important; animation:none!important; } }

/* DLTV-inspired dark redesign: compact, data-first, system typography */
:root {
  --bg: #0d1113;
  --surface: rgba(20, 24, 26, .97);
  --surface-2: #191e21;
  --surface-3: #202629;
  --line: rgba(255,255,255,.12);
  --text: #f3f3f3;
  --muted: #91999d;
  --gold: #c8292e;
  --gold-2: #ea4348;
  --teal: #2da6b7;
  --red: #c8292e;
  --radius: 0;
  --shadow: 0 4px 16px rgba(0,0,0,.35);
  --max: 1200px;
}

*, *::before, *::after { font-family: Arial, Helvetica, sans-serif !important; }
body {
  color: var(--text);
  background-color: #0c1214;
  background-image: url('../images/bg.jpg');
  background-position: center 52px;
  background-size: cover;
  background-repeat: no-repeat;
  background-attachment: fixed;
  font-size: 13px;
}
body::before {
  background: linear-gradient(180deg, rgba(4,29,35,.68), rgba(5,18,22,.82) 620px, rgba(7,12,14,.94));
}
.container { width:min(calc(100% - 30px), var(--max)); }

.topbar {
  height:54px;
  background:#bd2026;
  border-bottom:1px solid #7f1317;
  backdrop-filter:none;
  box-shadow:0 2px 8px rgba(0,0,0,.25);
}
.nav { gap:22px; }
.brand { gap:9px; }
.brand-mark {
  width:34px;
  height:34px;
  transform:none;
  border:0;
  background:rgba(255,255,255,.12);
  clip-path:polygon(0 0,100% 0,88% 100%,0 100%);
}
.brand-mark::after { content:"TI"; transform:none; color:#fff; font-size:15px; }
.brand-text { color:#fff; font-size:17px; letter-spacing:.02em; }
.brand-text small { display:none; }
.nav-links { gap:19px; }
.nav-links a { color:#fff; font-size:12px; letter-spacing:0; text-shadow:0 1px 1px rgba(0,0,0,.3); }
.nav-links a:hover,.nav-links a.active { color:#fff3a0; }
.nav-links a.active::after { bottom:-20px; height:3px; background:#fff3a0; }
.icon-btn { width:34px; height:34px; color:#fff; border-color:rgba(255,255,255,.22); background:transparent; }
.icon-btn:hover { color:#fff3a0; border-color:#fff3a0; }
.lang { color:#fff; border-color:rgba(255,255,255,.24); }

.ticker-wrap { height:82px; background:#171a1c; border-bottom:1px solid #050607; }
.ticker { grid-template-columns:205px 1fr 38px; }
.ticker-bonus { padding:0 16px; color:#111; background:#f1e900; }
.ticker-bonus strong { font-size:16px; }
.bonus-gift { border-color:rgba(0,0,0,.35); }
.ticker-match { flex-basis:245px; padding:10px 14px; border-color:rgba(255,255,255,.09); }
.ticker-label { color:#8f9699; font-size:8px; }
.ticker-teams { font-size:12px; }
.mini-logo { width:21px; height:21px; border-color:#3a4246; border-radius:50%; color:#fff; background:#262c2f; }
.ticker-time strong { font-size:16px; }
.ticker-time span { color:#f4e900; }
.ticker-next { background:#25292b; }

.hero { min-height:0; padding:26px 0 14px; align-items:stretch; }
.hero-grid {
  grid-template-columns:minmax(0,1.25fr) minmax(320px,.75fr);
  gap:22px;
  align-items:stretch;
  padding:24px;
  border:1px solid #32393c;
  background:rgba(17,24,27,.95);
  box-shadow:var(--shadow);
}
.eyebrow { gap:8px; color:#e4e7e8; font-size:9px; letter-spacing:.11em; }
.eyebrow::before { width:22px; background:#cf2b30; }
.hero h1 { margin:13px 0 12px; max-width:none; font-size:clamp(36px,5vw,55px); line-height:.96; letter-spacing:-.02em; }
.hero h1 span { margin-top:7px; color:#d7dadd; font-size:.42em; letter-spacing:.02em; }
.hero-copy { max-width:680px; color:#c1c7ca; font-size:13px; line-height:1.65; }
.hero-actions { margin-top:19px; }
.btn { min-height:38px; padding:0 16px; font-size:10px; letter-spacing:.02em; }
.btn-primary { color:#fff; background:#c8292e; border-color:#e33a40; }
.btn-primary:hover { background:#df3238; }
.btn-ghost { background:#252a2d; }

.event-card { padding:20px; border:1px solid #3b4245; background:#171c1f; box-shadow:none; }
.event-card::before { left:20px; width:52px; background:#c8292e; }
.event-card-head { padding-bottom:14px; }
.event-card-head strong { color:#54c7d4; }
.countdown-title { margin-top:14px; }
.countdown { gap:5px; }
.time-unit { padding:10px 4px 8px; background:#202629; border-color:#343b3e; }
.time-unit b { font-size:24px; }
.event-facts { margin-top:15px; }
.event-fact b { font-size:14px; }

.content-zone { padding:14px 0 60px; border:0; background:transparent; }
.layout { grid-template-columns:minmax(0,1fr) 300px; gap:14px; }
.main-column { padding:18px; border:1px solid #2e3639; background:rgba(16,20,22,.97); box-shadow:var(--shadow); }
.sidebar { top:68px; gap:12px; }
.section-head { margin-bottom:14px; }
.section-kicker { color:#e34146; font-size:9px; letter-spacing:.08em; }
.section-title { margin-top:4px; font-size:22px; letter-spacing:0; }
.section-space { margin-top:30px; }
.text-link { font-size:9px; }
.panel { background:#171b1e; border-color:#343a3d; box-shadow:none; }
.panel-title { min-height:42px; padding:0 13px; font-size:12px; letter-spacing:0; background:#202426; }
.panel-title::before { width:2px; height:16px; background:#c8292e; }
.panel-body { padding:16px; }

.match-row { grid-template-columns:58px 1fr auto; min-height:58px; padding:10px 12px; }
.match-date { font-size:9px; }
.match-date b { font-size:13px; }
.match-pair { font-size:12px; }
.match-format { color:#f0dd35; font-size:9px; }
.bonus-card { min-height:190px; padding:20px; color:#0c0c0c; background:#f1e900; }
.bonus-card h3 { margin:10px 0 6px; font-size:29px; line-height:.92; }
.bonus-card .btn { min-height:36px; }
.notice { background:#171b1d; }

.schedule { gap:6px; }
.schedule-card { grid-template-columns:78px 1fr 38px 1fr 68px; min-height:62px; padding:8px 12px; background:#191e21; border-color:#30373a; }
.schedule-card:hover { border-color:#a5282c; background:#1e2427; }
.schedule-time { font-size:8px; }
.schedule-time b { font-size:14px; }
.schedule-team { gap:8px; font-size:13px; }
.team-logo { width:34px; height:34px; border-color:#3a4246; background:#252c2f; font-size:11px; }
.versus { font-size:10px; }
.schedule-starts { font-size:9px; }

.teams-grid { gap:7px; }
.team-card { min-height:122px; padding:14px; background:#191e21; border-color:#30373a; }
.team-card:hover { transform:none; border-color:#b62b30; }
.team-card .team-logo { width:44px; height:44px; margin-bottom:16px; }
.team-card h3 { font-size:14px; }
.team-card p { margin-top:5px; font-size:9px; }
.rank { top:12px; right:12px; color:#e14449; }

.history-strip { gap:7px; }
.history-card { min-height:112px; padding:13px; background:#191e21; }
.history-year { color:#e14348; font-size:22px; }
.history-card h3 { margin:15px 0 4px; font-size:13px; }

.breadcrumb { padding:16px 0 10px; font-size:9px; }
.profile-hero { padding:0 0 14px; }
.profile-grid { grid-template-columns:160px minmax(0,1fr); gap:22px; align-items:center; padding:18px; border:1px solid #30383b; background:rgba(17,22,24,.96); }
.profile-visual { height:190px; background:#1b2225; }
.profile-info h1 { margin:7px 0 10px; font-size:40px; line-height:1; }
.profile-sub { font-size:11px; }
.stats-line { margin-top:18px; }
.stat-box { padding:12px; }
.stat-box b { margin-top:5px; font-size:17px; }
.tabs { margin-bottom:17px; background:#191d1f; }
.tab { padding:13px 12px; font-size:9px; }
.tab.active { border-color:#c8292e; }

.roster-grid { gap:7px; }
.player-card { min-height:220px; background:#1a2023; }
.player-photo,.player-photo-box { height:155px; }
.photo-fallback { height:155px; font-size:38px; }
.player-card-info { padding:10px 11px; }
.player-card-info h3 { font-size:13px; }
.role { top:8px; left:8px; padding:4px 6px; }

.hero-row { min-height:58px; padding:8px 11px; }
.hero-thumb { width:60px; height:34px; }
.hero-ident { font-size:12px; }
.metric { font-size:11px; }
.achievement-list { gap:7px; }
.achievement { padding:14px; background:#191e21; }
.achievement b { font-size:14px; }

.match-hero-card { padding:24px; border-color:#343b3e; background:rgba(17,22,24,.97); }
.matchup { margin-top:20px; }
.matchup-team .team-logo { width:72px; height:72px; }
.matchup-team h1 { font-size:25px; }
.matchup-center .vs { color:#e33c41; font-size:25px; }

.event-overview { gap:14px; }
.event-intro { padding:22px; border-color:#323a3d; background:rgba(17,22,24,.97); }
.event-intro h1 { margin:9px 0 12px; font-size:42px; line-height:.95; }
.event-intro p { font-size:12px; line-height:1.65; }
.event-summary { background:#171c1f; border-color:#323a3d; }
.event-summary div { padding:15px; }
.event-summary b { font-size:14px; }
.archive-grid { gap:7px; }
.archive-card { min-height:145px; padding:15px; background:#191e21; }
.archive-card .history-year { font-size:27px; }
.archive-card h3 { margin-top:22px; font-size:15px; }

.filters { gap:6px; margin-bottom:12px; }
.filter { padding:7px 11px; background:#1a1f22; font-size:9px; }
.filter.active,.filter:hover { color:#fff; background:#c8292e; border-color:#db3a40; }
.heroes-grid { gap:7px; }
.hero-card { background:#191e21; }
.hero-card:hover { transform:none; border-color:#b72d32; }
.hero-card-info { padding:10px; }
.hero-card-info h3 { font-size:13px; }

.search-popover { top:44px; background:#171b1d; }
.site-footer { padding:26px 0; background:#0b0e10; }

@media (max-width:900px) {
  .hero-grid { grid-template-columns:1fr; padding:18px; }
  .hero h1 { font-size:42px; }
  .layout { grid-template-columns:1fr; }
  .main-column { padding:14px; }
  .sidebar { grid-template-columns:1fr 1fr; }
  .profile-grid { grid-template-columns:135px 1fr; }
}

@media (max-width:650px) {
  body { background-position:center 54px; background-size:auto 760px; }
  .topbar { height:54px; }
  .ticker { grid-template-columns:84px 1fr 34px; }
  .ticker-bonus { padding:0 7px; }
  .hero { padding-top:14px; }
  .hero-grid { padding:14px; }
  .hero h1 { font-size:34px; }
  .event-card { padding:14px; }
  .sidebar { grid-template-columns:1fr; }
  .schedule-card { grid-template-columns:54px 1fr 24px 1fr; }
  .schedule-starts { padding-left:42px; }
  .profile-grid { grid-template-columns:105px 1fr; padding:12px; gap:13px; }
  .profile-visual { height:145px; }
  .profile-info h1 { font-size:30px; }
  .stats-line { margin-top:12px; }
  .stat-box { padding:9px; }
  .roster-grid { grid-template-columns:1fr 1fr; }
}

@media (max-width:420px) {
  .container { width:calc(100% - 16px); }
  .hero h1 { font-size:29px; }
  .profile-grid { grid-template-columns:1fr; }
  .profile-visual { width:130px; }
  .roster-grid,.teams-grid,.history-strip,.archive-grid,.heroes-grid { grid-template-columns:1fr; }
}

/* TI 2026 content expansion */
*, *::before, *::after {
  font-family: system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI Variable", "Segoe UI", sans-serif !important;
}

body {
  background-image: url('../images/bg.jpg');
  background-position: center 54px;
  background-size: 2048px auto;
}

body::before {
  background: linear-gradient(180deg, rgba(5,13,16,.58), rgba(6,15,18,.88) 700px, rgba(7,11,13,.97) 1280px);
}

.topbar {
  background: #101416;
  border-bottom-color: #303638;
  box-shadow: 0 2px 10px rgba(0,0,0,.4);
}

.brand-mark { background:#bd282d; }
.nav-links a.active::after { background:#d83238; }
.nav-links a:hover,.nav-links a.active,.icon-btn:hover { color:#fff; }
.lang { background:#23282b; }
.mini-logo { position:relative; overflow:hidden; }
.mini-logo span { position:relative; z-index:1; }
.mini-logo img { position:absolute; inset:2px; z-index:2; width:calc(100% - 4px); height:calc(100% - 4px); object-fit:contain; }
.lineup-player .roster-avatar { margin-right:0; }

.section-note {
  color:var(--muted);
  font-size:10px;
  font-weight:700;
  letter-spacing:.04em;
  text-transform:uppercase;
}

.table-scroll,.bracket-scroll {
  width:100%;
  overflow-x:auto;
  border:1px solid #30373a;
  scrollbar-color:#c8292e #202426;
  scrollbar-width:thin;
}

.table-scroll::-webkit-scrollbar,.bracket-scroll::-webkit-scrollbar { height:8px; }
.table-scroll::-webkit-scrollbar-track,.bracket-scroll::-webkit-scrollbar-track { background:#202426; }
.table-scroll::-webkit-scrollbar-thumb,.bracket-scroll::-webkit-scrollbar-thumb { background:#c8292e; }

.group-table,.rosters-table {
  width:100%;
  min-width:990px;
  border-collapse:collapse;
  background:#171b1e;
  text-align:left;
}

.group-table th,.group-table td,.rosters-table th,.rosters-table td {
  border-right:1px solid #293033;
  border-bottom:1px solid #30373a;
  padding:8px 10px;
  vertical-align:middle;
}

.group-table thead th,.rosters-table thead th {
  height:38px;
  color:#c7ccce;
  background:#202527;
  font-size:9px;
  letter-spacing:.06em;
  text-transform:uppercase;
}

.group-table tbody tr:hover,.rosters-table tbody tr:hover { background:#1d2326; }
.group-table td:first-child { width:38px; color:#dc3a40; font-weight:800; text-align:center; }
.group-table td:nth-child(2) { width:250px; }
.group-table td:nth-child(n+3) { min-width:70px; text-align:center; }
.group-team { display:flex; align-items:center; gap:10px; }
.group-team .team-logo,.round-opponent .team-logo { width:32px; height:32px; flex:0 0 32px; }
.group-team span:not(.team-logo) { display:grid; gap:2px; }
.group-team b { font-size:11px; }
.group-team small { color:var(--muted); font-size:9px; }
.round-opponent { display:inline-flex; align-items:center; gap:4px; }
.round-opponent small { color:#cfd3d4; font-weight:800; }
.tbd-dot { color:#687176; font-size:9px; }
.data-disclaimer { margin:8px 0 0; color:#737d81; font-size:10px; }

.bracket {
  min-width:1080px;
  padding:14px;
  background:#14181a;
}

.bracket-band {
  display:grid;
  grid-template-columns:64px repeat(4, 1fr);
  gap:18px;
  align-items:stretch;
}

.bracket-band + .bracket-band { margin-top:20px; padding-top:18px; border-top:1px solid #343a3d; }
.bracket-band > span {
  display:flex;
  align-items:center;
  justify-content:center;
  color:#d73a40;
  font-size:9px;
  font-weight:800;
  letter-spacing:.07em;
  text-transform:uppercase;
  writing-mode:vertical-rl;
  transform:rotate(180deg);
}

.bracket-round { display:flex; min-height:350px; flex-direction:column; justify-content:space-around; gap:12px; }
.bracket-round h3 { margin:0 0 5px; color:#aeb5b8; font-size:10px; font-weight:700; text-align:center; }
.bracket-match { position:relative; border:1px solid #343b3e; background:#1b2023; }
.bracket-match::after { content:""; position:absolute; top:50%; left:100%; width:19px; border-top:1px solid #4a5154; }
.bracket-round.grand .bracket-match::after { display:none; }
.bracket-match span { display:grid; grid-template-columns:18px 1fr auto; align-items:center; gap:7px; min-height:31px; padding:4px 7px; font-size:10px; font-weight:700; }
.bracket-match span + span { border-top:1px solid #303638; }
.bracket-match span i { width:17px; height:17px; background:#343a3d; }
.bracket-match span b { color:#747d81; }
.bracket-match em { position:absolute; left:50%; top:50%; z-index:2; padding:1px 5px; color:#7e878a; background:#1b2023; font-size:7px; font-style:normal; transform:translate(-50%,-50%); }
.bracket-band.lower .bracket-round { min-height:300px; }

.participants-grid {
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  gap:8px;
}

.participant-card {
  position:relative;
  display:flex;
  min-height:180px;
  padding:16px 12px 12px;
  flex-direction:column;
  align-items:center;
  border:1px solid #30373a;
  background:#191e21;
  text-align:center;
}

.participant-card:hover { border-color:#bd3035; background:#202629; }
.participant-card .team-logo { width:70px; height:70px; margin:5px 0 10px; background:transparent; border:0; }
.participant-card h3 { margin:0; font-size:12px; }
.participant-card p { margin:4px 0 9px; color:#aab1b4; font-size:9px; }
.participant-card small { margin-top:auto; color:#778084; font-size:9px; }
.participant-rank { position:absolute; top:0; left:0; min-width:30px; padding:5px; color:#fff; background:#bd252a; font-size:9px; font-weight:800; }

.rosters-table { min-width:1280px; }
.rosters-table th:first-child { width:190px; }
.rosters-table tbody th { background:#1e2326; }
.rosters-table tbody th a { display:flex; align-items:center; gap:9px; }
.rosters-table tbody th .team-logo { width:34px; height:34px; flex:0 0 34px; }
.rosters-table tbody th span:not(.team-logo) { display:grid; font-size:11px; }
.rosters-table tbody th small { color:#858e92; font-size:8px; font-weight:400; }
.rosters-table td { min-width:180px; }
.roster-cell { display:flex; align-items:center; gap:8px; }
.roster-cell > span:last-child { display:grid; gap:2px; }
.roster-cell b { font-size:10px; }
.roster-cell small { color:#858e92; font-size:8px; white-space:nowrap; }
.roster-avatar { display:grid; width:34px; height:34px; flex:0 0 34px; place-items:end center; overflow:hidden; border:1px solid #3b4346; background:#252b2e; }
.roster-avatar img { width:100%; height:100%; object-fit:cover; object-position:top center; }

.event-article {
  padding:22px 24px 26px;
  border:1px solid #30373a;
  background:rgba(23,27,30,.98);
  color:#c8cdcf;
  font-size:13px;
  line-height:1.72;
}

.event-article .section-head { margin-bottom:18px; }
.event-article p { margin:0 0 16px; }
.event-article .lead { color:#edf0f1; font-size:14px; }
.event-article h3 { margin:28px 0 10px; padding-bottom:8px; border-bottom:1px solid #343b3e; color:#fff; font-size:18px; }
.event-article h4 { margin:19px 0 8px; color:#e0e4e5; font-size:14px; }
.event-article ul { margin:8px 0 16px; padding-left:19px; }
.event-article li { margin:5px 0; }
.event-article li::marker { color:#d3393f; }
.article-columns { display:grid; grid-template-columns:1fr 1fr; gap:28px; }

@media (max-width:900px) {
  .participants-grid { grid-template-columns:repeat(3,minmax(0,1fr)); }
}

@media (max-width:650px) {
  body { background-position:center 54px; background-size:auto 760px; }
  .section-head { align-items:flex-end; }
  .participants-grid { grid-template-columns:repeat(2,minmax(0,1fr)); }
  .participant-card { min-height:160px; }
  .article-columns { grid-template-columns:1fr; gap:0; }
  .event-article { padding:17px 15px 20px; }
}

@media (max-width:420px) {
  .participants-grid { grid-template-columns:1fr 1fr; }
  .participant-card { min-height:145px; padding-inline:7px; }
  .participant-card .team-logo { width:56px; height:56px; }
}
