@import url('https://fonts.googleapis.com/css2?family=Oswald:wght@500;700&family=Inter:wght@500;700;800&display=swap');
:root{--navy:#16264a;--navy-2:#0e1a35;--cream:#fbf5d0;--red:#c8302c;--alert:#e3241c;
--font-head:'Oswald','Bebas Neue','Arial Narrow','Segoe UI',Arial,sans-serif;--font-body:'Inter','Segoe UI','Helvetica Neue',Arial,sans-serif}
*{box-sizing:border-box}body{margin:0;font-family:var(--font-body);background:#f4f1e4;color:#1b2238;line-height:1.55}
a{color:var(--red)}img{max-width:100%}
.wrap{max-width:1180px;margin:0 auto;padding:0 18px}
header.site{background:var(--navy);color:var(--cream);border-bottom:6px solid var(--red);position:sticky;top:0;z-index:10}
.hbar{display:flex;align-items:center;gap:16px;padding:10px 18px;max-width:1180px;margin:0 auto}
.logo{display:flex;align-items:center;gap:10px;text-decoration:none;color:var(--cream)}
.logo .plate{background:linear-gradient(160deg,#fffbe6,var(--cream) 60%,#efe6b8);border-bottom:4px solid var(--red);width:64px;height:64px;display:flex;align-items:center;justify-content:center}
.logo .plate img{width:92%;height:92%;object-fit:contain}
.logo .name{font:700 30px/1 var(--font-head);text-transform:uppercase;letter-spacing:2px}
.logo .name small{display:block;font:600 11px/1.4 var(--font-body);letter-spacing:3px;opacity:.8}
nav.main{display:flex;gap:4px;margin-left:auto;flex-wrap:wrap}
nav.main a{color:var(--cream);text-decoration:none;font:500 17px/1 var(--font-head);text-transform:uppercase;letter-spacing:1.5px;padding:10px 12px;border-bottom:3px solid transparent}
nav.main a:hover,nav.main a.on{border-bottom-color:var(--red);color:#fff}
.listen{display:flex;align-items:center;gap:8px}
.listen button{background:linear-gradient(180deg,#dc3a35,#a8231f);color:#fff;border:0;cursor:pointer;font:700 17px/1 var(--font-head);letter-spacing:2px;text-transform:uppercase;padding:12px 16px;border-radius:4px;display:flex;align-items:center;gap:8px;box-shadow:0 2px 10px rgba(0,0,0,.35)}
.listen button .dot{width:10px;height:10px;border-radius:50%;background:#fff}
.listen button.playing .dot{animation:pulse 1s infinite}
.listen .fb{color:var(--cream);font-size:12px}
@keyframes pulse{50%{opacity:.2}}
.menu-btn{display:none;background:none;border:2px solid var(--cream);color:var(--cream);font:700 15px var(--font-head);padding:6px 10px;cursor:pointer}
/* ticker */
.ticker{display:flex;height:44px;background:var(--navy);box-shadow:0 -2px 14px rgba(0,0,0,.3);overflow:hidden;border-top:3px solid var(--red)}
.ticker .tag{flex:none;display:flex;align-items:center;gap:10px;padding:0 30px 0 16px;background:#fff;color:#c8102e;font:700 19px/1 var(--font-head);letter-spacing:2px;text-transform:uppercase;clip-path:polygon(0 0,100% 0,calc(100% - 18px) 100%,0 100%)}
.ticker .tag .dot{width:11px;height:11px;border-radius:50%;background:#c8102e;animation:pulse 1.2s infinite}
.ticker .track{flex:1;overflow:hidden;position:relative;-webkit-mask-image:linear-gradient(90deg,transparent 0,#000 30px,#000 calc(100% - 30px),transparent)}
.ticker .move{position:absolute;white-space:nowrap;top:50%;transform:translateY(-50%);animation:scroll 40s linear infinite;color:var(--cream);font:600 17px/1 var(--font-body);padding-left:100%}
.ticker .move a{color:var(--cream);text-decoration:none}.ticker .move a:hover{color:#fff;text-decoration:underline}
.ticker .move .sep{color:var(--red);margin:0 18px}
@keyframes scroll{to{transform:translate(-100%,-50%)}}
@media (prefers-reduced-motion:reduce){.ticker .move{animation:none;padding-left:20px}}
main{padding:28px 0 40px}
.sec-h{display:flex;align-items:stretch;margin:28px 0 16px}
.sec-h h2{margin:0;background:var(--navy);color:var(--cream);font:700 26px/1 var(--font-head);text-transform:uppercase;letter-spacing:1px;padding:10px 18px;border-left:8px solid var(--red)}
.sec-h a{margin-left:auto;align-self:center;font:500 15px var(--font-head);text-transform:uppercase;letter-spacing:1px}
.page-title{font:700 44px/1.05 var(--font-head);text-transform:uppercase;color:var(--navy);margin:0 0 6px;border-left:10px solid var(--red);padding-left:14px}
.grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:20px}
.card{background:#fff;border-bottom:5px solid var(--red);box-shadow:0 2px 10px rgba(22,38,74,.12);display:flex;flex-direction:column;text-decoration:none;color:inherit;transition:transform .15s}
.card:hover{transform:translateY(-3px)}
.card .thumb{aspect-ratio:16/9;background:var(--navy) center/cover no-repeat;position:relative}
.card .cat{position:absolute;left:0;bottom:0;background:var(--cream);color:var(--navy);font:700 13px/1 var(--font-body);letter-spacing:1.5px;text-transform:uppercase;padding:6px 10px}
.card .body{padding:14px 16px 16px}
.card h3{margin:0 0 6px;font:700 21px/1.2 var(--font-head);color:var(--navy);text-transform:uppercase}
.card p{margin:0;font-size:15px;color:#3a4260}.card time{font-size:12px;color:#777;display:block;margin-bottom:4px;text-transform:uppercase;letter-spacing:1px}
.empty{padding:20px;background:#fff;border-left:6px solid var(--red)}
article.full{background:#fff;padding:26px;box-shadow:0 2px 10px rgba(22,38,74,.12);max-width:860px}
article.full h1{font:700 40px/1.1 var(--font-head);color:var(--navy);text-transform:uppercase;margin:6px 0 10px}
article.full .hero{width:100%;aspect-ratio:16/9;object-fit:cover;border-bottom:6px solid var(--red);margin:10px 0 18px;background:var(--navy)}
.kicker{display:inline-block;background:var(--navy);color:var(--cream);font:700 13px/1 var(--font-body);letter-spacing:2px;text-transform:uppercase;padding:6px 10px;border-left:5px solid var(--red)}
.contact-box{background:#fff;padding:24px;box-shadow:0 2px 10px rgba(22,38,74,.12);max-width:760px}
.contact-form{display:flex;flex-direction:column;gap:8px}
.contact-form input,.contact-form textarea{font:inherit;padding:10px;border:1px solid #aab;border-radius:4px;width:100%}
.contact-form button{align-self:flex-start;background:var(--red);color:#fff;border:0;font:700 18px var(--font-head);letter-spacing:2px;text-transform:uppercase;padding:12px 22px;cursor:pointer}
.hp{position:absolute;left:-9999px}
.form-status{padding:10px 14px;border-left:6px solid}.form-status.ok{background:#e8f6e8;border-color:#2a8a2a}.form-status.err{background:#fde8e7;border-color:var(--red)}
footer.site{background:var(--navy-2);color:var(--cream);border-top:6px solid var(--red);padding:26px 0;font-size:14px}
footer.site .wrap{display:flex;flex-wrap:wrap;gap:20px;align-items:center;justify-content:space-between}
footer.site a{color:var(--cream)}footer.site nav a{margin-right:14px}
footer.site img{height:46px;vertical-align:middle;margin-right:8px;background:var(--cream);border-radius:4px}
@media (max-width:860px){.hbar{flex-wrap:wrap}.menu-btn{display:block;margin-left:auto}
nav.main{display:none;width:100%;order:5;flex-direction:column}nav.main.open{display:flex}
.listen{order:4;width:100%}.listen button{flex:1;justify-content:center}
.logo .name{font-size:24px}.page-title{font-size:32px}article.full{padding:16px}article.full h1{font-size:28px}
.ticker .tag{font-size:15px;padding:0 24px 0 10px}.sec-h{flex-wrap:wrap;gap:6px}.sec-h h2{font-size:22px}.sec-h a{margin-left:0;flex-basis:100%}}
