/* =========================================================
   Imperial Hip Hop - main.css
   Palette: near-black bg, gold accent,
   red for EXCLUSIVE/breaking badges, blue/purple secondary badges.
   ========================================================= */

:root{
  --bg:            #0d0b09;
  --bg-elevated:   #161310;
  --bg-card:       #1c1815;
  --border:        #2a2521;
  --gold:          #d9a441;
  --gold-dark:     #b3822f;
  --red:           #c8322f;
  --blue:          #2f6fc8;
  --purple:        #8a3fc8;
  --text:          #f5f1ea;
  --text-dim:      #b8ada0;
  --text-faint:    #7a7168;
  --radius:        8px;
  --wrap:          1200px;
}

*{ box-sizing:border-box; }
body{
  margin:0;
  background:var(--bg);
  color:var(--text);
  font-family:'Helvetica Neue',Arial,sans-serif;
  -webkit-font-smoothing:antialiased;
}
a{ color:inherit; text-decoration:none; }
img{ max-width:100%; display:block; }
ul{ list-style:none; margin:0; padding:0; }
.wrap{ max-width:var(--wrap); margin:0 auto; padding:0 20px; }

h1,h2,h3,h4{ font-family:'Helvetica Neue',Arial,sans-serif; margin:0; letter-spacing:.2px; }

.btn-gold{
  display:inline-flex; align-items:center; gap:6px;
  background:linear-gradient(180deg,var(--gold),var(--gold-dark));
  color:#1a1408; font-weight:700; font-size:13px;
  padding:10px 18px; border-radius:4px; border:none; cursor:pointer;
  text-transform:uppercase; letter-spacing:.5px;
}
.btn-outline{
  display:block; text-align:center; margin-top:14px;
  border:1px solid var(--gold); color:var(--gold);
  padding:10px; border-radius:4px; font-size:12px; font-weight:700; letter-spacing:.5px;
}

/* ---------- Badges ---------- */
.badge{
  display:inline-block; font-size:10px; font-weight:700; text-transform:uppercase;
  padding:3px 8px; border-radius:3px; letter-spacing:.4px; margin-right:6px;
}
.badge-gold{ background:var(--gold); color:#1a1408; }
.badge-red{ background:var(--red); color:#fff; }
.badge-blue{ background:var(--blue); color:#fff; }
.badge-purple{ background:var(--purple); color:#fff; }

/* =========================================================
   HEADER
   ========================================================= */
.site-header{ background:var(--bg); border-bottom:1px solid var(--border); position:sticky; top:0; z-index:50; }
.header-top{ display:flex; align-items:center; justify-content:space-between; padding:14px 20px; gap:20px; }
.site-logo{ display:flex; align-items:center; gap:8px; flex-shrink:0; }
.logo-crown{ font-size:26px; color:var(--gold); }
.logo-text{ display:flex; flex-direction:column; line-height:1.1; }
.logo-text strong{ color:var(--gold); font-size:16px; letter-spacing:.5px; }
.logo-text small{ color:var(--text-dim); font-size:10px; letter-spacing:2px; }

.primary-nav ul{ display:flex; gap:22px; flex-wrap:wrap; }
.primary-nav a{ font-size:13px; font-weight:600; text-transform:uppercase; color:var(--text-dim); letter-spacing:.4px; }
.primary-nav .current-menu-item a,
.primary-nav a:hover{ color:var(--gold); }

.header-actions{ display:flex; align-items:center; gap:16px; }
.social-icons-top{ display:flex; gap:14px; }
.social-icons-top a{ color:var(--text-dim); display:flex; }
.social-icons-top a:hover{ color:var(--gold); }
.search-toggle, .mobile-menu-toggle{ background:none; border:none; color:var(--text-dim); cursor:pointer; display:none; }
.mobile-menu-toggle span{ display:block; width:20px; height:2px; background:var(--text); margin:4px 0; }

.breaking-ticker{ background:var(--bg-elevated); border-top:1px solid var(--border); }
.ticker-wrap{ display:flex; align-items:center; gap:16px; padding:8px 20px; font-size:13px; }
.breaking-label{ background:var(--gold); color:#1a1408; font-weight:700; font-size:11px; padding:4px 10px; border-radius:12px; flex-shrink:0; text-transform:uppercase; }
.ticker-track{ overflow:hidden; flex:1; }
.ticker-items{ display:flex; gap:10px; white-space:nowrap; animation:ticker-scroll 30s linear infinite; }
.ticker-item{ color:var(--text-dim); }
.ticker-item:hover{ color:var(--gold); }
.ticker-dot{ color:var(--text-faint); }
@keyframes ticker-scroll{ 0%{ transform:translateX(0); } 100%{ transform:translateX(-50%); } }
.btn-view-all{ font-size:11px; font-weight:700; text-transform:uppercase; border:1px solid var(--gold); color:var(--gold); padding:5px 10px; border-radius:4px; flex-shrink:0; }

/* =========================================================
   AD BANNER
   ========================================================= */
.ad-banner{
  display:flex; align-items:center; gap:16px;
  background:var(--bg-elevated); border:1px solid var(--border);
  border-radius:var(--radius); padding:16px 24px; margin:16px 0;
}
.ad-banner .logo-crown{ font-size:34px; }
.ad-banner-text{ flex:1; display:flex; flex-direction:column; }
.ad-banner-text strong{ font-size:13px; color:var(--gold); letter-spacing:.5px; }
.ad-banner-text span{ font-size:18px; font-weight:800; letter-spacing:.5px; }
.ad-banner-text em{ display:block; font-style:normal; font-size:11px; color:var(--gold); font-weight:600; margin-top:2px; }

/* =========================================================
   HERO
   ========================================================= */
.hero-grid{ display:grid; grid-template-columns:2.2fr 1fr; gap:16px; margin-bottom:24px; }
.hero-featured{ border-radius:var(--radius); overflow:hidden; border:1px solid var(--border); background:var(--bg-card); }
.hero-media{ position:relative; display:block; min-height:480px; background:linear-gradient(135deg,#2a1a12,#120d0a); }
.hero-media img{ position:absolute; inset:0; width:100%; height:100%; object-fit:cover; opacity:.55; }
.hero-overlay{ position:relative; z-index:2; padding:28px; display:flex; flex-direction:column; gap:10px; height:100%; justify-content:flex-end; min-height:480px; }
.hero-overlay h1{ font-size:34px; line-height:1.15; font-weight:800; }
.hero-overlay p{ color:var(--text-dim); max-width:480px; margin:0; }
.hero-meta{ display:flex; gap:16px; font-size:12px; color:var(--text-faint); }
.btn-watch{ width:fit-content; margin-top:6px; }

.hero-side-list{ display:flex; flex-direction:column; gap:12px; }
.hero-side-item{ display:flex; gap:10px; align-items:flex-start; background:var(--bg-card); border:1px solid var(--border); border-radius:var(--radius); padding:10px; }
.side-num{ font-size:20px; font-weight:800; color:var(--text-faint); width:22px; flex-shrink:0; }
.hero-side-item img, .side-thumb-placeholder{ width:80px; height:64px; object-fit:cover; border-radius:4px; flex-shrink:0; background:var(--border); }
.side-content{ display:flex; flex-direction:column; gap:4px; }
.side-title{ font-size:13px; font-weight:700; line-height:1.3; }
.side-views{ font-size:11px; color:var(--text-faint); }

/* =========================================================
   CONTENT GRID / SECTIONS
   ========================================================= */
.content-grid{ display:grid; grid-template-columns:1fr 320px; gap:24px; align-items:start; }
.section{ margin-bottom:32px; background:var(--bg-elevated); border:1px solid var(--border); border-radius:var(--radius); padding:18px; }
.section-head{ display:flex; align-items:center; justify-content:space-between; margin-bottom:14px; }
.section-head h2, .section-head h3{ font-size:16px; text-transform:uppercase; letter-spacing:.5px; display:flex; align-items:center; gap:8px; }
.section-sub{ font-size:12px; color:var(--text-faint); text-transform:none; font-weight:400; }
.view-all{ font-size:11px; font-weight:700; color:var(--gold); text-transform:uppercase; }

/* Video cards / carousel */
.video-scroll-row{ display:flex; gap:14px; overflow-x:auto; scroll-behavior:smooth; padding-bottom:4px; }
.video-carousel{ display:flex; align-items:center; gap:8px; }
.carousel-arrow{ background:var(--bg-card); border:1px solid var(--border); color:var(--text); width:32px; height:32px; border-radius:50%; cursor:pointer; font-size:18px; flex-shrink:0; }
.video-card{ flex:0 0 200px; display:flex; flex-direction:column; gap:6px; }
.video-thumb{ position:relative; border-radius:6px; overflow:hidden; background:var(--border); height:120px; }
.video-thumb img{ width:100%; height:100%; object-fit:cover; }
.placeholder-thumb{ background:linear-gradient(135deg,#241d16,#171310); width:100%; height:100%; }
.play-btn{ position:absolute; inset:0; margin:auto; width:34px; height:34px; background:rgba(0,0,0,.55); border:1px solid rgba(255,255,255,.6); border-radius:50%; display:flex; align-items:center; justify-content:center; color:#fff; font-size:13px; }
.duration{ position:absolute; bottom:6px; right:6px; background:rgba(0,0,0,.75); color:#fff; font-size:10px; padding:2px 5px; border-radius:3px; }
.video-title{ font-size:13px; font-weight:600; line-height:1.3; }
.video-views{ font-size:11px; color:var(--text-faint); }

/* Editor's Picks */
.editors-picks-grid{ display:grid; grid-template-columns:1.4fr 1fr 1fr; gap:14px; }
.pick-card{ display:flex; flex-direction:column; gap:6px; }
.pick-card-large{ grid-row:span 2; }
.pick-thumb{ display:block; border-radius:6px; overflow:hidden; background:var(--border); aspect-ratio:16/10; }
.pick-card-large .pick-thumb{ aspect-ratio:16/11; }
.pick-thumb img{ width:100%; height:100%; object-fit:cover; }
.pick-title{ font-size:14px; font-weight:700; line-height:1.3; }
.pick-card-large .pick-title{ font-size:19px; }
.pick-excerpt{ font-size:12px; color:var(--text-dim); }
.pick-meta{ font-size:11px; color:var(--text-faint); }

/* =========================================================
   SIDEBAR
   ========================================================= */
.content-sidebar{ display:flex; flex-direction:column; gap:20px; }
.ihh-widget{ background:var(--bg-elevated); border:1px solid var(--border); border-radius:var(--radius); padding:18px; }
.ihh-widget-title{ font-size:15px; text-transform:uppercase; letter-spacing:.4px; }
.hotlist-header{ display:flex; align-items:center; gap:8px; margin-bottom:12px; }
.hotlist-header .updated-label{ margin-left:auto; font-size:10px; color:var(--text-faint); text-transform:uppercase; }
.hotlist{ display:flex; flex-direction:column; gap:10px; margin:0 0 14px; padding:0; }
.hotlist li{ display:flex; align-items:center; gap:10px; font-size:13px; }
.hotlist-rank{ color:var(--gold); font-weight:800; width:20px; }
.hotlist-name{ flex:1; font-weight:600; }
.hotlist-views{ color:var(--text-faint); font-size:11px; }
.trend-up{ color:#4caf50; } .trend-down{ color:var(--red); }

.newsletter-form{ display:flex; flex-direction:column; gap:8px; margin:10px 0; }
.newsletter-form input{ background:var(--bg-card); border:1px solid var(--border); color:var(--text); padding:10px 12px; border-radius:4px; font-size:13px; }
.newsletter-form button{ background:linear-gradient(180deg,var(--gold),var(--gold-dark)); border:none; color:#1a1408; font-weight:700; padding:10px; border-radius:4px; cursor:pointer; text-transform:uppercase; font-size:12px; }
.widget-sub{ font-size:12px; color:var(--text-dim); }
.widget-footnote{ font-size:11px; color:var(--text-faint); text-align:center; }

.follow-us-list{ display:flex; flex-direction:column; gap:10px; }
.follow-us-list a{ display:flex; align-items:center; gap:10px; font-size:13px; }
.follow-us-list .label{ flex:1; font-weight:600; }
.follow-us-list .count{ color:var(--text-faint); font-size:11px; }
.follow-facebook .icon{ color:#4267B2; } .follow-twitter .icon{ color:#fff; } .follow-instagram .icon{ color:#E1306C; } .follow-youtube .icon{ color:#FF0000; } .follow-tiktok .icon{ color:#fff; }

/* =========================================================
   LOWER GRID
   ========================================================= */
.lower-grid{ display:grid; grid-template-columns:1fr 1fr 1fr; gap:16px; }
.lower-col{ margin-bottom:0; }
.latest-news-list, .social-buzz-list{ display:flex; flex-direction:column; gap:12px; }
.latest-news-list li a{ display:flex; gap:10px; }
.latest-news-list img, .small-thumb{ width:56px; height:56px; object-fit:cover; border-radius:4px; flex-shrink:0; background:var(--border); }
.news-item-body{ display:flex; flex-direction:column; gap:3px; }
.time-ago{ font-size:10px; color:var(--text-faint); text-transform:none; }
.news-item-title{ font-size:12.5px; font-weight:600; line-height:1.3; }
.news-item-views{ font-size:11px; color:var(--text-faint); }

.artist-list{ display:grid; grid-template-columns:1fr 1fr; gap:12px; }
.artist-list a{ display:flex; align-items:center; gap:8px; }
.artist-list img, .avatar-thumb{ width:36px; height:36px; border-radius:50%; object-fit:cover; background:var(--border); }
.artist-list strong{ display:block; font-size:12.5px; }
.artist-list small{ font-size:10.5px; color:var(--text-faint); }

.social-buzz-list li{ display:flex; gap:10px; align-items:flex-start; }
.buzz-icon{ width:28px; height:28px; border-radius:50%; background:var(--bg-card); display:flex; align-items:center; justify-content:center; flex-shrink:0; }
.buzz-text{ font-size:12.5px; font-weight:600; display:block; }
.buzz-count{ font-size:11px; color:var(--text-faint); }

/* =========================================================
   CTA BAND + FOOTER
   ========================================================= */
.site-cta-band{ background:linear-gradient(90deg,#3a2c14,#1a1408); margin-top:20px; }
.cta-inner{ display:flex; align-items:center; justify-content:center; gap:14px; padding:20px; flex-wrap:wrap; }
.cta-inner h3{ font-size:16px; letter-spacing:.5px; }

.site-footer{ background:var(--bg); border-top:1px solid var(--border); padding-top:36px; }
.footer-grid{ display:grid; grid-template-columns:1.6fr 1fr 1fr 1fr 1.3fr; gap:24px; padding-bottom:24px; }
.footer-brand p{ color:var(--text-dim); font-size:13px; margin:10px 0 14px; }
.footer-col h4{ font-size:13px; text-transform:uppercase; margin-bottom:12px; letter-spacing:.4px; }
.footer-col ul{ display:flex; flex-direction:column; gap:8px; }
.footer-col a{ color:var(--text-dim); font-size:13px; }
.footer-col a:hover{ color:var(--gold); }
.footer-newsletter .newsletter-form{ flex-direction:row; }
.footer-newsletter input{ flex:1; }
.footer-bottom{ border-top:1px solid var(--border); padding:16px 20px; text-align:center; font-size:12px; color:var(--text-faint); }

/* =========================================================
   RESPONSIVE
   ========================================================= */
@media (max-width: 1024px){
  .hero-grid{ grid-template-columns:1fr; }
  .content-grid{ grid-template-columns:1fr; }
  .editors-picks-grid{ grid-template-columns:1fr 1fr; }
  .pick-card-large{ grid-column:span 2; grid-row:auto; }
  .lower-grid{ grid-template-columns:1fr; }
  .footer-grid{ grid-template-columns:1fr 1fr; }
}
@media (max-width: 700px){
  .primary-nav{ display:none; }
  .mobile-menu-toggle{ display:block; }
  .search-toggle{ display:flex; }
  .editors-picks-grid{ grid-template-columns:1fr; }
  .pick-card-large{ grid-column:span 1; }
  .footer-grid{ grid-template-columns:1fr; }
  .hero-overlay h1{ font-size:24px; }
  .video-card{ flex:0 0 160px; }
}

/* Mobile nav drawer (JS toggles .nav-open on body) */
body.nav-open .primary-nav{
  display:block; position:fixed; inset:0; top:70px; background:var(--bg);
  z-index:60; padding:20px;
}
body.nav-open .primary-nav ul{ flex-direction:column; gap:0; }
body.nav-open .primary-nav a{ display:block; padding:14px 0; border-bottom:1px solid var(--border); }

/* =========================================================
   Premium polish pass: stronger publisher hierarchy
   ========================================================= */
:root{
  --wrap: 1320px;
  --shadow-strong: 0 24px 70px rgba(0,0,0,.48);
}

body{
  background:
    radial-gradient(circle at 20% 0%, rgba(217,164,65,.08), transparent 30%),
    linear-gradient(180deg,#090806 0%, var(--bg) 42%, #080706 100%);
}

.header-top{ min-height:82px; padding-top:18px; padding-bottom:18px; }
.site-logo{ gap:12px; }
.logo-crown{ font-size:38px; }
.logo-text strong{ font-size:22px; line-height:.95; text-transform:uppercase; }
.logo-text small{ font-size:11px; color:var(--gold); }
.primary-nav ul{ gap:26px; }
.primary-nav a{ font-size:12px; font-weight:800; position:relative; }
.primary-nav a::after{
  content:""; position:absolute; left:0; right:0; bottom:-12px; height:3px;
  background:var(--gold); transform:scaleX(0); transform-origin:left; transition:transform .22s ease;
}
.primary-nav .current-menu-item a::after,
.primary-nav a:hover::after{ transform:scaleX(1); }

.btn-gold{
  padding:13px 22px;
  border-radius:6px;
  box-shadow:0 12px 28px rgba(217,164,65,.24);
  transition:transform .18s ease, box-shadow .18s ease, filter .18s ease;
}
.btn-gold:hover{ transform:translateY(-2px); box-shadow:0 16px 36px rgba(217,164,65,.32); filter:saturate(1.08); }

.ad-banner{
  margin:22px 0 18px;
  background:linear-gradient(100deg,rgba(217,164,65,.16),rgba(22,19,16,.86) 45%,rgba(217,164,65,.1));
  border-color:rgba(217,164,65,.28);
}

.hero-grid{ grid-template-columns:minmax(0,2fr) minmax(330px,.82fr); gap:22px; margin-bottom:28px; }
.hero-featured{ border-color:rgba(217,164,65,.25); box-shadow:var(--shadow-strong); }
.hero-media{ min-height:680px; background:#080604; }
.hero-media::after{
  content:""; position:absolute; inset:0; z-index:1;
  background:
    linear-gradient(90deg,rgba(0,0,0,.88) 0%,rgba(0,0,0,.48) 42%,rgba(0,0,0,.08) 100%),
    linear-gradient(180deg,rgba(0,0,0,0) 0%,rgba(0,0,0,.42) 46%,rgba(0,0,0,.94) 100%);
}
.hero-media img{ opacity:.82; transform:scale(1.015); }
.hero-overlay{ min-height:680px; padding:clamp(32px,5vw,64px); gap:16px; max-width:780px; }
.hero-overlay .badges{ margin-bottom:6px; }
.hero-overlay h1{
  font-size:clamp(3.25rem,5.25vw,4.95rem);
  line-height:.92;
  letter-spacing:-.5px;
  text-transform:uppercase;
  text-shadow:0 4px 24px rgba(0,0,0,.65);
}
.hero-overlay p{ max-width:620px; font-size:18px; line-height:1.55; color:#e4d8c8; }
.hero-meta{ gap:20px; flex-wrap:wrap; font-size:14px; color:#d5c8b8; font-weight:700; }
.btn-watch{ margin-top:12px; font-size:14px; padding:15px 24px; }

.hero-side-list{ gap:14px; }
.hero-side-item{
  min-height:150px;
  padding:12px;
  align-items:stretch;
  border-color:rgba(255,255,255,.09);
  background:linear-gradient(135deg,rgba(28,24,21,.98),rgba(14,12,10,.98));
  transition:transform .18s ease, border-color .18s ease, box-shadow .18s ease;
}
.hero-side-item:hover{ transform:translateY(-3px); border-color:rgba(217,164,65,.5); box-shadow:0 16px 38px rgba(0,0,0,.35); }
.side-num{
  width:42px;
  height:42px;
  display:grid;
  place-items:center;
  background:var(--gold);
  color:#171007;
  border-radius:50%;
  font-size:16px;
  align-self:flex-start;
}
.hero-side-item img, .side-thumb-placeholder{ width:132px; height:100%; min-height:124px; border-radius:7px; }
.side-content{ justify-content:center; min-width:0; }
.side-title{
  font-size:17px;
  line-height:1.18;
  display:-webkit-box;
  -webkit-line-clamp:3;
  -webkit-box-orient:vertical;
  overflow:hidden;
}
.side-views{ font-size:12px; color:var(--gold); font-weight:700; }

.section{
  padding:22px;
  margin-bottom:34px;
  border-color:rgba(255,255,255,.08);
  box-shadow:0 18px 44px rgba(0,0,0,.25);
}
.section-head{ margin-bottom:20px; border-bottom:1px solid rgba(255,255,255,.08); padding-bottom:12px; }
.section-head h2{ font-size:clamp(1.35rem,2.1vw,2.1rem); line-height:1; }
.section-head h3{ font-size:1.25rem; }
.section-head h2,
.section-head h3{ font-weight:900; letter-spacing:.4px; }
.view-all{ letter-spacing:.7px; }

.trending-section .video-scroll-row{
  display:grid;
  grid-template-columns:minmax(0,1.35fr) repeat(2,minmax(0,1fr));
  gap:16px;
  overflow:visible;
}
.trending-section .video-card{ flex:initial; min-width:0; background:var(--bg-card); border:1px solid rgba(255,255,255,.08); border-radius:8px; padding:10px; transition:transform .18s ease,border-color .18s ease; }
.trending-section .video-card:first-child{ grid-row:span 2; }
.trending-section .video-card:hover{ transform:translateY(-4px); border-color:rgba(217,164,65,.45); }
.trending-section .video-card:first-child .video-thumb{ height:330px; }
.trending-section .video-card:first-child .video-title{ font-size:24px; line-height:1.12; }
.trending-section .video-thumb{ height:170px; }
.trending-section .video-title{ font-size:15px; }

.editors-picks-grid{ grid-template-columns:1.55fr 1fr 1fr; gap:18px; }
.pick-card{
  background:rgba(12,10,9,.45);
  border:1px solid rgba(255,255,255,.07);
  border-radius:8px;
  padding:10px;
  transition:transform .18s ease,border-color .18s ease;
}
.pick-card:hover{ transform:translateY(-4px); border-color:rgba(217,164,65,.45); }
.pick-card-large{ grid-row:span 2; }
.pick-card-large .pick-title{ font-size:clamp(1.75rem,2.8vw,2.55rem); line-height:1.02; text-transform:uppercase; }
.pick-card-large .pick-thumb{ aspect-ratio:16/12; }
.pick-title{ font-size:16px; }

.ihh-depth-section--feature-grid .ihh-feature-grid{
  display:grid;
  grid-template-columns:minmax(0,1.2fr) minmax(0,1fr);
  gap:18px;
}
.ihh-feature-support{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:14px;
}
.ihh-feature-lead .pick-title{ font-size:clamp(1.65rem,2.2vw,2.2rem); text-transform:uppercase; line-height:1.04; }
.ihh-depth-row .video-card{ flex-basis:240px; }
.ihh-depth-row .video-thumb{ height:145px; }

.content-grid{ grid-template-columns:minmax(0,1fr) 340px; gap:28px; }
.content-sidebar{ position:sticky; top:110px; }
.ihh-widget{ border-color:rgba(255,255,255,.08); box-shadow:0 14px 34px rgba(0,0,0,.22); }
.topic-cloud{ display:flex; flex-wrap:wrap; gap:8px; }
.topic-cloud a{
  padding:7px 10px;
  border:1px solid rgba(217,164,65,.28);
  border-radius:999px;
  color:var(--gold);
  background:rgba(217,164,65,.06);
  font-size:12px;
  font-weight:700;
}
.ihh-widget-ad{
  min-height:250px;
  display:grid;
  place-items:center;
  text-align:center;
  background:
    repeating-linear-gradient(135deg,rgba(217,164,65,.08) 0 8px,transparent 8px 16px),
    linear-gradient(180deg,#17130f,#0d0b09);
  border-color:rgba(217,164,65,.26);
  color:var(--text-dim);
}
.ihh-widget-ad strong{ color:var(--gold); font-size:22px; }

@media (max-width: 1180px){
  .hero-media,
  .hero-overlay{ min-height:560px; }
  .trending-section .video-scroll-row{ grid-template-columns:1fr 1fr; }
  .trending-section .video-card:first-child{ grid-column:span 2; grid-row:auto; }
}

@media (max-width: 1024px){
  .content-sidebar{ position:static; }
  .hero-media,
  .hero-overlay{ min-height:520px; }
}

@media (max-width: 760px){
  .header-top{ min-height:64px; }
  .logo-crown{ font-size:28px; }
  .logo-text strong{ font-size:17px; }
  .hero-media,
  .hero-overlay{ min-height:78vh; }
  .hero-overlay{ padding:28px 22px; }
  .hero-overlay h1{ font-size:clamp(2.35rem,12vw,3.4rem); }
  .hero-overlay p{ font-size:15px; }
  .hero-meta{ font-size:12px; }
  .hero-side-list{ overflow-x:auto; flex-direction:row; scroll-snap-type:x mandatory; padding-bottom:4px; }
  .hero-side-item{ min-width:82%; scroll-snap-align:start; }
  .trending-section .video-scroll-row{ display:flex; overflow-x:auto; }
  .trending-section .video-card,
  .trending-section .video-card:first-child{ flex:0 0 82%; }
  .trending-section .video-card:first-child .video-thumb,
  .trending-section .video-thumb{ height:210px; }
  .trending-section .video-card:first-child .video-title{ font-size:18px; }
  .ihh-depth-section--feature-grid .ihh-feature-grid,
  .ihh-feature-support{ grid-template-columns:1fr; }
  .section{ padding:18px; }
}

/* Critical mobile layout repair: do not scale desktop grids down to phones. */
@media (max-width: 700px){
  .wrap{ padding-left:14px; padding-right:14px; }
  .site-header{ position:sticky; top:0; }
  .header-top{ gap:12px; padding:12px 14px; }
  .social-icons-top{ display:none; }
  .search-toggle,
  .mobile-menu-toggle{ display:flex; min-width:44px; min-height:44px; align-items:center; justify-content:center; }
  .breaking-ticker{ display:none; }
  .ad-banner{ display:none; }

  .hero-grid{
    display:block;
    margin-top:14px;
    margin-bottom:22px;
  }
  .hero-featured{ margin-bottom:16px; }
  .hero-media{
    min-height:0;
    aspect-ratio:16/9;
    overflow:hidden;
  }
  .hero-media img{
    position:absolute;
    inset:0;
    width:100%;
    height:100%;
    object-fit:cover;
    opacity:.78;
  }
  .hero-media::after{
    background:linear-gradient(180deg,rgba(0,0,0,.08) 0%,rgba(0,0,0,.55) 48%,rgba(0,0,0,.94) 100%);
  }
  .hero-overlay{
    min-height:0;
    height:100%;
    padding:20px;
    justify-content:flex-end;
  }
  .hero-overlay h1{
    font-size:clamp(2rem,10.5vw,3.1rem);
    line-height:.96;
    -webkit-line-clamp:4;
    display:-webkit-box;
    -webkit-box-orient:vertical;
    overflow:hidden;
  }
  .hero-overlay p{
    display:-webkit-box;
    -webkit-line-clamp:2;
    -webkit-box-orient:vertical;
    overflow:hidden;
    font-size:14px;
    line-height:1.4;
  }
  .hero-meta{
    gap:10px;
    font-size:11px;
  }
  .btn-watch{
    width:100%;
    justify-content:center;
    min-height:46px;
  }

  .hero-side-list{
    display:flex;
    flex-direction:column;
    gap:12px;
    overflow:visible;
    padding-bottom:0;
  }
  .hero-side-item{
    width:100%;
    min-width:0;
    min-height:0;
    display:grid;
    grid-template-columns:112px minmax(0,1fr);
    gap:12px;
    padding:10px;
    position:relative;
  }
  .hero-side-item .side-num{
    position:absolute;
    left:18px;
    top:18px;
    z-index:2;
    width:34px;
    height:34px;
    font-size:14px;
  }
  .hero-side-item img,
  .side-thumb-placeholder{
    width:112px;
    height:auto;
    min-height:0;
    aspect-ratio:16/10;
    object-fit:cover;
  }
  .side-content{
    justify-content:center;
    gap:6px;
    min-width:0;
  }
  .side-title{
    font-size:15px;
    line-height:1.2;
    -webkit-line-clamp:2;
  }
  .side-views{ font-size:11px; }

  .content-grid{
    display:block;
  }
  .content-main,
  .content-sidebar{
    width:100%;
  }
  .content-sidebar{
    margin-top:22px;
    gap:14px;
  }
  .section{
    margin-bottom:18px;
    border-radius:10px;
  }
  .section-head{
    gap:10px;
    align-items:flex-start;
  }
  .section-head h2,
  .section-head h3{
    font-size:1.2rem;
    line-height:1.05;
  }
  .section-sub{ display:none; }
  .view-all{
    min-height:38px;
    display:inline-flex;
    align-items:center;
    padding:0 8px;
  }

  .editors-picks-grid,
  .lower-grid,
  .ihh-feature-support{
    display:grid;
    grid-template-columns:1fr;
    gap:12px;
  }
  .pick-card,
  .video-card{
    width:100%;
  }
  .pick-thumb,
  .pick-card-large .pick-thumb,
  .video-thumb,
  .trending-section .video-thumb,
  .trending-section .video-card:first-child .video-thumb,
  .ihh-depth-row .video-thumb{
    height:auto;
    aspect-ratio:16/9;
  }
  .pick-card-large .pick-title{
    font-size:1.55rem;
  }

  .video-scroll-row,
  .trending-section .video-scroll-row,
  .ihh-depth-row{
    display:grid;
    grid-template-columns:1fr;
    overflow:visible;
    gap:12px;
    padding-bottom:0;
  }
  .video-scroll-row .video-card,
  .trending-section .video-card,
  .trending-section .video-card:first-child,
  .ihh-depth-row .video-card{
    flex:initial;
    width:100%;
    min-width:0;
  }
  .latest-news-list li a{
    align-items:center;
  }
  .latest-news-list img,
  .small-thumb{
    width:78px;
    height:78px;
  }
}

@media (max-width: 420px){
  .hero-media{
    aspect-ratio:4/5;
  }
  .hero-side-item{
    grid-template-columns:96px minmax(0,1fr);
  }
  .hero-side-item img,
  .side-thumb-placeholder{
    width:96px;
  }
}

/* Editorial identity pass: distinct flagship modules */
.ihh-trending-layout{
  display:grid;
  grid-template-columns:minmax(0,1.25fr) minmax(320px,.85fr);
  gap:20px;
}
.ihh-trending-lead{
  display:flex;
  flex-direction:column;
  gap:10px;
  background:linear-gradient(180deg,rgba(217,164,65,.08),rgba(12,10,9,.74));
  border:1px solid rgba(217,164,65,.22);
  border-radius:10px;
  padding:12px;
}
.ihh-trending-lead .video-thumb{ height:auto; aspect-ratio:16/9; }
.ihh-trending-lead .video-title{
  font-size:clamp(1.9rem,3vw,3rem);
  line-height:1;
  text-transform:uppercase;
  font-weight:900;
}
.trend-rank{
  position:absolute;
  left:12px;
  top:12px;
  z-index:2;
  background:var(--gold);
  color:#171007;
  border-radius:999px;
  padding:7px 11px;
  font-size:11px;
  font-weight:900;
  text-transform:uppercase;
  letter-spacing:.6px;
}
.trend-meta{
  display:flex;
  flex-wrap:wrap;
  gap:10px;
  color:var(--text-faint);
  font-size:12px;
  text-transform:uppercase;
}
.trend-meta b{ color:var(--gold); }
.ihh-trending-stack{
  display:grid;
  gap:12px;
  margin:0;
  padding:0;
}
.ihh-trending-stack li{ list-style:none; }
.ihh-trending-stack a{
  display:grid;
  grid-template-columns:44px 116px minmax(0,1fr);
  gap:12px;
  align-items:center;
  background:rgba(12,10,9,.62);
  border:1px solid rgba(255,255,255,.08);
  border-radius:8px;
  padding:10px;
  transition:transform .18s ease,border-color .18s ease;
}
.ihh-trending-stack a:hover{ transform:translateY(-3px); border-color:rgba(217,164,65,.45); }
.stack-rank{
  width:38px;
  height:38px;
  display:grid;
  place-items:center;
  border-radius:50%;
  background:var(--gold);
  color:#171007;
  font-weight:900;
}
.stack-thumb{
  display:block;
  aspect-ratio:16/10;
  overflow:hidden;
  border-radius:6px;
  background:var(--border);
}
.stack-thumb img{ width:100%; height:100%; object-fit:cover; }
.stack-body{ min-width:0; display:flex; flex-direction:column; gap:4px; }
.stack-body strong{
  font-size:15px;
  line-height:1.15;
  display:-webkit-box;
  -webkit-line-clamp:2;
  -webkit-box-orient:vertical;
  overflow:hidden;
}
.stack-body small{ color:var(--text-faint); font-size:11px; }

.ihh-editorial-layout{
  display:grid;
  grid-template-columns:minmax(0,1.25fr) minmax(260px,.75fr) minmax(260px,.8fr);
  gap:18px;
}
.ihh-editorial-lead .pick-thumb{ aspect-ratio:4/3; }
.ihh-editorial-lead .pick-title{
  font-size:clamp(2rem,3.2vw,3.15rem);
  line-height:.98;
  text-transform:uppercase;
}
.ihh-editorial-medium{
  display:grid;
  gap:14px;
}
.ihh-editorial-list{
  display:grid;
  gap:10px;
}
.ihh-editorial-list a{
  display:grid;
  grid-template-columns:96px minmax(0,1fr);
  gap:10px;
  align-items:center;
  padding:9px;
  border:1px solid rgba(255,255,255,.08);
  border-radius:8px;
  background:rgba(12,10,9,.5);
}
.ihh-editorial-list span{
  display:block;
  aspect-ratio:16/10;
  overflow:hidden;
  border-radius:6px;
  background:var(--border);
}
.ihh-editorial-list img{ width:100%; height:100%; object-fit:cover; }
.ihh-editorial-list strong{
  font-size:14px;
  line-height:1.15;
  display:-webkit-box;
  -webkit-line-clamp:3;
  -webkit-box-orient:vertical;
  overflow:hidden;
}

.ihh-editors-choice a{
  display:grid;
  grid-template-columns:88px minmax(0,1fr);
  gap:10px;
  align-items:center;
}
.ihh-editors-choice img{
  width:88px;
  height:68px;
  object-fit:cover;
  border-radius:6px;
}
.ihh-editors-choice strong{
  font-size:14px;
  line-height:1.18;
}

@media (max-width: 1024px){
  .ihh-trending-layout,
  .ihh-editorial-layout{
    grid-template-columns:1fr;
  }
  .ihh-trending-stack a{
    grid-template-columns:44px 132px minmax(0,1fr);
  }
}

@media (max-width: 700px){
  .ihh-trending-layout,
  .ihh-editorial-layout,
  .ihh-editorial-medium,
  .ihh-editorial-list{
    display:grid;
    grid-template-columns:1fr;
    gap:12px;
  }
  .ihh-trending-stack a{
    grid-template-columns:38px 96px minmax(0,1fr);
    gap:10px;
  }
  .stack-thumb,
  .ihh-editorial-list span{
    aspect-ratio:1/1;
  }
  .ihh-trending-lead .video-title,
  .ihh-editorial-lead .pick-title{
    font-size:1.65rem;
  }
  .trend-meta{
    font-size:11px;
  }
}

/* Final publisher polish: wider canvas, cinematic hero, stronger nav/footer. */
:root{
  --wrap:1560px;
}

.header-top{
  min-height:76px;
}

.primary-nav ul{
  gap:30px;
}

.primary-nav a{
  font-size:13px;
}

.header-search{
  display:flex;
  align-items:center;
  min-width:190px;
  border:1px solid rgba(217,164,65,.28);
  border-radius:999px;
  background:rgba(255,255,255,.045);
  overflow:hidden;
}

.header-search input{
  width:145px;
  min-width:0;
  border:0;
  outline:0;
  background:transparent;
  color:var(--text);
  padding:10px 0 10px 14px;
  font-size:12px;
}

.header-search input::placeholder{
  color:var(--text-faint);
}

.header-search button{
  width:42px;
  height:40px;
  border:0;
  background:transparent;
  color:var(--gold);
  display:grid;
  place-items:center;
  cursor:pointer;
}

.header-search:focus-within{
  border-color:rgba(217,164,65,.7);
  box-shadow:0 0 0 3px rgba(217,164,65,.12);
}

.hero-grid{
  grid-template-columns:minmax(0,2.08fr) minmax(360px,.82fr);
  gap:26px;
}

.hero-featured{
  border-radius:18px;
}

.hero-media,
.hero-overlay{
  min-height:720px;
}

.hero-media::after{
  background:
    linear-gradient(90deg,rgba(0,0,0,.92) 0%,rgba(0,0,0,.54) 44%,rgba(0,0,0,.12) 100%),
    linear-gradient(180deg,rgba(0,0,0,0) 0%,rgba(0,0,0,.48) 44%,rgba(0,0,0,.96) 100%);
}

.hero-overlay{
  max-width:860px;
}

.hero-overlay .badge{
  padding:8px 12px;
  font-size:12px;
  letter-spacing:.75px;
}

.hero-overlay h1{
  font-size:clamp(3.75rem,5.8vw,6.05rem);
}

.hero-overlay p{
  font-size:20px;
  color:#f0e7d8;
}

.hero-trend-ribbon{
  position:absolute;
  z-index:3;
  top:22px;
  left:22px;
  padding:9px 13px;
  border-radius:999px;
  background:var(--gold);
  color:#171007;
  font-size:12px;
  font-weight:900;
  text-transform:uppercase;
  letter-spacing:.7px;
  box-shadow:0 14px 34px rgba(0,0,0,.38);
}

.hero-play-cue{
  position:absolute;
  z-index:3;
  right:28px;
  bottom:28px;
  width:64px;
  height:64px;
  display:grid;
  place-items:center;
  border-radius:50%;
  background:rgba(217,164,65,.95);
  color:#171007;
  box-shadow:0 18px 44px rgba(0,0,0,.45);
}

.hero-media:hover .hero-play-cue{
  transform:scale(1.06);
}

@media (prefers-reduced-motion:no-preference){
  .hero-media img{
    animation:ihh-hero-drift 18s ease-in-out infinite alternate;
  }
  @keyframes ihh-hero-drift{
    from{ transform:scale(1.015) translate3d(0,0,0); }
    to{ transform:scale(1.07) translate3d(1.2%,-1.2%,0); }
  }
}

.content-grid{
  grid-template-columns:minmax(0,1fr) 365px;
  gap:34px;
}

.meter-score-row{
  display:flex;
  align-items:flex-end;
  justify-content:space-between;
  gap:12px;
}

.meter-score-row span{
  color:#0d0b09;
  background:var(--gold);
  border-radius:999px;
  padding:7px 10px;
  font-size:11px;
  font-weight:900;
  text-transform:uppercase;
}

.meter-stat-grid{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:10px;
  margin-top:14px;
}

.meter-stat-grid span{
  border:1px solid rgba(255,255,255,.09);
  border-radius:8px;
  padding:10px;
  color:var(--text-faint);
  font-size:11px;
  text-transform:uppercase;
}

.meter-stat-grid b{
  display:block;
  color:var(--text);
  font-size:18px;
  margin-bottom:3px;
}

.meter-velocity{
  margin-top:12px;
  color:var(--gold);
  font-size:12px;
  font-weight:900;
  text-transform:uppercase;
  letter-spacing:.55px;
}

.site-footer{
  padding-top:54px;
  background:
    radial-gradient(circle at 12% 0%,rgba(217,164,65,.1),transparent 28%),
    linear-gradient(180deg,#0b0a08,#050505);
}

.footer-grid{
  grid-template-columns:1.6fr repeat(3,minmax(130px,.7fr)) 1.35fr;
  gap:38px;
  padding-bottom:36px;
}

.footer-brand .site-logo{
  margin-bottom:16px;
}

.footer-brand p{
  max-width:310px;
  color:var(--text-dim);
  line-height:1.6;
}

.footer-social{
  display:flex;
}

.footer-col h4{
  color:var(--gold);
  font-size:13px;
  letter-spacing:.8px;
  text-transform:uppercase;
  margin-bottom:14px;
}

.footer-col ul{
  display:grid;
  gap:10px;
  margin:0;
  padding:0;
}

.footer-col li{
  list-style:none;
}

.footer-col a{
  color:var(--text-dim);
}

.footer-col a:hover{
  color:var(--gold);
}

.footer-bottom{
  padding:22px 20px;
  border-top:1px solid rgba(255,255,255,.08);
  color:var(--text-faint);
  text-align:center;
}

@media (max-width: 1280px){
  .header-search{
    min-width:46px;
  }
  .header-search input{
    display:none;
  }
  .hero-media,
  .hero-overlay{
    min-height:620px;
  }
}

@media (max-width: 1024px){
  .header-search{
    display:none;
  }
  .hero-grid{
    grid-template-columns:1fr;
  }
  .content-grid{
    grid-template-columns:1fr;
  }
  .footer-grid{
    grid-template-columns:1fr 1fr;
  }
}

@media (max-width: 700px){
  .header-top{
    min-height:64px;
  }
  .header-search{
    display:none;
  }
  .hero-media,
  .hero-overlay{
    min-height:0;
  }
  .hero-trend-ribbon{
    top:14px;
    left:14px;
    font-size:10px;
  }
  .hero-play-cue{
    width:48px;
    height:48px;
    right:16px;
    bottom:16px;
  }
  .hero-overlay h1{
    font-size:clamp(2rem,10.5vw,3.1rem);
  }
  .footer-grid{
    grid-template-columns:1fr;
    gap:28px;
  }
}

/* Adaptive density pass: remove dead zones and empty grid behavior. */
.hero-grid{
  align-items:stretch;
}

.hero-side-list{
  display:grid;
  grid-auto-rows:minmax(0,1fr);
  height:100%;
}

.hero-side-item{
  min-height:0;
  height:100%;
  align-items:center;
}

.hero-side-item img,
.side-thumb-placeholder{
  height:100%;
  min-height:88px;
  aspect-ratio:4/3;
}

.side-excerpt{
  color:var(--text-dim);
  font-size:12px;
  line-height:1.35;
  display:-webkit-box;
  -webkit-line-clamp:2;
  -webkit-box-orient:vertical;
  overflow:hidden;
}

.ihh-trending-layout{
  align-items:stretch;
}

.ihh-trending-stack{
  grid-auto-rows:minmax(132px,1fr);
  height:100%;
}

.ihh-trending-stack a{
  height:100%;
  grid-template-columns:48px minmax(132px,36%) minmax(0,1fr);
}

.stack-excerpt{
  color:var(--text-dim);
  font-size:12px;
  line-height:1.35;
  display:-webkit-box;
  -webkit-line-clamp:2;
  -webkit-box-orient:vertical;
  overflow:hidden;
}

.ihh-editorial-layout{
  grid-auto-flow:dense;
  align-items:stretch;
}

.ihh-editorial-count-1{
  grid-template-columns:1fr;
}

.ihh-editorial-count-2,
.ihh-editorial-count-3{
  grid-template-columns:minmax(0,1.35fr) minmax(280px,.85fr);
}

.ihh-editorial-count-2 .ihh-editorial-medium,
.ihh-editorial-count-3 .ihh-editorial-medium{
  align-content:stretch;
}

.ihh-editorial-count-2 .ihh-editorial-medium .pick-card,
.ihh-editorial-count-3 .ihh-editorial-medium .pick-card{
  min-height:100%;
}

.ihh-editorial-list:not(:has(a)){
  display:none;
}

.ihh-feature-grid{
  align-items:stretch;
}

.ihh-feature-grid-count-1{
  grid-template-columns:1fr;
}

.ihh-feature-grid-count-1 .ihh-feature-lead .pick-thumb{
  aspect-ratio:21/9;
}

.ihh-feature-support{
  align-content:stretch;
}

.ihh-feature-support .pick-card{
  min-height:100%;
}

.lower-grid{
  margin-bottom:0;
}

.content-main > .section:last-child,
.content-main > .lower-grid:last-child,
.content-main > .lower-grid:last-child .section:last-child{
  margin-bottom:0;
}

.content-sidebar{
  display:flex;
  flex-direction:column;
  gap:18px;
}

@supports not selector(:has(a)){
  .ihh-editorial-list{
    min-height:0;
  }
}

@media (max-width: 1180px){
  .hero-side-list{
    grid-auto-rows:auto;
  }
  .hero-side-item{
    min-height:132px;
  }
  .ihh-trending-stack{
    grid-auto-rows:auto;
  }
}

@media (max-width: 700px){
  .hero-side-list{
    display:flex;
    height:auto;
  }
  .hero-side-item{
    height:auto;
    min-height:150px;
  }
  .side-excerpt{
    -webkit-line-clamp:1;
  }
  .ihh-trending-stack{
    height:auto;
  }
  .ihh-trending-stack a{
    grid-template-columns:38px 112px minmax(0,1fr);
  }
  .stack-excerpt{
    display:none;
  }
  .ihh-editorial-count-1,
  .ihh-editorial-count-2,
  .ihh-editorial-count-3,
  .ihh-feature-grid-count-1{
    grid-template-columns:1fr;
  }
  .ihh-feature-grid-count-1 .ihh-feature-lead .pick-thumb{
    aspect-ratio:16/9;
  }
}

/* Compact premium alignment: tighter canvas, shorter hero, denser rows. */
:root{
  --wrap:1280px;
  --section-gap:16px;
}

body{
  background:#050505;
}

.site-header{
  background:rgba(5,5,5,.96);
}

.header-top{
  min-height:66px;
  padding-top:10px;
  padding-bottom:10px;
}

.logo-crown{
  font-size:28px;
}

.logo-text strong{
  font-size:18px;
}

.primary-nav ul{
  gap:24px;
}

.primary-nav a{
  font-size:12px;
}

.ticker-wrap{
  min-height:28px;
  padding-top:5px;
  padding-bottom:5px;
}

.breaking-label{
  border-radius:3px;
  padding:4px 9px;
}

.site-main > .wrap:first-child .ad-banner{
  display:none;
}

.hero-grid{
  grid-template-columns:minmax(0,1fr) minmax(330px,.42fr);
  gap:12px;
  margin-top:18px;
  margin-bottom:var(--section-gap);
}

.hero-featured,
.hero-side-item,
.section,
.ihh-widget{
  border-color:rgba(217,164,65,.18);
  border-radius:4px;
}

.hero-media,
.hero-overlay{
  min-height:580px;
}

.hero-featured{
  box-shadow:none;
}

.hero-media::after{
  background:
    linear-gradient(90deg,rgba(0,0,0,.92) 0%,rgba(0,0,0,.54) 48%,rgba(0,0,0,.1) 100%),
    linear-gradient(180deg,rgba(0,0,0,.05) 0%,rgba(0,0,0,.34) 42%,rgba(0,0,0,.94) 100%);
}

.hero-overlay{
  max-width:690px;
  padding:clamp(28px,4vw,44px);
  gap:12px;
}

.hero-overlay h1{
  font-size:clamp(3rem,4.9vw,4.7rem);
  line-height:.94;
}

.hero-overlay p{
  max-width:520px;
  font-size:16px;
  line-height:1.45;
}

.hero-meta{
  gap:14px;
  font-size:12px;
}

.btn-watch{
  padding:12px 18px;
  font-size:12px;
}

.hero-trend-ribbon{
  top:18px;
  left:18px;
  border-radius:3px;
  padding:8px 11px;
}

.hero-play-cue{
  right:50%;
  bottom:50%;
  transform:translate(50%,50%);
  width:70px;
  height:70px;
  background:rgba(0,0,0,.52);
  color:#fff;
  border:2px solid rgba(255,255,255,.8);
}

.hero-media:hover .hero-play-cue{
  transform:translate(50%,50%) scale(1.06);
}

.hero-side-list{
  gap:8px;
  grid-auto-rows:1fr;
}

.hero-side-item{
  grid-template-columns:34px 82px minmax(0,1fr);
  display:grid;
  gap:9px;
  padding:9px;
  background:#100f0e;
}

.side-num{
  width:28px;
  height:28px;
  font-size:13px;
  border-radius:50%;
}

.hero-side-item img,
.side-thumb-placeholder{
  width:82px;
  min-height:0;
  height:74px;
  aspect-ratio:1/1;
}

.side-title{
  font-size:13px;
  line-height:1.2;
  -webkit-line-clamp:3;
}

.side-excerpt{
  display:none;
}

.side-views{
  color:var(--text-faint);
  font-size:10px;
}

.content-grid{
  grid-template-columns:minmax(0,calc(70% - 12px)) minmax(280px,30%);
  gap:18px;
}

.section{
  padding:16px;
  margin-bottom:var(--section-gap);
  box-shadow:none;
  background:#0d0c0b;
}

.section-head{
  margin-bottom:12px;
  padding-bottom:9px;
}

.section-head h2,
.section-head h3{
  font-size:clamp(1.2rem,1.8vw,1.65rem);
}

.section-sub{
  display:none;
}

.ihh-trending-layout{
  grid-template-columns:minmax(0,1.18fr) minmax(280px,.82fr);
  gap:14px;
}

.ihh-trending-lead{
  padding:10px;
  gap:8px;
}

.ihh-trending-lead .video-title{
  font-size:clamp(1.8rem,2.9vw,2.55rem);
}

.ihh-trending-lead .video-thumb{
  aspect-ratio:16/9;
}

.ihh-trending-stack{
  gap:8px;
  grid-auto-rows:minmax(96px,1fr);
}

.ihh-trending-stack a{
  grid-template-columns:34px 92px minmax(0,1fr);
  gap:9px;
  padding:8px;
}

.stack-rank{
  width:28px;
  height:28px;
  font-size:12px;
}

.stack-body strong{
  font-size:13px;
}

.stack-excerpt{
  -webkit-line-clamp:1;
  font-size:11px;
}

.video-scroll-row,
.ihh-depth-row{
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  gap:12px;
  overflow:visible;
  padding-bottom:0;
}

.video-card{
  flex:initial;
  min-width:0;
  width:auto;
}

.video-thumb{
  height:auto;
  aspect-ratio:16/9;
}

.video-title{
  font-size:12.5px;
  line-height:1.25;
  display:-webkit-box;
  -webkit-line-clamp:2;
  -webkit-box-orient:vertical;
  overflow:hidden;
}

.video-views{
  font-size:10.5px;
}

.play-btn{
  width:24px;
  height:24px;
  font-size:0;
}

.play-btn::before{
  content:"";
  width:0;
  height:0;
  border-top:6px solid transparent;
  border-bottom:6px solid transparent;
  border-left:9px solid #fff;
  margin-left:2px;
}

.carousel-arrow{
  display:none;
}

.video-carousel{
  display:block;
}

.ihh-editorial-layout{
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:12px;
}

.ihh-editorial-lead,
.ihh-editorial-medium,
.ihh-editorial-list{
  display:grid;
  gap:12px;
}

.ihh-editorial-lead .pick-title{
  font-size:clamp(1.4rem,2.2vw,2rem);
}

.ihh-editorial-list a{
  grid-template-columns:86px minmax(0,1fr);
  padding:8px;
}

.ihh-widget{
  padding:15px;
  background:#0d0c0b;
  box-shadow:none;
}

.content-sidebar{
  gap:14px;
  top:86px;
}

.ihh-widget-ad{
  min-height:250px;
}

.site-cta-band{
  margin-top:10px;
}

.cta-inner{
  padding:16px 20px;
}

.site-footer{
  padding-top:34px;
}

.footer-grid{
  grid-template-columns:1.35fr .78fr .78fr .78fr 1.05fr 1.15fr;
  gap:24px;
  padding-bottom:28px;
}

.footer-latest ul{
  gap:10px;
}

.footer-latest a{
  display:grid;
  grid-template-columns:54px minmax(0,1fr);
  gap:9px;
  align-items:center;
}

.footer-latest img{
  width:54px;
  height:44px;
  object-fit:cover;
  border-radius:3px;
}

.footer-latest strong{
  display:-webkit-box;
  -webkit-line-clamp:2;
  -webkit-box-orient:vertical;
  overflow:hidden;
  color:var(--text);
  font-size:12px;
  line-height:1.2;
}

.footer-latest small{
  color:var(--text-faint);
  font-size:10px;
}

@media (max-width: 1180px){
  :root{ --wrap:1120px; }
  .hero-grid,
  .content-grid{
    grid-template-columns:1fr;
  }
  .hero-side-list{
    grid-template-columns:repeat(2,minmax(0,1fr));
    height:auto;
  }
  .hero-side-item{
    min-height:112px;
  }
  .content-sidebar{
    position:static;
    display:grid;
    grid-template-columns:repeat(2,minmax(0,1fr));
  }
  .footer-grid{
    grid-template-columns:repeat(3,minmax(0,1fr));
  }
}

@media (max-width: 760px){
  .hero-grid{
    margin-top:10px;
  }
  .hero-media{
    aspect-ratio:4/5;
  }
  .hero-overlay{
    padding:20px;
  }
  .hero-overlay p{
    font-size:14px;
  }
  .hero-side-list{
    display:flex;
    overflow-x:auto;
    scroll-snap-type:x mandatory;
  }
  .hero-side-item{
    min-width:84%;
    scroll-snap-align:start;
    grid-template-columns:32px 90px minmax(0,1fr);
  }
  .video-scroll-row,
  .ihh-depth-row{
    display:flex;
    overflow-x:auto;
    scroll-snap-type:x mandatory;
  }
  .video-card{
    flex:0 0 72%;
    scroll-snap-align:start;
  }
  .ihh-trending-layout,
  .ihh-editorial-layout{
    grid-template-columns:1fr;
  }
  .content-sidebar{
    grid-template-columns:1fr;
  }
  .footer-grid{
    grid-template-columns:1fr;
  }
}

/* Audit cleanup: reduce duplication, improve accessibility, and unify components. */
:root{
  --gold:#f5c242;
  --gold-dark:#c99122;
}

a:focus-visible,
button:focus-visible,
input:focus-visible,
.meter-info:focus-visible{
  outline:2px solid var(--gold);
  outline-offset:3px;
}

.badge{
  font-size:9px;
  padding:3px 7px;
}

.hero-trend-ribbon{
  background:rgba(0,0,0,.62);
  color:var(--gold);
  border:1px solid rgba(245,194,66,.72);
  box-shadow:none;
  margin-bottom:14px;
}

.video-title,
.pick-title,
.side-title,
.stack-body strong{
  font-size:clamp(12.5px,1.05vw,14px);
  line-height:1.25;
}

.ihh-trending-lead .video-title,
.ihh-editorial-lead .pick-title,
.pick-card-large .pick-title{
  font-size:clamp(1.45rem,2.15vw,2.2rem);
  line-height:1.04;
}

.video-thumb,
.pick-thumb,
.stack-thumb{
  aspect-ratio:16/9;
  height:auto;
  border-radius:4px;
}

.duration,
.play-btn{
  background:rgba(0,0,0,.68);
  backdrop-filter:blur(2px);
}

.newsletter-form input{
  background:#111;
  border:1px solid rgba(255,255,255,.18);
  color:var(--text);
}

.newsletter-form input::placeholder{
  color:#92887d;
}

.footer-newsletter .newsletter-form button{
  background:transparent;
  color:var(--gold);
  border:1px solid rgba(245,194,66,.68);
}

.meter-info{
  position:relative;
  display:inline-grid;
  place-items:center;
  width:17px;
  height:17px;
  margin-left:6px;
  border:1px solid rgba(245,194,66,.7);
  border-radius:50%;
  color:var(--gold);
  font-size:11px;
  cursor:help;
}

.meter-info::after{
  content:attr(aria-label);
  position:absolute;
  left:0;
  bottom:calc(100% + 8px);
  width:220px;
  padding:9px 10px;
  border:1px solid rgba(245,194,66,.38);
  border-radius:4px;
  background:#080808;
  color:var(--text-dim);
  font-size:11px;
  line-height:1.35;
  text-transform:none;
  letter-spacing:0;
  opacity:0;
  pointer-events:none;
  transform:translateY(4px);
  transition:opacity .16s ease,transform .16s ease;
  z-index:20;
}

.meter-info:hover::after,
.meter-info:focus-visible::after{
  opacity:1;
  transform:translateY(0);
}

.topic-cloud{
  gap:8px;
}

.topic-cloud a:focus-visible{
  outline-offset:2px;
}

.ihh-widget-ad{
  width:100%;
  aspect-ratio:300/250;
  min-height:0;
  max-height:250px;
}

.footer-grid{
  grid-template-columns:1.45fr .85fr .85fr .85fr 1.25fr;
}

.site-footer{
  margin-top:0;
}

@media (max-width: 1180px){
  .footer-grid{
    grid-template-columns:repeat(2,minmax(0,1fr));
  }
}

@media (max-width: 760px){
  .footer-grid{
    grid-template-columns:1fr;
  }
}

/* Homepage UI polish pass: image-first cards and tighter editorial density. */
:root{
  --section-gap:12px;
}

.hero-side-item,
.ihh-trending-stack a{
  overflow:hidden;
}

.hero-side-item{
  grid-template-columns:128px minmax(0,1fr);
  padding:6px;
  gap:9px;
}

.side-thumb,
.stack-thumb{
  position:relative;
  display:block;
  overflow:hidden;
  border-radius:4px;
  background:var(--border);
  aspect-ratio:16/10;
}

.side-thumb img,
.stack-thumb img{
  width:100%;
  height:100%;
  object-fit:cover;
}

.side-thumb::after,
.stack-thumb::after,
.video-thumb::after,
.pick-thumb::after{
  content:"";
  position:absolute;
  inset:0;
  background:linear-gradient(180deg,rgba(0,0,0,.08) 35%,rgba(0,0,0,.72) 100%);
  pointer-events:none;
}

.side-num,
.stack-rank{
  position:absolute;
  top:6px;
  left:6px;
  z-index:2;
  width:24px;
  height:24px;
  border-radius:999px;
  background:var(--gold);
  color:#171007;
  font-size:11px;
  box-shadow:0 8px 18px rgba(0,0,0,.35);
}

.thumb-badges{
  position:absolute;
  left:6px;
  bottom:6px;
  z-index:2;
  display:flex;
  flex-wrap:wrap;
  gap:4px;
  max-width:calc(100% - 12px);
}

.thumb-badges .badge{
  margin:0;
  font-size:8px;
  padding:2px 5px;
}

.thumb-play{
  position:absolute;
  inset:0;
  z-index:2;
  margin:auto;
  width:28px;
  height:28px;
  border-radius:50%;
  border:1px solid rgba(255,255,255,.78);
  background:rgba(0,0,0,.42);
}

.thumb-play::before{
  content:"";
  position:absolute;
  top:50%;
  left:50%;
  transform:translate(-38%,-50%);
  width:0;
  height:0;
  border-top:6px solid transparent;
  border-bottom:6px solid transparent;
  border-left:9px solid #fff;
}

.side-content,
.stack-body{
  justify-content:center;
  gap:4px;
}

.side-title,
.stack-body strong{
  -webkit-line-clamp:2;
}

.side-excerpt{
  display:none;
}

.side-views,
.stack-body small{
  font-size:10px;
  line-height:1.25;
}

.ihh-trending-layout{
  grid-template-columns:minmax(0,1.08fr) minmax(300px,.92fr);
}

.ihh-trending-stack{
  gap:6px;
  grid-auto-rows:minmax(98px,1fr);
}

.ihh-trending-stack a{
  grid-template-columns:138px minmax(0,1fr);
  padding:6px;
  gap:9px;
}

.stack-excerpt{
  display:none;
}

.section{
  padding:13px;
  margin-bottom:12px;
}

.section-head{
  margin-bottom:9px;
  padding-bottom:7px;
}

.video-scroll-row,
.ihh-depth-row{
  gap:9px;
}

.video-card{
  gap:4px;
}

.video-title{
  font-size:12px;
  line-height:1.2;
}

.pick-card{
  gap:5px;
}

.ihh-editorial-layout{
  grid-template-columns:minmax(0,1.05fr) minmax(0,1fr) minmax(260px,.95fr);
  gap:8px;
  align-items:stretch;
}

.ihh-editorial-lead{
  grid-template-rows:auto min-content min-content min-content;
}

.ihh-editorial-lead .pick-thumb{
  aspect-ratio:16/12.5;
}

.ihh-editorial-lead .pick-title{
  font-size:clamp(1.15rem,1.65vw,1.65rem);
  line-height:1.02;
  -webkit-line-clamp:4;
  display:-webkit-box;
  -webkit-box-orient:vertical;
  overflow:hidden;
}

.ihh-editorial-lead .pick-excerpt{
  -webkit-line-clamp:2;
  display:-webkit-box;
  -webkit-box-orient:vertical;
  overflow:hidden;
}

.ihh-editorial-medium{
  gap:8px;
}

.ihh-editorial-medium .pick-thumb{
  aspect-ratio:16/9.5;
}

.ihh-editorial-list{
  gap:8px;
}

.ihh-editorial-list a{
  grid-template-columns:112px minmax(0,1fr);
  gap:8px;
  padding:6px;
  min-height:82px;
}

.ihh-editorial-list span{
  aspect-ratio:16/10;
}

.ihh-editorial-list strong{
  -webkit-line-clamp:3;
  font-size:12px;
}

.content-sidebar{
  gap:10px;
}

.ihh-widget{
  padding:12px;
}

.site-cta-band{
  margin-top:0;
}

.cta-inner{
  padding:12px 20px;
}

@media (max-width: 1180px){
  .hero-side-item,
  .ihh-trending-stack a{
    grid-template-columns:150px minmax(0,1fr);
  }
}

@media (max-width: 760px){
  .hero-side-item{
    grid-template-columns:128px minmax(0,1fr);
  }
  .ihh-trending-stack a{
    grid-template-columns:132px minmax(0,1fr);
  }
  .ihh-editorial-layout{
    grid-template-columns:1fr;
  }
  .ihh-editorial-list a{
    grid-template-columns:118px minmax(0,1fr);
  }
}

/* Unified Hero + Top Stories module. */
.hero-grid{
  grid-template-columns:minmax(0,1.62fr) minmax(360px,.82fr);
  gap:0;
  padding:0 20px 14px;
  background:
    radial-gradient(circle at 28% 0%,rgba(245,194,66,.08),transparent 32%),
    linear-gradient(180deg,#0c0b0a,#060606);
  border:1px solid rgba(245,194,66,.28);
  border-radius:8px;
  overflow:hidden;
}

.hero-featured,
.hero-side-list{
  border:0;
  border-radius:0;
  background:transparent;
}

.hero-featured{
  border-right:1px solid rgba(245,194,66,.22);
}

.hero-media,
.hero-overlay{
  min-height:560px;
}

.hero-overlay{
  max-width:650px;
  padding-top:96px;
}

.hero-overlay .badges{
  margin-top:34px;
  margin-bottom:12px;
}

.hero-overlay h1{
  font-size:clamp(2.2rem,3.5vw,3.45rem);
}

.hero-overlay p{
  max-width:500px;
}

.hero-rail-head{
  display:grid;
  gap:4px;
  padding:18px 16px 12px;
  border-bottom:1px solid rgba(245,194,66,.24);
}

.hero-rail-head h2{
  display:flex;
  align-items:center;
  gap:8px;
  margin:0;
  font-size:clamp(1.35rem,1.8vw,1.75rem);
  line-height:1;
  text-transform:uppercase;
}

.hero-rail-head h2::before{
  content:"";
  width:24px;
  height:24px;
  background:var(--gold);
  clip-path:polygon(18% 8%,82% 8%,76% 48%,60% 48%,60% 66%,75% 66%,75% 84%,25% 84%,25% 66%,40% 66%,40% 48%,24% 48%);
}

.hero-rail-head p{
  margin:0;
  color:var(--text-dim);
  font-size:11px;
  line-height:1.35;
}

.hero-side-list{
  grid-auto-rows:auto;
  align-content:start;
  padding:0 12px 12px;
  gap:0;
  height:auto;
}

.hero-side-item{
  grid-template-columns:132px minmax(0,1fr);
  min-height:92px;
  height:auto;
  padding:10px 4px;
  border:0;
  border-bottom:1px solid rgba(245,194,66,.18);
  border-radius:0;
  background:transparent;
}

.hero-side-item:last-child{
  border-bottom:0;
}

.side-thumb{
  aspect-ratio:16/9.5;
}

.side-title{
  font-size:13.5px;
}

.side-views{
  color:#b9ad9d;
  text-transform:uppercase;
}

.side-badges{
  display:flex;
  flex-wrap:wrap;
  gap:4px;
}

.side-badges .badge{
  margin:0;
  width:max-content;
}

.side-trend-indicator{
  display:inline-flex;
  align-items:center;
  gap:3px;
  color:#42d66b;
  font-weight:900;
}

.side-trend-indicator::before{
  content:"";
  width:7px;
  height:7px;
  border-top:2px solid currentColor;
  border-right:2px solid currentColor;
  transform:rotate(-45deg);
}

.hero-proof-strip{
  grid-column:1/-1;
  display:grid;
  grid-template-columns:repeat(5,minmax(0,1fr));
  gap:0;
  margin:14px 0 0;
  border:1px solid rgba(245,194,66,.82);
  border-radius:6px;
  background:linear-gradient(180deg,rgba(245,194,66,.28),rgba(245,194,66,.12));
  box-shadow:0 0 0 1px rgba(255,255,255,.08) inset,0 16px 34px rgba(0,0,0,.35);
}

.hero-proof-strip span{
  min-height:54px;
  display:flex;
  align-items:center;
  justify-content:center;
  gap:6px;
  padding:10px 12px;
  border-right:1px solid rgba(255,255,255,.12);
  color:#fff9dc;
  font-size:13px;
  font-weight:900;
  text-align:center;
  text-transform:uppercase;
  letter-spacing:.35px;
  text-shadow:0 1px 10px rgba(0,0,0,.85);
}

.hero-proof-strip span:last-child{
  border-right:0;
}

.hero-proof-strip strong{
  color:var(--text);
  font-size:16px;
}

.btn-watch{
  position:relative;
  box-shadow:0 12px 34px rgba(245,194,66,.22);
}

.btn-watch::before{
  content:"";
  width:0;
  height:0;
  border-top:6px solid transparent;
  border-bottom:6px solid transparent;
  border-left:9px solid currentColor;
}

@media (max-width: 1180px){
  .hero-grid{
    grid-template-columns:1fr;
    gap:0;
  }
  .hero-featured{
    border-right:0;
    border-bottom:1px solid rgba(245,194,66,.22);
  }
  .hero-side-list{
    display:grid;
    grid-template-columns:repeat(2,minmax(0,1fr));
  }
  .hero-rail-head{
    grid-column:1/-1;
  }
  .hero-proof-strip{
    grid-template-columns:repeat(5,minmax(160px,1fr));
    overflow-x:auto;
  }
}

@media (max-width: 760px){
  .hero-grid{
    padding:0 14px 12px;
  }
  .hero-media{
    aspect-ratio:4/5;
  }
  .hero-side-list{
    display:flex;
    padding:0 10px 10px;
  }
  .hero-rail-head{
    min-width:100%;
  }
  .hero-side-item{
    min-width:84%;
    border-bottom:0;
    border-right:1px solid rgba(245,194,66,.18);
  }
  .hero-proof-strip{
    grid-template-columns:1fr;
  }
  .hero-proof-strip span{
    border-right:0;
    border-bottom:1px solid rgba(255,255,255,.12);
  }
  .hero-proof-strip span:last-child{
    border-bottom:0;
  }
}

/* Targeted hero readability fixes: keep these at the end so older layered rules do not override them. */
.hero-overlay{
  padding-top:118px;
}

.hero-overlay .badges{
  margin-top:58px;
  margin-bottom:14px;
}

.hero-overlay h1{
  font-size:clamp(1.95rem,3.05vw,3.85rem);
  line-height:.98;
}

.hero-proof-strip{
  border:2px solid #f5c242;
  background:linear-gradient(180deg,rgba(245,194,66,.98),rgba(199,142,26,.92));
  box-shadow:0 0 0 1px rgba(0,0,0,.9) inset, 0 16px 36px rgba(0,0,0,.48);
}

.hero-proof-strip span{
  color:#090806;
  border-right:1px solid rgba(0,0,0,.36);
  font-size:13.5px;
  font-weight:950;
  letter-spacing:.35px;
  text-shadow:none;
}

.side-views{
  color:#d8cfbf;
}

.side-trend-indicator{
  color:#39db6a;
}

@media (max-width: 760px){
  .hero-overlay{
    padding-top:78px;
  }

  .hero-overlay .badges{
    margin-top:46px;
  }

  .hero-overlay h1{
    font-size:clamp(1.8rem,8.8vw,2.65rem);
  }
}

/* Final homepage polish pass: visual refinement only, preserving the current layout. */
.hero-media::after{
  background:
    linear-gradient(90deg,rgba(0,0,0,.72) 0%,rgba(0,0,0,.42) 38%,rgba(0,0,0,.12) 70%,rgba(0,0,0,.03) 100%),
    linear-gradient(180deg,rgba(0,0,0,.02) 0%,rgba(0,0,0,.24) 46%,rgba(0,0,0,.84) 100%);
}

.hero-overlay{
  gap:18px;
}

.hero-overlay .badges{
  margin-top:66px;
  margin-bottom:4px;
}

.hero-overlay h1{
  font-size:clamp(1.8rem,2.78vw,3.5rem);
  line-height:.95;
}

.hero-overlay p{
  margin-top:2px;
}

.hero-meta{
  gap:18px;
  color:#efe4d3;
  font-weight:850;
}

.hero-meta span{
  display:inline-flex;
  align-items:center;
  gap:6px;
}

.hero-play-cue{
  width:56px;
  height:56px;
}

.hero-media:hover .hero-play-cue{
  transform:translate(50%,50%) scale(1.04);
}

.btn-watch{
  min-height:48px;
  padding:15px 26px;
  box-shadow:0 12px 28px rgba(245,194,66,.28),0 0 0 1px rgba(255,255,255,.12) inset;
  transition:transform .18s ease, box-shadow .18s ease, filter .18s ease;
}

.hero-media:hover .btn-watch,
.btn-watch:hover{
  transform:translateY(-2px);
  box-shadow:0 16px 38px rgba(245,194,66,.38),0 0 0 1px rgba(255,255,255,.18) inset;
  filter:saturate(1.06);
}

.hero-rail-head{
  padding-bottom:24px;
  margin-bottom:12px;
}

.side-num{
  width:31px;
  height:31px;
  background:#f5c242;
  color:#090806;
  font-size:14.5px;
  font-weight:950;
  box-shadow:0 4px 14px rgba(245,194,66,.28);
}

.side-badges{
  margin-bottom:2px;
}

.side-badges .badge{
  font-size:7.8px;
  line-height:1;
  padding:2px 5px;
  letter-spacing:.3px;
}

.side-title{
  margin-top:1px;
}

.side-views{
  margin-top:2px;
}

.hero-proof-strip{
  background:linear-gradient(180deg,rgba(245,194,66,.96),rgba(212,160,44,.94));
}

.hero-proof-strip span{
  min-height:58px;
  padding:12px 14px;
  font-size:14px;
  line-height:1.2;
  font-weight:950;
}

@media (max-width: 760px){
  .hero-media::after{
    background:linear-gradient(180deg,rgba(0,0,0,.08) 0%,rgba(0,0,0,.36) 48%,rgba(0,0,0,.86) 100%);
  }

  .hero-overlay{
    gap:13px;
  }

  .hero-overlay .badges{
    margin-top:52px;
  }

  .hero-overlay h1{
    font-size:clamp(1.7rem,8vw,2.42rem);
  }

  .hero-play-cue{
    width:44px;
    height:44px;
  }

  .btn-watch{
    min-height:46px;
    padding:13px 20px;
  }
}

/* Final visibility fixes for hero imagery, proof strip, and side-story metadata. */
.hero-featured .hero-media img,
.hero-side-list .hero-side-item img{
  opacity:1;
  filter:none;
}

.hero-side-list .hero-side-item,
.hero-side-list .hero-side-item:nth-child(n){
  opacity:1;
  filter:none;
}

.hero-proof-strip{
  border:2px solid #f5c242;
  background:
    linear-gradient(180deg,rgba(26,22,14,.98),rgba(8,8,8,.98)),
    linear-gradient(90deg,rgba(245,194,66,.28),rgba(245,194,66,.06));
  box-shadow:0 0 0 1px rgba(245,194,66,.22) inset,0 0 28px rgba(245,194,66,.18),0 16px 36px rgba(0,0,0,.5);
}

.hero-proof-strip span{
  color:#fff7df;
  border-right:1px solid rgba(245,194,66,.34);
  font-size:14.5px;
  font-weight:950;
  letter-spacing:.28px;
  text-shadow:0 1px 12px rgba(0,0,0,.9);
}

.proof-icon{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  margin-right:7px;
  color:#f5c242;
  font-size:17px;
  line-height:1;
  filter:drop-shadow(0 0 8px rgba(245,194,66,.45));
}

.side-view-icon,
.meta-icon{
  display:inline-flex;
  align-items:center;
  color:#f5c242;
  line-height:1;
}

/* Keep the proof strip above hero overlays/fades and readable at all times. */
.hero-grid{
  position:relative;
}

.hero-featured{
  position:relative;
}

.hero-featured::before,
.hero-featured::after,
.hero-media::before,
.hero-media::after{
  z-index:1;
  pointer-events:none;
}

.hero-featured > *,
.hero-media > *{
  position:relative;
  z-index:2;
}

.hero-proof-strip{
  position:relative;
  z-index:5;
  isolation:isolate;
  background:#141414;
  border:1px solid rgba(212,175,55,.5);
  border-top:2px solid #d4af37;
  color:#f5f5f5;
  box-shadow:0 0 0 1px rgba(255,255,255,.06) inset,0 14px 32px rgba(0,0,0,.46);
}

.hero-proof-strip span,
.hero-proof-strip strong,
.hero-proof-strip a{
  color:#f5f5f5;
  opacity:1;
}

.hero-proof-strip .proof-icon{
  color:#d4af37;
  opacity:1;
}

/* Top Stories rail must stay solid; no fades or masks at the bottom of the list. */
.hero-side-list{
  position:relative;
  z-index:3;
  background:#0b0b0b;
  background-image:none;
  -webkit-mask-image:none;
  mask-image:none;
  overflow:visible;
}

.hero-side-list::before,
.hero-side-list::after{
  content:none;
  display:none;
}

.hero-side-list .hero-rail-head,
.hero-side-list .hero-side-item{
  position:relative;
  z-index:1;
  background:#101010;
  background-image:none;
  -webkit-mask-image:none;
  mask-image:none;
  opacity:1;
  filter:none;
}

.hero-side-list .hero-side-item{
  border-bottom:1px solid rgba(212,175,55,.22);
}

.hero-side-list .hero-side-item:last-child{
  border-bottom:0;
}

/* Premium Top Stories metadata stack. */
.hero-side-list > .hero-side-item{
  grid-template-columns:minmax(128px,38%) minmax(0,1fr);
  gap:12px;
  align-items:center;
  min-height:118px;
  padding:10px 8px;
  background:#101010;
  border-bottom:1px solid rgba(212,175,55,.24);
}

.hero-side-list .side-thumb{
  position:relative;
  display:block;
  width:100%;
  aspect-ratio:16/9;
  overflow:hidden;
  border-radius:7px;
  background:#171717;
}

.hero-side-list .side-thumb img,
.hero-side-list .side-thumb-placeholder{
  width:100%;
  height:100%;
  min-height:0;
  aspect-ratio:16/9;
  object-fit:cover;
}

.hero-side-list .thumb-play{
  left:50%;
  top:50%;
  right:auto;
  bottom:auto;
  transform:translate(-50%,-50%);
}

.hero-side-list .side-num{
  position:absolute;
  top:7px;
  left:7px;
  z-index:3;
  width:33px;
  height:33px;
  display:grid;
  place-items:center;
  border-radius:999px;
  background:#d4af37;
  color:#070707;
  font-size:14px;
  font-weight:950;
  box-shadow:0 6px 16px rgba(0,0,0,.36);
}

.hero-side-list .side-content{
  display:flex;
  flex-direction:column;
  justify-content:center;
  gap:5px;
  min-width:0;
}

.hero-side-list .side-badges{
  display:flex;
  gap:5px;
  margin:0 0 1px;
}

.hero-side-list .side-badges .badge{
  background:#d4af37;
  color:#070707;
  border-radius:999px;
  font-size:7.5px;
  font-weight:950;
  letter-spacing:.36px;
  line-height:1;
  padding:3px 6px;
  max-width:100%;
  overflow:hidden;
  text-overflow:ellipsis;
  white-space:nowrap;
}

.hero-side-list .side-title{
  color:#fff;
  font-size:13.5px;
  line-height:1.18;
  font-weight:900;
  display:-webkit-box;
  -webkit-line-clamp:2;
  -webkit-box-orient:vertical;
  overflow:hidden;
}

.hero-side-list .side-excerpt{
  display:none;
}

.side-meta-stack{
  display:flex;
  flex-wrap:wrap;
  align-items:center;
  gap:4px 8px;
  color:#a9a9a9;
  font-size:10.5px;
  line-height:1.2;
  font-weight:750;
  text-transform:none;
}

.side-meta-stack > span{
  display:inline-flex;
  align-items:center;
  gap:4px;
}

.side-meta-stack .side-views,
.side-meta-stack .side-date{
  color:#aaa;
}

.side-meta-stack .side-view-icon{
  color:#d4af37;
}

.side-trend-indicator{
  gap:3px;
  font-weight:950;
}

.side-trend-indicator::before{
  content:none;
}

.side-trend-indicator--up{
  color:#3fdb76;
}

.side-trend-indicator--down{
  color:#d4af37;
}

.side-trend-indicator--stable{
  color:#c8c8c8;
}

@media (max-width: 760px){
  .hero-side-list > .hero-side-item{
    grid-template-columns:130px minmax(0,1fr);
    min-width:84%;
  }
}

/* Quiet editorial treatment: proof strip supports the hero instead of competing with it. */
.hero-proof-strip{
  background:rgba(18,18,18,.95);
  border:1px solid rgba(255,255,255,.08);
  border-top:2px solid #d4af37;
  color:#d9d9d9;
  box-shadow:0 10px 26px rgba(0,0,0,.28);
}

.hero-proof-strip span,
.hero-proof-strip strong,
.hero-proof-strip a{
  color:#d9d9d9;
  border-right:1px solid rgba(255,255,255,.08);
  text-shadow:none;
}

.hero-proof-strip span:last-child{
  border-right:0;
}

.hero-proof-strip .proof-icon{
  color:#d4af37;
  filter:none;
}

/* Trending Right Now + discovery sidebar refresh. */
.trending-section.ihh-trending-feature{
  background:#0d0d0d;
  border-color:rgba(255,255,255,.1);
}

.trending-section .section-head{
  align-items:flex-start;
}

.trending-section .section-head h2{
  font-size:clamp(1.9rem,3.4vw,3.25rem);
  line-height:.95;
  letter-spacing:.02em;
}

.trending-section .section-subtitle{
  margin:8px 0 0;
  color:#b8b8b8;
  font-size:15px;
  line-height:1.35;
}

.trending-section .view-all{
  display:inline-flex;
  align-items:center;
  gap:7px;
  color:#d4af37;
  font-weight:950;
}

.trending-section .view-all::after{
  content:"›";
  font-size:24px;
  line-height:1;
}

.ihh-trending-layout{
  display:grid;
  grid-template-columns:minmax(0,1.05fr) minmax(360px,.95fr);
  gap:14px;
}

.ihh-trending-lead{
  display:flex;
  flex-direction:column;
  min-width:0;
  overflow:hidden;
  background:#121212;
  border:1px solid rgba(255,255,255,.12);
  border-radius:8px;
  color:#fff;
}

.ihh-trending-lead .video-thumb{
  position:relative;
  display:block;
  aspect-ratio:16/10;
  overflow:hidden;
  background:#171717;
}

.ihh-trending-lead .video-thumb img{
  width:100%;
  height:100%;
  object-fit:cover;
}

.ihh-trending-lead .trend-rank{
  position:absolute;
  top:18px;
  left:18px;
  z-index:3;
  display:inline-flex;
  align-items:center;
  gap:6px;
  padding:8px 13px;
  border-radius:999px;
  background:#d4af37;
  color:#070707;
  font-size:12px;
  font-weight:950;
  text-transform:uppercase;
}

.ihh-trending-lead .pick-badges,
.ihh-trending-lead .video-title,
.ihh-trending-lead .pick-excerpt,
.ihh-trending-lead .trend-meta{
  margin-inline:22px;
}

.ihh-trending-lead .pick-badges{
  margin-top:18px;
}

.ihh-trending-lead .video-title{
  margin-top:12px;
  color:#fff;
  font-size:clamp(1.55rem,2.55vw,2.45rem);
  line-height:1.04;
  font-weight:950;
}

.ihh-trending-lead .pick-excerpt{
  margin-top:14px;
  color:#c7c7c7;
  font-size:15px;
  line-height:1.55;
}

.ihh-trending-lead .trend-meta{
  display:flex;
  flex-wrap:wrap;
  gap:16px;
  margin-top:auto;
  padding-block:22px;
  color:#aaa;
  font-size:12px;
  font-weight:800;
  text-transform:uppercase;
}

.ihh-trending-lead .trend-meta span{
  display:inline-flex;
  align-items:center;
  gap:6px;
}

.ihh-trending-stack{
  display:flex;
  flex-direction:column;
  margin:0;
  padding:0;
  list-style:none;
  background:#101010;
  border:1px solid rgba(255,255,255,.1);
  border-radius:8px;
}

.ihh-trending-stack li{
  margin:0;
  border-bottom:1px solid rgba(212,175,55,.18);
}

.ihh-trending-stack li:last-child{
  border-bottom:0;
}

.ihh-trending-stack a{
  display:grid;
  grid-template-columns:170px minmax(0,1fr);
  gap:18px;
  align-items:center;
  min-height:148px;
  padding:16px;
  color:#fff;
}

.ihh-trending-stack .stack-thumb{
  position:relative;
  display:block;
  aspect-ratio:16/9;
  overflow:hidden;
  border-radius:7px;
  background:#171717;
}

.ihh-trending-stack .stack-thumb img{
  width:100%;
  height:100%;
  object-fit:cover;
}

.ihh-trending-stack .stack-rank{
  position:absolute;
  top:8px;
  left:8px;
  z-index:3;
  display:grid;
  place-items:center;
  width:38px;
  height:38px;
  border-radius:999px;
  background:#d4af37;
  color:#070707;
  font-size:16px;
  font-weight:950;
}

.ihh-trending-stack .thumb-play{
  left:50%;
  top:50%;
  right:auto;
  bottom:auto;
  transform:translate(-50%,-50%);
}

.ihh-trending-stack .stack-body{
  display:flex;
  flex-direction:column;
  gap:8px;
  min-width:0;
}

.ihh-trending-stack .thumb-badges{
  position:static;
  display:flex;
  gap:6px;
}

.ihh-trending-stack .thumb-badges .badge,
.ihh-trending-lead .pick-badges .badge{
  background:#d4af37;
  color:#070707;
  border-radius:5px;
  font-size:9px;
  font-weight:950;
  padding:4px 7px;
}

.ihh-trending-stack strong{
  color:#fff;
  font-size:16px;
  line-height:1.18;
  font-weight:900;
  display:-webkit-box;
  -webkit-line-clamp:2;
  -webkit-box-orient:vertical;
  overflow:hidden;
}

.ihh-trending-stack small{
  display:flex;
  flex-wrap:wrap;
  gap:6px 10px;
  color:#aaa;
  font-size:11.5px;
  font-weight:750;
}

.trend-status{
  display:inline-flex;
  align-items:center;
  gap:5px;
  font-size:12px;
  font-weight:950;
  text-transform:uppercase;
}

.trend-status--up{
  color:#3fdb76;
}

.trend-status--down{
  color:#ff5252;
}

.trend-status--stable{
  color:#d4af37;
}

.ihh-widget-breaking,
.ihh-widget-discussed,
.ihh-widget-latest-videos{
  background:#101010;
  border:1px solid rgba(255,255,255,.1);
  border-radius:8px;
}

.ihh-widget-head{
  margin-bottom:14px;
}

.ihh-widget-head .ihh-widget-title{
  display:flex;
  align-items:center;
  gap:9px;
  margin:0;
  color:#fff;
  font-size:20px;
  line-height:1.05;
  text-transform:uppercase;
}

.ihh-widget-head .ihh-widget-title span{
  color:#d4af37;
}

.sidebar-story-list{
  display:flex;
  flex-direction:column;
}

.sidebar-story{
  display:grid;
  grid-template-columns:92px minmax(0,1fr);
  gap:12px;
  padding:11px 0;
  border-bottom:1px solid rgba(255,255,255,.1);
  color:#fff;
}

.sidebar-story:last-child{
  border-bottom:0;
  padding-bottom:0;
}

.sidebar-story-thumb{
  display:block;
  aspect-ratio:16/9;
  overflow:hidden;
  border-radius:6px;
  background:#171717;
}

.sidebar-story-thumb img{
  width:100%;
  height:100%;
  object-fit:cover;
}

.sidebar-story-body{
  display:flex;
  flex-direction:column;
  gap:7px;
  min-width:0;
}

.sidebar-story-body strong{
  color:#fff;
  font-size:14px;
  line-height:1.18;
  display:-webkit-box;
  -webkit-line-clamp:2;
  -webkit-box-orient:vertical;
  overflow:hidden;
}

.sidebar-story-body small{
  display:flex;
  flex-wrap:wrap;
  gap:6px;
  color:#aaa;
  font-size:11px;
  font-weight:750;
}

.sidebar-story-body small span:first-child{
  color:#d4af37;
}

.sidebar-story-body small span + span::before{
  content:"•";
  margin-right:6px;
  color:#666;
}

.discussed-list{
  margin:0;
  padding:0;
  list-style:none;
}

.discussed-list li{
  display:grid;
  grid-template-columns:36px minmax(0,1fr) auto;
  gap:12px;
  align-items:center;
  padding:13px 0;
  border-bottom:1px solid rgba(255,255,255,.1);
}

.discussed-list li:last-child{
  border-bottom:0;
  padding-bottom:0;
}

.discussed-rank{
  color:#d4af37;
  font-size:18px;
  font-weight:950;
}

.discussed-list a{
  color:#fff;
  font-size:14px;
  line-height:1.2;
  font-weight:850;
  display:-webkit-box;
  -webkit-line-clamp:2;
  -webkit-box-orient:vertical;
  overflow:hidden;
}

.discussed-comments{
  color:#aaa;
  font-size:12px;
  white-space:nowrap;
}

.latest-video-mini-row{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:12px;
}

.latest-video-mini{
  color:#fff;
  min-width:0;
}

.latest-video-thumb{
  position:relative;
  display:block;
  aspect-ratio:16/9;
  overflow:hidden;
  border-radius:7px;
  background:#171717;
  margin-bottom:8px;
}

.latest-video-thumb img{
  width:100%;
  height:100%;
  object-fit:cover;
}

.latest-video-mini strong{
  color:#fff;
  font-size:12px;
  line-height:1.2;
  display:-webkit-box;
  -webkit-line-clamp:2;
  -webkit-box-orient:vertical;
  overflow:hidden;
}

.latest-video-mini small,
.latest-video-views{
  display:block;
  margin-top:5px;
  color:#aaa;
  font-size:11px;
}

@media (max-width: 1180px){
  .ihh-trending-layout{
    grid-template-columns:1fr;
  }
}

@media (max-width: 760px){
  .ihh-trending-stack a{
    grid-template-columns:132px minmax(0,1fr);
    min-height:118px;
    padding:12px;
  }

  .latest-video-mini-row{
    display:flex;
    overflow-x:auto;
  }

  .latest-video-mini{
    flex:0 0 150px;
  }
}

/* Metadata and rail polish requested for Trending + sidebar modules. */
.ihh-trending-layout{
  grid-template-columns:minmax(0,1fr) minmax(430px,.98fr);
}

.ihh-trending-stack a{
  grid-template-columns:210px minmax(0,1fr);
  min-height:164px;
}

.ihh-trending-stack .stack-thumb{
  min-height:118px;
}

.ihh-trending-stack .stack-thumb img{
  transform:scale(1.02);
}

.thumb-watch-now{
  position:absolute;
  left:18px;
  bottom:18px;
  z-index:4;
  display:inline-flex;
  align-items:center;
  gap:8px;
  padding:9px 13px;
  border:1px solid rgba(255,255,255,.24);
  border-radius:999px;
  background:rgba(0,0,0,.62);
  color:#fff;
  font-size:12px;
  font-weight:950;
  line-height:1;
  text-transform:uppercase;
  backdrop-filter:blur(4px);
}

.thumb-watch-now span{
  color:#d4af37;
}

.ihh-trending-lead .trend-meta{
  color:#b8b8b8;
  gap:14px 18px;
}

.ihh-trending-lead .trend-meta span{
  color:#b8b8b8;
}

.ihh-trending-lead .trend-meta span span[aria-hidden="true"]{
  color:#d4af37;
}

.sidebar-story-list,
.discussed-list{
  border:1px solid rgba(212,175,55,.22);
  border-radius:8px;
  overflow:hidden;
  background:#0b0b0b;
}

.sidebar-story{
  padding:12px;
}

.sidebar-story:last-child{
  padding-bottom:12px;
}

.discussed-list li{
  padding:13px 12px;
}

.discussed-list li:last-child{
  padding-bottom:13px;
}

.discussed-rank{
  text-decoration:underline;
  text-decoration-color:currentColor;
  text-decoration-thickness:2px;
  text-underline-offset:5px;
}

.latest-video-mini small,
.latest-video-views{
  display:block;
  margin:0 0 6px;
  color:#d4af37;
  font-size:11px;
  font-weight:850;
  line-height:1.2;
}

@media (max-width: 1180px){
  .ihh-trending-layout{
    grid-template-columns:1fr;
  }
}

@media (max-width: 760px){
  .ihh-trending-stack a{
    grid-template-columns:145px minmax(0,1fr);
    min-height:126px;
  }

  .ihh-trending-stack .stack-thumb{
    min-height:82px;
  }

  .thumb-watch-now{
    left:14px;
    bottom:14px;
    padding:8px 11px;
    font-size:11px;
  }
}
