/*
Theme Name: Right Now TV
Theme URI: https://www.rightnowtelevision.com/
Author: Right Now Television Broadcasting LLC
Description: A custom, lightweight Right Now TV theme preserving the large featured jumbotron and image-driven show cards while modernizing the site's layout, responsiveness, and television-network presentation.
Version: 2.0.3
Requires at least: 6.0
Requires PHP: 7.4
Text Domain: right-now-tv
*/

:root {
  --rntv-red: #d71920;
  --rntv-red-dark: #9f0d13;
  --rntv-black: #08090b;
  --rntv-charcoal: #111317;
  --rntv-panel: #171a1f;
  --rntv-line: #292d34;
  --rntv-white: #ffffff;
  --rntv-text: #f4f5f7;
  --rntv-muted: #a9adb5;
  --rntv-max: 1240px;
  --rntv-shadow: 0 18px 46px rgba(0,0,0,.28);
}
*{box-sizing:border-box}
html{scroll-behavior:smooth;background:var(--rntv-black)}
body{margin:0;background:#0a0b0e;color:var(--rntv-text);font-family:Arial,Helvetica,sans-serif;line-height:1.5}
a{color:inherit;text-decoration:none}
img{max-width:100%;height:auto;display:block}
button,input,textarea,select{font:inherit}
.screen-reader-text{position:absolute!important;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
.rntv-wrap{width:min(var(--rntv-max),calc(100% - 36px));margin-inline:auto}

/* Header */
.site-header{position:absolute;top:0;left:0;right:0;z-index:1000;background:rgba(8,9,11,.48);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border-bottom:1px solid rgba(255,255,255,.12)}
body:not(.home) .site-header{position:relative;background:rgba(8,9,11,.86)}
body.admin-bar.home .site-header{top:32px}
.header-main{min-height:76px;display:flex;align-items:center;gap:18px;flex-wrap:nowrap}
.site-branding{flex:0 0 auto}
.site-branding img{width:225px;max-width:38vw}
.primary-nav{margin-left:auto;min-width:0}
.primary-nav ul{list-style:none;margin:0;padding:0;display:flex;align-items:center;gap:2px;flex-wrap:nowrap}
.primary-nav a{display:block;padding:11px 9px;font-size:12px;font-weight:400;letter-spacing:.15px;text-transform:none;color:#f0f1f3;white-space:nowrap}
.primary-nav a:hover,.primary-nav .current-menu-item>a{color:#fff;background:#17191d}
.header-live{display:inline-flex;align-items:center;gap:7px;padding:10px 13px;background:var(--rntv-red);font-size:11px;font-weight:600;letter-spacing:.3px;text-transform:none;white-space:nowrap;flex:0 0 auto}
.header-live:before{content:"";width:8px;height:8px;background:#fff;border-radius:50%;box-shadow:0 0 0 4px rgba(255,255,255,.15)}
.menu-toggle{display:none;margin-left:auto;border:1px solid #343840;background:#15171b;color:#fff;padding:10px 12px;font-weight:900}

/* Hero / Jumbotron */
.rntv-hero{position:relative;background:#090a0d;overflow:hidden;border-bottom:1px solid var(--rntv-line)}
.hero-track{position:relative;min-height:100vh;min-height:100svh}
.hero-slide{position:absolute;inset:0;opacity:0;pointer-events:none;transition:opacity .55s ease;background:#0b0c0e}
.hero-slide.is-active{opacity:1;pointer-events:auto}
.hero-media{position:absolute;inset:0}
.hero-media img{width:100%;height:100%;object-fit:cover}
.hero-media:after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(5,6,8,.96) 0%,rgba(5,6,8,.73) 32%,rgba(5,6,8,.2) 68%,rgba(5,6,8,.48) 100%),linear-gradient(0deg,rgba(5,6,8,.9),transparent 40%)}
.hero-content{position:relative;z-index:2;min-height:inherit;display:flex;align-items:flex-end;padding:140px 0 88px}
.hero-copy{max-width:680px}
.hero-kicker{display:inline-flex;gap:8px;align-items:center;color:#fff;font-size:11px;font-weight:950;letter-spacing:2px;text-transform:uppercase;margin-bottom:15px}
.hero-kicker:before{content:"";width:36px;height:4px;background:var(--rntv-red)}
.hero-title{font-size:clamp(42px,6.6vw,88px);line-height:.91;letter-spacing:-3px;text-transform:uppercase;margin:0 0 18px;text-shadow:0 4px 20px rgba(0,0,0,.35)}
.hero-excerpt{max-width:600px;color:#d2d4d9;font-size:17px;margin:0 0 26px}
.hero-cta{display:inline-flex;background:var(--rntv-red);padding:13px 18px;font-size:12px;font-weight:950;letter-spacing:1.2px;text-transform:uppercase}
.hero-cta:hover{background:#f02028}
.hero-dots{position:absolute;z-index:5;right:max(18px,calc((100vw - var(--rntv-max))/2));bottom:35px;display:flex;gap:9px}
.hero-dot{width:34px;height:4px;border:0;background:rgba(255,255,255,.35);padding:0;cursor:pointer}
.hero-dot.is-active{background:var(--rntv-red)}

/* Main content */
.home-content{padding:44px 0 70px;background:radial-gradient(circle at 10% 0%,rgba(215,25,32,.11),transparent 30rem),#0a0b0e}
.section-block{margin-bottom:56px}
.section-head{display:flex;justify-content:space-between;align-items:flex-end;gap:20px;padding-bottom:14px;border-bottom:1px solid var(--rntv-line);margin-bottom:18px}
.section-eyebrow{color:var(--rntv-red);font-size:10px;font-weight:950;letter-spacing:2.1px;text-transform:uppercase;margin-bottom:5px}
.section-title{margin:0;font-size:clamp(25px,3vw,38px);line-height:1;text-transform:uppercase;letter-spacing:-1.2px}
.section-all{font-size:11px;font-weight:950;letter-spacing:1.1px;text-transform:uppercase;color:#c3c6cc;white-space:nowrap}
.section-all:hover{color:#fff}
.cards-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:18px}
.show-card{position:relative;background:var(--rntv-panel);border:1px solid var(--rntv-line);overflow:hidden;box-shadow:0 10px 25px rgba(0,0,0,.12);transition:transform .18s ease,border-color .18s ease,box-shadow .18s ease}
.show-card:hover{transform:translateY(-4px);border-color:#494e57;box-shadow:var(--rntv-shadow)}
.card-image{position:relative;aspect-ratio:16/9;background:#111}
.card-image img{width:100%;height:100%;object-fit:cover}
.card-image:after{content:"";position:absolute;inset:auto 0 0;height:45%;background:linear-gradient(transparent,rgba(0,0,0,.72))}
.card-body{padding:16px 17px 18px}
.card-cats{color:var(--rntv-red);font-size:9px;font-weight:950;letter-spacing:1.3px;text-transform:uppercase;margin-bottom:7px}
.card-title{margin:0;color:#fff;font-size:17px;line-height:1.08;text-transform:uppercase;letter-spacing:-.25px}
.card-title a:after{content:"";position:absolute;inset:0}
.card-arrow{margin-top:12px;color:#9fa4ac;font-size:10px;font-weight:900;letter-spacing:1px;text-transform:uppercase}
.card-arrow span{color:var(--rntv-red);margin-left:4px}

/* CTA strip */
.network-strip{margin:10px 0 58px;border:1px solid #333841;background:linear-gradient(110deg,#191c21,#0e0f12);display:grid;grid-template-columns:1fr auto;gap:30px;align-items:center;padding:25px 28px;border-left:5px solid var(--rntv-red)}
.network-strip h2{font-size:25px;text-transform:uppercase;margin:0 0 4px}
.network-strip p{margin:0;color:#c6c9cf;max-width:760px;font-size:15px;line-height:1.55}
.network-actions{display:flex;gap:10px;flex-wrap:wrap}
.btn{display:inline-flex;align-items:center;justify-content:center;padding:12px 15px;border:1px solid #454a53;font-size:11px;font-weight:950;letter-spacing:1px;text-transform:uppercase;background:#15171b;color:#fff}
.btn.primary{background:var(--rntv-red);border-color:var(--rntv-red)}
.btn:hover{border-color:#fff}

/* General page templates */
.page-hero{padding:70px 0 36px;background:radial-gradient(circle at 10% 0%,rgba(215,25,32,.15),transparent 30rem),#0a0b0e;border-bottom:1px solid var(--rntv-line)}
.page-kicker{color:var(--rntv-red);font-size:11px;font-weight:950;letter-spacing:2px;text-transform:uppercase}
.page-title{font-size:clamp(42px,6vw,72px);line-height:.95;letter-spacing:-2px;text-transform:uppercase;margin:7px 0 0}
.content-area{padding:42px 0 70px}
.entry-content{max-width:900px;font-size:17px;color:#d8dae0}
.entry-content h2,.entry-content h3{color:#fff;text-transform:uppercase;line-height:1.05}
.entry-content a{color:#fff;text-decoration:underline;text-decoration-color:var(--rntv-red);text-underline-offset:3px}
.entry-content img{margin:24px 0}
.archive-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}
.single-featured{margin-bottom:28px;aspect-ratio:16/8;overflow:hidden;background:#111;border:1px solid var(--rntv-line)}
.single-featured img{width:100%;height:100%;object-fit:cover}
.single-meta{color:var(--rntv-muted);font-size:11px;letter-spacing:1px;text-transform:uppercase;margin-top:12px}
.pagination{margin-top:35px;display:flex;gap:8px;flex-wrap:wrap}.pagination .page-numbers{border:1px solid var(--rntv-line);padding:9px 12px}.pagination .current{background:var(--rntv-red);border-color:var(--rntv-red)}

/* Footer */
.site-footer{background:#060709;border-top:1px solid var(--rntv-line);padding:42px 0 26px;color:#9fa4ad}
.footer-grid{display:grid;grid-template-columns:1.3fr 1fr 1fr;gap:40px}
.footer-logo{width:220px;margin-bottom:15px}
.footer-title{color:#fff;font-size:11px;font-weight:950;letter-spacing:1.4px;text-transform:uppercase;margin-bottom:11px}
.footer-menu{list-style:none;margin:0;padding:0}.footer-menu li{margin:7px 0}.footer-menu a:hover{color:#fff}
.footer-bottom{border-top:1px solid #202329;margin-top:32px;padding-top:19px;font-size:11px;display:flex;justify-content:space-between;gap:20px;flex-wrap:wrap}

/* Schedule template, matching approved standalone schedule */
.schedule-shell{padding:34px 0 70px;background:radial-gradient(circle at 15% 0%,rgba(215,25,32,.16),transparent 32rem),#07080a}
.schedule-eyebrow{color:var(--rntv-red);font-size:12px;font-weight:900;letter-spacing:3px;text-transform:uppercase;margin-top:12px}
.schedule-title{font-size:clamp(38px,6vw,72px);line-height:.95;margin:8px 0 10px;letter-spacing:-2.5px;text-transform:uppercase}
.schedule-sub{color:var(--rntv-muted);font-size:15px;margin-bottom:28px}.schedule-sub b{color:white}
.schedule-controls{display:flex;justify-content:space-between;align-items:center;gap:16px;margin:0 0 22px}
.schedule-tabs{display:flex;gap:7px;overflow-x:auto;padding:2px 0 8px;scrollbar-width:thin}
.schedule-tab{appearance:none;border:1px solid #30343b;background:#111317;color:#c8cbd0;padding:11px 16px;cursor:pointer;font-weight:900;font-size:12px;letter-spacing:.8px;text-transform:uppercase;white-space:nowrap}
.schedule-tab.active{background:var(--rntv-red);border-color:var(--rntv-red);color:white}
.schedule-date{font-weight:900;font-size:12px;letter-spacing:1px;color:#d6d8dc;text-transform:uppercase;white-space:nowrap}
.schedule-onnow{display:none;background:linear-gradient(100deg,#17191d,#101114);border:1px solid #30343b;border-left:5px solid var(--rntv-red);padding:22px 24px;margin:0 0 24px}
.schedule-onnow.show{display:grid;grid-template-columns:110px 1fr auto;align-items:center;gap:20px}
.schedule-tag{color:#fff;background:var(--rntv-red);padding:7px 9px;font-size:11px;font-weight:900;letter-spacing:1px;text-align:center}
.schedule-showname{font-size:25px;font-weight:950;text-transform:uppercase;line-height:1.05}.schedule-runtime{color:#bfc2c8;font-size:13px;margin-top:5px}.schedule-clock{font-size:12px;color:#8f949d;font-weight:bold}
.schedule-list{border-top:3px solid var(--rntv-red);box-shadow:0 20px 50px rgba(0,0,0,.25)}
.schedule-program{display:grid;grid-template-columns:145px 1fr 90px;min-height:72px;align-items:center;background:#111317;border-bottom:1px solid var(--rntv-line)}
.schedule-program:nth-child(even){background:#171a1f}.schedule-program.now{background:linear-gradient(90deg,rgba(215,25,32,.25),#17191d);box-shadow:inset 5px 0 var(--rntv-red)}
.schedule-time{padding:0 22px;font-size:14px;font-weight:900;color:#d9dbe0}.schedule-program-title{padding:15px 22px;border-left:1px solid var(--rntv-line);font-size:17px;font-weight:900;text-transform:uppercase}.schedule-duration{font-size:11px;color:#8d929a;font-weight:900;text-transform:uppercase;text-align:right;padding-right:20px}.schedule-nowpill{display:inline-block;margin-left:10px;background:var(--rntv-red);color:#fff;font-size:9px;letter-spacing:1px;padding:4px 6px;vertical-align:2px}.schedule-note{margin-top:20px;color:#777d86;font-size:12px;line-height:1.6}

@media(max-width:980px){
  .menu-toggle{display:block}.primary-nav{display:none;position:absolute;top:76px;left:0;right:0;background:rgba(11,12,15,.97);border-bottom:1px solid var(--rntv-line);padding:12px 18px}.primary-nav.is-open{display:block}.primary-nav ul{display:block}.primary-nav a{padding:12px 8px;border-bottom:1px solid #202329}.header-live{display:none}
  .cards-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.archive-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.footer-grid{grid-template-columns:1fr 1fr}.footer-brand{grid-column:1/-1}
}
@media(max-width:650px){
  .rntv-wrap{width:min(100% - 24px,var(--rntv-max))}.header-main{min-height:72px}.site-branding img{width:210px;max-width:65vw}.primary-nav{top:72px}
  .hero-track{min-height:100vh;min-height:100svh}.hero-content{padding:120px 0 68px;align-items:flex-end}.hero-title{letter-spacing:-1.8px}.hero-excerpt{font-size:15px}.hero-dots{left:12px;right:auto;bottom:24px}
  .cards-grid,.archive-grid{grid-template-columns:1fr}.network-strip{grid-template-columns:1fr}.footer-grid{grid-template-columns:1fr}.footer-brand{grid-column:auto}
  .schedule-controls{display:block}.schedule-date{margin:5px 0 12px}.schedule-onnow.show{grid-template-columns:80px 1fr}.schedule-clock{display:none}.schedule-program{grid-template-columns:92px 1fr}.schedule-duration{display:none}.schedule-time{padding:0 13px;font-size:12px}.schedule-program-title{padding:15px 14px;font-size:15px}
}

@media(max-width:782px){body.admin-bar.home .site-header{top:46px}}

/* v1.2: true edge-to-edge jumbotron + airtime labels */
.rntv-hero{width:100vw;max-width:none;margin-left:calc(50% - 50vw);margin-right:calc(50% - 50vw)}
.hero-track,.hero-slide,.hero-media{width:100%}
.hero-airtimes,.card-airtimes{display:flex;align-items:flex-start;gap:8px;color:#d8dbe0;font-size:12px;line-height:1.45}
.hero-airtimes{margin:-10px 0 24px;color:#fff;font-size:13px;font-weight:600;text-shadow:0 2px 8px rgba(0,0,0,.55)}
.hero-airtimes:before,.card-airtimes:before{content:"ON";flex:0 0 auto;background:var(--rntv-red);color:#fff;font-size:8px;font-weight:900;letter-spacing:.8px;padding:3px 5px;margin-top:1px}
.card-airtimes{margin-top:9px;color:#aeb3bb;font-size:11px;padding-right:4px}

/* v1.3: hard viewport breakout. Critical: jumbotron must span the entire browser width. */
.rntv-hero{
  position:relative;
  left:50%;
  width:100vw;
  width:100dvw;
  max-width:none !important;
  margin-left:0 !important;
  margin-right:0 !important;
  transform:translateX(-50%);
}
.rntv-hero .hero-track,
.rntv-hero .hero-slide,
.rntv-hero .hero-media{
  width:100%;
  max-width:none;
}
/* Keep copy near the bottom of the image, away from the navigation. */
.rntv-hero .hero-content{
  padding-top:140px;
  padding-bottom:38px;
  align-items:flex-end;
}
.rntv-hero .hero-dots{bottom:18px}
@media(max-width:650px){
  .rntv-hero .hero-content{padding-top:110px;padding-bottom:52px}
  .rntv-hero .hero-dots{bottom:18px}
}


/* v1.4 — definitive full-viewport hero implementation.
   The slide artwork is a CSS background on an absolute viewport-sized layer,
   so even on 4K/ultrawide displays it covers the entire jumbotron. */
html, body { width:100%; overflow-x:hidden; }
body.home { width:100%; max-width:none; }

body.home .rntv-hero {
  position:relative !important;
  left:auto !important;
  right:auto !important;
  transform:none !important;
  width:100% !important;
  max-width:none !important;
  margin:0 !important;
  padding:0 !important;
}

body.home .rntv-hero .hero-track {
  position:relative;
  width:100% !important;
  height:100vh;
  height:100svh;
  min-height:720px;
  max-width:none !important;
  margin:0 !important;
}

body.home .rntv-hero .hero-slide {
  position:absolute;
  inset:0;
  width:100% !important;
  height:100% !important;
  max-width:none !important;
  overflow:hidden;
}

body.home .rntv-hero .hero-media {
  position:absolute;
  inset:0;
  width:100% !important;
  height:100% !important;
  max-width:none !important;
  background-position:center center;
  background-repeat:no-repeat;
  background-size:cover;
}

/* Copy is anchored to the bottom of the actual slide, not positioned by
   top padding. This makes its vertical position deterministic. */
body.home .rntv-hero .hero-content {
  position:absolute !important;
  z-index:2;
  left:50%;
  bottom:64px;
  transform:translateX(-50%);
  width:min(var(--rntv-max), calc(100% - 36px));
  min-height:0 !important;
  height:auto !important;
  margin:0 !important;
  padding:0 !important;
  display:block !important;
}

body.home .rntv-hero .hero-dots {
  bottom:24px;
}

@media (max-width:650px) {
  body.home .rntv-hero .hero-track {
    min-height:620px;
  }
  body.home .rntv-hero .hero-content {
    bottom:58px;
    width:calc(100% - 24px);
  }
  body.home .rntv-hero .hero-dots {
    bottom:18px;
  }
}


/* v1.5 Goldilocks hero copy position: lower third, but clearly above the bottom. */
body.home .rntv-hero .hero-content {
  bottom: 16vh !important;
}
@media (max-width: 900px) {
  body.home .rntv-hero .hero-content { bottom: 12vh !important; }
}

/* Where to Watch */
.rntv-watch-hero{padding:150px 24px 58px;background:linear-gradient(135deg,#090909,#171717);border-bottom:4px solid #d71920;text-align:center}
.rntv-watch-hero h1{font-size:clamp(42px,6vw,82px);line-height:.95;margin:0 0 16px;text-transform:uppercase;font-weight:900}
.rntv-watch-hero p{max-width:760px;margin:0 auto;color:#c9c9c9;font-size:18px}
.rntv-watch-wrap{max-width:var(--rntv-max);margin:auto;padding:54px 22px 80px}
.rntv-watch-heading{display:flex;align-items:end;justify-content:space-between;gap:20px;margin:42px 0 18px}
.rntv-watch-heading h2{margin:0;text-transform:uppercase;font-size:30px}
.rntv-watch-heading span{color:#999;font-size:13px;text-transform:uppercase;letter-spacing:.12em}
.rntv-station-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}
.rntv-station{background:#151515;border:1px solid #292929;border-radius:10px;padding:18px;display:grid;grid-template-columns:1fr auto;gap:8px 16px}
.rntv-station .market{font-weight:800;font-size:17px}.rntv-station .calls{color:#aaa;font-size:13px}.rntv-station .channel{grid-row:1/3;grid-column:2;align-self:center;color:#f1c64b;font-weight:900;font-size:20px}
.rntv-provider-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}
.rntv-provider{min-height:155px;background:#fff;border-radius:12px;padding:20px;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;color:#111;box-shadow:0 10px 30px rgba(0,0,0,.22)}
.rntv-provider img{max-width:190px;max-height:62px;width:auto;height:auto;object-fit:contain;margin-bottom:14px}
.rntv-provider .provider-name{font-weight:850;font-size:17px}.rntv-provider .provider-detail{font-size:12px;color:#666;margin-top:5px}
.rntv-provider.has-logo .provider-name{font-size:13px;color:#555}
.rntv-watch-note{margin-top:24px;color:#888;font-size:12px}
@media(max-width:900px){.rntv-station-grid,.rntv-provider-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:600px){.rntv-station-grid,.rntv-provider-grid{grid-template-columns:1fr}.rntv-watch-hero{padding-top:125px}}

/* v1.6 Where-to-Watch visual upgrade */
.rntv-watch-hero{background:
 radial-gradient(circle at 75% 20%,rgba(215,25,32,.20),transparent 28%),
 linear-gradient(145deg,#050505,#151515 62%,#090909)}
.rntv-watch-kicker{color:#e21d25;font-size:13px;font-weight:900;letter-spacing:.22em;text-transform:uppercase;margin-bottom:12px}
.rntv-watch-stats{display:grid;grid-template-columns:repeat(3,1fr);gap:14px;margin:-28px auto 44px;position:relative;z-index:3}
.rntv-watch-stat{background:#171717;border:1px solid #2b2b2b;border-radius:12px;padding:22px 24px;box-shadow:0 12px 35px rgba(0,0,0,.28)}
.rntv-watch-stat strong{display:block;font-size:34px;line-height:1;color:#fff}.rntv-watch-stat span{display:block;margin-top:7px;color:#999;text-transform:uppercase;font-size:11px;letter-spacing:.1em}
.rntv-provider{position:relative;overflow:hidden;border:1px solid #e5e5e5}
.rntv-provider:before{content:"";position:absolute;left:0;top:0;bottom:0;width:5px;background:#d71920}
.rntv-provider .provider-wordmark{font-size:clamp(22px,2.2vw,32px);font-weight:900;letter-spacing:-.04em;line-height:1.05}
.rntv-provider .provider-wordmark small{display:block;font-size:10px;letter-spacing:.18em;text-transform:uppercase;color:#999;margin-top:8px}
@media(max-width:600px){.rntv-watch-stats{grid-template-columns:1fr;margin-top:-18px}}

/* v1.7 premium distribution cards */
.rntv-provider-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}
.rntv-provider{background:linear-gradient(145deg,#1d1d1f,#0c0c0d);color:#fff;border:1px solid #333;min-height:190px;padding:28px;border-radius:16px;box-shadow:0 18px 40px rgba(0,0,0,.32);transition:transform .18s ease,border-color .18s ease}
.rntv-provider:hover{transform:translateY(-4px);border-color:#555}
.rntv-provider:before{width:4px;background:linear-gradient(#e21d25,#8c0d12)}
.rntv-provider img{background:#fff;border-radius:10px;padding:12px;box-sizing:border-box;max-width:220px;max-height:82px;margin-bottom:18px}
.rntv-provider .provider-wordmark{font-size:27px;color:#fff}.rntv-provider .provider-detail{color:#aaa;font-size:12px;letter-spacing:.02em}
.rntv-streaming{margin-top:58px;padding:34px;border:1px solid #2c2c2c;border-radius:18px;background:radial-gradient(circle at 80% 0,rgba(215,25,32,.14),transparent 35%),#111}
.rntv-streaming-intro{color:#999;margin:-8px 0 24px;max-width:720px}
.rntv-stream-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}
.rntv-stream-card{background:#fff;border-radius:15px;min-height:190px;padding:25px;display:flex;align-items:center;justify-content:center;box-shadow:0 14px 35px rgba(0,0,0,.3);transition:transform .18s ease}
.rntv-stream-card:hover{transform:translateY(-4px)}
.rntv-stream-card img{display:block;max-width:82%;max-height:110px;width:auto;height:auto;object-fit:contain}
@media(max-width:900px){.rntv-provider-grid,.rntv-stream-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:600px){.rntv-provider-grid,.rntv-stream-grid{grid-template-columns:1fr}.rntv-streaming{padding:22px}}

/* v1.8 polished distribution logo wall */
.rntv-provider-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}
.rntv-provider{min-height:190px;background:linear-gradient(145deg,#101010,#1c1c1c);border:1px solid #343434;color:#fff;border-radius:14px;padding:24px;box-shadow:0 16px 38px rgba(0,0,0,.34);transition:.2s ease}
.rntv-provider:hover{transform:translateY(-3px);border-color:#555}
.rntv-provider img{display:block;max-width:230px;max-height:76px;width:auto;height:auto;object-fit:contain;margin:0 auto 18px}
.rntv-provider .provider-name{font-size:14px;color:#ddd}.rntv-provider .provider-detail{font-size:12px;color:#999;margin-top:7px}
.rntv-streaming{margin-top:58px;padding:34px;border:1px solid #292929;border-radius:18px;background:radial-gradient(circle at 50% 0,rgba(215,25,32,.13),transparent 42%),#101010}
.rntv-streaming-intro{text-align:center;margin:0 auto 25px;max-width:720px;color:#aaa}
.rntv-stream-grid{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:14px}
.rntv-stream-card{background:#fff;border-radius:12px;min-height:142px;padding:20px;display:flex;align-items:center;justify-content:center;box-shadow:0 12px 30px rgba(0,0,0,.25)}
.rntv-stream-card img{max-width:100%;max-height:68px;object-fit:contain}
.rntv-roku-callout{margin-top:22px;border-radius:13px;background:#662D91;padding:22px 28px;display:flex;align-items:center;justify-content:space-between;gap:20px}
.rntv-roku-callout strong{font-size:22px}.rntv-roku-callout span{color:#eee}.rntv-roku-callout img{width:130px;background:#fff;border-radius:8px;padding:7px 12px}
@media(max-width:1000px){.rntv-stream-grid{grid-template-columns:repeat(3,1fr)}}@media(max-width:700px){.rntv-provider-grid,.rntv-stream-grid{grid-template-columns:1fr 1fr}}@media(max-width:480px){.rntv-provider-grid,.rntv-stream-grid{grid-template-columns:1fr}}

/* v1.9 — clean distribution presentation. No white logo boxes. */
.rntv-provider-grid{
  display:grid !important;
  grid-template-columns:repeat(3,minmax(0,1fr)) !important;
  gap:16px !important;
}
.rntv-provider{
  position:relative !important;
  min-height:150px !important;
  padding:24px 22px 20px !important;
  overflow:hidden !important;
  background:linear-gradient(145deg,#111,#191919) !important;
  border:1px solid #303030 !important;
  border-radius:10px !important;
  box-shadow:0 10px 26px rgba(0,0,0,.24) !important;
  display:flex !important;
  flex-direction:column !important;
  align-items:flex-start !important;
  justify-content:center !important;
  text-align:left !important;
}
.rntv-provider:before{
  content:"" !important; position:absolute !important; left:0 !important; top:0 !important;
  width:4px !important; height:100% !important; background:#d71920 !important;
}
.rntv-provider img{display:none !important}
.rntv-provider .provider-name{
  color:#fff !important; font-size:21px !important; line-height:1.05 !important;
  font-weight:800 !important; letter-spacing:-.025em !important; margin:0 0 10px !important;
}
.rntv-provider .provider-detail{
  color:#aaa !important; font-size:12px !important; line-height:1.45 !important; margin:0 !important;
}
.rntv-provider .provider-detail strong{color:#e2bd4a !important;font-weight:800 !important}

/* Streaming: a logo strip, not logos floating in giant white boxes. */
.rntv-streaming{
  margin-top:58px !important; padding:34px !important;
  background:#101010 !important; border:1px solid #292929 !important; border-radius:12px !important;
}
.rntv-stream-grid{
  display:grid !important; grid-template-columns:repeat(5,minmax(0,1fr)) !important;
  gap:1px !important; background:#292929 !important; border:1px solid #292929 !important;
  border-radius:8px !important; overflow:hidden !important;
}
.rntv-stream-card{
  min-height:112px !important; padding:18px 14px !important;
  background:#171717 !important; border-radius:0 !important; box-shadow:none !important;
  display:flex !important; align-items:center !important; justify-content:center !important;
}
.rntv-stream-card img{display:none !important}
.rntv-stream-wordmark{
  color:#fff !important; font-size:26px !important; font-weight:850 !important;
  line-height:1 !important; letter-spacing:-.035em !important; white-space:nowrap !important;
}
.rntv-stream-wordmark.freecast .cast{color:#2d9de0}
.rntv-stream-wordmark.tikilive .live{color:#1685cf}
.rntv-stream-wordmark.spree .tv{color:#18a986}
.rntv-stream-wordmark.roku{color:#b58ad0}
.rntv-roku-callout{
  margin-top:20px !important; background:linear-gradient(120deg,#4f1e78,#662d91) !important;
  border-radius:8px !important; padding:22px 26px !important;
}
.rntv-roku-callout img{display:none !important}
.rntv-roku-brand{font-size:34px;font-weight:900;letter-spacing:-.05em;color:#fff;margin-left:auto}
@media(max-width:900px){
 .rntv-provider-grid{grid-template-columns:repeat(2,minmax(0,1fr)) !important}
 .rntv-stream-grid{grid-template-columns:repeat(3,minmax(0,1fr)) !important}
}
@media(max-width:560px){
 .rntv-provider-grid,.rntv-stream-grid{grid-template-columns:1fr !important}
 .rntv-provider{min-height:120px !important}
}

/* v2.0 — actual logo assets, disciplined sizing, zero nested white boxes */
.rntv-provider{min-height:168px!important;align-items:center!important;text-align:center!important;padding:24px!important;overflow:hidden!important}
.rntv-provider img{display:block!important;width:100%!important;max-width:360px!important;height:92px!important;max-height:92px!important;object-fit:contain!important;margin:0 auto 12px!important}
.rntv-provider .provider-name{display:none!important}
.rntv-provider .provider-detail{font-size:12px!important;color:#aaa!important;text-align:center!important}
.rntv-stream-grid{gap:14px!important;background:transparent!important;border:0!important;overflow:visible!important}
.rntv-stream-card{background:#151515!important;border:1px solid #2d2d2d!important;border-radius:9px!important;min-height:130px!important;padding:16px!important;overflow:hidden!important}
.rntv-stream-card img{display:block!important;width:100%!important;height:86px!important;max-height:86px!important;object-fit:contain!important;margin:0!important}
.rntv-stream-wordmark{display:none!important}
.rntv-roku-callout img{display:block!important;width:145px!important;height:54px!important;object-fit:contain!important;background:#fff!important;border-radius:5px!important;padding:5px 12px!important}

/* v2.0.2 — remove inherited white logo boxes from earlier theme revisions */
.rntv-provider img{
  background:transparent !important;
  border-radius:0 !important;
  padding:0 !important;
  box-sizing:border-box !important;
  box-shadow:none !important;
}

/* Keep streaming logo canvases controlled by the streaming card only. */
.rntv-stream-card img{
  background:transparent !important;
  border-radius:0 !important;
  padding:0 !important;
  box-shadow:none !important;
}
