/*
Theme Name: CFL Report Newsroom
Author: CFL Report
Version: 1.1.1
*/
:root{--red:#d71920;--blue:#113b71;--navy:#071e36;--ink:#111827;--muted:#64748b;--line:#dbe2ea;--paper:#fff;--wash:#f4f7fa}
*{box-sizing:border-box}
body{margin:0;color:var(--ink);background:var(--paper);font-family:Arial,Helvetica,sans-serif;line-height:1.55}
a{color:inherit;text-decoration:none}img{max-width:100%;height:auto}.wrap{width:min(1180px,calc(100% - 32px));margin:auto}
.topbar{background:var(--navy);color:#fff;font-size:.85rem}.topbar .wrap{display:flex;justify-content:space-between;gap:20px;padding:8px 0}
.masthead{border-bottom:5px solid var(--red);background:#fff}.brandrow{display:flex;align-items:center;justify-content:space-between;gap:24px;padding:18px 0}.brandlock{display:flex;align-items:center;gap:12px}.header-photo{width:64px;height:64px;object-fit:cover;object-position:76% center;border-radius:50%;border:3px solid var(--red);box-shadow:0 0 0 3px var(--blue)}.brand{font-size:clamp(2rem,6vw,4.6rem);font-weight:900;letter-spacing:-.06em;color:var(--blue);line-height:.85}.brand span{color:var(--red)}.tagline{font-weight:700;color:var(--blue);text-align:right}
.mainnav{background:var(--blue);color:#fff}.mainnav ul{list-style:none;margin:0;padding:0;display:flex;flex-wrap:wrap}.mainnav a{display:block;padding:14px 16px;font-weight:800;text-transform:uppercase;font-size:.88rem}.mainnav a:hover{background:var(--red)}
.breaking{background:var(--red);color:#fff}.breaking .wrap{display:flex;gap:18px;padding:10px 0}.breaking strong{white-space:nowrap}
.newsgrid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:22px;padding:28px 0}
.story-card{border-bottom:1px solid var(--line);padding-bottom:18px}.story-card img,.placeholder{width:100%;aspect-ratio:16/9;object-fit:cover;background:linear-gradient(135deg,var(--blue),var(--red))}.kicker{color:var(--red);font-size:.78rem;font-weight:900;text-transform:uppercase;letter-spacing:.08em;margin-top:12px}.story-card h2,.story-card h3{line-height:1.08;margin:.35rem 0}.story-card p{color:#475569;margin:.4rem 0}
.section{padding:30px 0}.section:nth-child(even){background:var(--wash)}.section-title{display:flex;align-items:center;gap:14px;border-bottom:4px solid var(--blue);margin-bottom:20px}.section-title h2{margin:0;background:var(--blue);color:#fff;padding:8px 15px;text-transform:uppercase;font-size:1.15rem}.cards{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:22px}.cards.three{grid-template-columns:repeat(2,minmax(0,1fr))}
.cta{background:var(--navy);color:#fff;padding:38px;border-left:8px solid var(--red);display:flex;justify-content:space-between;align-items:center;gap:24px}.button{display:inline-block;background:var(--red);color:#fff;padding:12px 18px;font-weight:900;text-transform:uppercase;border:0;cursor:pointer}.button.blue{background:var(--blue)}
.page-content{max-width:850px;padding:42px 0}.page-content h1{font-size:2.6rem;color:var(--blue)}.article-inline-media{margin:26px 0}.article-inline-media img{display:block;width:100%;height:auto;border-radius:4px}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px}.form-grid .full{grid-column:1/-1}label{font-weight:800;display:block;margin-bottom:5px}input,textarea,select{width:100%;padding:12px;border:1px solid #b8c2cf;font:inherit}textarea{min-height:150px}.notice{background:#eaf2fb;border-left:5px solid var(--blue);padding:14px}
.footer{background:var(--navy);color:#fff;margin-top:40px}.footer-grid{display:grid;grid-template-columns:2fr 1fr 1fr;gap:30px;padding:45px 0}.footer h3{color:#fff}.footer a{color:#dce8f5}.copyright{border-top:1px solid #36506c;padding:16px 0;color:#cbd5e1;font-size:.85rem}
@media(max-width:850px){.brandrow{align-items:flex-start}.tagline{font-size:.85rem}.footer-grid{grid-template-columns:1fr 1fr}}
@media(max-width:560px){.form-grid,.footer-grid{grid-template-columns:1fr}.form-grid .full{grid-column:auto}.topbar .wrap{display:grid;gap:3px}.brandrow,.cta{display:block}.header-photo{width:46px;height:46px;border-width:2px;box-shadow:0 0 0 2px var(--blue)}.brandlock{gap:9px}.tagline{text-align:left;margin-top:10px}.mainnav .wrap{overflow-x:auto}.mainnav ul{display:flex;flex-wrap:nowrap}.mainnav li{flex:0 0 auto}.mainnav a{padding:11px 13px}.breaking .wrap{gap:8px;align-items:baseline}.breaking span{min-width:0}.newsgrid,.cards,.cards.three{gap:12px}.story-card{margin-bottom:10px;padding-bottom:12px}.story-card h3{font-size:1rem}.story-card p{font-size:.88rem}}
