*{box-sizing:border-box}
body{margin:0;font-family:Arial,Helvetica,sans-serif;color:#111;background:#f6f7f8}
a{color:inherit}
.wrap{max-width:1180px;margin:auto;padding:0 20px}
header{background:#0b1b2b;color:#fff;padding:18px 0}
.brand{font-size:32px;font-weight:900;text-decoration:none}
.brand span{color:#e5283f}
.head{display:flex;align-items:center;justify-content:space-between;gap:20px;flex-wrap:wrap}
.sponsor{display:flex;align-items:center;gap:10px;font-size:11px;text-transform:uppercase;font-weight:800}
.nfa-logo{width:88px;height:auto;display:block}
.tag{color:#bbb;margin-top:4px}
.site-nav{display:flex;gap:18px;flex-wrap:wrap;margin-top:10px}
.site-nav a{text-decoration:none;color:#bbb;font-size:14px;font-weight:700}
.site-nav a:hover{color:#fff}

.hero{padding:34px 0 18px}
.hero h1{font-size:38px;margin:0 0 8px}
.hero p{color:#555;margin:0}

.controls{display:flex;gap:10px;flex-wrap:wrap;margin:18px 0}
.controls input,.controls select{padding:11px 12px;border:1px solid #ccc;border-radius:8px;background:white;font-size:15px}

.week-heading{font-size:20px;font-weight:900;margin:26px 0 10px;padding-bottom:6px;border-bottom:1px solid #ddd}
.week-heading span{font-weight:400;color:#666;font-size:15px}

.games{display:grid;gap:12px;padding-bottom:20px}
.game{background:white;border:1px solid #ddd;border-radius:12px;padding:16px;display:grid;grid-template-columns:150px 1fr auto;gap:16px;align-items:center}
.time{font-weight:700}
.status-final{color:#888;font-weight:700;font-size:13px;text-transform:uppercase;margin-top:4px}
.teams{font-size:20px;font-weight:800}
.teams a{text-decoration:none}
.teams a:hover{text-decoration:underline}
.meta{font-size:14px;color:#666;margin-top:6px}
.watch{display:flex;gap:8px;flex-wrap:wrap;justify-content:flex-end}
.btn{background:#111;color:#fff;padding:10px 13px;border-radius:8px;text-decoration:none;font-weight:700;font-size:14px}
.btn.free::after{content:" Â· Free";color:#8fd19e}
.btn.paid::after{content:" Â· Subscription";color:#f3b6a0}
.empty{padding:30px;background:#fff;border-radius:12px}

.cta-strip{background:#0b1b2b;color:#fff;text-align:center;padding:34px 20px;margin:40px 0 0;border-radius:12px}
.cta-strip h2{margin:0 0 8px;font-size:22px}
.cta-strip p{color:#bbb;margin:0 0 16px}
.button{display:inline-block;background:#e5283f;color:#fff;text-decoration:none;font-weight:700;padding:10px 22px;border-radius:8px}
.button:hover{background:#c81f34}

.provider-grid{display:grid;gap:12px;grid-template-columns:repeat(auto-fill,minmax(260px,1fr));padding-bottom:20px}
.provider-card{background:#fff;border:1px solid #ddd;border-radius:12px;padding:18px}
.provider-card h3{margin:0 0 8px;font-size:18px;display:flex;align-items:center;gap:8px;flex-wrap:wrap}
.provider-card p{margin:0 0 8px;color:#444;font-size:14px}
.provider-card .provider-link a{color:#0b1b2b;word-break:break-all;font-size:13px}
.pill{font-size:11px;font-weight:800;letter-spacing:.03em;padding:3px 9px;border-radius:100px;color:#fff}
.pill.free{background:#1c8a4d}
.pill.paid{background:#e5283f}
.pill.audio{background:#7a3fc4}
.pill.video{background:#0b6bcb}
.channel-card .time{display:flex;align-items:center}

.submit-box{background:#fff;border:1px solid #ddd;border-radius:12px;padding:24px}
.submit-box ul{padding-left:20px}
.submit-box a{color:#e5283f;font-weight:700}

footer.site-footer{max-width:1180px;margin:40px auto 0;padding:20px;border-top:1px solid #ddd;color:#777;font-size:13px}
.foot-meta{margin-top:8px;color:#999}

@media(max-width:700px){
  .hero h1{font-size:28px}
  .game{grid-template-columns:1fr}
  .watch{justify-content:flex-start}
  .controls>*{width:100%}
}
