/*
Theme Name: NFL Sports Blog
Theme URI: https://www.nflsportsblog.com
Author: Brian Hradsky Sports Network
Description: Custom NFL Sports Blog theme with division sliders, division/team navigation, advertising sidebar and future Media Hub support.
Version: 0.2.1
Text Domain: nflsportsblog
*/
:root{--nsb-bg:#07111f;--nsb-panel:#0d1b2d;--nsb-panel2:#12243a;--nsb-text:#f5f7fb;--nsb-muted:#aebbd0;--nsb-red:#e31837;--nsb-blue:#1d4ed8;--nsb-border:rgba(255,255,255,.12);--nsb-shadow:0 12px 28px rgba(0,0,0,.28)}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:#eef2f7;color:#172033;font-family:Arial,Helvetica,sans-serif;line-height:1.55}a{color:inherit;text-decoration:none}img{max-width:100%;height:auto}.site-header{background:var(--nsb-bg);color:#fff}.topbar{max-width:1500px;margin:auto;padding:8px 20px;display:flex;justify-content:space-between;gap:20px;align-items:center;font-size:13px;color:#c8d4e7;border-bottom:1px solid var(--nsb-border)}.brand-banner{display:block;background:#020712}.brand-banner img{display:block;width:100%;max-height:330px;object-fit:cover}.main-nav{background:#07111f;border-top:1px solid var(--nsb-border);border-bottom:3px solid var(--nsb-red);position:sticky;top:0;z-index:50}.main-nav .nav-wrap{max-width:1500px;margin:auto;padding:0 16px}.main-nav ul{list-style:none;padding:0;margin:0;display:flex;flex-wrap:wrap;align-items:center}.main-nav li{position:relative}.main-nav>div>ul>li>a,.main-nav .menu>li>a{display:block;padding:14px 12px;font-weight:800;font-size:13px;letter-spacing:.03em;text-transform:uppercase;color:#fff}.main-nav li:hover>a{background:var(--nsb-red)}.main-nav ul ul{display:none;position:absolute;left:0;top:100%;min-width:230px;background:#0b1727;box-shadow:var(--nsb-shadow);z-index:99}.main-nav ul li:hover>ul{display:block}.main-nav ul ul li{width:100%}.main-nav ul ul a{display:block;padding:10px 14px;color:#fff;border-bottom:1px solid var(--nsb-border);font-size:13px}.main-nav ul ul ul{left:100%;top:0}.page-shell{max-width:1500px;margin:24px auto;padding:0 18px;display:grid;grid-template-columns:minmax(0,1fr) 340px;gap:28px}.content-area{min-width:0}.sidebar{min-width:0}.section-title{margin:0 0 12px;padding:12px 15px;background:linear-gradient(90deg,#07111f,#17365f);color:#fff;border-left:6px solid var(--nsb-red);font-size:22px;text-transform:uppercase;letter-spacing:.03em}.division-slider{background:#fff;border-radius:10px;box-shadow:var(--nsb-shadow);margin-bottom:26px;overflow:hidden;border:1px solid #d9e0ea}.division-head{display:flex;justify-content:space-between;align-items:center;gap:12px;background:#0b1727;color:#fff;padding:10px 14px}.division-head h2{font-size:20px;margin:0;text-transform:uppercase}.division-head a{font-size:12px;font-weight:700;color:#cbd9ef}.slider-track{display:grid;grid-auto-flow:column;grid-auto-columns:minmax(260px,31%);gap:15px;overflow-x:auto;padding:16px;scroll-snap-type:x mandatory;scrollbar-width:thin}.story-card{scroll-snap-align:start;background:#f9fbfd;border:1px solid #dce4ee;border-radius:9px;overflow:hidden;min-height:100%}.story-thumb{aspect-ratio:16/9;background:#0e1a2b;display:block;overflow:hidden}.story-thumb img{width:100%;height:100%;object-fit:cover;transition:transform .25s ease}.story-card:hover .story-thumb img{transform:scale(1.035)}.story-copy{padding:12px}.story-copy h3{font-size:18px;line-height:1.25;margin:0 0 8px}.story-meta{font-size:12px;color:#69778b;margin-bottom:7px;text-transform:uppercase;font-weight:700}.story-excerpt{font-size:14px;color:#4e5b6d}.widget{background:#fff;border:1px solid #d9e0ea;border-radius:10px;box-shadow:var(--nsb-shadow);margin-bottom:22px;overflow:hidden}.widget-title{margin:0;background:#0b1727;color:#fff;padding:11px 14px;border-left:5px solid var(--nsb-red);font-size:17px;text-transform:uppercase}.widget-body{padding:15px}.advertise-card{background:linear-gradient(145deg,#0b1727,#17365f);color:#fff;text-align:center;padding:24px 18px}.advertise-card h3{margin:0 0 8px;font-size:26px}.advertise-card p{color:#dbe6f7}.button{display:inline-block;padding:10px 16px;background:var(--nsb-red);color:#fff;border-radius:5px;font-weight:800;text-transform:uppercase;font-size:13px}.media-placeholder{background:#08111f;color:#fff;padding:24px 18px;text-align:center;min-height:220px;display:flex;flex-direction:column;justify-content:center}.media-placeholder strong{font-size:24px}.media-placeholder span{color:#adbed8}.latest-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.site-footer{margin-top:40px;background:#07111f;color:#c9d5e7}.footer-inner{max-width:1500px;margin:auto;padding:28px 18px;display:flex;justify-content:space-between;gap:25px;flex-wrap:wrap}.footer-inner strong{color:#fff}.copyright{background:#030812;text-align:center;padding:12px;font-size:12px;color:#92a4bf}.archive-title{background:#fff;padding:18px;border-radius:10px;box-shadow:var(--nsb-shadow);margin-bottom:20px}.post-list article{background:#fff;padding:18px;border-radius:10px;box-shadow:var(--nsb-shadow);margin-bottom:18px}.post-list h2{margin-top:0}@media(max-width:1100px){.page-shell{grid-template-columns:1fr}.sidebar{display:grid;grid-template-columns:repeat(2,1fr);gap:18px}.widget{margin-bottom:0}.slider-track{grid-auto-columns:minmax(260px,45%)}.latest-grid{grid-template-columns:repeat(2,1fr)}}@media(max-width:720px){.topbar{display:none}.main-nav ul{overflow-x:auto;flex-wrap:nowrap}.main-nav ul ul{display:none!important}.page-shell{padding:0 10px;margin-top:15px}.sidebar{display:block}.widget{margin-bottom:18px}.slider-track{grid-auto-columns:85%}.latest-grid{grid-template-columns:1fr}.section-title{font-size:18px}.brand-banner img{min-height:145px;object-fit:cover}}

/* v0.2.0 league desk + team identity system */
.league-desk{background:#fff;border:1px solid #d9e0ea;border-radius:10px;box-shadow:var(--nsb-shadow);margin-bottom:26px;overflow:hidden}.league-desk .division-head span{font-size:12px;color:#cbd9ef;text-transform:uppercase;font-weight:800}.league-grid{display:grid;grid-template-columns:repeat(5,1fr);gap:14px;padding:16px}.league-column{min-width:0}.league-column>h3{margin:0 0 10px;padding-bottom:7px;border-bottom:3px solid var(--nsb-red);font-size:15px;text-transform:uppercase}.compact .story-thumb{aspect-ratio:16/9}.compact .story-copy h4{margin:0 0 7px;font-size:15px;line-height:1.25}.empty-note{font-size:13px;color:#6b7789;margin:0}.team-card{position:relative}.team-stripe{height:6px;background:linear-gradient(90deg,var(--team-primary),var(--team-accent))}.team-card .story-meta{color:var(--team-primary)}.team-placeholder{background-size:cover;background-blend-mode:multiply;display:flex;align-items:flex-end;padding:18px}.team-placeholder span{display:inline-block;background:rgba(0,0,0,.72);color:#fff;padding:8px 10px;font-size:18px;font-weight:900;text-transform:uppercase;letter-spacing:.02em}.quick-links{display:grid;gap:8px}.quick-links a{display:flex;justify-content:space-between;align-items:center;padding:10px 12px;background:#f2f5f9;border-left:4px solid var(--nsb-red);font-weight:800;font-size:13px}.media-placeholder small{display:block;margin-top:14px;color:#7186a4;font-size:11px}@media(max-width:1250px){.league-grid{grid-template-columns:repeat(3,1fr)}}@media(max-width:720px){.league-grid{grid-template-columns:1fr 1fr}}@media(max-width:480px){.league-grid{grid-template-columns:1fr}}

/* v0.2.1 network header buttons */
.network-buttons{display:flex;justify-content:flex-end;align-items:center;gap:6px;flex-wrap:wrap;margin-left:auto}.network-buttons a{display:inline-block;padding:6px 9px;border:1px solid rgba(255,255,255,.22);border-radius:4px;background:#12243a;color:#fff;font-size:10px;font-weight:800;line-height:1.15;text-transform:uppercase;letter-spacing:.02em;white-space:nowrap;transition:background .2s ease,border-color .2s ease}.network-buttons a:hover,.network-buttons a:focus{background:var(--nsb-red);border-color:var(--nsb-red);color:#fff}.topbar>span{white-space:nowrap}@media(max-width:1250px){.topbar{align-items:flex-start}.network-buttons{max-width:760px}}@media(max-width:900px){.topbar>span{display:none}.network-buttons{width:100%;justify-content:center;margin-left:0}.topbar{display:flex;padding:7px 10px}}@media(max-width:720px){.topbar{display:flex}.network-buttons{overflow-x:auto;flex-wrap:nowrap;justify-content:flex-start;padding-bottom:2px;scrollbar-width:thin}.network-buttons a{flex:0 0 auto;font-size:9px;padding:6px 8px}}
