/* =========================================================================
   BEYOND 3 MILLION — Concept 4
   Base reset + tokens, then styles per section.
   ========================================================================= */

/* ---------- Layout / motion tokens ---------- */
:root {
  --maxw: 1440px;
  --ease: cubic-bezier(.22,.61,.36,1);

  /* spacing scale */
  --space-xs: clamp(.5rem, .4rem + .5vw, .75rem);
  --space-sm: clamp(.75rem, .6rem + .75vw, 1.15rem);
  --space-md: clamp(1rem, .8rem + 1vw, 1.6rem);
  --space-lg: clamp(1.6rem, 1.2rem + 2vw, 2.8rem);
  --space-xl: clamp(2.6rem, 1.8rem + 3.5vw, 5rem);
  --space-2xl:clamp(3.25rem, 2.2rem + 3.6vw, 6rem);
}

/* ---------- Reset ---------- */
*,*::before,*::after { box-sizing: border-box; margin: 0; padding: 0; }
html { scroll-behavior: smooth; -webkit-text-size-adjust: 100%; }
body {
  font-family: system-ui, -apple-system, "Segoe UI", sans-serif;
  line-height: 1.6;
  -webkit-font-smoothing: antialiased;
  overflow-x: clip;
}
img,svg,video { display: block; max-width: 100%; }
a { color: inherit; text-decoration: none; }
button { font: inherit; cursor: pointer; border: 0; background: none; color: inherit; }
ul { list-style: none; }

/* ---------- Layout helpers ---------- */
.container { width: 100%; max-width: var(--maxw); margin-inline: auto; padding-inline: var(--space-md); }
.section { padding-block: var(--space-2xl); position: relative; }

/* ---------- Scroll reveal (JS toggles .in) ---------- */
[data-reveal] { opacity: 0; transform: translateY(24px); transition: opacity .8s var(--ease), transform .8s var(--ease); }
[data-reveal].in { opacity: 1; transform: none; }

@media (prefers-reduced-motion: reduce) {
  *,*::before,*::after { animation-duration: .01ms !important; transition-duration: .01ms !important; scroll-behavior: auto !important; }
  [data-reveal] { opacity: 1; transform: none; }
}

/* =========================================================================
   SECTIONS — added below as we build them
   ========================================================================= */

/* =========================================================================
   CONCEPT 4 — BRAND TOKENS + HEADER + HERO (Section 1)
   Brand: red #e0a400 · deep navy #000000 · black · white
   ========================================================================= */
:root {
  --red:#e0a400; --red-d:#a97c00; --navy:#000000; --black:#111111;
  --teal:#e0a400; --teal-d:#a97c00;
  --ink:#111111; --muted:#586074; --line:#e7e9ef;
  /* Sora for display/headings, Inter for body and UI */
  --font-display:"Sora", system-ui, "Segoe UI", sans-serif;
  --font-head:"Sora", system-ui, sans-serif;
  --font-body:"Inter", system-ui, -apple-system, sans-serif;
  --grad-cta:linear-gradient(100deg,#f2c130,#e0a400);
  --grad-play:linear-gradient(135deg,#f2c130,#a97c00);
  --fs-h1:clamp(2.6rem, 1.4rem + 4.4vw, 5rem);
}
body { font-family:var(--font-body); color:var(--ink); background:#fff; }
h1,h2,h3,h4 { font-family:var(--font-head); font-weight:700; line-height:1.04; letter-spacing:-.02em; }
h1 { font-weight:800; }
h2 { font-weight:600; }
body { font-weight:400; }
/* Global BIG section heading — applies to every section below the banner */
.section h2 { font-size:clamp(2.3rem, 1.5rem + 3.1vw, 4rem); line-height:1.05; letter-spacing:-.03em; }
/* Accent period after headings */
h2 .dot, h3 .dot { color:var(--red); }

/* ---------- Header ---------- */
.site-header { position:fixed; inset:0 0 auto 0; z-index:100; transition:background .35s var(--ease), box-shadow .35s, height .35s; }
.site-header .nav { display:flex; align-items:center; gap:1.4rem; height:96px; transition:height .35s; }
.logo { display:flex; align-items:center; gap:.65rem; color:#fff; font-family:var(--font-display); font-weight:800; font-size:1.35rem; letter-spacing:-.01em; flex-shrink:0; }
.logo__badge { width:46px; height:46px; border-radius:13px; background:linear-gradient(150deg,var(--teal),var(--teal-d)); display:grid; place-items:center; flex-shrink:0; box-shadow:0 8px 22px -8px rgba(224,164,0,.5); }
.logo__badge svg { width:26px; height:26px; }
.logo img { width:auto; height:84px; max-width:none; object-fit:contain; display:block; flex-shrink:0; transition:height .35s var(--ease); }
.site-header.scrolled .logo img { height:64px; }
.nav__links { display:flex; align-items:center; gap:1.15rem; margin-inline:auto; }
.nav__links a { color:rgba(255,255,255,.92); font-family:var(--font-display); font-weight:600; font-size:.9rem; letter-spacing:.05em; text-transform:uppercase; display:inline-flex; align-items:center; gap:.35em; transition:color .3s; }
.nav__links a .chev { font-size:.7em; opacity:.7; }
.nav__links a:hover { color:var(--teal); }
.nav__tools { display:flex; align-items:center; gap:1.15rem; }
.icon-btn { position:relative; color:#fff; display:grid; place-items:center; width:26px; height:26px; transition:color .3s, transform .3s; }
.icon-btn:hover { color:var(--teal); transform:translateY(-1px); }
.icon-btn svg { width:22px; height:22px; }
.icon-btn .badge { position:absolute; top:-7px; right:-9px; min-width:16px; height:16px; padding:0 4px; border-radius:100px; background:var(--red); color:#fff; font-family:var(--font-body); font-size:.6rem; font-weight:700; display:grid; place-items:center; }
.btn-premium { display:inline-flex; align-items:center; gap:.5em; background:linear-gradient(90deg, var(--navy) 0 50%, var(--red) 50%) right/200% 100%; color:#fff; font-family:var(--font-display); font-weight:700; font-size:.86rem; letter-spacing:.04em; text-transform:uppercase; padding:.95em 1.7em; border-radius:100px; box-shadow:0 12px 28px -10px rgba(224,164,0,.55); transition:background-position .5s var(--ease), transform .3s var(--ease), box-shadow .3s; white-space:nowrap; }
.btn-premium:hover { background-position:left; transform:translateY(-2px); box-shadow:0 16px 34px -10px rgba(0,0,0,.55); }
.btn-premium svg { width:15px; height:15px; }
.nav__phone { display:inline-flex; align-items:center; gap:.55em; font-family:var(--font-display); font-weight:800; font-size:1.25rem; letter-spacing:-.01em; color:#fff; white-space:nowrap; transition:color .3s; }
.nav__phone .ic { width:40px; height:40px; border-radius:50%; background:var(--red); display:grid; place-items:center; flex-shrink:0; box-shadow:0 8px 20px -8px rgba(224,164,0,.6); }
.nav__phone .ic svg { width:18px; height:18px; color:#fff; }
.nav__phone:hover { color:var(--red); }
.site-header.scrolled .nav__phone { color:var(--navy); }
.nav__toggle { display:none; width:44px; height:44px; flex-direction:column; align-items:center; justify-content:center; gap:5px; }
.nav__toggle span { width:24px; height:2px; background:#fff; transition:transform .35s var(--ease), opacity .3s; }
.nav__toggle.open span:nth-child(1){ transform:translateY(7px) rotate(45deg); }
.nav__toggle.open span:nth-child(2){ opacity:0; }
.nav__toggle.open span:nth-child(3){ transform:translateY(-7px) rotate(-45deg); }

/* Scrolled state -> solid white header */
.site-header.scrolled { background:#fff; box-shadow:0 6px 30px -14px rgba(20,22,32,.25); }
.site-header.scrolled .nav { height:74px; }
.site-header.scrolled .logo { color:var(--ink); }
.site-header.scrolled .nav__links a { color:var(--ink); }
.site-header.scrolled .nav__links a:hover { color:var(--teal); }
.site-header.scrolled .icon-btn { color:var(--ink); }
.site-header.scrolled .nav__toggle span { background:var(--ink); }

/* ---------- Hero / Banner ---------- */
.hero { position:relative; min-height:100vh; min-height:100svh; display:flex; align-items:center; overflow:hidden; background:#000000; }
.hero__media { position:absolute; inset:0; z-index:0; }
.hero__media img { width:100%; height:100%; object-fit:cover; object-position:60% center; transform:scale(1.08); will-change:transform; }
.hero__slide { position:absolute; inset:0; display:flex; align-items:center; opacity:0; visibility:hidden; transition:opacity 1.5s cubic-bezier(.45,0,.15,1), visibility 1.5s; }
.hero__slide.is-active { opacity:1; visibility:visible; }
.hero__slide.is-active .hero__media img { animation:heroKen 10s ease-out forwards; }
@keyframes heroKen { from { transform:scale(1.08); } to { transform:scale(1.18); } }
.hero__slide .hero__content { opacity:0; transform:translateY(28px); transition:opacity 1.1s .3s ease, transform 1.2s .3s cubic-bezier(.22,.61,.36,1); }
.hero__slide.is-active .hero__content { opacity:1; transform:none; }
.hero__overlay { position:absolute; inset:0; z-index:1; background:
  linear-gradient(90deg, #000000 0%, rgba(0,0,0,.95) 22%, rgba(0,0,0,.6) 46%, rgba(0,0,0,.12) 70%, rgba(0,0,0,0) 88%),
  linear-gradient(0deg, rgba(9,13,24,.6), transparent 45%); }
.hero__inner { position:relative; z-index:2; width:100%; padding-top:96px; }
.hero__content { max-width:660px; color:#fff; }
.hero__kicker { display:inline-flex; align-items:center; gap:.5em; font-family:var(--font-display); font-weight:600; font-size:1.05rem; margin-bottom:1rem; }
.hero__kicker .dot { width:9px; height:9px; border-radius:50%; background:var(--teal); box-shadow:0 0 12px var(--teal); }
.hero h1 { font-size:var(--fs-h1); margin-bottom:1.5rem; text-shadow:0 2px 30px rgba(0,0,0,.3); }
.hero__meta { display:flex; align-items:center; gap:1.5rem; flex-wrap:wrap; margin-bottom:2.2rem; }
.badge-feat { background:var(--red); color:#fff; font-family:var(--font-display); font-weight:700; font-size:.7rem; letter-spacing:.1em; text-transform:uppercase; padding:.55em 1em; border-radius:100px; }
.hero__meta .m { display:inline-flex; align-items:center; gap:.45em; font-family:var(--font-display); font-weight:500; font-size:.78rem; letter-spacing:.06em; text-transform:uppercase; color:rgba(255,255,255,.88); }
.hero__meta .m svg { width:15px; height:15px; color:#fff; opacity:.85; }
.hero__play { display:inline-flex; align-items:center; gap:1.1rem; color:#fff; font-family:var(--font-display); font-weight:600; font-size:.85rem; letter-spacing:.08em; text-transform:uppercase; }
.play-btn { position:relative; width:68px; height:68px; border-radius:50%; background:var(--grad-play); display:grid; place-items:center; box-shadow:0 14px 36px -8px rgba(224,164,0,.55); flex-shrink:0; transition:transform .3s var(--ease); }
.hero__play:hover .play-btn { transform:scale(1.07); }
.play-btn svg { width:22px; height:22px; margin-left:3px; fill:#fff; }
.play-btn::before, .play-btn::after { content:""; position:absolute; inset:0; border-radius:50%; border:1px solid rgba(224,164,0,.5); animation:ripple 2.6s ease-out infinite; }
.play-btn::after { animation-delay:1.3s; }
@keyframes ripple { 0%{transform:scale(1);opacity:.7} 100%{transform:scale(1.9);opacity:0} }

/* Carousel controls */
.hero__dots { position:absolute; left:clamp(14px,3vw,46px); top:50%; transform:translateY(-50%); z-index:3; display:flex; flex-direction:column; gap:15px; }
.hero__dots button { width:12px; height:12px; border-radius:50%; border:1.5px solid rgba(255,255,255,.55); background:transparent; transition:.3s; }
.hero__dots button.active { background:#fff; border-color:#fff; transform:scale(1.15); }
.hero__nav { position:absolute; right:clamp(14px,3vw,46px); top:50%; transform:translateY(-50%); z-index:3; display:flex; flex-direction:column; gap:14px; }
.hero__nav button { width:52px; height:52px; border-radius:50%; border:1px solid rgba(255,255,255,.4); color:#fff; display:grid; place-items:center; background:linear-gradient(90deg, #fff 0 50%, transparent 50%) right/200% 100%; transition:background-position .45s var(--ease), color .3s, border-color .3s; }
.hero__nav button:hover { background-position:left; color:var(--ink); border-color:#fff; }
.hero__nav svg { width:20px; height:20px; }

/* Mobile menu — off-canvas panel + backdrop + accordion submenus */
.mobile-backdrop { position:fixed; inset:0; z-index:110; background:rgba(9,13,24,.6); backdrop-filter:blur(2px); opacity:0; visibility:hidden; transition:opacity .4s var(--ease), visibility .4s; }
.mobile-backdrop.open { opacity:1; visibility:visible; }

.mobile-menu { position:fixed; top:0; right:0; bottom:0; z-index:120; width:min(360px,86vw); max-width:100%; background:#000000; display:flex; flex-direction:column; transform:translateX(100%); transition:transform .45s var(--ease); box-shadow:-24px 0 60px -24px rgba(0,0,0,.6); overflow-y:auto; overscroll-behavior:contain; }
.mobile-menu.open { transform:none; }

.mobile-menu__head { position:sticky; top:0; z-index:2; display:flex; align-items:center; justify-content:space-between; gap:1rem; padding:1.05rem var(--space-md); background:#000000; border-bottom:1px solid rgba(255,255,255,.12); }
.mobile-menu__brand { font-family:var(--font-display); font-weight:700; font-size:.78rem; letter-spacing:.18em; text-transform:uppercase; color:rgba(255,255,255,.55); }
.mobile-menu__close { width:42px; height:42px; border-radius:50%; border:1px solid rgba(255,255,255,.22); color:#fff; display:grid; place-items:center; flex-shrink:0; transition:background .3s, border-color .3s, transform .35s var(--ease); }
.mobile-menu__close:hover { background:var(--red); border-color:var(--red); transform:rotate(90deg); }
.mobile-menu__close svg { width:22px; height:22px; }

.mobile-nav { flex:1; padding:.4rem var(--space-md); }
.mobile-nav__list, .mobile-nav__sub { display:flex; flex-direction:column; }
.mobile-nav__list > li { border-bottom:1px solid rgba(255,255,255,.1); }
.mobile-nav__row { display:flex; align-items:center; justify-content:space-between; gap:.5rem; }
.mobile-nav a { display:block; flex:1; color:#fff; font-family:var(--font-display); font-weight:600; font-size:1.15rem; padding:.72em 0; transition:color .3s; }
.mobile-nav a:hover { color:var(--red); }
.mobile-nav__toggle { width:40px; height:40px; display:grid; place-items:center; color:#fff; flex-shrink:0; }
.mobile-nav__toggle svg { width:20px; height:20px; transition:transform .35s var(--ease); }
.has-sub.open > .mobile-nav__row > .mobile-nav__toggle svg { transform:rotate(180deg); }

/* Collapsible submenu — grid 0fr→1fr keeps it open-ended (no height cap) */
.mobile-nav__subwrap { display:grid; grid-template-rows:0fr; transition:grid-template-rows .35s var(--ease); }
.has-sub.open > .mobile-nav__subwrap { grid-template-rows:1fr; }
.mobile-nav__sub { overflow:hidden; min-height:0; padding-left:.9rem; }
.mobile-nav__sub a { font-size:1rem; font-weight:500; color:rgba(255,255,255,.72); padding:.5em 0; }
.mobile-nav__sub li:not(:last-child) a { border-bottom:1px solid rgba(255,255,255,.07); }

.mobile-menu .btn-premium { margin:1.1rem var(--space-md) calc(var(--space-md) + env(safe-area-inset-bottom)); justify-content:center; display:inline-flex; }

@media (max-width:1180px){
  .nav__links { display:none; }
  .nav__toggle { display:flex; flex-shrink:0; }
  .site-header .nav { gap:.9rem; }
  .nav__tools { margin-left:auto; gap:.75rem; }
  .nav__tools .btn-premium { display:none; }
  /* Cap the logo so the header row fits the viewport and the burger stays on-screen */
  .logo { min-width:0; }
  .logo img { width:auto; height:64px; max-width:52vw; }
  .nav__phone { font-size:1.1rem; }
  .nav__phone .ic { width:36px; height:36px; }
  .nav__phone .ic svg { width:16px; height:16px; }
  .hero__dots { display:none; }
}
/* Mid range: full nav + phone + CTA all visible — tighten so nothing clips */
@media (min-width:1025px) and (max-width:1240px){
  .site-header .nav { gap:1rem; }
  .nav__links { gap:1rem; }
  .nav__links a { font-size:.74rem; letter-spacing:.03em; }
  .nav__tools { gap:.8rem; }
  .nav__phone { font-size:1.05rem; }
  .nav__phone .ic { width:34px; height:34px; }
  .nav__phone .ic svg { width:15px; height:15px; }
  .nav__tools .btn-premium { padding:.7em 1.05em; font-size:.72rem; }
}
@media (max-width:640px){
  .hero__media img { object-position:70% center; }
  .hero__overlay { background:linear-gradient(180deg, rgba(0,0,0,.45), rgba(0,0,0,.9) 70%); }
  .hero__nav { display:none; }
  .hero__meta { gap:1rem; }
  .site-header .nav { height:74px; }
  .nav__phone .num { display:none; }
}

/* =========================================================================
   CONCEPT 4 — FEATURED SHOWS (Section 2)
   ========================================================================= */
.shows { background:#f4f6f9; }
.shows__head { text-align:center; margin-bottom:var(--space-xl); }
.shows__head h2 { color:var(--navy); font-weight:800; }
.shows__head h2 .dot { color:var(--red); }
.shows__wrap { position:relative; }
.shows__track { display:grid; grid-template-columns:repeat(3,1fr); gap:var(--space-md); }
.shows__arrow { position:absolute; top:50%; transform:translateY(-50%); width:52px; height:52px; border-radius:50%; border:1px solid #d6dae2; background:linear-gradient(90deg, var(--red) 0 50%, #fff 50%) right/200% 100%; color:var(--navy); display:grid; place-items:center; z-index:5; transition:background-position .45s var(--ease), color .3s, border-color .3s; box-shadow:0 8px 24px -12px rgba(0,0,0,.3); }
.shows__arrow:hover { background-position:left; color:var(--navy); border-color:var(--red); }
.shows__arrow svg { width:20px; height:20px; }
.shows__arrow.prev { left:-16px; }
.shows__arrow.next { right:-16px; }

.show-card { background:#fff; border-radius:16px; overflow:hidden; box-shadow:0 20px 50px -30px rgba(0,0,0,.35); transition:transform .4s var(--ease), box-shadow .4s; }
.show-card:hover { transform:translateY(-8px); box-shadow:0 34px 60px -30px rgba(0,0,0,.45); }
.show-card__art { position:relative; padding:26px; height:370px; background:#faf9f7; overflow:hidden; }
.show-card__brand { position:absolute; top:20px; right:22px; z-index:3; display:inline-flex; align-items:center; gap:.4em; font-family:var(--font-display); font-weight:600; font-size:.78rem; color:var(--navy); }
.show-card__brand svg { width:16px; height:16px; color:var(--red); }
.show-card__title { position:relative; z-index:1; font-family:var(--font-display); color:var(--navy); line-height:.98; }
.show-card__title .sm { display:block; font-weight:600; font-size:1.05rem; letter-spacing:.02em; color:var(--muted); text-transform:uppercase; }
.show-card__title .lg { display:block; font-weight:800; font-size:2rem; letter-spacing:-.01em; text-transform:uppercase; }
.show-card__photo { position:absolute; z-index:2; left:50%; transform:translateX(-50%); bottom:26px; width:min(62%,238px); aspect-ratio:1; border-radius:50%; overflow:hidden; border:5px solid #fff; box-shadow:0 0 0 3px var(--red), 0 18px 40px -18px rgba(0,0,0,.55); transition:box-shadow .4s var(--ease); }
.show-card__photo img { width:100%; height:100%; object-fit:cover; border-radius:50%; }
.show-card:hover .show-card__photo { box-shadow:0 0 0 5px var(--red), 0 22px 46px -18px rgba(0,0,0,.6); }
.show-card__foot { background:#eceef3; padding:22px 26px 26px; }
.show-card__foot h3 { font-family:var(--font-display); font-weight:700; font-size:1.15rem; color:var(--navy); letter-spacing:-.01em; transition:color .3s; }
.show-card:hover .show-card__foot h3 { color:var(--red); }
.show-card__meta { display:flex; gap:1.6rem; margin-top:.9rem; }
.show-card__meta span { display:inline-flex; align-items:center; gap:.5em; font-family:var(--font-display); font-weight:500; font-size:.74rem; letter-spacing:.05em; text-transform:uppercase; color:var(--muted); }
.show-card__meta svg { width:15px; height:15px; color:var(--red); }

@media (max-width:1024px){
  .shows__track { grid-auto-flow:column; grid-auto-columns:78%; grid-template-columns:none; overflow-x:auto; scroll-snap-type:x mandatory; -webkit-overflow-scrolling:touch; scrollbar-width:none; padding-bottom:8px; }
  .shows__track::-webkit-scrollbar { display:none; }
  .show-card { scroll-snap-align:center; }
  .shows__arrow.prev { left:6px; } .shows__arrow.next { right:6px; }
}
@media (max-width:640px){
  .shows__track { grid-auto-columns:86%; }
  .shows__arrow { display:none; }
}

/* =========================================================================
   CONCEPT 4 — RECENT EPISODES (Section 3)
   ========================================================================= */
.episodes { background:#fff; }
.sec-head { display:flex; justify-content:space-between; align-items:flex-end; gap:var(--space-md); flex-wrap:wrap; margin-bottom:var(--space-lg); }
.sec-head__l { max-width:640px; }
.eyebrow { display:inline-flex; align-items:center; gap:.5em; font-family:var(--font-body); font-weight:600; font-size:.78rem; letter-spacing:.16em; text-transform:uppercase; color:var(--red); margin-bottom:.6rem; }
.eyebrow::before { content:""; width:22px; height:2px; background:var(--red); }
.sec-head h2 { color:var(--navy); font-weight:800; }
.sec-head h2 .dot { color:var(--red); }
.btn-outline { display:inline-flex; align-items:center; gap:.5em; border:1.5px solid var(--navy); color:var(--navy); font-family:var(--font-display); font-weight:600; font-size:.88rem; padding:.95em 1.7em; border-radius:100px; background:linear-gradient(90deg, var(--red) 0 50%, transparent 50%) right/200% 100%; transition:background-position .5s var(--ease), color .35s, border-color .35s, transform .3s var(--ease); white-space:nowrap; }
.btn-outline:hover { background-position:left; border-color:var(--red); color:#fff; transform:translateY(-2px); }
.btn-outline svg { width:16px; height:16px; transition:transform .3s; }
.btn-outline:hover svg { transform:translateX(4px); }

.ep-grid { display:grid; grid-template-columns:repeat(3,1fr); gap:var(--space-md); }
.ep-card { background:#fff; border:1px solid var(--line); border-radius:16px; overflow:hidden; transition:transform .4s var(--ease), box-shadow .4s, border-color .4s; display:flex; flex-direction:column; }
.ep-card:hover { transform:translateY(-6px); box-shadow:0 26px 54px -30px rgba(0,0,0,.4); border-color:transparent; }
.ep-thumb { position:relative; aspect-ratio:16/10; overflow:hidden; background:var(--navy); }
.ep-thumb img { width:100%; height:100%; object-fit:cover; transition:transform .6s var(--ease); }
.ep-card:hover .ep-thumb img { transform:scale(1.06); }
.ep-cat { position:absolute; top:12px; left:12px; z-index:2; background:var(--red); color:#fff; font-family:var(--font-display); font-weight:600; font-size:.62rem; letter-spacing:.08em; text-transform:uppercase; padding:.4em .8em; border-radius:100px; }
.ep-dur { position:absolute; bottom:12px; right:12px; z-index:2; background:rgba(0,0,0,.82); color:#fff; font-family:var(--font-mono,var(--font-body)); font-size:.68rem; font-weight:600; letter-spacing:.04em; padding:.35em .7em; border-radius:100px; backdrop-filter:blur(4px); }
.ep-play { position:absolute; inset:0; z-index:2; display:grid; place-items:center; background:rgba(0,0,0,.28); opacity:0; transition:opacity .35s; }
.ep-card:hover .ep-play { opacity:1; }
.ep-play span { width:56px; height:56px; border-radius:50%; background:var(--grad-play); display:grid; place-items:center; box-shadow:0 12px 30px -8px rgba(224,164,0,.6); }
.ep-play svg { width:20px; height:20px; margin-left:3px; fill:#fff; }
.ep-body { padding:20px 22px 22px; display:flex; flex-direction:column; gap:.6rem; flex:1; }
.ep-num { font-family:var(--font-display); font-weight:600; font-size:.72rem; letter-spacing:.08em; text-transform:uppercase; color:var(--muted); }
.ep-num b { color:var(--red); font-weight:700; }
.ep-body h3 { font-family:var(--font-display); font-weight:700; font-size:1.18rem; line-height:1.2; color:var(--navy); letter-spacing:-.01em; transition:color .3s; }
.ep-card:hover .ep-body h3 { color:var(--red); }
.ep-guest { margin-top:auto; padding-top:.4rem; display:flex; align-items:center; gap:.6rem; }
.ep-guest .av { width:32px; height:32px; border-radius:50%; flex-shrink:0; display:grid; place-items:center; background:var(--navy); color:#fff; font-family:var(--font-display); font-weight:700; font-size:.7rem; }
.ep-guest .nm { font-size:.86rem; color:var(--ink); font-weight:500; }
.ep-guest .nm span { display:block; font-size:.72rem; color:var(--muted); font-weight:400; }

@media (max-width:900px){ .ep-grid { grid-template-columns:repeat(2,1fr); } }
@media (max-width:560px){ .ep-grid { grid-template-columns:1fr; } .sec-head { align-items:flex-start; } }

/* =========================================================================
   CONCEPT 4 — ABOUT (Section 4) — full-width image bg + content
   ========================================================================= */
.about { position:relative; overflow:hidden; color:#fff; display:flex; align-items:center; min-height:640px; }
.about__bg { position:absolute; inset:0; z-index:0; background:url(../img/Joehd4.jpg) center/cover no-repeat; }
@media (min-width:768px){ .about__bg { background-attachment:fixed; } }
.about__overlay { position:absolute; inset:0; z-index:1; background:
  linear-gradient(90deg, rgba(0,0,0,.96) 0%, rgba(0,0,0,.86) 40%, rgba(0,0,0,.55) 100%),
  radial-gradient(70% 90% at 100% 100%, rgba(224,164,0,.22), transparent 60%); }
.about .container { position:relative; z-index:2; }
.about__inner { max-width:700px; }
.about .eyebrow { color:#e0a400; }
.about .eyebrow::before { background:var(--red); }
.about h2 { color:#fff; line-height:1.03; margin-bottom:1.3rem; }
.about h2 .r { color:#e0a400; }
.about p { color:rgba(255,255,255,.82); font-size:1.05rem; margin-bottom:1rem; max-width:62ch; }
.about__stats { display:flex; gap:2.6rem; margin:2rem 0 2.4rem; flex-wrap:wrap; }
.about__stats .s strong { display:block; font-family:var(--font-display); font-weight:800; font-size:clamp(2.6rem,1.9rem+2.6vw,4rem); color:#fff; line-height:1; letter-spacing:-.03em; }
.about__stats .s strong em { color:#e0a400; font-style:normal; }
.about__stats .s span { display:block; margin-top:.5rem; font-family:var(--font-display); font-weight:600; font-size:.85rem; letter-spacing:.12em; text-transform:uppercase; color:rgba(255,255,255,.65); }
.about__actions { display:flex; gap:.8rem; flex-wrap:wrap; }
.btn-ghost { display:inline-flex; align-items:center; gap:.5em; border:1.5px solid rgba(255,255,255,.55); color:#fff; font-family:var(--font-display); font-weight:600; font-size:.88rem; letter-spacing:.02em; padding:1em 1.75em; border-radius:100px; background:linear-gradient(90deg, #fff 0 50%, transparent 50%) right/200% 100%; transition:background-position .5s var(--ease), color .35s, border-color .35s, transform .3s var(--ease); white-space:nowrap; }
.btn-ghost:hover { background-position:left; color:var(--navy); border-color:#fff; transform:translateY(-2px); }
.btn-ghost svg { width:16px; height:16px; }

@media (max-width:640px){
  .about { min-height:0; }
  .about__overlay { background:linear-gradient(180deg, rgba(0,0,0,.86), rgba(0,0,0,.94)); }
  .about__stats { gap:1.6rem; }
  .about__actions { width:100%; }
  .about__actions .btn-premium, .about__actions .btn-ghost { flex:1; justify-content:center; }
}

/* =========================================================================
   CONCEPT 4 — MEET THE HOST (Section 5)
   ========================================================================= */
.host { background:#000000; }
.host__grid { display:grid; grid-template-columns:.86fr 1fr; gap:var(--space-xl); align-items:center; }
.host__photo { position:relative; }
.host__photo::before { content:""; position:absolute; right:-18px; bottom:-18px; width:72%; height:72%; background:var(--red); border-radius:24px; z-index:0; }
.host__frame { position:relative; z-index:1; border-radius:24px; overflow:hidden; aspect-ratio:4/5; box-shadow:0 34px 64px -34px rgba(0,0,0,.55); }
.host__frame img { width:100%; height:100%; object-fit:cover; object-position:62% center; }
.host__tag { position:absolute; z-index:2; left:18px; bottom:18px; display:inline-flex; align-items:center; gap:.6em; background:#fff; padding:.7em 1.1em; border-radius:100px; box-shadow:0 14px 30px -14px rgba(0,0,0,.4); }
.host__tag .ic { width:30px; height:30px; border-radius:50%; background:var(--red); display:grid; place-items:center; }
.host__tag .ic svg { width:15px; height:15px; color:#fff; }
.host__tag b { font-family:var(--font-display); font-weight:700; font-size:.86rem; color:var(--navy); }
.host__tag span { display:block; font-size:.68rem; color:var(--muted); font-weight:500; }

.host__content .eyebrow { color:var(--red); }
.host__role { display:block; font-family:var(--font-display); font-weight:700; font-size:1rem; letter-spacing:.02em; color:var(--red); margin:.4rem 0 1.1rem; }
.host__content h2 { color:#fff; }
.host__content p { color:rgba(255,255,255,.72); font-size:1.05rem; margin-bottom:1rem; max-width:56ch; }
.host__socials { display:flex; gap:.6rem; margin:1.6rem 0 1.8rem; }
.host__socials a { width:46px; height:46px; border-radius:50%; border:1.5px solid rgba(255,255,255,.2); color:#fff; display:grid; place-items:center; background:linear-gradient(90deg, var(--red) 0 50%, transparent 50%) right/200% 100%; transition:background-position .45s var(--ease), color .3s, border-color .3s; }
.host__socials a:hover { background-position:left; color:var(--navy); border-color:var(--red); }
.host__socials svg { width:20px; height:20px; }

@media (max-width:860px){
  .host__grid { grid-template-columns:1fr; gap:var(--space-lg); max-width:520px; margin-inline:auto; }
}

/* =========================================================================
   CONCEPT 4 — FEATURED GUESTS (Section 6)
   ========================================================================= */
.guests { background:#fff; }
.head-center { text-align:center; max-width:820px; margin:0 auto var(--space-lg); }
.head-center .eyebrow { justify-content:center; }
.head-center h2 { color:var(--navy); }
.head-center h2 .dot { color:var(--red); }
.head-center p { color:var(--muted); margin-top:.7rem; font-size:1.08rem; }

.guest-grid { display:grid; grid-template-columns:repeat(4,1fr); gap:var(--space-md); }
.guest-card { position:relative; text-align:center; background:#fff; border:1px solid var(--line); border-radius:18px; padding:30px 22px 26px; transition:transform .4s var(--ease), box-shadow .4s, border-color .4s; overflow:hidden; }
.guest-card:hover { transform:translateY(-6px); box-shadow:0 28px 56px -32px rgba(0,0,0,.4); border-color:transparent; }
.guest-av { width:112px; height:112px; margin:0 auto 16px; border-radius:50%; display:grid; place-items:center; background:linear-gradient(150deg,#33343a,#000000); color:#fff; font-family:var(--font-display); font-weight:800; font-size:2rem; overflow:hidden; box-shadow:0 0 0 0 var(--red); transition:box-shadow .4s var(--ease); }
.guest-card:hover .guest-av { box-shadow:0 0 0 4px var(--red); }
.guest-av img { width:100%; height:100%; object-fit:cover; }
.guest-card h3 { font-family:var(--font-display); font-weight:700; font-size:1.18rem; color:var(--navy); letter-spacing:-.01em; transition:color .3s; }
.guest-card:hover h3 { color:var(--red); }
.guest-role { font-size:.9rem; color:var(--muted); margin-top:.2rem; }
.guest-co { display:inline-block; margin-top:.5rem; font-family:var(--font-display); font-weight:600; font-size:.72rem; letter-spacing:.06em; text-transform:uppercase; color:var(--red); }
.guest-ep { display:inline-flex; align-items:center; gap:.4em; margin-top:1rem; font-family:var(--font-display); font-weight:600; font-size:.78rem; color:var(--navy); opacity:0; transform:translateY(6px); transition:opacity .35s, transform .35s; }
.guest-card:hover .guest-ep { opacity:1; transform:none; }
.guest-ep svg { width:15px; height:15px; fill:var(--red); }
.guests__cta { text-align:center; margin-top:var(--space-lg); }

@media (max-width:900px){ .guest-grid { grid-template-columns:repeat(2,1fr); } }
@media (max-width:460px){ .guest-grid { grid-template-columns:1fr; } }

/* =========================================================================
   CONCEPT 4 — TOPICS COVERED (Section 7) — dark navy
   ========================================================================= */
.topics { background:#000000; color:#fff; position:relative; overflow:hidden; }
.topics::before { content:""; position:absolute; top:-15%; left:-8%; width:45%; height:70%; background:radial-gradient(circle, rgba(224,164,0,.18), transparent 65%); pointer-events:none; }
.topics .container { position:relative; z-index:1; }
.topics .head-center h2 { color:#fff; }
.topics .head-center p { color:rgba(255,255,255,.7); }
.topics .head-center .eyebrow { color:#e0a400; }

.topics__wrap { position:relative; }
.topics__track { display:flex; gap:18px; overflow-x:auto; scroll-snap-type:x mandatory; -webkit-overflow-scrolling:touch; scrollbar-width:none; padding:6px 2px 10px; }
.topics__track::-webkit-scrollbar { display:none; }

.topic-card { position:relative; flex:0 0 calc((100% - 48px) / 4); aspect-ratio:1/1; border-radius:18px; overflow:hidden; scroll-snap-align:start; background:#111; box-shadow:0 24px 50px -30px rgba(0,0,0,.8); }
.topic-card__img { position:absolute; inset:0; }
.topic-card__img img { width:100%; height:100%; object-fit:cover; object-position:center 32%; transition:transform .7s var(--ease); }
.topic-card:hover .topic-card__img img { transform:scale(1.08); }
.topic-card__ov { position:absolute; inset:0; background:linear-gradient(180deg, rgba(0,0,0,.12) 0%, rgba(0,0,0,.5) 52%, rgba(0,0,0,.96) 100%); transition:background .4s; }
.topic-card::after { content:""; position:absolute; inset:0; border-radius:20px; border:2px solid transparent; transition:border-color .4s; pointer-events:none; }
.topic-card:hover::after { border-color:var(--red); }
.topic-card__count { position:absolute; top:16px; right:16px; z-index:3; font-family:var(--font-display); font-weight:600; font-size:.68rem; letter-spacing:.06em; text-transform:uppercase; color:#fff; background:rgba(0,0,0,.4); border:1px solid rgba(255,255,255,.25); padding:.4em .8em; border-radius:100px; backdrop-filter:blur(5px); }
.topic-card__body { position:absolute; inset:auto 0 0 0; z-index:2; padding:22px; }
.topic-card__ic { width:48px; height:48px; border-radius:13px; background:var(--red); display:flex; align-items:center; justify-content:center; margin-bottom:14px; box-shadow:0 10px 24px -10px rgba(224,164,0,.7); transition:transform .4s var(--ease); }
.topic-card:hover .topic-card__ic { transform:translateY(-3px) scale(1.06); }
.topic-card__ic svg { width:25px; height:25px; display:block; }
.topic-card h3 { font-family:var(--font-display); font-weight:700; font-size:1.35rem; color:#fff; letter-spacing:-.01em; line-height:1.1; }
.topic-card__body .lbl { display:block; margin-top:.4rem; font-family:var(--font-display); font-weight:500; font-size:.78rem; letter-spacing:.06em; text-transform:uppercase; color:rgba(255,255,255,.65); }

@media (max-width:860px){ .topic-card { flex-basis:calc((100% - 18px) / 2); } }
@media (max-width:640px){ .topic-card { flex-basis:100%; } }

/* =========================================================================
   CONCEPT 4 — WHY LISTEN (Section 8)
   ========================================================================= */
.why { background:#ffffff; }
.why-grid { display:grid; grid-template-columns:repeat(4,1fr); gap:18px; }
.why-card { position:relative; background:#fff; border:1px solid var(--line); border-radius:18px; padding:32px 26px 30px; overflow:hidden; transition:transform .4s var(--ease), box-shadow .4s, border-color .4s; }
.why-card::before { content:""; position:absolute; top:0; left:0; height:4px; width:100%; background:var(--red); transform:scaleX(0); transform-origin:left; transition:transform .45s var(--ease); }
.why-card:hover { transform:translateY(-6px); box-shadow:0 30px 60px -34px rgba(0,0,0,.4); border-color:transparent; }
.why-card:hover::before { transform:scaleX(1); }
.why-card__ic { width:58px; height:58px; border-radius:16px; background:linear-gradient(135deg,#f2c130,#e0a400); display:flex; align-items:center; justify-content:center; margin-bottom:22px; box-shadow:0 14px 30px -12px rgba(224,164,0,.55); transition:transform .4s var(--ease); }
.why-card:hover .why-card__ic { transform:translateY(-3px) scale(1.06); }
.why-card__ic svg { width:27px; height:27px; display:block; }
.why-card__n { position:absolute; top:26px; right:26px; font-family:var(--font-display); font-weight:800; font-size:1.4rem; color:#eef0f4; letter-spacing:-.02em; }
.why-card h3 { font-family:var(--font-display); font-weight:700; font-size:1.22rem; color:var(--navy); letter-spacing:-.01em; margin-bottom:.5rem; }
.why-card p { color:var(--muted); font-size:.96rem; line-height:1.55; }

@media (max-width:980px){ .why-grid { grid-template-columns:repeat(2,1fr); } }
@media (max-width:520px){ .why-grid { grid-template-columns:1fr; } }

/* =========================================================================
   CONCEPT 4 — NEWSLETTER (Section 9)
   ========================================================================= */
.newsletter { background:var(--navy); color:#fff; position:relative; overflow:hidden; }
.newsletter::before { content:""; position:absolute; top:-30%; right:-8%; width:45%; height:120%; background:radial-gradient(circle, rgba(224,164,0,.22), transparent 62%); pointer-events:none; }
.newsletter::after { content:""; position:absolute; bottom:-40%; left:-10%; width:45%; height:120%; background:radial-gradient(circle, rgba(224,164,0,.12), transparent 62%); pointer-events:none; }
.newsletter__inner { position:relative; z-index:1; max-width:720px; margin:0 auto; text-align:center; }
.newsletter .eyebrow { color:#e0a400; justify-content:center; }
.newsletter h2 { color:#fff; }
.newsletter p { color:rgba(255,255,255,.72); margin-top:.7rem; font-size:1.08rem; }
.nl-form { display:flex; gap:10px; max-width:540px; margin:1.8rem auto 0; }
.nl-form input { flex:1; padding:1.05em 1.4em; border-radius:100px; border:1px solid rgba(255,255,255,.22); background:rgba(255,255,255,.08); color:#fff; font:inherit; font-size:.95rem; transition:border-color .3s, background .3s; }
.nl-form input::placeholder { color:rgba(255,255,255,.5); }
.nl-form input:focus { outline:none; border-color:var(--red); background:rgba(255,255,255,.13); }
.nl-btn { display:inline-flex; align-items:center; gap:.5em; padding:1.1em 1.9em; border-radius:100px; font-family:var(--font-display); font-weight:700; font-size:.92rem; letter-spacing:.02em; color:#fff; white-space:nowrap; background:linear-gradient(90deg, #fff 0 50%, var(--red) 50%) right/200% 100%; transition:background-position .5s var(--ease), color .35s, transform .3s var(--ease); }
.nl-btn:hover { background-position:left; color:var(--navy); transform:translateY(-2px); }
.nl-btn svg { width:16px; height:16px; }
.nl-note { margin-top:1rem; font-size:.8rem; color:rgba(255,255,255,.5); }

@media (max-width:560px){ .nl-form { flex-direction:column; } .nl-btn { justify-content:center; } }

/* =========================================================================
   CONCEPT 4 — SPONSOR / PARTNERS (Section 10)
   ========================================================================= */
.sponsor { background:#fff; }
.logo-strip { display:flex; flex-wrap:wrap; justify-content:center; align-items:center; gap:clamp(1.6rem,5vw,4rem); margin-bottom:var(--space-xl); }
.logo-strip .lg { display:inline-flex; align-items:center; gap:.5em; font-family:var(--font-display); font-weight:800; font-size:1.3rem; letter-spacing:.01em; color:#b3b9c4; transition:color .3s var(--ease), transform .3s; }
.logo-strip .lg svg { width:24px; height:24px; }
.logo-strip .lg:hover { color:var(--red); transform:translateY(-2px); }
.sponsor-cta { position:relative; overflow:hidden; border-radius:26px; background:linear-gradient(120deg,#000000,#000000); color:#fff; padding:clamp(2.6rem,4vw,4.2rem) var(--space-lg); text-align:center; }
.sponsor-cta::before { content:""; position:absolute; top:-40%; right:-6%; width:40%; height:150%; background:radial-gradient(circle, rgba(224,164,0,.28), transparent 60%); pointer-events:none; }
.sponsor-cta::after { content:""; position:absolute; bottom:-50%; left:-8%; width:40%; height:150%; background:radial-gradient(circle, rgba(224,164,0,.14), transparent 60%); pointer-events:none; }
.sponsor-cta > * { position:relative; z-index:1; }
.sponsor-cta .eyebrow { color:#e0a400; justify-content:center; }
.sponsor-cta h3 { font-family:var(--font-display); font-weight:800; font-size:clamp(2rem, 1.4rem + 2.6vw, 3rem); color:#fff; letter-spacing:-.025em; max-width:25ch; margin:.5rem auto .9rem; line-height:1.14; }
.sponsor-cta p { color:rgba(255,255,255,.72); max-width:54ch; margin:0 auto 1.9rem; font-size:1.05rem; }
.sponsor-cta__actions { display:flex; gap:.8rem; justify-content:center; flex-wrap:wrap; }
@media (max-width:600px){ .sponsor-cta h3 { font-size:32px; line-height:40px; } .sponsor-cta__actions .btn-premium, .sponsor-cta__actions .btn-ghost { flex:1; justify-content:center; } }

/* =========================================================================
   CONCEPT 4 — FOOTER (Section 11)
   ========================================================================= */
.site-footer { background:#000000; color:#fff; padding-top:var(--space-2xl); }
.footer-top { display:grid; grid-template-columns:1.7fr 1fr 1fr 1fr; gap:var(--space-lg); padding-bottom:var(--space-lg); border-bottom:1px solid rgba(255,255,255,.1); }
.footer-brand img { height:132px; width:auto; margin-bottom:1.1rem; }
.footer-brand p { color:rgba(255,255,255,.6); font-size:.94rem; max-width:36ch; line-height:1.6; }
.footer-brand .f-phone { display:inline-flex; align-items:center; gap:.55em; margin-top:1.1rem; font-family:var(--font-display); font-weight:800; font-size:1.2rem; color:#fff; transition:color .3s; }
.footer-brand .f-phone .ic { width:34px; height:34px; border-radius:50%; background:var(--red); display:grid; place-items:center; }
.footer-brand .f-phone .ic svg { width:16px; height:16px; color:#fff; }
.footer-brand .f-phone:hover { color:#f0c24a; }
.footer-social { display:flex; gap:.6rem; margin-top:1.4rem; }
.footer-social a { width:42px; height:42px; border-radius:50%; border:1px solid rgba(255,255,255,.16); color:#fff; display:grid; place-items:center; background:linear-gradient(90deg, var(--red) 0 50%, transparent 50%) right/200% 100%; transition:background-position .45s var(--ease), color .3s, border-color .3s; }
.footer-social a:hover { background-position:left; color:var(--navy); border-color:var(--red); }
.footer-social svg { width:18px; height:18px; }
.footer-col h4 { font-family:var(--font-display); font-weight:700; font-size:.82rem; letter-spacing:.08em; text-transform:uppercase; color:#fff; margin-bottom:1.1rem; }
.footer-col a { display:block; color:rgba(255,255,255,.6); font-size:.93rem; padding:.42em 0; transition:color .3s, padding-left .3s; }
.footer-col a:hover { color:#f0c24a; padding-left:5px; }
.footer-bottom { display:flex; justify-content:space-between; align-items:center; gap:1rem; padding:var(--space-lg) 0; flex-wrap:wrap; }
.footer-bottom p { color:rgba(255,255,255,.5); font-size:.86rem; }
.footer-bottom .legal { display:flex; gap:1.5rem; }
.footer-bottom .legal a { color:rgba(255,255,255,.5); font-size:.86rem; transition:color .3s; }
.footer-bottom .legal a:hover { color:#f0c24a; }

/* Back to top */
.to-top { position:fixed; right:24px; bottom:24px; z-index:90; width:50px; height:50px; border-radius:50%; background:var(--red); color:#fff; display:grid; place-items:center; box-shadow:0 14px 30px -10px rgba(224,164,0,.6); opacity:0; visibility:hidden; transform:translateY(14px); transition:opacity .35s, transform .35s, visibility .35s, background .3s; }
.to-top.show { opacity:1; visibility:visible; transform:none; }
.to-top:hover { background:var(--navy); transform:translateY(-3px); }
.to-top svg { width:22px; height:22px; }
@media (max-width:600px) and (orientation:portrait){ .to-top { display:none !important; } }

@media (max-width:860px){ .footer-top { grid-template-columns:1fr 1fr; } .footer-brand { grid-column:1 / -1; } }
@media (max-width:520px){ .footer-top { grid-template-columns:1fr; } .footer-bottom { flex-direction:column; text-align:center; } }

/* =========================================================================
   VIDEO LIGHTBOX
   ========================================================================= */
.vmodal { position:fixed; inset:0; z-index:200; display:flex; align-items:center; justify-content:center; padding:24px; background:rgba(5,9,18,.86); backdrop-filter:blur(6px); opacity:0; visibility:hidden; transition:opacity .35s, visibility .35s; }
.vmodal.open { opacity:1; visibility:visible; }
.vmodal__box { position:relative; width:min(960px,100%); aspect-ratio:16/9; background:#000; border-radius:16px; box-shadow:0 40px 90px -30px rgba(0,0,0,.85); transform:scale(.95); transition:transform .35s var(--ease); }
.vmodal.open .vmodal__box { transform:none; }
.vmodal__frame { width:100%; height:100%; border-radius:16px; overflow:hidden; }
.vmodal__frame iframe, .vmodal__frame video { width:100%; height:100%; border:0; display:block; background:#000; object-fit:cover; }
.vmodal__close { position:absolute; top:-14px; right:-14px; width:44px; height:44px; border-radius:50%; background:var(--red); color:#fff; display:grid; place-items:center; z-index:2; box-shadow:0 10px 24px -8px rgba(224,164,0,.7); transition:transform .3s var(--ease), background .3s; }
.vmodal__close:hover { transform:rotate(90deg); background:var(--navy); }
.vmodal__close svg { width:22px; height:22px; }
@media (max-width:560px){
  .vmodal { padding:16px; }
  .vmodal__close { top:-48px; right:0; }
}

/* =========================================================================
   CONCEPT 4 — BLOG / RESOURCES
   ========================================================================= */
.blog { background:#fff; }
.blog-grid { display:grid; grid-template-columns:repeat(3,1fr); gap:var(--space-md); }
.blog-card { display:flex; flex-direction:column; background:#fff; border:1px solid var(--line); border-radius:18px; overflow:hidden; transition:transform .4s var(--ease), box-shadow .4s, border-color .4s; }
.blog-card:hover { transform:translateY(-6px); box-shadow:0 30px 60px -34px rgba(0,0,0,.4); border-color:transparent; }
.blog-thumb { position:relative; aspect-ratio:16/10; overflow:hidden; background:var(--navy); }
.blog-thumb img { width:100%; height:100%; object-fit:cover; transition:transform .6s var(--ease); }
.blog-card:hover .blog-thumb img { transform:scale(1.06); }
.blog-cat { position:absolute; top:14px; left:14px; z-index:2; background:var(--red); color:#fff; font-family:var(--font-display); font-weight:600; font-size:.64rem; letter-spacing:.08em; text-transform:uppercase; padding:.42em .85em; border-radius:100px; }
.blog-body { padding:22px 24px 24px; display:flex; flex-direction:column; gap:.7rem; flex:1; }
.blog-meta { display:flex; gap:1rem; font-family:var(--font-display); font-weight:500; font-size:.74rem; letter-spacing:.04em; text-transform:uppercase; color:var(--muted); }
.blog-meta span { display:inline-flex; align-items:center; gap:.4em; }
.blog-meta svg { width:14px; height:14px; color:var(--red); }
.blog-card h3 { font-family:var(--font-display); font-weight:700; font-size:1.25rem; line-height:1.2; color:var(--navy); letter-spacing:-.01em; transition:color .3s; }
.blog-card:hover h3 { color:var(--red); }
.blog-card p { color:var(--muted); font-size:.95rem; line-height:1.55; }
.blog-read { margin-top:auto; display:inline-flex; align-items:center; gap:.4em; font-family:var(--font-display); font-weight:600; font-size:.85rem; color:var(--red); }
.blog-read svg { width:16px; height:16px; transition:transform .3s; }
.blog-card:hover .blog-read svg { transform:translateX(4px); }
@media (max-width:900px){ .blog-grid { grid-template-columns:repeat(2,1fr); } }
@media (max-width:560px){ .blog-grid { grid-template-columns:1fr; } }

/* =========================================================================
   CONCEPT 4 — CONTACT
   ========================================================================= */
.contact { background:#f5f7fa; }
.contact__grid { display:grid; grid-template-columns:1fr 1.05fr; gap:var(--space-xl); align-items:start; }
.contact__info .eyebrow { color:var(--red); }
.contact__info h2 { color:var(--navy); }
.contact__info p { color:var(--muted); font-size:1.05rem; margin-top:.6rem; max-width:44ch; }
.contact__list { margin-top:var(--space-lg); display:flex; flex-direction:column; gap:1.1rem; }
.contact__item { display:flex; align-items:center; gap:1rem; }
.contact__item .ic { width:48px; height:48px; border-radius:13px; background:var(--red); display:flex; align-items:center; justify-content:center; flex-shrink:0; box-shadow:0 12px 26px -12px rgba(224,164,0,.5); }
.contact__item .ic svg { width:22px; height:22px; color:#fff; }
.contact__item .t span { display:block; font-size:.76rem; letter-spacing:.06em; text-transform:uppercase; color:var(--muted); font-weight:600; }
.contact__item .t b { font-family:var(--font-display); font-weight:700; font-size:1.1rem; color:var(--navy); }
.contact__form { background:#fff; border:1px solid var(--line); border-radius:20px; padding:clamp(1.6rem,3vw,2.4rem); box-shadow:0 30px 60px -40px rgba(0,0,0,.4); }
.field { margin-bottom:1rem; }
.field label { display:block; font-family:var(--font-display); font-weight:600; font-size:.8rem; color:var(--navy); margin-bottom:.4rem; }
.field input, .field select, .field textarea { width:100%; padding:.9em 1.1em; border:1px solid #d9dde5; border-radius:12px; background:#fff; color:var(--ink); font:inherit; font-size:.95rem; transition:border-color .3s, box-shadow .3s; }
.field input:focus, .field select:focus, .field textarea:focus { outline:none; border-color:var(--red); box-shadow:0 0 0 3px rgba(224,164,0,.12); }
.field textarea { resize:vertical; min-height:120px; }
.field-row { display:grid; grid-template-columns:1fr 1fr; gap:1rem; }
.contact__form .btn-premium { width:100%; justify-content:center; margin-top:.4rem; }
@media (max-width:860px){ .contact__grid { grid-template-columns:1fr; gap:var(--space-lg); } }
@media (max-width:480px){ .field-row { grid-template-columns:1fr; } }


/* =========================================================================
   CONCEPT 4 — DESKTOP NAV DROPDOWNS
   ========================================================================= */
.nav__dd { position:relative; display:flex; align-items:center; }
.nav__dd-top .chev { display:inline-block; transition:transform .3s var(--ease); }
.nav__dd-menu { position:absolute; top:100%; left:50%; transform:translateX(-50%) translateY(12px); min-width:200px; background:#fff; border:1px solid var(--line); border-radius:12px; padding:8px; box-shadow:0 22px 46px -20px rgba(0,0,0,.4); opacity:0; visibility:hidden; transition:opacity .26s var(--ease), transform .26s var(--ease); z-index:130; }
.nav__dd-menu::before { content:""; position:absolute; top:-14px; left:0; right:0; height:14px; }
.nav__dd:hover .nav__dd-menu, .nav__dd:focus-within .nav__dd-menu { opacity:1; visibility:visible; transform:translateX(-50%) translateY(7px); }
.nav__dd:hover .nav__dd-top .chev, .nav__dd:focus-within .nav__dd-top .chev { transform:rotate(180deg); }
.nav__links .nav__dd-menu a { display:block; padding:.6em .9em; border-radius:8px; font-family:var(--font-display); font-weight:600; font-size:.85rem; letter-spacing:0; text-transform:none; color:var(--navy); transition:background .25s, color .25s, padding-left .25s; }
.nav__links .nav__dd-menu a:hover { background:rgba(224,164,0,.08); color:var(--red); padding-left:1.1em; }


/* =========================================================================
   CONCEPT 4 — MASTERMIND (future feature)
   ========================================================================= */
.mastermind { background:#ffffff; }
.mm-card { position:relative; overflow:hidden; border-radius:26px; background:#000; color:#fff; padding:clamp(2.6rem,4vw,4.5rem) var(--space-lg); text-align:center; }
.mm-card::before { content:""; position:absolute; inset:0; z-index:0; background:url('../img/pattern-map-2.png') center/cover no-repeat; opacity:.16; pointer-events:none; }
.mm-card::after { content:""; position:absolute; inset:0; z-index:0; background:radial-gradient(120% 120% at 50% 0%, rgba(224,164,0,.32), transparent 55%); pointer-events:none; }
.mm-card > * { position:relative; z-index:1; }
.mm-card .eyebrow { justify-content:center; color:#e0a400; margin-bottom:.5rem; }
.mm-badge { display:inline-flex; align-items:center; gap:.5em; font-family:var(--font-display); font-weight:600; font-size:.72rem; letter-spacing:.14em; text-transform:uppercase; padding:.5em .95em; border:1px solid rgba(255,255,255,.28); border-radius:100px; color:#fff; margin-bottom:var(--space-md); }
.mm-badge .dot { width:8px; height:8px; border-radius:50%; background:var(--red); box-shadow:0 0 0 0 rgba(224,164,0,.6); animation:mmPulse 2s infinite; }
@keyframes mmPulse { 0%{box-shadow:0 0 0 0 rgba(224,164,0,.5)} 70%{box-shadow:0 0 0 9px rgba(224,164,0,0)} 100%{box-shadow:0 0 0 0 rgba(224,164,0,0)} }
.mm-card h2 { color:#fff; }
.mm-card p { color:rgba(255,255,255,.74); max-width:56ch; margin:.6rem auto 0; font-size:1.06rem; }
.mm-note { margin-top:1rem; font-size:.82rem; color:rgba(255,255,255,.5); }
.mm-cta { margin-top:var(--space-md); display:flex; justify-content:center; }
.mm-waitlist { display:inline-flex; align-items:center; gap:.5em; width:auto; text-decoration:none; }
.mm-waitlist svg { width:20px; height:20px; }

/* =========================================================================
   ITERATION 1.1 — polish pass
   Keyboard-visible focus, brand text selection, top reading-progress bar.
   ========================================================================= */
:focus-visible { outline:2px solid var(--red); outline-offset:3px; border-radius:6px; }
::selection { background:var(--red); color:#fff; }

.read-progress {
  position:fixed; top:0; left:0; height:3px; width:0; z-index:101;
  background:var(--grad-cta); box-shadow:0 0 12px rgba(224,164,0,.5);
  transition:width .12s linear; pointer-events:none;
}
@media (prefers-reduced-motion: reduce){ .read-progress { transition:none; } }

/* =========================================================================
   STREAMIOD-STYLE BANNER (v1.1 Section 1) — red/navy theme, banner2 bg
   ========================================================================= */
.sbanner { position:relative; overflow:hidden; background:#000000; padding-top:clamp(185px,20vh,265px); padding-bottom:0; }
.sbanner__bg { position:absolute; inset:0; z-index:0; }
.sbanner__bg img { width:100%; height:100%; object-fit:cover; object-position:center; }
.sbanner__scrim { position:absolute; inset:0; z-index:1; background:linear-gradient(180deg, rgba(8,13,24,.82) 0%, rgba(8,13,24,.68) 28%, rgba(8,13,24,.4) 48%, rgba(8,13,24,.5) 64%, rgba(8,13,24,.82) 82%, rgba(8,13,24,.95) 100%); }
.sbanner__inner { position:relative; z-index:2; text-align:center; padding-inline:clamp(16px,3vw,48px); }
.sbanner__title { color:#fff; font-family:var(--font-head); font-weight:700; font-size:clamp(2.4rem,6vw,80px); line-height:1.06; letter-spacing:-.025em; max-width:min(1060px,92%); margin:0 auto 1.8rem; text-shadow:0 3px 30px rgba(0,0,0,.45); }
.sbanner__title .r { color:#e0a400; }
.sbanner__sub { color:rgba(255,255,255,.82); font-size:clamp(1rem,1.5vw,1.22rem); line-height:1.65; max-width:64ch; margin:0 auto 2rem; text-shadow:0 2px 18px rgba(0,0,0,.5); }
.sbanner__actions { display:flex; gap:1rem; justify-content:center; margin-bottom:clamp(2rem,4vw,3.4rem); flex-wrap:wrap; }
.sbtn { display:inline-flex; align-items:center; padding:1.05em 2.35em; border-radius:100px; font-family:var(--font-display); font-weight:700; font-size:1.02rem; white-space:nowrap; transition:background-position .5s var(--ease), color .35s var(--ease), transform .3s var(--ease), box-shadow .3s; }
.sbtn--red { background:linear-gradient(90deg, var(--navy) 0 50%, var(--red) 50%) right/200% 100%; color:#fff; box-shadow:0 14px 30px -10px rgba(224,164,0,.5); }
.sbtn--red:hover { background-position:left; transform:translateY(-2px); }
.sbtn--white { background:linear-gradient(90deg, var(--red) 0 50%, #fff 50%) right/200% 100%; color:var(--navy); }
.sbtn--white:hover { background-position:left; color:var(--navy); transform:translateY(-2px); }

/* Collage */
.sbanner__collage { display:grid; grid-template-columns:1fr 1.32fr 1.12fr 1.32fr 1fr; gap:20px; align-items:end; max-width:1460px; margin:0 auto; text-align:left; }
.scol { border-radius:18px; overflow:hidden; }
.scol--img { height:clamp(210px,15vw,250px); }
.scol--img img { width:100%; height:100%; object-fit:cover; }
.scol--portrait { height:clamp(380px,28vw,470px); border-radius:20px; }
.scol--portrait img { width:100%; height:100%; object-fit:cover; object-position:22% center; }
.scol--stats { display:flex; flex-direction:column; gap:20px; height:clamp(340px,25vw,410px); }
.scol--stats .sstat { flex:1; display:flex; flex-direction:column; justify-content:center; }
.sstat { border-radius:18px; padding:22px 24px; }
.scol--stats { justify-content:flex-end; }
.sstat__n { font-family:var(--font-display); font-weight:800; font-size:2.1rem; letter-spacing:-.02em; line-height:1; display:inline-block; }
.sstat__n em { font-style:normal; }
.sstat > span { font-family:var(--font-display); font-weight:600; font-size:.95rem; margin-left:.4em; }
.sstat p { font-size:.78rem; margin-top:.6rem; line-height:1.5; }
.sstat--dark { background:#ffffff; border:1px solid rgba(255,255,255,.7); color:var(--navy); box-shadow:0 20px 46px -22px rgba(0,0,0,.55); }
.sstat--dark .sstat__n, .sstat--dark > span { color:var(--navy); }
.sstat--dark p { color:var(--muted); }
.sstat--red { background:var(--grad-cta); color:#fff; box-shadow:0 16px 34px -16px rgba(224,164,0,.6); }
.sstat--red .sstat__n, .sstat--red > span { color:#fff; }
.sstat--red p { color:rgba(255,255,255,.86); }

/* Creator Talks card */
.scol--talk { position:relative; background:#ffffff; border:1px solid rgba(255,255,255,.7); border-radius:18px; padding:24px; color:var(--navy); height:clamp(340px,25vw,410px); display:flex; flex-direction:column; box-shadow:0 22px 50px -24px rgba(0,0,0,.55); }
.scol--talk h3 { font-family:var(--font-head); font-weight:700; font-size:1.45rem; margin-bottom:.5rem; color:var(--navy); }
.scol--talk > p { color:var(--muted); font-size:.86rem; margin-bottom:.9rem; max-width:24ch; }
.stalk__meta { display:flex; flex-direction:column; gap:.55rem; margin-bottom:1.1rem; }
.stalk__meta span { display:inline-flex; align-items:center; gap:.6em; font-size:1rem; color:var(--navy); font-weight:500; }
.stalk__meta svg { width:19px; height:19px; color:var(--red); }
.stalk__wave { flex:1; display:flex; align-items:center; gap:4px; min-height:0; margin:.5rem 0; }
.stalk__wave span { flex:1; max-width:5px; height:30%; border-radius:100px; background:var(--red); opacity:.8; animation:stalkWv 1.3s ease-in-out infinite; }
.stalk__wave span:nth-child(2n){ background:var(--navy); opacity:.5; animation-delay:.15s; }
.stalk__wave span:nth-child(3n){ animation-delay:.3s; }
.stalk__wave span:nth-child(4n){ animation-delay:.45s; opacity:.95; }
.stalk__wave span:nth-child(5n){ animation-delay:.2s; }
.stalk__wave span:nth-child(7n){ animation-delay:.35s; }
@keyframes stalkWv { 0%,100% { height:24%; } 50% { height:100%; } }
.stalk__foot { display:flex; align-items:center; gap:12px; }
.stalk__play { display:inline-flex; align-items:center; gap:.6em; font-family:var(--font-display); font-weight:700; font-size:.86rem; color:var(--navy); flex-shrink:0; }
.stalk__play .ic { width:40px; height:40px; border-radius:50%; background:var(--red); display:grid; place-items:center; box-shadow:0 10px 24px -10px rgba(224,164,0,.6); flex-shrink:0; }
.stalk__play .ic svg { width:16px; height:16px; margin-left:2px; fill:#fff; }
.stalk__img { margin-left:auto; width:46%; height:84px; border-radius:12px; overflow:hidden; flex-shrink:0; box-shadow:0 8px 18px -8px rgba(0,0,0,.5); }
.stalk__img img { width:100%; height:100%; object-fit:cover; }

/* 3D depth on all collage boxes */
.sbanner__collage .scol--img,
.sbanner__collage .scol--portrait,
.sbanner__collage .sstat,
.sbanner__collage .scol--talk {
  box-shadow:0 28px 54px -18px rgba(0,0,0,.62), 0 12px 24px -12px rgba(0,0,0,.5), inset 0 1px 0 rgba(255,255,255,.14);
  transition:transform .38s var(--ease), box-shadow .38s var(--ease);
  will-change:transform;
}
.sbanner__collage .scol--img:hover,
.sbanner__collage .scol--portrait:hover,
.sbanner__collage .sstat:hover,
.sbanner__collage .scol--talk:hover {
  transform:translateY(-8px);
  box-shadow:0 44px 76px -20px rgba(0,0,0,.72), 0 18px 32px -12px rgba(0,0,0,.55), inset 0 1px 0 rgba(255,255,255,.2);
}

/* Platforms strip (own solid-bg section below the banner) */
.splatforms { position:relative; overflow:hidden; background:#000000; padding-block:clamp(2.4rem,4.5vw,3.6rem); }
.splatforms::before { content:""; position:absolute; left:0; right:0; bottom:0; height:78%; z-index:0;
  background:url('../img/waveform.svg') repeat-x center bottom; background-size:auto 100%;
  opacity:.09; pointer-events:none;
  -webkit-mask-image:linear-gradient(90deg, transparent, #000 12%, #000 88%, transparent);
  mask-image:linear-gradient(90deg, transparent, #000 12%, #000 88%, transparent); }
.splatforms .container { position:relative; z-index:1; }
.sbanner__platforms { text-align:center; }
.sbanner__platforms > h2 { color:#fff; font-size:clamp(1.6rem,1.2rem+1.4vw,2.6rem); line-height:1.1; margin-bottom:1.6rem; }
.splat-row { display:flex; gap:18px; justify-content:space-between; flex-wrap:wrap; }
.splat { flex:1 1 210px; display:inline-flex; align-items:center; justify-content:center; gap:.85em; background:rgba(0,0,0,.72); border:1px solid rgba(255,255,255,.14); border-radius:100px; padding:.95em 1.5em; transition:background .3s, border-color .3s, transform .3s var(--ease); }
.splat:hover { background:rgba(224,164,0,.22); border-color:var(--red); transform:translateY(-2px); }
/* platforms not live yet — presented as status, not as links */
.splat--soon { cursor:default; }
.splat--soon:hover { background:rgba(0,0,0,.72); border-color:rgba(255,255,255,.14); transform:none; }
.splat--soon .splat__ic { color:rgba(255,255,255,.72); }
.splat__ic { width:42px; height:42px; border-radius:50%; background:rgba(255,255,255,.1); display:grid; place-items:center; color:#fff; flex-shrink:0; }
.splat__ic svg { width:22px; height:22px; }
.splat__t { text-align:left; color:rgba(255,255,255,.7); font-size:.78rem; line-height:1.25; }
.splat__t b { display:block; color:#fff; font-family:var(--font-display); font-weight:700; font-size:1.02rem; }

@media (max-width:1024px){
  .sbanner__collage { grid-template-columns:repeat(2,1fr); }
  .scol--portrait { grid-column:span 2; height:300px; }
}
@media (max-width:600px){
  .sbanner__collage { grid-template-columns:1fr; max-width:100%; }
  .scol--img, .scol--portrait { height:200px; }
  .scol--portrait { grid-column:auto; }
  .splat-row { display:grid; grid-template-columns:1fr 1fr; gap:12px; align-items:stretch; }
  .splat { justify-content:center; flex:none; padding:.85em .6em; }
  .splat__t { font-size:.72rem; }
  .splat__t b { font-size:.9rem; }
  .sbanner__title { font-size:clamp(1.7rem,7.6vw,2.4rem); max-width:100%; letter-spacing:-.02em; }
  .sbanner__sub { font-size:.98rem; margin-bottom:1.5rem; }
  .sbanner__inner { padding-inline:16px; }
  .sbanner__actions { gap:.6rem; }
  .sbtn { padding:.9em 1.4em; font-size:.9rem; }
}
html { overflow-x:hidden; }

/* =========================================================================
   FOOTER MIC IMAGE (right side, faded into dark)
   ========================================================================= */
.site-footer { position:relative; overflow:hidden; }
.footer-mic { position:absolute; top:0; right:0; bottom:0; width:clamp(340px,42%,700px); z-index:0; pointer-events:none; }
.footer-mic img { width:100%; height:100%; object-fit:cover; object-position:right center; }
.footer-mic::after { content:""; position:absolute; inset:0; background:linear-gradient(90deg, #000000 0%, rgba(0,0,0,.94) 24%, rgba(0,0,0,.5) 56%, rgba(0,0,0,.16) 84%, transparent 100%); }
.site-footer > .container { position:relative; z-index:1; }
@media (max-width:860px){ .footer-mic { display:none; } }

/* =========================================================================
   RECENT EPISODES — featured + list (Streamiod-style), dark
   ========================================================================= */
.recent { background:#000000; color:#fff; }
.recent .eyebrow { color:#e0a400; }
.recent__head { display:grid; grid-template-columns:1.3fr 1fr; gap:var(--space-lg); align-items:end; margin-bottom:var(--space-lg); }
.recent__head h2 { color:#fff; margin-top:.6rem; font-size:clamp(1.9rem,1.3rem+2vw,3.2rem); }
.recent__head-r p { color:rgba(255,255,255,.68); font-size:1.02rem; margin-bottom:1.3rem; max-width:46ch; }

.recent__grid { display:grid; grid-template-columns:1fr 1fr; gap:20px; align-items:stretch; }

.recent__feat { position:relative; border-radius:22px; overflow:hidden; min-height:600px; display:flex; flex-direction:column; }
.recent__feat > img { position:absolute; inset:0; width:100%; height:100%; object-fit:cover; transition:transform .6s var(--ease); }
.recent__feat:hover > img { transform:scale(1.04); }
.recent__feat-scrim { position:absolute; inset:0; background:linear-gradient(180deg, rgba(8,13,24,.28) 0%, transparent 26%, rgba(8,13,24,.55) 60%, rgba(8,13,24,.95) 100%); }
.recent__feat-top { position:relative; z-index:2; display:flex; gap:.8rem; align-items:center; flex-wrap:wrap; padding:22px; }
.rf-pill { background:var(--navy); color:#fff; font-family:var(--font-display); font-weight:600; font-size:.78rem; padding:.5em 1.1em; border-radius:100px; border:1px solid rgba(255,255,255,.22); }
.rf-tag { display:inline-flex; align-items:center; gap:.4em; font-family:var(--font-display); font-weight:500; font-size:.82rem; color:rgba(255,255,255,.9); }
.rf-tag svg { width:15px; height:15px; color:#e0a400; }
.recent__feat-body { position:relative; z-index:2; margin-top:auto; padding:26px; }
.recent__feat-body h3 { color:#fff; font-size:clamp(1.5rem,1.1rem+1.4vw,2.2rem); margin-bottom:.7rem; }
.recent__feat-body p { color:rgba(255,255,255,.82); max-width:48ch; font-size:1rem; }

.recent__list { display:flex; flex-direction:column; gap:20px; }
.rcard { flex:1; position:relative; overflow:hidden; display:flex; gap:1.2rem; background:linear-gradient(160deg,#101014,#000000); border:1px solid rgba(255,255,255,.1); border-radius:20px; padding:26px; transition:transform .35s var(--ease), box-shadow .35s, border-color .35s; }
.rcard:hover { transform:translateY(-4px); box-shadow:0 28px 54px -28px rgba(0,0,0,.7); border-color:rgba(224,164,0,.4); }
.rcard__body { flex:1; min-width:0; display:flex; flex-direction:column; }
.rcard__body h3 { color:#fff; font-size:clamp(1.15rem,1rem+.5vw,1.4rem); margin-bottom:.5rem; }
.rcard__body > p { color:rgba(255,255,255,.6); font-size:.9rem; margin-bottom:1rem; max-width:36ch; }
.rcard__meta { display:flex; flex-direction:column; gap:.4rem; margin-bottom:1.1rem; }
.rcard__meta span { display:inline-flex; align-items:center; gap:.5em; font-size:.85rem; color:rgba(255,255,255,.82); }
.rcard__meta svg { width:15px; height:15px; color:#e0a400; }
.rcard__play { display:inline-flex; align-items:center; gap:.7em; font-family:var(--font-display); font-weight:700; font-size:.88rem; color:#fff; margin-top:auto; }
.rcard__play .ic { width:40px; height:40px; border-radius:50%; background:var(--red); display:grid; place-items:center; box-shadow:0 10px 24px -10px rgba(224,164,0,.6); flex-shrink:0; }
.rcard__play .ic svg { width:16px; height:16px; margin-left:2px; }
.rcard__img { width:190px; flex-shrink:0; border-radius:14px; overflow:hidden; align-self:stretch; }
.rcard__img img { width:100%; height:100%; object-fit:cover; transition:transform .5s var(--ease); }
.rcard:hover .rcard__img img { transform:scale(1.06); }

@media (max-width:960px){
  .recent__head { grid-template-columns:1fr; }
  .recent__grid { grid-template-columns:1fr; }
  .recent__feat { min-height:440px; }
}
@media (max-width:560px){
  .rcard { flex-direction:column; }
  .rcard__img { width:100%; height:170px; align-self:auto; }
}

/* =========================================================================
   WHY CHOOSE US — masked mic image + checklist card
   ========================================================================= */
.choose { background:#fff; }
.choose__grid { display:grid; grid-template-columns:1fr 1fr; gap:var(--space-xl); align-items:center; }
.choose__content .eyebrow svg { width:16px; height:16px; }
.choose__content h2 { color:var(--navy); font-size:clamp(2rem,1.4rem+2.4vw,3.4rem); line-height:1.08; margin-top:.4rem; }
.choose__content h2 .r { color:var(--red); }
.choose__content > p { color:var(--muted); font-size:1.05rem; margin:1.2rem 0 1.9rem; max-width:52ch; }
.choose__feat { display:flex; gap:1.2rem; align-items:flex-start; margin-bottom:1.5rem; }
.choose__ic { position:relative; width:62px; height:62px; border-radius:50%; background:var(--red); display:grid; place-items:center; flex-shrink:0; box-shadow:0 12px 26px -12px rgba(224,164,0,.5); }
.choose__ic::after { content:""; position:absolute; inset:-6px; border-radius:50%; border:2px dashed rgba(224,164,0,.4); }
.choose__ic svg { width:27px; height:27px; }
.choose__feat h3 { color:var(--navy); font-size:1.2rem; margin-bottom:.35rem; }
.choose__feat p { color:var(--muted); font-size:.95rem; line-height:1.55; }
.choose__content .btn-premium { margin-top:.5rem; }

.choose { background:#f6f8fb; }
.choose__visual { position:relative; }
.choose__visual::before { content:""; position:absolute; top:46%; left:52%; transform:translate(-50%,-50%); width:min(92%,540px); aspect-ratio:1; border-radius:50%; background:radial-gradient(circle, rgba(224,164,0,.1), rgba(0,0,0,.05) 52%, transparent 72%); z-index:0; }
.choose-img { position:relative; z-index:1; width:min(96%,540px); aspect-ratio:1/1.02; margin-inline:auto;
  background:url(../img/ep-2.jpg) center/cover no-repeat;
  -webkit-mask-image:url(../img/bgmioc.png); mask-image:url(../img/bgmioc.png);
  -webkit-mask-repeat:no-repeat; mask-repeat:no-repeat;
  -webkit-mask-size:contain; mask-size:contain;
  -webkit-mask-position:center; mask-position:center; }
.choose__card { position:absolute; z-index:2; left:-2%; bottom:2%; background:#fff; border:1px solid var(--line); border-radius:16px; box-shadow:0 30px 60px -30px rgba(0,0,0,.45); padding:18px 22px; }
.choose__card li { display:flex; align-items:center; gap:.7em; font-family:var(--font-display); font-weight:600; font-size:.92rem; color:var(--navy); padding:.42em 0; }
.choose__card .chk { width:24px; height:24px; border-radius:50%; background:var(--red); display:grid; place-items:center; flex-shrink:0; }
.choose__card .chk svg { width:14px; height:14px; }

@media (max-width:900px){
  .choose__grid { grid-template-columns:1fr; gap:var(--space-lg); }
  .choose-img { max-width:440px; }
  .choose__card { left:0; }
}

/* =========================================================================
   TESTIMONIALS — cards + bleeding image
   ========================================================================= */
.testi { position:relative; overflow:hidden; background:#f4f7fb; }
.testi__media { position:absolute; top:0; right:0; bottom:0; width:clamp(280px,30%,560px); z-index:0; }
.testi__media img { width:100%; height:100%; object-fit:cover; }
.testi__media::before { content:""; position:absolute; inset:0; z-index:1; background:linear-gradient(90deg, #f4f7fb 0%, rgba(244,247,251,.55) 20%, transparent 50%); }
.testi__inner { position:relative; z-index:2; max-width:var(--maxw); margin-inline:auto; padding-inline:var(--space-md); }
.testi__head { margin-bottom:var(--space-lg); }
.testi__head .eyebrow { color:var(--red); }
.testi__head h2 { color:var(--navy); }
.testi__cards { display:grid; grid-template-columns:repeat(3,1fr); gap:22px; max-width:74%; }
.tcard { position:relative; background:#fff; border:1px solid var(--line); border-radius:18px; padding:28px; overflow:hidden; box-shadow:0 26px 54px -32px rgba(0,0,0,.35); transition:transform .4s var(--ease), box-shadow .4s; }
.tcard:hover { transform:translateY(-5px); box-shadow:0 34px 62px -32px rgba(0,0,0,.42); }
.tcard__stars { display:flex; gap:3px; color:var(--red); margin-bottom:1.1rem; }
.tcard__stars svg { width:18px; height:18px; }
.tcard > p { position:relative; z-index:1; color:var(--muted); font-style:italic; line-height:1.65; margin-bottom:1.3rem; }
.tcard__foot { position:relative; z-index:1; display:flex; align-items:center; gap:.85rem; border-top:1px solid var(--line); padding-top:1.1rem; }
.tcard__av { width:50px; height:50px; border-radius:50%; background:linear-gradient(150deg,#33343a,#000000); color:#fff; display:grid; place-items:center; font-family:var(--font-display); font-weight:800; font-size:1rem; box-shadow:0 0 0 3px rgba(224,164,0,.45); flex-shrink:0; }
.tcard__who b { display:block; font-family:var(--font-display); font-weight:700; color:var(--navy); font-size:1rem; }
.tcard__who span { font-size:.82rem; color:var(--red); font-weight:600; }
.tcard__mark { position:absolute; right:18px; bottom:-14px; font-family:var(--font-display); font-weight:800; font-size:7rem; line-height:1; color:rgba(224,164,0,.08); z-index:0; }

@media (max-width:1024px){
  .testi__media { display:none; }
  .testi__cards { max-width:100%; }
}
@media (max-width:760px){
  .testi__cards { grid-template-columns:1fr; }
}

/* =========================================================================
   FEATURED SHOWS — cover + episode list cards
   ========================================================================= */
.shows__head { display:flex; flex-direction:column; align-items:flex-start; text-align:left; margin-bottom:var(--space-lg); gap:.4rem; }
.shows__head h2 { color:var(--navy); }
.shows__browse { font-family:var(--font-display); font-weight:600; font-size:.78rem; letter-spacing:.1em; text-transform:uppercase; color:var(--red); transition:letter-spacing .3s; }
.shows__browse:hover { letter-spacing:.14em; }
.shows__grid { display:grid; grid-template-columns:repeat(3,1fr); gap:24px; }
.showx { display:flex; flex-direction:column; background:#fff; border-radius:20px; overflow:hidden; box-shadow:0 24px 54px -32px rgba(0,0,0,.32); transition:transform .4s var(--ease), box-shadow .4s; }
.showx:hover { transform:translateY(-6px); box-shadow:0 36px 66px -30px rgba(0,0,0,.42); }
.showx__cover { aspect-ratio:16/10; overflow:hidden; background:var(--navy); }
.showx__cover img { width:100%; height:100%; object-fit:cover; transition:transform .6s var(--ease); }
.showx:hover .showx__cover img { transform:scale(1.05); }
.showx__body { display:flex; flex-direction:column; flex:1; padding:clamp(20px,2vw,28px); }
.showx__body h3 { color:var(--navy); font-size:1.4rem; margin-bottom:.55rem; }
.showx__body > p { color:var(--muted); font-size:.92rem; line-height:1.55; margin-bottom:1.2rem; }
.showx__eps { display:flex; flex-direction:column; border-top:1px solid var(--line); }
.epx { display:flex; align-items:center; gap:.9rem; padding:.75rem 0; border-bottom:1px solid var(--line); transition:padding-left .3s var(--ease); }
.epx__play { width:44px; height:44px; border-radius:50%; border:1.5px solid var(--line); display:grid; place-items:center; color:var(--red); flex-shrink:0; transition:background .3s, color .3s, border-color .3s, box-shadow .3s; }
.epx__play svg { width:14px; height:14px; margin-left:2px; fill:currentColor; }
.epx:hover { padding-left:5px; }
.epx:hover .epx__play { background:var(--red); color:#fff; border-color:var(--red); box-shadow:0 10px 22px -10px rgba(224,164,0,.6); }
.epx__t { display:flex; flex-direction:column; min-width:0; }
.epx__no { font-family:var(--font-display); font-weight:600; font-size:.66rem; letter-spacing:.1em; text-transform:uppercase; color:var(--red); }
.epx__title { font-family:var(--font-display); font-weight:700; font-size:1rem; color:var(--navy); line-height:1.2; transition:color .3s; }
.epx:hover .epx__title { color:var(--red); }
.showx__browse { margin-top:1.2rem; font-family:var(--font-display); font-weight:600; font-size:.76rem; letter-spacing:.1em; text-transform:uppercase; color:var(--muted); transition:color .3s; }
.showx__browse:hover { color:var(--red); }

@media (max-width:1024px){ .shows__grid { grid-template-columns:1fr; max-width:560px; margin-inline:auto; } }

/* =========================================================================
   CONTACT — premium + Gravity Forms default classes/CSS (WordPress-ready)
   ========================================================================= */
.contact__grid { align-items:center; }
.contact__info h2 { color:var(--navy); }
.contact__info p { color:var(--muted); }
.contact__item { background:#fff; border:1px solid var(--line); border-radius:14px; padding:14px 16px; transition:transform .35s var(--ease), box-shadow .35s, border-color .35s; }
.contact__item:hover { transform:translateY(-3px); box-shadow:0 22px 44px -26px rgba(0,0,0,.4); border-color:transparent; }

/* Gravity Forms — styled as the premium form card */
.gform_wrapper { position:relative; overflow:hidden; background:#fff; border:1px solid var(--line); border-radius:22px; padding:clamp(1.8rem,3vw,2.8rem); box-shadow:0 44px 84px -46px rgba(0,0,0,.5); }
.gform_wrapper::before { content:""; position:absolute; top:0; left:0; right:0; height:4px; background:var(--grad-cta); }
.gform_wrapper form { margin:0; }
.gform_wrapper .gform_fields { display:grid; grid-template-columns:repeat(2,1fr); gap:1.2rem 1.15rem; list-style:none; margin:0; padding:0; }
.gform_wrapper .gfield { min-width:0; }
.gform_wrapper .gfield--width-full { grid-column:1 / -1; }
.gform_wrapper .gfield--width-half { grid-column:span 1; }
.gform_wrapper .gfield_label { display:block; font-family:var(--font-display); font-weight:600; font-size:.82rem; color:var(--navy); margin-bottom:.45rem; }
.gform_wrapper .gfield_required_asterisk { color:var(--red); margin-left:.15em; }
.gform_wrapper .ginput_container input,
.gform_wrapper .ginput_container select,
.gform_wrapper .ginput_container textarea {
  width:100%; padding:.95em 1.15em; border:1px solid #dfe3ea; border-radius:12px; background:#fff;
  color:var(--ink); font:inherit; font-size:.95rem; transition:border-color .3s, box-shadow .3s;
}
.gform_wrapper .ginput_container input::placeholder,
.gform_wrapper .ginput_container textarea::placeholder { color:#9aa2b1; }
.gform_wrapper .ginput_container input:focus,
.gform_wrapper .ginput_container select:focus,
.gform_wrapper .ginput_container textarea:focus { outline:none; border-color:var(--red); box-shadow:0 0 0 3px rgba(224,164,0,.12); }
.gform_wrapper .ginput_container_textarea textarea { min-height:132px; resize:vertical; }
.gform_wrapper .ginput_container_select select {
  appearance:none; -webkit-appearance:none; -moz-appearance:none;
  padding-right:3.2em; cursor:pointer;
  background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none'%3E%3Cpath d='M5 9l7 7 7-7' stroke='%23c5040f' stroke-width='2.6' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");
  background-repeat:no-repeat; background-position:right 1.1em center; background-size:24px 24px;
}
.gform_wrapper .ginput_container_select select::-ms-expand { display:none; }
.gform_wrapper .gform_footer { margin:1.5rem 0 0; padding:0; }
.gform_wrapper .gform_button {
  width:100%; display:inline-flex; align-items:center; justify-content:center; gap:.5em;
  padding:1.05em 1.7em; border:0; border-radius:100px; cursor:pointer;
  font-family:var(--font-display); font-weight:700; font-size:.92rem; letter-spacing:.04em; text-transform:uppercase; color:#fff;
  background:linear-gradient(90deg, var(--red) 0 50%, #141417 50%) right/200% 100%;
  box-shadow:0 14px 30px -10px rgba(0,0,0,.4);
  transition:background-position .5s var(--ease), transform .3s var(--ease), box-shadow .3s;
}
.gform_wrapper .gform_button:hover { background-position:left; color:#141417; transform:translateY(-2px); box-shadow:0 18px 36px -10px rgba(224,164,0,.5); }
.gform_wrapper .gform_button svg { width:16px; height:16px; }

@media (max-width:520px){ .gform_wrapper .gform_fields { grid-template-columns:1fr; } }

/* =========================================================================
   NEWSLETTER — compact strip above footer
   ========================================================================= */
.newsletter-bar { position:relative; overflow:hidden; color:#141417; padding-block:clamp(1.4rem, 2.6vw, 2.2rem);
  background:linear-gradient(115deg, #f7c93e 0%, #e7ad10 54%, #cc9400 100%); }
.newsletter-bar::before { content:""; position:absolute; inset:0; pointer-events:none;
  background:radial-gradient(120% 150% at 88% -35%, rgba(255,255,255,.34), transparent 46%); }
.newsletter-bar::after { content:""; position:absolute; inset:0; pointer-events:none;
  background:radial-gradient(90% 120% at -5% 125%, rgba(0,0,0,.17), transparent 50%); }
.newsletter-bar .container { position:relative; z-index:1; }
.newsletter-bar__grid { display:grid; grid-template-columns:1.25fr 1fr; gap:var(--space-lg); align-items:center; }
.newsletter-bar__text { position:relative; padding-left:70px; }
.newsletter-bar__text::before { content:""; position:absolute; left:0; top:0; width:52px; height:52px; border-radius:15px;
  background:#141417 url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23e0a400' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Crect x='3' y='5' width='18' height='14' rx='2'/%3E%3Cpath d='M4 7l8 6 8-6'/%3E%3C/svg%3E") center/26px no-repeat;
  box-shadow:0 14px 30px -12px rgba(0,0,0,.45); }
.newsletter-bar .eyebrow { color:#5a4300; }
.newsletter-bar .eyebrow::before { background:#5a4300; }
.newsletter-bar h2 { color:#141417; font-size:clamp(1.8rem, 1.3rem + 1.6vw, 2.7rem); margin:.5rem 0 .3rem; font-weight:800; letter-spacing:-.02em; line-height:1.05; }
.newsletter-bar h2 .dot { color:#141417; }
.newsletter-bar__text p { color:rgba(20,20,23,.82); font-size:1.02rem; margin:0; max-width:46ch; font-weight:500; }
.newsletter-bar .nl-form { margin:0; max-width:none; }
.newsletter-bar .nl-form input { background:#fff; border-color:rgba(0,0,0,.18); color:#141417; border-radius:100px; }
.newsletter-bar .nl-form input::placeholder { color:rgba(20,20,23,.5); }
.newsletter-bar .nl-btn { background:linear-gradient(90deg, #fff 0 50%, #141417 50%) right/200% 100%; color:#fff; }
.newsletter-bar .nl-btn:hover { background-position:left; color:#141417; transform:translateY(-2px); }
@media (max-width:820px){ .newsletter-bar__grid { grid-template-columns:1fr; gap:var(--space-md); } }

/* =========================================================================
   MEET THE HOSTS — team cards (photo + socials + name/role)
   ========================================================================= */
.hosts { background:#fff; }
.hosts__grid { display:grid; grid-template-columns:repeat(4,1fr); gap:24px; }
.hostx { background:#fff; border:1px solid var(--line); border-radius:20px; padding:14px; text-align:center; box-shadow:0 24px 54px -32px rgba(0,0,0,.3); transition:transform .4s var(--ease), box-shadow .4s; }
.hostx:hover { transform:translateY(-6px); box-shadow:0 36px 66px -30px rgba(0,0,0,.42); }
.hostx__photo { position:relative; border-radius:14px; overflow:hidden; aspect-ratio:1/1.16; background:var(--navy); }
.hostx__photo img { width:100%; height:100%; object-fit:cover; transition:transform .6s var(--ease); }
.hostx:hover .hostx__photo img { transform:scale(1.05); }
.hostx__social { position:absolute; top:14px; right:14px; display:flex; flex-direction:column; gap:9px; }
.hostx__social a { width:36px; height:36px; border-radius:50%; background:var(--red); color:#fff; display:grid; place-items:center; box-shadow:0 8px 18px -8px rgba(224,164,0,.6); transition:background .3s, transform .3s var(--ease); }
.hostx__social a:hover { background:var(--navy); transform:scale(1.12); }
.hostx__social svg { width:16px; height:16px; }
.hostx__info { padding:18px 6px 12px; }
.hostx__info h3 { color:var(--navy); font-size:1.25rem; }
.hostx__role { display:inline-block; position:relative; color:var(--red); font-family:var(--font-display); font-weight:600; font-size:.9rem; margin-top:.3rem; padding-bottom:14px; }
.hostx__role::after { content:""; position:absolute; left:50%; bottom:0; transform:translateX(-50%); width:56px; height:3px; border-radius:3px; background:var(--red); transition:width .35s var(--ease); }
.hostx:hover .hostx__role::after { width:84px; }

@media (max-width:1024px){ .hosts__grid { grid-template-columns:repeat(2,1fr); } }
@media (max-width:520px){ .hosts__grid { grid-template-columns:1fr; max-width:340px; margin-inline:auto; } }

/* Single-host feature — big circle photo + text + episode player */
.host-circle { display:grid; grid-template-columns:1fr 1fr; align-items:center; gap:clamp(1.5rem,5vw,4.5rem); max-width:1160px; margin:0 auto; }
.host-circle__media { position:relative; display:flex; align-items:center; justify-content:center; }
.host-circle__glow { position:absolute; left:50%; top:50%; transform:translate(-50%,-50%); width:92%; aspect-ratio:1; border-radius:50%; z-index:0; filter:blur(52px); opacity:.5;
  background:conic-gradient(from 130deg, #ffd97a, #e0a400, #ffcf6b, #f6b53f, #caa24a, #ffd97a); }
.host-circle__img { position:relative; z-index:1; width:min(100%,440px); aspect-ratio:1; border-radius:50%; overflow:hidden; border:10px solid #fff; background:#f3f5f8; box-shadow:0 50px 92px -40px rgba(0,0,0,.42); }
.host-circle__img img { width:100%; height:100%; object-fit:cover; display:block; transition:transform .7s var(--ease); }
.host-circle:hover .host-circle__img img { transform:scale(1.05); }
.host-circle__body .eyebrow { justify-content:flex-start; }
.host-circle__title { font-family:var(--font-head); font-size:clamp(2.2rem,1.5rem + 2.6vw,3.6rem); line-height:1.08; color:var(--navy); margin:.5rem 0 1rem; }
.host-circle__body > p { color:var(--muted); font-size:1.06rem; line-height:1.72; margin:0 0 1.7rem; max-width:46ch; }
.host-circle__body > p:last-child { margin-bottom:0; }

@media (max-width:860px){
  .host-circle { grid-template-columns:1fr; text-align:center; gap:1.5rem; }
  .host-circle__body .eyebrow { justify-content:center; }
  .host-circle__body > p { margin-inline:auto; }
}

/* =========================================================================
   FEATURED GUESTS — dark slider
   ========================================================================= */
.guests { position:relative; color:#fff; background:linear-gradient(180deg, rgba(8,13,24,.9) 0%, rgba(8,13,24,.86) 100%), url(../img/hero-2.jpg) center/cover no-repeat; }
@media (min-width:768px){ .guests { background-attachment:fixed, fixed; } }
.guests .head-center h2 { color:#fff; }
.guests .head-center .eyebrow { color:#e0a400; }
.guests .head-center p { color:rgba(255,255,255,.7); }
.guests__wrap { position:relative; }
.guests__track { display:flex; gap:18px; overflow-x:auto; scroll-snap-type:x proximity; padding:8px 2px 18px; scrollbar-width:none; scroll-behavior:smooth; }
.guests__track::-webkit-scrollbar { display:none; }
.guests__track [data-reveal] { opacity:1; transform:none; }
.guests__track .guest-card { flex:0 0 clamp(232px,24vw,272px); scroll-snap-align:start; background:#fff; border:1px solid var(--line); }
.guests .guest-card:hover { border-color:transparent; box-shadow:0 34px 60px -30px rgba(0,0,0,.55); }
.guests .guest-card h3 { color:var(--navy); }
.guests .guest-role { color:var(--muted); }
.guests .guest-co { color:var(--red); display:block; }
.guests .guest-ep { color:var(--navy); display:flex; justify-content:center; }
.guests .guest-av { box-shadow:0 0 0 3px rgba(224,164,0,.35); }
.guests .shows__arrow { background:var(--red); border-color:var(--red); color:#fff; }
.guests .shows__arrow:hover { background:#fff; border-color:#fff; color:var(--red); }
.guests .btn-outline { border-color:rgba(255,255,255,.55); color:#fff; }
.guests .btn-outline:hover { border-color:var(--red); color:#fff; }

/* Few guests (<6): no slider — center the cards, hide arrows, allow wrapping */
.guests__wrap.is-static .guests__track { overflow:visible; justify-content:center; flex-wrap:wrap; gap:24px; scroll-snap-type:none; }
.guests__wrap.is-static .guests__track .guest-card { flex:0 0 clamp(240px,26vw,290px); scroll-snap-align:none; }
.guests__wrap.is-static .shows__arrow { display:none !important; }

/* Featured Guests — mobile: one card per view, tappable red arrows on the sides.
   Overrides the generic `.shows__arrow{display:none}` for the guests slider only. */
@media (max-width:640px){
  .guests__wrap.is-slider .guests__track { scroll-snap-type:x mandatory; gap:12px; }
  .guests__wrap.is-slider .guests__track .guest-card { flex:0 0 84%; scroll-snap-align:center; }
  .guests__wrap.is-slider .shows__arrow { display:grid; width:44px; height:44px; box-shadow:0 10px 24px -8px rgba(0,0,0,.6); }
  .guests__wrap.is-slider .shows__arrow.prev { left:2px; }
  .guests__wrap.is-slider .shows__arrow.next { right:2px; }
  .guests__wrap.is-static .guests__track .guest-card { flex:0 0 clamp(240px,80vw,300px); }
}

/* =========================================================================
   GOLD ACCENTS (v1.1) — sparing premium accent (#E0A400) alongside red.
   Kept OFF red-adjacent elements; red stays the primary brand color.
   ========================================================================= */
:root { --gold:#e0a400; --gold-2:#f4c95a; }

/* Testimonials — the gold moment */
.tcard__stars { color:var(--gold); }
.testi__head .eyebrow { color:var(--gold); }
.testi__head .eyebrow::before { background:var(--gold); }
.tcard__av { box-shadow:0 0 0 3px rgba(224,164,0,.55); }

/* Hero headline stat number */
.sstat--dark .sstat__n { color:var(--gold); }

/* About — the "+" marks on the stats */
.about__stats .s strong em { color:var(--gold); }

/* Meet the Hosts — eyebrow */
.hosts .head-center .eyebrow { color:var(--gold); }
.hosts .head-center .eyebrow::before { background:var(--gold); }

/* ===================== GOLD THEME - contrast (dark ink on gold) ===================== */
:root{ --gold-ink:#000000; }
.eyebrow{ color:#b07f00; }
.btn-premium{ background:linear-gradient(90deg,#fff 0 50%,var(--red) 50%) right/200% 100%; color:var(--gold-ink); }
.btn-premium:hover{ color:var(--gold-ink); }
.sbtn--red{ color:var(--gold-ink); }
.sbtn--red:hover{ color:#fff; }
.btn-outline:hover{ color:var(--gold-ink); }
.nl-btn, .nl-btn:hover{ color:var(--gold-ink); }
.gform_button, .gform_wrapper .button{ color:#fff; }
.nav__phone .ic svg, .footer-brand .f-phone .ic svg{ color:var(--gold-ink); }
.play-btn svg, .stalk__play .ic svg{ fill:var(--gold-ink); }
.to-top{ color:var(--gold-ink); }
.to-top:hover{ color:#fff; }
.rf-pill, .badge-feat, .blog-cat, .sstat--red, .sstat--red *{ color:var(--gold-ink); }
.recent__feat-top span.rf-pill { color: #fff; }
.guest-av, .tcard__av{ color:#fff; }

/* Gravity-Forms newsletter/waitlist inline layout */
.nl-gform{ display:contents; }
.nl-form .gform_body{ flex:1; min-width:0; }
.nl-form .gform_fields{ display:block; }
.nl-form .gfield{ margin:0; }
.nl-form .ginput_container{ margin:0; }
.nl-form .gfield_label.screen-reader-text{ position:absolute; width:1px; height:1px; overflow:hidden; clip:rect(0 0 0 0); white-space:nowrap; }
.nl-form input{ width:100%; }
.nl-form .gform_footer{ margin:0; padding:0; }
/* Gravity-Forms blog search inline layout */
.widget-search .gform_body{ flex:1; min-width:0; }
.widget-search .gform_fields{ display:block; }
.widget-search .gfield{ margin:0; }
.widget-search .ginput_container{ margin:0; }
.widget-search .gfield_label.screen-reader-text{ position:absolute; width:1px; height:1px; overflow:hidden; clip:rect(0 0 0 0); white-space:nowrap; }
.widget-search input{ width:100%; }
.widget-search .gform_footer{ margin:0; padding:0; }
.choose__ic svg, .choose__card .chk svg{ stroke:var(--gold-ink); }
/* ===== Sticky (scrolled) header: Become-a-Guest wipes gold -> black left-to-right ===== */
.site-header.scrolled .btn-premium { background:linear-gradient(90deg,#000000 0 50%, var(--red) 50%) right/200% 100%; }
.site-header.scrolled .btn-premium:hover { background-position:left; color:#fff; }

/* ===== Soft hover transitions for non-button interactive elements (safety net) ===== */
.footer-col a, .footer-bottom .legal a, .breadcrumb a, .breadcrumb b, .nav__links a,
.nav__dd-menu a, .mobile-nav a, .splat, .contact__item, .topic-card, .guest-card,
.show-card, .blog-card, .blog-feature, .hostx, .epi, .gcard, .value, .tier, .widget,
.cat-list a, .recent-post a, .tagcloud a, .side-links a, .notes-list a, .share-row a,
.gcard__social a, .hostx__social a, .footer-social a, .pager a, .chip, .faq__item,
.blog-read, .gcard__link, .guest-ep, .gallery__item, .recent-post img, .rp-body a {
  transition-property: color, background-color, border-color, transform, box-shadow, opacity, padding, filter;
  transition-duration: .3s;
  transition-timing-function: cubic-bezier(.22,.61,.36,1);
}
/* subtle image zoom for recent-post + gentle lift where a hover exists but was flat */
.recent-post img { will-change: transform; }
/* ===== Newsletter GF form: input fills the row (no gap before button) ===== */
.nl-form .gform_fields, .nl-form .gfield, .nl-form .ginput_container { width:100%; }
/* ===== Header nav font: smaller on laptop widths so it is not oversized ===== */
@media (min-width:1181px) and (max-width:1360px){
  .nav__links { gap:1rem; }
  .nav__links a { font-size:.8rem; letter-spacing:.03em; }
  .nav__phone { font-size:1.05rem; }
}
/* ===== Mobile off-canvas menu: more compact link size on tablet/phone ===== */
@media (max-width:1180px){
  .mobile-nav a { font-size:0.9rem; }
  .mobile-nav__sub a { font-size:0.88rem; }
}
/* ===== Mobile/tablet hero: reduce oversized top gap under the fixed header ===== */
@media (max-width:1024px){
  .sbanner { padding-top:clamp(100px, 13vh, 132px); }
}
@media (max-width:600px){
  .sbanner { padding-top:96px; }
}
/* ===== Mobile/tablet footer (<=1024): centered, gold-pill headings, divider links ===== */
@media (max-width:1024px){
  .footer-mic { display:none; }
  .footer-top { grid-template-columns:1fr; gap:var(--space-lg); text-align:center; }
  .footer-brand { grid-column:auto; display:flex; flex-direction:column; align-items:center; }
  .footer-brand p { max-width:54ch; }
  .footer-social { justify-content:center; }
  .footer-col { width:100%; max-width:440px; margin-inline:auto; }
  .footer-col h4 { display:block; background:linear-gradient(120deg,#f2c130,#e0a400); color:#0F172A;
    padding:.9em 1em; border-radius:100px; text-align:center; margin:0 0 .4rem; font-size:.92rem; letter-spacing:.1em;
    box-shadow:0 14px 28px -12px rgba(224,164,0,.5); }
  .footer-col a { text-align:center; border-bottom:1px solid rgba(255,255,255,.1); padding:.9em 0; }
  .footer-col a:last-child { border-bottom:0; }
  .footer-col a:hover { padding-left:0; color:#f0c24a; }
  .footer-bottom { flex-direction:column; text-align:center; gap:.7rem; }
  .footer-bottom .legal { justify-content:center; }
}
/* ===== Mobile fixed bottom action bar (edge-to-edge, two buttons) ===== */
.mbar { display:none; }
@media (max-width:600px){
  .mbar { display:grid; grid-template-columns:1fr 1fr; position:fixed; left:0; right:0; bottom:0; z-index:96;
    box-shadow:0 -12px 30px -12px rgba(0,0,0,.55); }
  .mbar__a { display:flex; align-items:center; justify-content:center; gap:.5em; padding:1.05em .5em;
    font-family:var(--font-display); font-weight:700; font-size:.92rem; letter-spacing:.02em; }
  .mbar__a svg { width:18px; height:18px; }
  .mbar__a--dark { background:#141417; color:#fff; }
  .mbar__a--dark svg { fill:#e0a400; }
  .mbar__a--gold { background:var(--red); color:#0F172A; }
  .mbar__a--gold svg { fill:#0F172A; }
  body { padding-bottom:54px; }
  .to-top { bottom:70px; }
}