:root{
  --bg:#060709; --panel:#0d0f13; --panel2:#11141a; --text:#f7f7f7;
  --muted:#b8bcc5; --red:#d71920; --red2:#ff3138; --gold:#d4aa47; --line:#34312a;
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;background:radial-gradient(circle at 15% 10%,#17100d 0,#08090c 28%,#050608 70%);color:var(--text);font-family:Arial,Helvetica,sans-serif}
a{color:inherit}
.site-header{position:sticky;top:0;z-index:20;display:flex;align-items:center;gap:28px;padding:14px 3.5vw;background:rgba(4,5,7,.94);border-bottom:1px solid #211d18;backdrop-filter:blur(12px)}
.brand{display:flex;align-items:center;gap:14px;text-decoration:none;min-width:330px}
.brand img{width:78px;height:78px;border-radius:50%;object-fit:cover;border:2px solid var(--gold)}
.brand-name{font-weight:900;line-height:.88;font-size:28px;letter-spacing:.5px}
.brand-name span{display:block;color:#fff}.brand-name strong{display:block;color:var(--red2)}.brand-name em{display:block;color:#fff;font-style:normal;letter-spacing:8px;font-size:18px;margin-top:6px}
.tagline{font-size:11px;color:var(--gold);font-weight:800;letter-spacing:1px;margin-top:7px}
.nav{display:flex;gap:26px;margin-left:auto}
.nav a{text-decoration:none;text-transform:uppercase;font-weight:700;font-size:14px;color:#e8e8e8}
.nav a:hover{color:var(--red2)}
.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;padding:14px 20px;border-radius:9px;text-decoration:none;font-weight:900;text-transform:uppercase;letter-spacing:.4px}
.primary{background:linear-gradient(180deg,#ef2027,#b90f15);box-shadow:0 0 28px rgba(215,25,32,.18)}
.outline{border:1px solid var(--gold);background:#0a0a0a}
.compact{padding:11px 16px;font-size:13px}
.hero{min-height:560px;display:grid;grid-template-columns:1.05fr 1.3fr;gap:40px;align-items:center;padding:70px 3.5vw;background:
linear-gradient(90deg,rgba(0,0,0,.2),rgba(0,0,0,.68)),
radial-gradient(circle at 20% 40%,rgba(215,25,32,.18),transparent 36%)}
.eyebrow{color:var(--gold);font-weight:900;letter-spacing:2px;font-size:13px;text-transform:uppercase}
.hero h1{font-size:clamp(48px,6vw,82px);line-height:.93;margin:10px 0 20px;font-weight:950;letter-spacing:-2px}
.hero h1 span{color:var(--red2)}
.lead{max-width:680px;font-size:20px;line-height:1.55;color:#e6e6e6}
.hero-actions{display:flex;gap:14px;flex-wrap:wrap;margin-top:28px}
.live-card{padding:28px;border:1px solid #5b4520;border-radius:20px;background:linear-gradient(145deg,#0a0b0e,#101217);box-shadow:0 22px 70px rgba(0,0,0,.45)}
.live-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:20px}
.live-pill{background:var(--red);border-radius:7px;padding:8px 12px;font-weight:900}.small{color:#d6d6d6;font-size:12px;letter-spacing:1.4px}
.live-main{display:grid;grid-template-columns:1fr 210px;gap:28px;align-items:center}
.live-main h2{font-size:42px;margin:0 0 8px}.live-main p{color:var(--muted);font-size:17px;line-height:1.5}
.live-main img{width:210px;height:210px;border-radius:50%;object-fit:cover;border:3px solid var(--gold);box-shadow:0 0 30px rgba(212,170,71,.14)}
.wave{display:flex;align-items:end;gap:6px;height:72px;margin:25px 0}
.wave i{width:10px;background:var(--red);border-radius:3px 3px 0 0;animation:pulse 1.25s infinite ease-in-out}
.wave i:nth-child(1){height:24%}.wave i:nth-child(2){height:58%}.wave i:nth-child(3){height:84%}.wave i:nth-child(4){height:46%}.wave i:nth-child(5){height:70%}.wave i:nth-child(6){height:38%}.wave i:nth-child(7){height:90%}.wave i:nth-child(8){height:56%}.wave i:nth-child(9){height:74%}.wave i:nth-child(10){height:40%}.wave i:nth-child(11){height:66%}.wave i:nth-child(12){height:30%}
@keyframes pulse{0%,100%{opacity:.45;transform:scaleY(.65)}50%{opacity:1;transform:scaleY(1)}}
.section{padding:70px 3.5vw}
.section-heading h2,.news-banner h2,.info-card h2{font-size:clamp(34px,4vw,56px);margin:8px 0 10px}
.section-heading>p:last-child{color:var(--muted);font-size:18px}
.show-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:22px;margin-top:32px}
.show-card{padding:28px;border-radius:18px;background:linear-gradient(145deg,var(--panel2),#0b0d11);border:1px solid #2a2d34;min-height:310px;box-shadow:0 18px 42px rgba(0,0,0,.22)}
.show-card.featured{border-color:#7f621f}.show-card.news-card{border-color:#4b3c20}
.show-card .icon{font-size:38px;margin-bottom:18px}.show-card h3{font-size:28px;margin:8px 0 10px}.show-card strong{color:#ffc52e;font-size:18px}.show-card p:last-child{color:#d2d6df;line-height:1.65;font-size:16px}
.news-banner{margin:0 3.5vw 70px;padding:28px 32px;display:grid;grid-template-columns:auto 1fr auto;gap:24px;align-items:center;border:1px solid #59451f;border-radius:18px;background:linear-gradient(90deg,#0b0d11,#11141a)}
.news-icon{font-size:54px}.weather-icons{font-size:40px}.news-banner h2{font-size:34px;margin:5px 0}.news-banner p:last-child{color:var(--muted);font-size:17px}
.about-contact{display:grid;grid-template-columns:1fr 1fr;gap:24px;padding:0 3.5vw 70px}
.info-card{padding:30px;border:1px solid #292c32;background:#0d0f13;border-radius:18px}
.info-card p{color:#d1d4dc;line-height:1.65;font-size:17px}.info-card a{color:#ff4b50;text-decoration:none}
footer{display:grid;grid-template-columns:1.2fr 1fr 1fr;gap:30px;padding:28px 3.5vw;border-top:1px solid #31281c;background:#040506;align-items:center}
footer div{display:flex;flex-direction:column;gap:8px}footer span,footer a{color:#c8cbd2;text-decoration:none}.footer-live{border-left:1px solid #3a3021;border-right:1px solid #3a3021;padding:0 26px}
@media(max-width:1100px){.nav{display:none}.site-header{justify-content:space-between}.brand{min-width:0}.hero{grid-template-columns:1fr}.show-grid{grid-template-columns:repeat(2,1fr)}}
@media(max-width:720px){.site-header{padding:10px 16px}.brand img{width:58px;height:58px}.brand-name{font-size:20px}.tagline{display:none}.site-header>.btn{padding:11px 12px;font-size:12px}.hero{padding:45px 18px}.hero h1{font-size:44px}.live-main{grid-template-columns:1fr}.live-main img{width:160px;height:160px}.section{padding:50px 18px}.show-grid{grid-template-columns:1fr}.news-banner{margin:0 18px 50px;grid-template-columns:1fr}.weather-icons{display:none}.about-contact{grid-template-columns:1fr;padding:0 18px 50px}footer{grid-template-columns:1fr;padding:24px 18px}.footer-live{border:0;padding:0}}

button.btn{border:0;color:#fff;cursor:pointer;font:inherit}
.inline-player{display:grid;grid-template-columns:auto 1fr minmax(110px,180px);gap:14px;align-items:center;margin-top:22px;padding:14px;border:1px solid #48351c;border-radius:14px;background:#08090c}
.round-play{width:54px;height:54px;border-radius:50%;border:0;background:linear-gradient(180deg,#ef2027,#b90f15);color:#fff;font-size:22px;font-weight:900;cursor:pointer;box-shadow:0 0 20px rgba(215,25,32,.22)}
.player-copy{display:flex;flex-direction:column;gap:4px}.player-copy strong{font-size:15px}.player-copy span{color:var(--muted);font-size:12px}
.volume{width:100%;accent-color:var(--red2)}
.footer-play{border:0;background:none;color:#ff4b50;padding:0;text-align:left;cursor:pointer;font-weight:800}
.player-button{cursor:pointer}
@media(max-width:720px){.inline-player{grid-template-columns:auto 1fr}.volume{grid-column:1/-1}}

/* =========================================
   NEWS & WEATHER - TIDY CARD LAYOUT
   ========================================= */

.news-weather-section {
  padding-top: 70px;
  padding-bottom: 70px;
}

.news-weather-section .section-heading {
  margin-bottom: 35px;
}

.news-weather-links {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 28px;
  max-width: 1100px;
  margin: 0 auto 35px;
}

.news-weather-card {
  display: block;
  padding: 32px;
  text-decoration: none;
  color: inherit;
  background: linear-gradient(145deg, #101114, #08090b);
  border: 1px solid rgba(218, 170, 48, 0.45);
  border-radius: 18px;
  transition: transform 0.2s ease,
              border-color 0.2s ease,
              box-shadow 0.2s ease;
}

.news-weather-card:hover {
  transform: translateY(-4px);
  border-color: #d8aa30;
  box-shadow: 0 12px 30px rgba(0, 0, 0, 0.35);
}

.news-weather-card .icon {
  font-size: 42px;
  margin-bottom: 18px;
}

.news-weather-card .eyebrow {
  margin-bottom: 8px;
}

.news-weather-card h3 {
  margin: 0 0 12px;
  font-size: 1.55rem;
}

.news-weather-card p:not(.eyebrow) {
  margin: 0 0 22px;
  line-height: 1.6;
  opacity: 0.85;
}

.news-weather-card span {
  display: inline-block;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: 0.06em;
}

/* Clean information banner */

.news-weather-section .news-banner {
  max-width: 1100px;
  margin: 0 auto;
}

/* Mobile layout */

@media (max-width: 760px) {

  .news-weather-links {
    grid-template-columns: 1fr;
    gap: 18px;
  }

  .news-weather-card {
    padding: 25px;
  }

}
