:root{
  --blue:#080887;
  --blue-dark:#050563;
  --yellow:#fff800;
  --yellow-soft:#fffcc9;
  --green:#008c31;
  --red:#9d0101;
  --ink:#13213a;
  --muted:#5f6c80;
  --surface:#ffffff;
  --page:#eef2f7;
  --line:#d6dee8;
  --shadow:0 14px 34px rgba(10,22,45,.11);
}
*{box-sizing:border-box}
html{background:var(--page)}
body{margin:0;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",Arial,sans-serif;background:var(--page);color:var(--ink);line-height:1.45}
a{color:var(--blue);text-decoration:none;font-weight:750}a:hover{text-decoration:underline}
.site-header{background:linear-gradient(115deg,var(--blue-dark),var(--blue));border-bottom:5px solid var(--yellow);box-shadow:0 3px 14px rgba(4,4,89,.32);position:sticky;top:0;z-index:20}
.header-inner{max-width:1480px;margin:auto;display:flex;align-items:center;gap:24px;padding:12px 24px;min-height:72px}
.brand{display:flex;align-items:center;gap:11px;color:#fff;text-decoration:none;flex-shrink:0}.brand:hover{text-decoration:none}
.brand-mark{background:var(--yellow);color:var(--blue);font-weight:1000;font-style:italic;letter-spacing:-2px;border:3px solid #fff;border-radius:6px;padding:4px 9px;font-size:24px;line-height:1}
.brand-text{display:grid;line-height:1.05}.brand-text strong{font-size:17px;letter-spacing:.2px}.brand-text small{font-size:10px;color:#e5e6ff;font-weight:800;text-transform:uppercase;letter-spacing:1.2px;margin-top:5px}
.primary-nav{display:flex;align-items:center;gap:3px;flex-wrap:wrap}.nav-link{padding:8px 9px;border-radius:4px;font-size:13px;color:#fff;white-space:nowrap}.nav-link:hover{background:rgba(255,255,255,.14);text-decoration:none}.nav-link.is-active{background:var(--yellow);color:var(--blue)}
.site-main{max-width:1480px;margin:0 auto;padding:28px 24px 42px}.site-footer{border-top:5px solid var(--yellow);background:var(--blue);color:#fff;display:flex;justify-content:space-between;gap:20px;flex-wrap:wrap;padding:22px max(24px,calc((100% - 1432px)/2));font-size:13px}
.hero{position:relative;overflow:hidden;background:linear-gradient(127deg,#070766,#0b0c9d 60%,#1314bf);color:#fff;border-radius:16px;min-height:330px;padding:34px 42px;box-shadow:var(--shadow);display:grid;grid-template-columns:minmax(0,1fr) minmax(240px,43%);align-items:center;gap:24px;border:1px solid rgba(255,255,255,.2)}
.hero:before{content:"";position:absolute;width:600px;height:600px;border-radius:50%;right:-240px;bottom:-430px;background:rgba(255,248,0,.13);box-shadow:0 0 0 42px rgba(255,248,0,.07),0 0 0 88px rgba(255,248,0,.04)}
.hero-copy{position:relative;z-index:1}.eyebrow{font-weight:1000;text-transform:uppercase;letter-spacing:1.65px;color:var(--yellow);font-size:12px}.hero h1{font-size:clamp(34px,5vw,64px);line-height:.94;letter-spacing:-2.6px;margin:10px 0 14px}.hero p{font-size:18px;max-width:690px;color:#edf0ff;margin:0 0 23px}.hero-shield{position:relative;z-index:1;display:flex;justify-content:center;align-items:center}.hero-shield img{width:min(100%,570px);max-height:290px;object-fit:contain;filter:drop-shadow(0 14px 14px rgba(0,0,0,.32))}
.button-row{display:flex;gap:10px;flex-wrap:wrap}.button{display:inline-flex;align-items:center;justify-content:center;min-height:38px;padding:9px 14px;background:var(--yellow);color:var(--blue);border:2px solid var(--yellow);border-radius:5px;text-decoration:none;font-size:14px;font-weight:950}.button:hover{background:#fff;color:var(--blue);text-decoration:none}.button.secondary{background:transparent;color:var(--blue);border-color:var(--blue)}.button.secondary:hover{background:var(--blue);color:#fff}.button.light{background:transparent;color:#fff;border-color:#fff}.button.light:hover{background:#fff;color:var(--blue)}
.section{margin-top:28px}.section-heading{display:flex;align-items:flex-end;justify-content:space-between;gap:18px;margin:0 0 13px}.section-heading h1,.section-heading h2{margin:0;color:var(--blue);font-size:25px;line-height:1.05;letter-spacing:-.7px}.section-heading .sub{color:var(--muted);margin:4px 0 0;font-size:14px}.section-heading a{font-size:13px;white-space:nowrap}
.grid{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:12px}.grid.four{grid-template-columns:repeat(4,minmax(0,1fr))}.grid.three{grid-template-columns:repeat(3,minmax(0,1fr))}.grid.two{grid-template-columns:repeat(2,minmax(0,1fr))}
.stat-card,.card,.table-wrap,.empty-state{background:var(--surface);border:1px solid var(--line);border-radius:10px;box-shadow:0 3px 10px rgba(14,31,62,.04)}.stat-card{padding:15px 16px;min-height:103px;border-top:4px solid var(--blue)}.stat-label{font-size:11px;font-weight:950;text-transform:uppercase;letter-spacing:.92px;color:var(--muted)}.stat-value{font-weight:1000;font-size:24px;letter-spacing:-.6px;color:var(--blue);margin-top:5px}.stat-detail{font-size:12px;color:var(--muted);margin-top:2px}
.card{padding:20px}.card h2,.card h3{color:var(--blue);margin:0 0 10px}.card p:last-child{margin-bottom:0}.card-grid{display:grid;gap:16px}.note{font-size:13px;color:var(--muted)}
.featured-bowl{background:linear-gradient(135deg,#fff,#fffef0);border-left:7px solid var(--yellow)}.featured-bowl .bowl-kicker{font-size:12px;font-weight:1000;letter-spacing:1px;text-transform:uppercase;color:var(--red)}.featured-bowl h2{font-size:27px}.scoreline{font-size:29px;font-weight:1000;letter-spacing:-1.4px;color:var(--blue);margin:9px 0}.scoreline .winner{color:var(--green)}
.table-wrap{overflow-x:auto}.data-table{border-collapse:collapse;width:100%;min-width:680px;background:#fff}.data-table th{background:#f0f3f8;color:var(--blue);font-size:11px;text-transform:uppercase;letter-spacing:.7px;padding:11px 12px;border-bottom:2px solid var(--line);text-align:left;white-space:nowrap}.data-table td{padding:11px 12px;border-bottom:1px solid #e8edf3;font-size:14px;vertical-align:top}.data-table tbody tr:hover{background:#fffef3}.data-table .num{text-align:right;font-variant-numeric:tabular-nums}.data-table .center{text-align:center}.data-table .champ{font-weight:950;color:var(--green)}.data-table .runner{font-weight:900;color:var(--red)}
.badge{display:inline-flex;align-items:center;border-radius:999px;padding:3px 8px;font-size:10px;letter-spacing:.6px;text-transform:uppercase;font-weight:1000;line-height:1.25}.badge-blue{background:#e3e6ff;color:var(--blue)}.badge-yellow{background:var(--yellow-soft);color:#766900}.badge-green{background:#def6e6;color:var(--green)}.badge-red{background:#ffe5e5;color:var(--red)}
.split-list{display:grid;gap:9px}.split-row{display:flex;justify-content:space-between;align-items:center;gap:12px;padding:11px 0;border-bottom:1px solid #e7ecf2}.split-row:last-child{border-bottom:none}.split-row strong{font-size:15px}.split-row .right{text-align:right;white-space:nowrap}.rank{display:inline-grid;place-items:center;width:24px;height:24px;background:var(--blue);color:#fff;border-radius:50%;font-size:12px;font-weight:1000;margin-right:8px}
.shield-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}.shield-card{background:#fff;border:1px solid var(--line);border-radius:12px;padding:20px;text-align:center;box-shadow:0 5px 14px rgba(14,31,62,.06)}.shield-card.current{border:3px solid var(--yellow);box-shadow:0 8px 23px rgba(8,8,135,.17)}.shield-card img{height:165px;width:100%;object-fit:contain;margin:8px 0 13px}.shield-card h2{font-size:20px;margin:0;color:var(--blue)}.shield-card p{color:var(--muted);font-size:13px;margin:8px 0 0}
.filter-bar{display:flex;gap:10px;align-items:end;flex-wrap:wrap;background:#fff;border:1px solid var(--line);padding:14px;border-radius:10px;margin-bottom:16px}.field{display:grid;gap:5px}.field label{font-size:11px;text-transform:uppercase;letter-spacing:.7px;color:var(--muted);font-weight:950}.field select,.field input{height:38px;border:1px solid #bfc9d7;border-radius:5px;padding:7px 9px;background:#fff;color:var(--ink);font:inherit;min-width:155px}.field input{min-width:230px}.filter-bar .button{min-height:38px}
.tabs{display:flex;gap:6px;flex-wrap:wrap;margin:16px 0}.tabs a{padding:8px 10px;border:1px solid var(--line);background:#fff;border-radius:5px;font-size:13px}.tabs a.active{background:var(--blue);color:#fff;border-color:var(--blue);text-decoration:none}
.empty-state{text-align:center;padding:42px 20px;border-style:dashed}.empty-state h2{color:var(--blue);margin:0 0 8px}.empty-state p{max-width:640px;margin:0 auto;color:var(--muted)}
.page-intro{background:linear-gradient(118deg,#fffef0,#fff);border-left:6px solid var(--yellow);padding:20px 23px;border-radius:9px;border-top:1px solid var(--line);border-right:1px solid var(--line);border-bottom:1px solid var(--line);margin-bottom:22px}.page-intro h1{color:var(--blue);margin:0 0 6px;font-size:32px;letter-spacing:-1px}.page-intro p{margin:0;color:var(--muted);max-width:850px}
.two-col-layout{display:grid;grid-template-columns:minmax(0,1.7fr) minmax(300px,1fr);gap:18px}.event-row{padding:14px 0;border-bottom:1px solid #e6ebf2}.event-row:last-child{border-bottom:none}.event-meta{font-size:11px;font-weight:950;text-transform:uppercase;letter-spacing:.8px;color:var(--muted);margin-bottom:4px}.event-title{font-weight:850;color:var(--blue)}.event-desc{font-size:13px;color:var(--ink);margin-top:3px;white-space:pre-line}
.summary-hero{background:linear-gradient(135deg,#080887,#191ac3);color:#fff;padding:28px;border-radius:12px;box-shadow:var(--shadow)}.summary-hero .label{font-size:11px;font-weight:1000;letter-spacing:1.1px;text-transform:uppercase;color:var(--yellow)}.summary-hero h1{font-size:36px;margin:8px 0 8px;letter-spacing:-1.3px}.summary-hero p{margin:0;color:#e4e5ff}
@media(max-width:1130px){.header-inner{align-items:flex-start;flex-direction:column;gap:11px}.site-header{position:static}.grid{grid-template-columns:repeat(3,minmax(0,1fr))}.grid.four{grid-template-columns:repeat(2,minmax(0,1fr))}.hero{grid-template-columns:1fr}.hero-shield{justify-content:flex-start}.hero-shield img{max-height:220px}.primary-nav{margin-left:-5px}}
@media(max-width:720px){.site-main{padding:18px 14px 30px}.header-inner{padding:12px 14px}.nav-link{font-size:12px;padding:7px}.hero{padding:25px 22px;min-height:auto}.hero h1{font-size:40px}.grid,.grid.four,.grid.three,.grid.two,.shield-grid,.two-col-layout{grid-template-columns:1fr}.section-heading{align-items:flex-start;flex-direction:column}.site-footer{padding:20px 14px}.page-intro h1{font-size:27px}.field,.field select,.field input{width:100%}.filter-bar .button{width:100%}.data-table{min-width:580px}}

/* Team brand archive */
.team-gallery{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:14px}.team-card{min-width:0;background:#fff;border:1px solid var(--line);border-radius:12px;padding:14px;box-shadow:0 4px 12px rgba(14,31,62,.06);display:flex;flex-direction:column}.team-card.current-team{border-top:5px solid var(--blue)}.team-card-link{display:flex;flex-direction:column;min-height:100%;color:inherit;text-decoration:none}.team-card-link:hover{text-decoration:none}.team-card h3{font-size:16px;line-height:1.08;margin:13px 0 3px;color:var(--blue)}.team-card p{font-size:12px;line-height:1.38;color:var(--muted);margin:0}.team-period{font-size:11px!important;text-transform:uppercase;font-weight:950;letter-spacing:.75px;color:var(--red)!important;margin-bottom:8px!important}.team-visuals{min-height:116px;display:flex;align-items:center;justify-content:space-between;gap:7px;border-radius:9px;background:linear-gradient(145deg,#f8faff,#fffef5);padding:7px}.team-logo,.team-helmet{display:block;min-width:0;max-width:100%;object-fit:contain}.team-logo{height:91px;width:62%}.team-helmet{height:75px;width:38%}.team-visual-missing{border:1px dashed #aab7c7;background:#f7f9fc;color:#6d7d90;min-height:62px;display:grid;place-items:center;text-align:center;border-radius:7px;font-size:10px;text-transform:uppercase;font-weight:900;letter-spacing:.6px;padding:4px}.team-visual-missing.team-logo{width:62%;height:91px}.team-visual-missing.team-helmet{width:38%;height:75px}.team-visual-missing.chip-logo,.team-visual-missing.table-brand-logo,.team-visual-missing.lineage-logo,.team-visual-missing.franchise-hero-logo{min-height:0;height:auto;width:auto;padding:3px;font-size:8px}.home-team-gallery{grid-template-columns:repeat(5,minmax(0,1fr));gap:9px}.home-team-chip{display:flex;align-items:center;gap:8px;min-width:0;background:#fff;border:1px solid var(--line);border-radius:8px;padding:7px 9px;color:var(--blue);font-size:12px;font-weight:900;box-shadow:0 2px 6px rgba(14,31,62,.04);text-decoration:none}.home-team-chip:hover{border-color:var(--blue);text-decoration:none;background:#fffef2}.home-team-logo{width:40px;height:32px;display:grid;place-items:center;flex:0 0 auto}.chip-logo{width:39px;height:30px;object-fit:contain;display:block}.table-team-brand{display:inline-flex;align-items:center;gap:7px;color:var(--blue);font-weight:800;text-decoration:none}.table-team-brand:hover{text-decoration:none}.table-brand-logo{display:block;width:34px;height:26px;object-fit:contain}.brand-lineage-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}.brand-lineage-card,.brand-profile-card{background:#fff;border:1px solid var(--line);border-radius:12px;padding:18px;box-shadow:0 4px 12px rgba(14,31,62,.05)}.brand-lineage-header{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:13px}.brand-lineage-header h3{font-size:20px;line-height:1.05;color:var(--blue);margin:0}.lineage-track{display:flex;align-items:stretch;gap:8px;overflow-x:auto;padding:2px 0 5px}.lineage-step{flex:1 0 155px;display:flex;flex-direction:column;gap:7px;background:#f8fafc;border:1px solid #e3e9f1;border-radius:9px;padding:10px}.lineage-step.is-current{border:2px solid var(--yellow);background:#fffef0}.lineage-image{height:62px;display:flex;align-items:center;justify-content:center}.lineage-logo{display:block;width:100%;height:62px;object-fit:contain}.lineage-content strong{display:block;color:var(--blue);font-size:13px;line-height:1.05}.lineage-content span{display:block;color:var(--red);font-size:10px;font-weight:1000;letter-spacing:.65px;text-transform:uppercase;margin:3px 0}.lineage-content p{font-size:11px;line-height:1.35;color:var(--muted);margin:6px 0 0}.lineage-arrow{display:grid;place-items:center;align-self:center;color:var(--blue);font-size:22px;font-weight:1000;min-width:16px}.lineage-track.compact{gap:6px}.lineage-track.compact .lineage-step{flex-basis:128px;padding:9px}.lineage-track.compact .lineage-image{height:45px}.lineage-track.compact .lineage-logo{height:45px}.franchise-summary{display:grid;grid-template-columns:minmax(0,1fr) minmax(180px,300px);align-items:center;gap:20px}.franchise-current-brand{margin-top:11px!important;font-size:14px!important}.franchise-hero-art{display:flex;align-items:center;justify-content:center;min-height:130px}.franchise-hero-logo{display:block;width:100%;height:150px;object-fit:contain;filter:drop-shadow(0 10px 10px rgba(0,0,0,.25))}.legacy-gallery{grid-template-columns:repeat(4,minmax(0,1fr))}
@media(max-width:1130px){.team-gallery,.home-team-gallery{grid-template-columns:repeat(3,minmax(0,1fr))}.brand-lineage-grid{grid-template-columns:1fr}.legacy-gallery{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(max-width:720px){.team-gallery,.home-team-gallery,.legacy-gallery{grid-template-columns:repeat(2,minmax(0,1fr))}.home-team-chip{font-size:11px}.franchise-summary{grid-template-columns:1fr}.franchise-hero-art{justify-content:flex-start}.franchise-hero-logo{height:105px;width:180px}.team-visuals{min-height:98px}.team-logo{height:76px}.team-helmet{height:62px}.lineage-track{padding-bottom:10px}.brand-lineage-header{align-items:flex-start;flex-direction:column}.brand-lineage-header .button{width:100%}}

/* Analytics, rivalries, trend charts, team DNA, and draft capital */
.analytics-hero-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;margin:18px 0}.analytics-callout{display:flex;flex-direction:column;min-height:170px}.analytics-callout h2{margin:0 0 8px;color:var(--blue);font-size:22px}.analytics-callout p{margin:0 0 16px;color:var(--muted);line-height:1.55}.analytics-callout .button{margin-top:auto;align-self:flex-start}.analytics-stat-note{font-size:12px;color:var(--muted);margin-top:8px}
.analytics-section-title{display:flex;justify-content:space-between;align-items:end;gap:12px;margin:24px 0 10px}.analytics-section-title h2{margin:0;color:var(--blue);font-size:25px}.analytics-section-title p{margin:3px 0 0;color:var(--muted);font-size:13px}.chart-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}.chart-card{background:#fff;border:1px solid var(--line);border-radius:12px;padding:16px;box-shadow:0 4px 12px rgba(14,31,62,.05)}.chart-card h3{margin:0;color:var(--blue);font-size:19px}.svg-chart-wrap{overflow-x:auto}.svg-line-chart{display:block;width:100%;min-width:420px;height:auto}.chart-grid-line{stroke:#e8edf4;stroke-width:1}.chart-axis-label,.chart-x-label{fill:#64748b;font-size:10px;font-weight:700}.chart-line{fill:none;stroke:var(--blue);stroke-width:3;stroke-linecap:round;stroke-linejoin:round}.chart-dot{fill:var(--yellow);stroke:var(--blue);stroke-width:2}.finish-strip{display:flex;gap:8px;overflow-x:auto;padding:2px 0 5px}.finish-season{flex:1 0 96px;min-height:74px;border-radius:9px;border:1px solid var(--line);padding:9px 10px;display:flex;flex-direction:column;justify-content:space-between;background:#f8fafc}.finish-season strong{font-size:15px;color:var(--blue)}.finish-season span{font-size:10px;font-weight:900;letter-spacing:.45px;text-transform:uppercase;line-height:1.2}.finish-missed span{color:#6b7280}.finish-playoffs{background:#e7ecff;border-color:#bdc9ff}.finish-playoffs span{color:var(--blue)}.finish-runner{background:#fff0f0;border-color:#ffc8c8}.finish-runner span{color:var(--red)}.finish-champion{background:#fffde2;border:2px solid var(--yellow)}.finish-champion span{color:#766900}.dna-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}.dna-card{background:#fff;border:1px solid var(--line);border-radius:12px;padding:16px;box-shadow:0 4px 12px rgba(14,31,62,.05)}.dna-card h3{font-size:18px;color:var(--blue);margin:0 0 5px}.dna-card .sub{margin:0 0 13px}.dna-metrics{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:9px;margin:11px 0}.dna-metric{padding:9px;background:#f7f9fc;border:1px solid #e9eef4;border-radius:8px}.dna-metric span{display:block;color:var(--muted);font-size:10px;font-weight:900;letter-spacing:.6px;text-transform:uppercase}.dna-metric strong{display:block;color:var(--blue);font-size:19px;margin-top:3px}.meter-list{display:grid;gap:9px}.meter-row{display:grid;gap:4px}.meter-header{display:flex;justify-content:space-between;gap:10px;font-size:12px}.meter-header span{font-weight:750;color:#334155}.meter-header strong{color:var(--blue);font-variant-numeric:tabular-nums}.meter-track{height:7px;background:#edf1f6;border-radius:999px;overflow:hidden}.meter-track span{display:block;height:100%;background:var(--blue);border-radius:inherit}.rivalry-scoreboard{display:grid;grid-template-columns:1fr auto 1fr;gap:14px;align-items:center;padding:20px;background:linear-gradient(135deg,#080887,#1a1bb9);color:#fff;border-radius:12px;box-shadow:var(--shadow)}.rivalry-scoreboard .side{text-align:center}.rivalry-scoreboard .side a{color:#fff;text-decoration:none}.rivalry-scoreboard .team-name{font-weight:950;font-size:22px;line-height:1.1}.rivalry-scoreboard .record{font-size:34px;font-weight:1000;margin:6px 0}.rivalry-scoreboard .caption{font-size:11px;text-transform:uppercase;font-weight:900;letter-spacing:.8px;color:#e6e7ff}.rivalry-scoreboard .versus{font-size:19px;font-weight:1000;color:var(--yellow)}.rivalry-details{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:11px;margin-top:16px}.rivalry-detail{background:#fff;border:1px solid var(--line);border-radius:9px;padding:12px}.rivalry-detail span{display:block;color:var(--muted);font-size:10px;font-weight:900;letter-spacing:.6px;text-transform:uppercase}.rivalry-detail strong{display:block;color:var(--blue);font-size:20px;margin-top:4px}.superlative-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}.superlative-card{background:#fff;border:1px solid var(--line);border-radius:12px;padding:16px;box-shadow:0 4px 12px rgba(14,31,62,.05)}.superlative-card h3{font-size:18px;color:var(--blue);margin:0 0 7px}.superlative-card .super-score{font-size:28px;font-weight:1000;color:var(--red);margin:7px 0}.superlative-card p{margin:0;color:var(--muted);line-height:1.45;font-size:13px}.timeline{display:grid;gap:10px}.timeline-event{padding:12px 14px;border-left:4px solid var(--blue);background:#f8faff;border-radius:0 9px 9px 0}.timeline-event .event-meta{margin-bottom:5px}.timeline-event .event-desc{font-size:13px}.draft-status-cell{white-space:nowrap}.audit-note{background:#fffdef;border:1px solid #f1e7a2;border-left:5px solid var(--yellow);border-radius:9px;padding:14px 16px;color:#5d5d2a;margin:15px 0}.audit-note strong{color:#494500}
@media(max-width:1130px){.analytics-hero-grid,.dna-grid,.superlative-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.rivalry-details{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:720px){.analytics-hero-grid,.chart-grid,.dna-grid,.superlative-grid,.rivalry-details{grid-template-columns:1fr}.rivalry-scoreboard{grid-template-columns:1fr;gap:8px}.rivalry-scoreboard .versus{order:2;text-align:center}.rivalry-scoreboard .side:first-child{order:1}.rivalry-scoreboard .side:last-child{order:3}.team-name{font-size:18px!important}.rivalry-scoreboard .record{font-size:28px}.svg-line-chart{min-width:360px}}

/* --------------------------------------------------------------------------
   SRL mobile foundation — navigation, touch targets, tables and page layouts.
   This layer is intentionally appended so it improves every existing page
   without changing desktop presentation or rewriting historical content.
   -------------------------------------------------------------------------- */
html{scroll-behavior:smooth}
body{overflow-x:hidden}
img,svg,video,canvas{max-width:100%}
.site-main,.header-inner,.card,.table-wrap,.page-intro,.summary-hero,.hero{min-width:0}
button,select,input,textarea{font:inherit}
button,.button,.nav-link,.tabs a,.outcome-tabs a{touch-action:manipulation}
.table-wrap{-webkit-overflow-scrolling:touch;overscroll-behavior-x:contain}
.table-wrap:focus-within{outline:2px solid rgba(8,8,135,.32);outline-offset:2px}
pre,code{white-space:pre-wrap;overflow-wrap:anywhere}

.nav-toggle{display:none;border:1px solid rgba(255,255,255,.62);border-radius:7px;background:rgba(255,255,255,.10);color:#fff;min-height:42px;align-items:center;gap:9px;padding:8px 11px;font-size:12px;font-weight:950;letter-spacing:.5px;text-transform:uppercase;cursor:pointer}
.nav-toggle:hover,.nav-toggle:focus-visible{background:#fff;color:var(--blue);outline:none}
.nav-toggle-icon{display:grid;gap:4px;width:17px}.nav-toggle-icon span{display:block;height:2px;border-radius:10px;background:currentColor;width:17px}.nav-toggle-label{line-height:1}

/* Better use of the medium-width tablet range. */
@media (max-width:1130px){
  .header-inner{align-items:center;flex-direction:row;justify-content:space-between;gap:16px}
  .primary-nav{margin-left:0;justify-content:flex-end}
  .grid{grid-template-columns:repeat(3,minmax(0,1fr))}
  .grid.four{grid-template-columns:repeat(2,minmax(0,1fr))}
  .hero{grid-template-columns:minmax(0,1fr) minmax(220px,.72fr)}
  .hero-shield{justify-content:center}
}

/* Collapsible navigation: the large desktop menu becomes a deliberate mobile menu. */
@media (max-width:960px){
  .site-header{position:sticky;top:0}
  .header-inner{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:10px;padding:11px 16px;min-height:68px}
  .brand{min-width:0}.brand-text strong{font-size:16px}.brand-text small{font-size:9px}
  .nav-toggle{display:inline-flex;justify-self:end}
  .primary-nav{grid-column:1/-1;width:100%;margin:0;padding:4px 0 2px;gap:7px;justify-content:stretch;align-content:start;max-height:min(68vh,560px);overflow:auto}
  html.js .primary-nav{display:none}
  html.js .primary-nav.is-open{display:grid;grid-template-columns:repeat(2,minmax(0,1fr))}
  .nav-link{display:flex;align-items:center;min-height:44px;padding:9px 11px;border:1px solid rgba(255,255,255,.18);background:rgba(255,255,255,.07);border-radius:6px;font-size:13px;white-space:normal;line-height:1.15}
  .nav-link.is-active{border-color:var(--yellow);background:var(--yellow);color:var(--blue)}
  .nav-link:hover{background:rgba(255,255,255,.18)}
  .nav-link.is-active:hover{background:var(--yellow)}
  html.nav-open body{overflow:hidden}
  .site-main{padding:22px 18px 34px}
  .hero{grid-template-columns:1fr;padding:30px 30px;min-height:0}.hero-shield{justify-content:flex-start}.hero-shield img{max-height:210px;width:min(100%,390px)}
  .team-gallery,.home-team-gallery{grid-template-columns:repeat(3,minmax(0,1fr))}
}

@media (max-width:720px){
  .site-main{padding:18px 14px 30px}
  .site-footer{padding:20px 14px;font-size:12px}
  .hero{padding:25px 20px;border-radius:12px;gap:16px}.hero h1{font-size:clamp(34px,11vw,48px);letter-spacing:-1.7px}.hero p{font-size:15px;line-height:1.5}.hero-shield img{max-height:170px}
  .button-row{gap:8px}.button{min-height:42px;padding:10px 12px;font-size:13px}
  .section{margin-top:22px}.section-heading{align-items:flex-start;flex-direction:column;gap:8px}.section-heading h1,.section-heading h2{font-size:23px}.section-heading a{min-height:36px;display:inline-flex;align-items:center}
  .grid,.grid.four,.grid.three,.grid.two,.shield-grid,.two-col-layout,.brand-lineage-grid,.analytics-hero-grid,.chart-grid,.dna-grid,.superlative-grid,.rivalry-details{grid-template-columns:1fr}
  .stat-card{min-height:0;padding:14px}.stat-value{font-size:23px}
  .card,.brand-lineage-card,.brand-profile-card,.chart-card,.dna-card,.superlative-card{padding:16px;border-radius:10px}
  .page-intro{padding:17px 17px;margin-bottom:18px}.page-intro h1{font-size:27px;line-height:1.08}.page-intro p{font-size:14px}
  .summary-hero{padding:20px;border-radius:10px}.summary-hero h1{font-size:30px}.summary-hero p{font-size:14px}
  .filter-bar{display:grid;grid-template-columns:1fr;padding:13px;align-items:stretch}.field,.field select,.field input{width:100%;min-width:0}.filter-bar .button{width:100%;min-height:42px}
  .tabs{display:flex;flex-wrap:nowrap;overflow-x:auto;padding-bottom:5px;margin:13px 0}.tabs a{flex:0 0 auto;min-height:38px;display:inline-flex;align-items:center}
  .table-wrap{margin-left:-1px;margin-right:-1px;border-radius:9px}.data-table{min-width:590px;font-size:13px}.data-table th,.data-table td{padding:10px 9px}.data-table th{font-size:10px}
  .split-row{align-items:flex-start;gap:10px;padding:12px 0}.split-row strong{font-size:14px}.split-row .right{white-space:normal;overflow-wrap:anywhere}
  .shield-card{padding:16px}.shield-card img{height:135px}.shield-card h2{font-size:18px}
  .team-gallery,.home-team-gallery,.legacy-gallery{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.team-card{padding:11px}.team-card h3{font-size:14px}.team-card p{font-size:11px}.team-period{font-size:10px!important}.team-visuals{min-height:88px;padding:5px}.team-logo{height:69px}.team-helmet{height:55px}.home-team-chip{padding:7px;font-size:10px;gap:6px}.home-team-logo{width:32px;height:28px}.chip-logo{width:31px;height:26px}
  .franchise-summary{grid-template-columns:1fr;gap:12px}.franchise-hero-art{justify-content:flex-start;min-height:80px}.franchise-hero-logo{height:100px;width:180px}.lineage-track{padding-bottom:10px}.lineage-step{flex-basis:145px}.lineage-arrow{font-size:18px}
  .analytics-section-title{align-items:flex-start;flex-direction:column;gap:5px}.analytics-section-title h2{font-size:22px}.svg-line-chart{min-width:360px}
  .rivalry-scoreboard{grid-template-columns:1fr;gap:8px;padding:17px}.rivalry-scoreboard .team-name{font-size:18px}.rivalry-scoreboard .record{font-size:28px}.rivalry-scoreboard .versus{order:2;text-align:center}.rivalry-scoreboard .side:first-child{order:1}.rivalry-scoreboard .side:last-child{order:3}
  .dna-metrics{grid-template-columns:repeat(2,minmax(0,1fr))}.dna-metric strong{font-size:18px}.finish-strip{padding-bottom:8px}.finish-season{flex-basis:105px}
  .timeline-event{padding:12px}.event-desc{overflow-wrap:anywhere}
  .outcome-tabs{flex-wrap:nowrap;overflow-x:auto;padding-bottom:5px}.outcome-tabs a{flex:0 0 auto;min-height:40px}.outcome-row{grid-template-columns:minmax(94px,1fr) minmax(74px,1fr) 78px;gap:7px}.outcome-name a{font-size:12px}.outcome-value{font-size:11px}
}

@media (max-width:520px){
  .header-inner{padding:10px 12px}.brand-mark{font-size:21px;padding:4px 8px}.brand-text strong{font-size:15px}.brand-text small{display:none}.nav-toggle{min-height:40px;padding:8px 9px}.nav-toggle-label{display:none}
  html.js .primary-nav.is-open{grid-template-columns:1fr}.nav-link{font-size:14px}
  .site-main{padding:16px 11px 26px}.hero{padding:22px 17px}.hero h1{font-size:36px}.hero p{font-size:14px}.hero-shield img{max-height:145px}.button-row{display:grid;grid-template-columns:1fr}.button-row .button{width:100%}
  .page-intro{padding:15px}.page-intro h1{font-size:25px}.section-heading h1,.section-heading h2{font-size:21px}.section-heading .sub{font-size:13px}
  .grid.four,.grid.three,.grid.two{grid-template-columns:1fr}.stat-card{padding:13px}.stat-label{font-size:10px}.stat-value{font-size:22px}
  .card,.brand-lineage-card,.brand-profile-card,.chart-card,.dna-card,.superlative-card{padding:14px}.data-table{min-width:545px}.data-table td{font-size:12px}.data-table th{font-size:9px}.badge{font-size:9px;padding:3px 7px}
  .team-gallery,.home-team-gallery,.legacy-gallery{gap:8px}.home-team-chip{font-size:9px}.team-card h3{font-size:13px}.team-logo{height:58px}.team-helmet{height:48px}.team-visuals{min-height:75px}.team-period{letter-spacing:.45px}
  .dna-metrics{gap:7px}.dna-metric{padding:8px}.dna-metric strong{font-size:16px}.rivalry-detail{padding:10px}.rivalry-detail strong{font-size:18px}.superlative-card .super-score{font-size:25px}
}

@media (prefers-reduced-motion:reduce){
  *,*::before,*::after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}
}

/* The home-page directory is useful on desktop, but it duplicates the mobile Menu. */
@media (max-width:960px){
  .home-directory-desktop{display:none}
}


/* --------------------------------------------------------------------------
   Franchise ownership/coaching era logos
   Every logo sits in the same centered visual frame. Clicking opens the
   original full-size team logo in a new tab.
   -------------------------------------------------------------------------- */
.franchise-eras-card{background:linear-gradient(145deg,#fff,#f8faff)}
.franchise-era-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:13px;margin-top:15px}
.franchise-era-card{border:1px solid #dde5ef;background:#fff;border-radius:11px;padding:14px;box-shadow:0 4px 10px rgba(14,31,62,.04);min-width:0}
.franchise-era-head{display:grid;grid-template-columns:68px minmax(0,1fr);align-items:center;gap:11px}
.franchise-era-logo{height:62px;width:68px;display:flex;align-items:center;justify-content:center;background:linear-gradient(145deg,#f8faff,#fffef3);border:1px solid #e1e7ef;border-radius:9px;overflow:hidden}
.era-brand-link{display:flex;align-items:center;justify-content:center;width:100%;height:100%;padding:5px;text-decoration:none;line-height:0}
.era-brand-link:hover{background:rgba(8,8,135,.04);text-decoration:none}
.era-brand-link:focus-visible{outline:3px solid rgba(8,8,135,.45);outline-offset:-3px}
.era-brand-logo{display:block;width:100%;height:100%;max-width:58px;max-height:52px;object-fit:contain;object-position:center center}
.era-logo-fallback{font-size:12px;font-weight:1000;color:var(--blue)}
.era-years{font-size:10px;letter-spacing:.8px;text-transform:uppercase;color:var(--red);font-weight:1000;margin-bottom:3px}
.franchise-era-card h3{color:var(--blue);font-size:16px;line-height:1.08;margin:0 0 4px}
.franchise-era-card a{font-size:13px}
.era-role{display:inline-flex;margin-top:10px;padding:3px 7px;border-radius:999px;background:#eef2ff;color:var(--blue);font-size:10px;font-weight:950;letter-spacing:.55px;text-transform:uppercase}
.franchise-era-metrics{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:7px;margin-top:13px}
.franchise-era-metrics>div{background:#f7f9fc;border:1px solid #e8edf3;border-radius:7px;padding:8px;min-width:0}
.franchise-era-metrics span{display:block;color:var(--muted);font-size:9px;font-weight:1000;letter-spacing:.55px;text-transform:uppercase}
.franchise-era-metrics strong{display:block;color:var(--blue);font-size:15px;line-height:1.2;margin-top:3px;overflow-wrap:anywhere}
@media(max-width:1130px){.franchise-era-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:720px){.franchise-era-grid{grid-template-columns:1fr}.franchise-era-card{padding:13px}.franchise-era-metrics{grid-template-columns:repeat(2,minmax(0,1fr))}.franchise-era-logo{width:64px;height:60px}.era-brand-logo{max-width:55px;max-height:49px}}

/* Franchise Rivalry Snapshot: grouped by opponent so a repeated rival is not
   shown in multiple competing cards. */
.franchise-rivalry-snapshot{background:linear-gradient(145deg,#fff,#f8faff)}
.rivalry-snapshot-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(245px,1fr));gap:14px;margin-top:15px}
.rivalry-snapshot-card{display:flex;flex-direction:column;min-width:0;padding:16px;border:1px solid #dbe4ef;border-radius:11px;background:#fff;box-shadow:0 4px 10px rgba(14,31,62,.04);text-decoration:none;color:var(--ink);transition:transform .15s ease,box-shadow .15s ease,border-color .15s ease}
.rivalry-snapshot-card:hover{transform:translateY(-2px);border-color:#aebcf2;box-shadow:0 9px 20px rgba(8,8,135,.10);text-decoration:none}
.rivalry-snapshot-card:focus-visible{outline:3px solid rgba(8,8,135,.35);outline-offset:3px}
.rivalry-card-tags{display:flex;flex-wrap:wrap;gap:5px;min-height:22px;margin-bottom:7px}
.rivalry-card-tags span{display:inline-flex;align-items:center;border-radius:999px;padding:3px 7px;background:#eef2ff;color:var(--blue);font-size:9px;font-weight:1000;letter-spacing:.55px;line-height:1.1;text-transform:uppercase}
.rivalry-opponent{display:block;color:var(--blue);font-size:20px;line-height:1.08;overflow-wrap:anywhere}
.rivalry-series-line{display:flex;align-items:baseline;gap:8px;margin:10px 0 12px;padding-bottom:11px;border-bottom:1px solid #e8edf3}
.rivalry-series-line b{color:var(--red);font-size:26px;line-height:1;font-variant-numeric:tabular-nums}
.rivalry-series-line span{color:var(--muted);font-size:12px;font-weight:800}
.rivalry-card-stats{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;margin:0}
.rivalry-card-stats div{min-width:0;padding:8px;border:1px solid #e7edf4;border-radius:7px;background:#f7f9fc}
.rivalry-card-stats dt{margin:0;color:var(--muted);font-size:9px;font-weight:1000;letter-spacing:.55px;text-transform:uppercase}
.rivalry-card-stats dd{margin:3px 0 0;color:var(--blue);font-size:14px;font-weight:950;line-height:1.15;overflow-wrap:anywhere}
.rivalry-card-link{display:block;margin-top:14px;color:var(--blue);font-size:12px;font-weight:950}
@media(max-width:720px){.rivalry-snapshot-grid{grid-template-columns:1fr}.rivalry-snapshot-card{padding:14px}.rivalry-opponent{font-size:19px}.rivalry-series-line b{font-size:24px}}


/* Franchise contract-length charts */
.franchise-term-profile{background:linear-gradient(145deg,#f9fbff,#fff);border:1px solid var(--line);border-radius:12px;padding:20px}
.franchise-term-kpis{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin:0 0 14px}
.franchise-term-kpi{background:#f7f8ff;border:1px solid #dce1ff;border-radius:9px;padding:12px}
.franchise-term-kpi span{display:block;color:var(--muted);font-size:10px;font-weight:900;text-transform:uppercase;letter-spacing:.65px}
.franchise-term-kpi strong{display:block;color:var(--blue);font-size:21px;margin-top:5px}
.franchise-term-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}
.franchise-term-card{background:#fff;border:1px solid #dfe6ef;border-radius:10px;padding:16px}
.franchise-term-card h3{margin:0;color:var(--blue);font-size:17px}
.franchise-term-card .sub{margin:5px 0 13px}
.franchise-term-bars{display:grid;gap:9px}
.franchise-term-bar{display:grid;grid-template-columns:minmax(105px,1.2fr) minmax(90px,3fr) auto;gap:8px;align-items:center;font-size:12px}
.franchise-term-name{font-weight:850;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.franchise-term-track{height:11px;background:#edf0f6;border-radius:99px;overflow:hidden}
.franchise-term-track div{height:100%;background:linear-gradient(90deg,var(--blue),#5252da);border-radius:99px}
.franchise-term-value{font-weight:900;color:#101e54;white-space:nowrap}
.franchise-term-details{margin-top:16px;background:#fff;border:1px solid #dfe6ef;border-radius:10px;padding:0 14px}
.franchise-term-details summary{cursor:pointer;color:var(--blue);font-size:13px;font-weight:950;padding:14px 0}
.franchise-term-details[open] summary{border-bottom:1px solid #e7edf4;margin-bottom:13px}
@media(max-width:720px){.franchise-term-kpis,.franchise-term-grid{grid-template-columns:1fr}.franchise-term-profile{padding:15px}.franchise-term-bar{grid-template-columns:92px minmax(65px,1fr) auto}.franchise-term-kpi strong{font-size:20px}}


/* Contracts Overview progressive disclosure: five records stay readable, the rest
   remains one click away. */
.contract-expand{margin-top:14px;border:1px solid #dbe4ef;border-radius:10px;background:#f9fbff;padding:0 14px}
.contract-expand summary{cursor:pointer;padding:13px 0;color:var(--blue);font-weight:950;font-size:13px}
.contract-expand[open] summary{border-bottom:1px solid #e4eaf3;margin-bottom:13px}
.contract-expand .table-wrap{margin-bottom:13px}
.outcome-expand{margin-top:15px;background:#fff}
.outcome-expand .outcome-chart{padding:2px 0 12px}

/* Standout Bowl championship marks. Each season uses its own silhouette and event motif. */
.standout-mark-card{margin-bottom:18px;background:linear-gradient(145deg,#f9fbff,#fffdf3)}
.standout-logo-gallery{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:11px;margin-top:15px}
.standout-logo-tile{display:flex;flex-direction:column;align-items:center;justify-content:flex-start;min-width:0;padding:11px 7px 10px;border:1px solid #dbe4ef;border-radius:10px;background:#fff;text-decoration:none;color:var(--ink);box-shadow:0 4px 9px rgba(14,31,62,.04);transition:transform .15s ease,box-shadow .15s ease,border-color .15s ease}
.standout-logo-tile:hover{transform:translateY(-2px);border-color:#9bacdd;box-shadow:0 9px 19px rgba(8,8,135,.12);text-decoration:none}
.standout-logo-tile:focus-visible{outline:3px solid rgba(8,8,135,.35);outline-offset:3px}
.standout-logo-tile img{display:block;width:100%;height:126px;max-width:116px;object-fit:contain;object-position:center;filter:drop-shadow(0 2px 2px rgba(8,25,80,.16))}
.standout-logo-tile span{display:block;max-width:100%;margin-top:7px;color:var(--blue);font-size:11px;line-height:1.15;font-weight:1000;text-align:center;overflow-wrap:anywhere}
.standout-logo-tile small{display:block;min-height:24px;margin-top:4px;color:var(--muted);font-size:9px;line-height:1.2;font-weight:850;text-align:center;overflow-wrap:anywhere}
.sb-table-logo-link,.franchise-bowl-logo-link{display:inline-flex;align-items:center;justify-content:center;text-decoration:none;line-height:0;border-radius:7px}
.sb-table-logo-link:hover,.franchise-bowl-logo-link:hover{background:#f1f4ff}
.sb-table-logo{display:block;width:50px;height:56px;object-fit:contain;object-position:center;filter:drop-shadow(0 2px 2px rgba(8,25,80,.16))}
.franchise-bowl-logo{display:block;width:40px;height:46px;object-fit:contain;object-position:center;filter:drop-shadow(0 2px 2px rgba(8,25,80,.16))}
.bowl-record-list{display:grid;gap:8px}
.bowl-record-row{display:grid!important;grid-template-columns:46px minmax(0,1fr) auto;gap:9px;align-items:center!important}
.bowl-record-mark{display:flex;align-items:center;justify-content:center;width:46px;height:52px;border:1px solid #e0e7ef;border-radius:7px;background:#f8faff;overflow:hidden}
.bowl-record-copy{min-width:0}
@media(max-width:980px){.standout-logo-gallery{grid-template-columns:repeat(4,minmax(0,1fr))}}
@media(max-width:580px){.standout-logo-gallery{grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}.standout-logo-tile{padding:9px 5px 8px}.standout-logo-tile img{height:96px;max-width:82px}.standout-logo-tile span{font-size:10px}.sb-table-logo{width:38px;height:44px}.bowl-record-row{grid-template-columns:38px minmax(0,1fr) auto;gap:7px}.bowl-record-mark{width:38px;height:44px}.franchise-bowl-logo{width:32px;height:38px}}


/* Professional Standout Bowl PNG marks. The files have transparent artwork and remain centered in every display context. */
.standout-logo-tile img,.sb-table-logo,.franchise-bowl-logo{background:transparent}
.standout-logo-tile img{max-width:122px;height:132px}
.sb-table-logo{width:54px;height:60px}
.bowl-record-mark{background:linear-gradient(145deg,#fbfcff,#eef4ff)}
.franchise-bowl-logo{width:42px;height:48px}
@media(max-width:580px){.standout-logo-tile img{height:100px;max-width:88px}.sb-table-logo{width:40px;height:46px}.franchise-bowl-logo{width:34px;height:40px}}


/* Championship Banners */
.championship-banner-intro .button-row{margin-top:18px}
.championship-banner-strip{
  padding:22px;
  border:1px solid #d8e1ee;
  border-radius:14px;
  background:
    linear-gradient(135deg,rgba(8,8,135,.06),transparent 38%),
    linear-gradient(145deg,#ffffff,#f8fbff);
  box-shadow:0 8px 22px rgba(14,31,62,.06);
}
.championship-banner-strip-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(210px,1fr));gap:15px;margin-top:15px}
.championship-banner-strip-card{display:grid;grid-template-columns:102px minmax(0,1fr);gap:13px;align-items:center;min-width:0;padding:10px;background:#fff;border:1px solid #dce5ef;border-radius:11px;box-shadow:0 4px 11px rgba(14,31,62,.05)}
.championship-banner-strip-art{height:154px;display:flex;align-items:center;justify-content:center;overflow:hidden;border-radius:8px;background:#f5f7fb;border:1px solid #e4e9f1}
.championship-banner-strip-image-link{display:block;line-height:0;height:100%}
.championship-banner-strip-image{display:block;width:100%;height:100%;object-fit:contain;filter:drop-shadow(0 3px 3px rgba(8,25,80,.14));transition:transform .16s ease}
.championship-banner-strip-image-link:hover .championship-banner-strip-image{transform:scale(1.03)}
.championship-banner-strip-copy{display:grid;gap:4px;min-width:0}
.championship-banner-strip-copy span{color:#68788d;font-size:10px;line-height:1.15;font-weight:950;letter-spacing:.6px;text-transform:uppercase}
.championship-banner-strip-copy strong{color:var(--blue);font-size:17px;line-height:1.12;overflow-wrap:anywhere}
.championship-banner-strip-copy small{color:var(--muted);font-size:12px;line-height:1.3}
.championship-banner-strip-copy a,.text-link{display:inline-flex;align-items:center;width:max-content;max-width:100%;margin-top:5px;color:var(--blue);font-size:12px;font-weight:900;text-decoration:none}
.championship-banner-strip-copy a:hover,.text-link:hover{text-decoration:underline}
.championship-banner-gallery{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:20px}
.championship-banner-card{display:flex;flex-direction:column;min-width:0;overflow:hidden;border:1px solid #d8e1ee;border-radius:14px;background:#fff;box-shadow:0 9px 24px rgba(14,31,62,.08)}
.championship-banner-card-image-link{display:flex;align-items:center;justify-content:center;min-height:390px;padding:13px;background:radial-gradient(circle at 50% 0,rgba(255,210,0,.14),transparent 46%),#f7f9fd;border-bottom:1px solid #e0e7f0}
.championship-banner-card-image{display:block;width:100%;height:362px;object-fit:contain;filter:drop-shadow(0 8px 9px rgba(8,25,80,.16));transition:transform .18s ease}
.championship-banner-card-image-link:hover .championship-banner-card-image{transform:translateY(-3px) scale(1.015)}
.championship-banner-card-body{padding:17px;display:flex;flex:1;flex-direction:column}
.championship-banner-card-kicker{color:#75859a;font-size:10px;font-weight:1000;letter-spacing:.75px;text-transform:uppercase}
.championship-banner-card h2{margin:5px 0 4px;color:var(--blue);font-size:21px;line-height:1.1}
.championship-banner-card p{margin:0;color:var(--muted);font-size:13px;line-height:1.4}
.championship-banner-meta{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:7px;margin:16px 0}
.championship-banner-meta div{min-width:0;padding:8px;border:1px solid #e2e8f0;border-radius:8px;background:#f7f9fc}
.championship-banner-meta dt{color:#7a899c;font-size:9px;font-weight:1000;letter-spacing:.55px;text-transform:uppercase}
.championship-banner-meta dd{margin:4px 0 0;color:var(--blue);font-size:12px;font-weight:900;overflow-wrap:anywhere}
.championship-banner-meta dd a{color:inherit;text-decoration:none}
.championship-banner-meta dd a:hover{text-decoration:underline}
.championship-banner-actions{display:flex;flex-wrap:wrap;gap:12px;align-items:center;margin-top:auto}
.championship-banner-actions .button{padding:9px 12px;font-size:12px}
@media(max-width:1120px){.championship-banner-gallery{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:720px){
  .championship-banner-strip{padding:16px}
  .championship-banner-strip-grid{grid-template-columns:1fr}
  .championship-banner-strip-card{grid-template-columns:88px minmax(0,1fr);gap:11px}
  .championship-banner-strip-art{height:132px}
  .championship-banner-gallery{grid-template-columns:1fr;gap:15px}
  .championship-banner-card-image-link{min-height:320px}
  .championship-banner-card-image{height:292px}
}

/* Front Office Build Profile — owner / coach era selector */
.fo-era-current{display:flex;align-items:flex-start;justify-content:space-between;gap:14px;margin:2px 0 13px;padding:13px 14px;border:1px solid rgba(255,255,255,.26);border-radius:10px;background:rgba(1,10,44,.22)}
.fo-era-current>div{min-width:0}.fo-era-kicker{display:block;color:#b8c8ed;font-size:9px;letter-spacing:.72px;text-transform:uppercase;font-weight:1000;margin-bottom:4px}.fo-era-current strong{display:block;color:#fff;font-size:17px;line-height:1.12}.fo-era-current strong a{color:#ffe16d;text-decoration:none}.fo-era-current strong a:hover{text-decoration:underline}.fo-era-current small{display:block;margin-top:5px;color:#dce8ff;font-size:12px;line-height:1.35}.fo-era-status{display:inline-flex;flex:0 0 auto;padding:5px 8px;border:1px solid rgba(255,255,255,.25);border-radius:999px;color:#ffe16d;background:rgba(244,199,28,.11);font-size:10px;font-weight:950;letter-spacing:.45px;text-transform:uppercase;white-space:nowrap}
.fo-era-switcher{display:flex;gap:8px;overflow-x:auto;padding:2px 0 5px;margin:0 0 14px;scrollbar-width:thin}.fo-era-switch{display:grid;flex:0 0 min(255px,84vw);gap:2px;min-width:0;padding:10px 11px;border:1px solid rgba(255,255,255,.24);border-radius:9px;background:rgba(2,10,39,.18);color:#fff;text-decoration:none}.fo-era-switch:hover{border-color:#f4c71c;background:rgba(244,199,28,.09);text-decoration:none}.fo-era-switch.is-active{border-color:#f4c71c;background:rgba(244,199,28,.15);box-shadow:inset 0 0 0 1px rgba(244,199,28,.18)}.fo-era-switch span{color:#b8c8ed;font-size:9px;font-weight:1000;letter-spacing:.7px;text-transform:uppercase}.fo-era-switch.is-active span{color:#ffe16d}.fo-era-switch strong{color:#fff;font-size:13px;line-height:1.2;overflow-wrap:anywhere}.fo-era-switch small{color:#dce8ff;font-size:10px;line-height:1.28;overflow-wrap:anywhere}.fo-profile-disclaimer{margin:13px 0 0;color:#c8d5f1;font-size:11px;line-height:1.4}
@media(max-width:640px){.fo-era-current{display:grid;gap:9px}.fo-era-status{width:max-content}.fo-era-current strong{font-size:16px}.fo-era-switch{flex-basis:230px}}

/* Front Office Center — league-owner scouting and market intelligence */
.front-office-center-hero{display:grid;grid-template-columns:minmax(0,1.25fr) minmax(320px,.75fr);gap:24px;padding:28px;border:1px solid #1a2d81;border-radius:15px;background:linear-gradient(135deg,#06154f,#0c3b91);box-shadow:0 14px 34px rgba(5,15,72,.22);color:#fff}
.front-office-center-copy h2{margin:7px 0 10px;color:#fff;font-size:clamp(26px,3vw,40px);line-height:1.04;letter-spacing:-1.2px}.front-office-center-copy p{margin:0;max-width:720px;color:#dce7ff;font-size:15px;line-height:1.52}.front-office-center-copy .button-row{margin-top:18px}.front-office-center-copy .button.light{background:transparent;color:#fff;border-color:#fff}.front-office-center-copy .button.light:hover{background:#fff;color:var(--blue)}
.front-office-center-stats{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;align-content:center}.front-office-center-stats>div{min-width:0;padding:15px;border:1px solid rgba(255,255,255,.24);border-radius:10px;background:rgba(2,9,47,.26)}.front-office-center-stats span{display:block;color:#b8c8ed;font-size:9px;font-weight:1000;letter-spacing:.65px;text-transform:uppercase;line-height:1.2}.front-office-center-stats strong{display:block;margin-top:7px;color:#fff;font-size:22px;line-height:1.08;overflow-wrap:anywhere}
.fo-dossier-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:15px}.fo-dossier-card{display:flex;flex-direction:column;min-width:0;padding:17px;border:1px solid #d9e2ef;border-radius:12px;background:linear-gradient(155deg,#fff,#f8faff);box-shadow:0 5px 14px rgba(14,31,62,.055)}.fo-dossier-head{display:flex;align-items:flex-start;justify-content:space-between;gap:10px}.fo-dossier-head>div{min-width:0}.fo-dossier-kicker{display:block;margin-bottom:4px;color:var(--red);font-size:9px;font-weight:1000;letter-spacing:.75px;text-transform:uppercase}.fo-dossier-card h3{margin:0;color:var(--blue);font-size:20px;line-height:1.08;overflow-wrap:anywhere}.fo-dossier-open{flex:0 0 auto;font-size:11px;white-space:nowrap}.fo-dossier-summary{min-height:55px;margin:11px 0 10px;color:var(--muted);font-size:12px;line-height:1.42}.fo-dossier-tags{display:flex;flex-wrap:wrap;gap:5px;min-height:26px;margin-bottom:12px}.fo-dossier-tags span{display:inline-flex;align-items:center;border-radius:999px;padding:4px 7px;background:#eef2ff;color:var(--blue);font-size:9px;font-weight:1000;letter-spacing:.45px;line-height:1.1;text-transform:uppercase}.fo-dossier-metrics{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:7px}.fo-dossier-metrics>div{min-width:0;padding:9px;border:1px solid #e3e9f1;border-radius:8px;background:#fff}.fo-dossier-metrics span{display:block;color:var(--muted);font-size:9px;font-weight:1000;letter-spacing:.55px;text-transform:uppercase;line-height:1.15}.fo-dossier-metrics strong{display:block;margin-top:4px;color:var(--blue);font-size:16px;line-height:1.12;overflow-wrap:anywhere}.fo-dossier-metrics small{display:block;margin-top:3px;color:#66768a;font-size:10px;line-height:1.22}.fo-dossier-footer{display:flex;justify-content:space-between;gap:8px;align-items:center;margin-top:12px;padding-top:10px;border-top:1px solid #e6ebf2;color:var(--muted);font-size:11px}.fo-dossier-footer a{font-size:11px;white-space:nowrap}
.fo-market-filter{align-items:end}.fo-market-kpis{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:11px;margin:15px 0}.fo-market-kpis>div{min-width:0;padding:14px;border:1px solid #dbe4ef;border-top:4px solid var(--blue);border-radius:10px;background:#fff}.fo-market-kpis span{display:block;color:var(--muted);font-size:9px;font-weight:1000;letter-spacing:.65px;text-transform:uppercase;line-height:1.2}.fo-market-kpis strong{display:block;margin:7px 0 3px;color:var(--blue);font-size:22px;line-height:1.08;overflow-wrap:anywhere}.fo-market-kpis small{display:block;color:var(--muted);font-size:11px;line-height:1.25}.fo-market-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:15px;margin-top:15px}.fo-market-card{min-width:0}.fo-market-card h3{margin:0;color:var(--blue);font-size:19px}.fo-market-card .sub{margin:5px 0 14px;font-size:12px}.fo-market-bars{display:grid;gap:9px}.fo-market-bar{display:grid;grid-template-columns:minmax(85px,1fr) minmax(100px,2.35fr) auto;gap:8px;align-items:center}.fo-market-bar-label{min-width:0}.fo-market-bar-label span{display:block;color:#24345d;font-size:12px;font-weight:950;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.fo-market-bar-label small{display:block;color:var(--muted);font-size:10px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.fo-market-bar-track,.fo-spender-track{height:11px;overflow:hidden;border-radius:999px;background:#edf1f7}.fo-market-bar-track i,.fo-spender-track i{display:block;height:100%;border-radius:inherit;background:linear-gradient(90deg,var(--blue),#6264dc)}.fo-market-bar strong{color:#172a65;font-size:11px;white-space:nowrap}.fo-spender-list{display:grid;gap:8px}.fo-spender-row{display:grid;grid-template-columns:minmax(124px,1.2fr) minmax(105px,2fr) auto;gap:9px;align-items:center;padding:9px 0;border-bottom:1px solid #e8edf3;color:var(--ink);text-decoration:none}.fo-spender-row:last-child{border-bottom:none}.fo-spender-row:hover{text-decoration:none}.fo-spender-row:hover .fo-spender-name strong{text-decoration:underline}.fo-spender-name{min-width:0}.fo-spender-name strong{display:block;color:var(--blue);font-size:12px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.fo-spender-name small{display:block;color:var(--muted);font-size:10px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.fo-spender-row>strong{color:#172a65;font-size:11px;white-space:nowrap}.fo-top-bids{margin-top:15px}.fo-center-boundary{background:linear-gradient(135deg,#fffdf1,#f7f9ff);border-left:6px solid var(--yellow)}.fo-center-boundary h2{margin:0 0 6px}.fo-center-boundary p{margin:0;color:var(--muted);font-size:13px;line-height:1.55}
@media(max-width:1120px){.fo-dossier-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.front-office-center-hero{grid-template-columns:1fr}.front-office-center-stats{max-width:720px}.fo-market-kpis{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:720px){.front-office-center-hero{padding:20px}.front-office-center-stats,.fo-dossier-grid,.fo-market-kpis,.fo-market-grid{grid-template-columns:1fr}.fo-dossier-card{padding:14px}.fo-dossier-summary{min-height:0}.fo-market-bar{grid-template-columns:84px minmax(70px,1fr) auto}.fo-spender-row{grid-template-columns:100px minmax(78px,1fr) auto}.fo-market-filter{display:grid;grid-template-columns:1fr}.fo-market-filter .button{width:100%}}

/* Franchise Command Center — latest preserved season and documented build inputs */
.franchise-command-center{padding:20px;border:1px solid var(--line);border-radius:13px;background:linear-gradient(145deg,#f9fbff,#fff)}.franchise-command-kpis{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:11px;margin:0 0 15px}.franchise-command-kpis>div{min-width:0;padding:13px;border:1px solid #dfe6ef;border-top:4px solid var(--blue);border-radius:9px;background:#fff}.franchise-command-kpis span{display:block;color:var(--muted);font-size:9px;font-weight:1000;letter-spacing:.65px;text-transform:uppercase;line-height:1.18}.franchise-command-kpis strong{display:block;margin:7px 0 3px;color:var(--blue);font-size:19px;line-height:1.1;overflow-wrap:anywhere}.franchise-command-kpis small{display:block;color:var(--muted);font-size:11px;line-height:1.25}.franchise-command-grid{display:grid;grid-template-columns:1.05fr 1.25fr 1fr;gap:14px}.franchise-command-card{min-width:0;padding:15px;border:1px solid #dfe6ef;border-radius:10px;background:#fff}.franchise-command-card h3{margin:0;color:var(--blue);font-size:18px}.franchise-command-card .sub{margin:5px 0 13px;font-size:12px}.franchise-command-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:7px}.franchise-command-list>div{padding:8px;border:1px solid #e6ebf2;border-radius:7px;background:#f8faff}.franchise-command-list span{display:block;color:var(--muted);font-size:9px;font-weight:1000;letter-spacing:.48px;text-transform:uppercase;line-height:1.2}.franchise-command-list strong{display:block;margin-top:3px;color:#172a65;font-size:14px;line-height:1.14;overflow-wrap:anywhere}.franchise-command-moves{display:grid;gap:7px}.franchise-command-moves>div{padding:8px 0;border-bottom:1px solid #e8edf3}.franchise-command-moves>div:last-child{border-bottom:none}.franchise-command-moves .badge{margin-right:6px}.franchise-command-moves strong{color:#1d2e61;font-size:11px}.franchise-command-moves p{margin:5px 0 0;color:#526177;font-size:11px;line-height:1.33;white-space:pre-line}.franchise-command-auctions{display:grid;gap:7px}.franchise-command-auctions>div{padding:8px 0;border-bottom:1px solid #e8edf3}.franchise-command-auctions>div:last-child{border-bottom:none}.franchise-command-auctions span,.franchise-command-auctions small{display:block;color:var(--muted);font-size:10px;line-height:1.2}.franchise-command-auctions strong{display:block;margin:2px 0;color:#1a2d67;font-size:13px;line-height:1.12}.franchise-trade-strip{display:flex;flex-wrap:wrap;gap:8px;align-items:center;margin-top:14px;padding:11px 12px;border:1px solid #dce4ef;border-radius:9px;background:#f4f7fb}.franchise-trade-strip>span{color:var(--blue);font-size:10px;font-weight:1000;letter-spacing:.6px;text-transform:uppercase}.franchise-trade-strip a{display:inline-flex;gap:4px;align-items:center;border:1px solid #cdd9eb;border-radius:999px;padding:5px 8px;background:#fff;color:#263a75;font-size:10px;text-decoration:none}.franchise-trade-strip a:hover{background:#eef2ff}.franchise-trade-strip small{flex-basis:100%;color:var(--muted);font-size:10px;line-height:1.25}.franchise-command-boundary{margin:14px 0 0;padding-top:11px;border-top:1px solid #e2e8f0;color:var(--muted);font-size:11px;line-height:1.42}
@media(max-width:1120px){.franchise-command-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.franchise-command-grid>.franchise-command-card:last-of-type{grid-column:1/-1}.franchise-command-kpis{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:720px){.franchise-command-center{padding:15px}.franchise-command-kpis,.franchise-command-grid{grid-template-columns:1fr}.franchise-command-grid>.franchise-command-card:last-of-type{grid-column:auto}.franchise-command-list{grid-template-columns:1fr}.franchise-command-kpis strong{font-size:18px}}
