.nrt-hero-media { margin: 12px 0 20px; overflow: hidden; border-radius: 12px; background: #171416; border: 1px solid #514735; }
.nrt-hero-media__visual { height: 240px; background: #171416; }
.nrt-hero-media__visual img { display: block; width: 100%; height: 100%; object-fit: contain; }
.nrt-press__source-card > .person-media { margin: 14px 16px 0; }
.nrt-report__person { float: left; margin: 0 12px 8px 0; }
.nrt-report__profile { float: right; font: 11px/1.5 var(--grotesk); padding: 5px; }
.nrt-hero-media__caption { display: grid; gap: 3px; padding: 12px 16px; color: #eee5d4; font: 13px/1.4 var(--grotesk); }
.nrt-hero-media__caption strong { font-size: 17px; }
.nrt-hero-media__label { color: #ffcf53; text-transform: uppercase; font-size: 10px; letter-spacing: .08em; }
.nrt-hero-media__caption a { color: #ffcf53; }
.nrt-matchups__list { grid-template-columns: repeat(auto-fit,minmax(min(100%,330px),1fr)); }
.nrt-matchup { padding: 16px; }
.nrt-matchup__cols { grid-template-columns: minmax(0,1fr) 22px minmax(0,1fr); align-items: stretch; gap: 8px; }
.nrt-matchup__side { padding: 12px 9px; border-radius: 10px; border-top: 4px solid #173d54; background: #edf2f3; min-width: 0; }
.nrt-matchup__side--kc { border-color: #b51231; background: #fff0ef; }
.nrt-matchup__side .person-media { display: flex; margin: 0 0 8px; }
.nrt-matchup__side strong { display: block; font: 700 15px/1.35 var(--serif); }
.nrt-matchup__side > span:not(.person-media) { font-size: 10px; color: #57525b; }
.nrt-matchup__vs { display: flex; align-items: center; }
.nrt-matchup__stat { font: 700 13px/1.45 var(--grotesk); margin: 10px 0 0; }
.nrt-matchup__source { display: inline-block; min-height: 36px; padding-top: 10px; font-size: 12px; }
.nrt-spotlight__grid { display: grid; grid-template-columns: 1fr; gap: 10px; align-content: start; align-items: start; }
.nrt-spot-card { display: grid; grid-template-columns: 90px minmax(0,1fr); gap: 14px; padding: 14px 16px; align-items: start; }
.nrt-spot-card__tag { font-size: 10px; padding: 5px 7px; text-align: center; margin: 2px 0 0; }
.nrt-spot-card h3 { font-size: 20px; margin: 0 0 5px; }
.nrt-spot-card p { font-size: 15px; line-height: 1.55; }
.playmakers { display: flex; flex-wrap: wrap; gap: 10px; margin-top: 12px; padding-top: 10px; border-top: 1px solid #ffffff35; }
.playmaker { display: flex; align-items: center; gap: 6px; min-width: 0; font: 11px/1.35 var(--grotesk); }
.playmaker .person-media { width: auto; height: auto; flex-basis: auto; }
.playmaker strong,.playmaker small { display: block; max-width: 150px; }
.playmaker small { color: #d0c4b5; font-size: 10px; }
.roster-people { display: flex; flex-wrap: wrap; gap: 10px; }
.roster-people > span { display: grid; justify-items: center; max-width: 90px; gap: 4px; }
.roster-people small { text-align: center; font: 11px/1.3 var(--grotesk); }
.nrt-report__list--personnel li { display: grid; grid-template-columns: minmax(65px,auto) minmax(0,1fr); gap: 14px; }
.playbook__help { padding: 4px 16px 10px; }
.playbook__help > summary { cursor: pointer; min-height: 36px; color: #eadcb7; font: 12px/1.5 var(--grotesk); }
.playbook__help .playbook__legend,.playbook__help .playbook__source,.playbook__help .playbook__motion-note { padding: 0; }
.playbook__field[hidden] { display: none; }
.playbook__3d { display: block; width: 100%; aspect-ratio: 660/470; }
.playbook__3d-note { margin: 0; padding: 4px 16px 8px; color: #eadcb7; font: 11px/1.4 var(--grotesk); }
@media (min-width: 1100px) {
  .nrt { --nrt-max: 1480px; display: grid; grid-template-columns: minmax(0,1fr) minmax(0,1fr); max-width: 1480px; margin: 0 auto; align-items: start; }
  .nrt > * { grid-column: 1 / -1; min-width: 0; }
  .nrt > :is(.nrt-state,#game-plan,.nrt-lastgame,.nrt-story,.nrt-spotlight,.nrt-matchups) { grid-column: auto; }
  .nrt .section { width: 100%; padding: 26px 22px; box-sizing: border-box; }
  .nrt .section-head { margin-bottom: 16px; }
  .nrt .section-head h2 { font-size: 29px; line-height: 1.15; }
  .nrt-state__grid,.nrt-plan__cols { grid-template-columns: 1fr; gap: 18px; }
  .nrt-state-card,.nrt-plan__callout { padding: 18px; }
  .nrt-hero__inner { display: grid; grid-template-columns: minmax(0,1.3fr) minmax(280px,.7fr); gap: 8px 26px; padding: 24px 28px 28px; }
  .nrt-hero__meta { grid-column: 1/-1; margin-bottom: 8px; }
  .nrt-identity { grid-column: 1; grid-row: 2; margin-bottom: 0; }
  .nrt-identity__tag { grid-column: 1; grid-row: 3; margin-bottom: 2px; }
  .nrt-headline { grid-column: 1; grid-row: 4; font-size: clamp(34px,3vw,42px); max-width: 30ch; margin-bottom: 6px; }
  .nrt-dek { grid-column: 1; grid-row: 5; font-size: 16px; line-height: 1.5; margin-bottom: 10px; }
  .nrt-hero-media { grid-column: 2; grid-row: 2/6; margin: 0; align-self: start; }
  .nrt-hero-media__visual { height: 200px; }
  .nrt-edge { padding-top: 14px; padding-bottom: 14px; }
  .nrt-hero__grid { grid-column: 1/-1; gap: 18px; margin-top: 12px; }
  .nrt-hook { margin-bottom: 12px; padding: 14px 18px; }
  .nrt-hook p { font-size: 16px; }
  .nrt-identity { font-size: 22px; line-height: 1.2; }
  .nrt-identity__tag { font-size: 15px; line-height: 1.4; }
  .nrt-nextgame__facts { grid-template-columns: repeat(3,minmax(0,1fr)); gap: 12px; margin-top: 10px; }
  .nrt-nextgame__facts li { display: block; font-size: 13px; }
  .nrt-nextgame__facts span { display: block; font-size: 10px; margin-bottom: 4px; }
  .nrt-nextgame__opp { font-size: 23px; }
  .nrt-nextgame { padding: 14px 18px; }
  .nrt-nextgame__note { font-size: 12px; line-height: 1.45; }
  .nrt-xo__grid { grid-template-columns: repeat(3,minmax(0,1fr)); gap: 16px; }
  .nrt-xo-card__body { padding: 16px; }
  .nrt-xo-card__head h3 { font-size: 20px; }
  .nrt-matchups__list { grid-template-columns: 1fr; }
}
.nrt-nextgame__more { margin-top: 10px; font: 12px/1.5 var(--grotesk); }
.nrt-nextgame__more summary { cursor: pointer; min-height: 32px; }
.nrt-nextgame__more summary:focus-visible { outline: 2px solid #ffcf53; }
@media (max-width: 600px) {
  .nrt-hero-media { display: grid; grid-template-columns: 115px minmax(0,1fr); }
  .nrt-hero-media__visual { height: 140px; }
  .nrt-hero-media__caption { padding: 10px; font-size: 11px; align-content: center; }
  .nrt-hero-media__caption strong { font-size: 15px; }
  .nrt-spot-card { grid-template-columns: 65px minmax(0,1fr); gap: 10px; padding: 12px; }
  .nrt-spot-card__tag { font-size: 9px; }
  .nrt-spot-card h3 { font-size: 18px; }
  .nrt-report__list--personnel li { grid-template-columns: 1fr; }
}
