/* September 2026: extend the original visual language, keep its motion. */
.main-roster-grid { grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 18px; }
.main-roster-grid .player-card, .main-roster-grid .player-card:last-child { grid-area:auto; width:100%; min-height:0; aspect-ratio:.83; }
.main-roster-grid .player-card .player-portrait { width:100%; height:calc(100% - 24px); top:24px; bottom:auto; left:0; right:0; object-fit:cover; object-position:center top; }
.main-roster-grid .player-card-copy { padding:80px 24px 24px; background:linear-gradient(transparent,rgba(8,7,13,.96)); }
.main-roster-grid .player-card-copy h3 { font-size:clamp(32px,4vw,64px); }
.main-roster-grid .role-list span { font-size:14px; }
.main-roster-grid .founder-badge { top:18px; right:18px; font-size:12px; }
.player-card-copy > p, .roster-grid-caption, .academy-board-head small { font-size:12px; }
.reserve-roster { padding:24px max(24px,calc((100vw - 1320px)/2)); border-block:1px solid #282033; display:flex; align-items:center; gap:32px; background:#100d17; }
.reserve-roster > div { display:flex; align-items:center; gap:18px; }
.reserve-roster img { height:90px; width:90px; object-fit:contain; object-position:center top; background:linear-gradient(#21132f,#08070d); border:1px solid #443151; }
.reserve-roster strong { font-family:'Barlow Condensed',sans-serif; font-size:30px; }
.reserve-roster p { font-size:14px; color:#bfb4ce; margin:4px 0 0; }
.academy-section .academy-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); height:auto; overflow:visible; }
.academy-section .academy-grid .academy-card, .academy-section .academy-grid .academy-card:hover { min-width:0; width:100%; flex:initial; height:370px; grid-area:auto; }
.academy-grid .academy-card img { object-fit:cover; object-position:center top; height:100%; }
.academy-card-copy > p { font-size:30px; }
.academy-card-copy > span { font-size:14px; line-height:1.45; letter-spacing:.02em; white-space:normal; }
.academy-card-copy { padding:55px 14px 20px; background:linear-gradient(transparent,#0c0914); }
.academy-card-status { font-size:12px; }
.platform-hub strong { color:#c496ff; }
.platform-hub:hover { background:#21132e; }
.hero-live-status > strong { font-size:26px; }
@media(max-width:760px) {
 .main-roster-grid { grid-template-columns:repeat(2,minmax(0,1fr)); gap:12px; }
 .main-roster-grid .player-card,.main-roster-grid .player-card:last-child { grid-area:auto; min-height:0; aspect-ratio:.58; width:100%; }
 .main-roster-grid .player-card-copy { padding:70px 12px 16px; }
 .main-roster-grid .player-card-copy h3 { font-size:34px; }
 .main-roster-grid .role-list span { padding:5px 6px; font-size:12px; }
 .main-roster-grid .player-card-copy > p { font-size:12px; letter-spacing:.03em; }
 .main-roster-grid .founder-badge { right:8px; top:36px; font-size:11px; }
 .reserve-roster { flex-wrap:wrap; padding:22px; gap:18px; }
 .academy-section .academy-grid { grid-template-columns:repeat(2,minmax(0,1fr)); }
 .academy-section .academy-grid .academy-card, .academy-section .academy-grid .academy-card:hover { height:290px; }
}
