/* njsanecourtney.com — shared stylesheet
   Brand: Navy #0D1B3E (anchor) / Orange #E8611A (accent only) / White / warm light gray
   Type: Bebas Neue (display) + Montserrat (body) — per MFIHR_MASTER_BRAND_AND_STRATEGY.md, toned down for an executive site */

:root {
  --navy: #0D1B3E;
  --orange: #E8611A;
  --white: #FFFFFF;
  --warm-gray: #F7F6F3;
  --body-gray: #4B5563;
  --border: #E4E1DA;
  --ink-light: #D7DAE6;
}

/* Toast (mailto / subscribe confirmation): anchored just below whatever
   the person clicked (see positionToast() in script.js) rather than fixed
   to the bottom of the viewport, so it doesn't disappear into the navy
   footer or require scrolling to see on mobile. White card + orange accent
   keeps it readable against any section background. */
.njc-toast {
  position: absolute;
  background: var(--white);
  color: var(--navy);
  padding: 12px 18px;
  border-radius: 6px;
  border-left: 4px solid var(--orange);
  font-family: 'Montserrat', sans-serif;
  font-size: 0.85rem;
  font-weight: 600;
  line-height: 1.4;
  box-shadow: 0 10px 30px rgba(13,27,62,0.25);
  opacity: 0;
  z-index: 1000;
  max-width: min(320px, 90vw);
  text-align: left;
  transform: translateY(-6px);
  transition: opacity 0.2s ease, transform 0.2s ease;
  pointer-events: none;
}
.njc-toast.show { opacity: 1; transform: translateY(0); }
.njc-toast-fallback {
  position: fixed;
  left: 50%;
  bottom: 30px;
  transform: translateX(-50%) translateY(20px);
}
.njc-toast-fallback.show { transform: translateX(-50%) translateY(0); }
@media (max-width: 600px) {
  .njc-toast { left: 16px !important; right: 16px; max-width: none; }
  .njc-toast-fallback { right: 16px; }
}

* { box-sizing: border-box; margin: 0; padding: 0; }

body {
  font-family: 'Montserrat', sans-serif;
  color: var(--body-gray);
  background: var(--white);
  line-height: 1.65;
}

h1, h2, h3, .display {
  font-family: 'Bebas Neue', sans-serif;
  color: var(--navy);
  letter-spacing: 0.5px;
  line-height: 1.1;
}

h1 { font-size: 3.2rem; }
h2 { font-size: 2.2rem; margin-bottom: 1.2rem; }
h3 { font-size: 1.5rem; margin-bottom: 0.6rem; }

a { color: var(--orange); text-decoration: none; }
a:hover { text-decoration: underline; }

.container { max-width: 1080px; margin: 0 auto; padding: 0 24px; }

/* Nav */
.site-nav {
  background: var(--white);
  border-bottom: 1px solid var(--border);
  position: sticky;
  top: 0;
  z-index: 100;
}
.site-nav .container {
  display: flex;
  align-items: center;
  justify-content: space-between;
  height: 76px;
  max-width: 1320px;
}
.nav-logo {
  font-family: 'Bebas Neue', sans-serif;
  font-size: 1.6rem;
  color: var(--navy);
  letter-spacing: 1px;
  white-space: nowrap;
  flex-shrink: 0;
}
.nav-links { display: flex; gap: 18px; list-style: none; flex-wrap: nowrap; }
.nav-links a {
  color: var(--navy);
  font-size: 0.78rem;
  font-weight: 600;
  text-transform: uppercase;
  letter-spacing: 0.5px;
  white-space: nowrap;
}
.nav-links a:hover { color: var(--orange); text-decoration: none; }
.nav-toggle { display: none; background: none; border: none; font-size: 1.6rem; color: var(--navy); cursor: pointer; }

@media (max-width: 760px) {
  .nav-links {
    display: none;
    flex-direction: column;
    position: absolute;
    top: 76px; left: 0; right: 0;
    background: var(--white);
    border-bottom: 1px solid var(--border);
    padding: 16px 24px;
    gap: 16px;
  }
  .nav-links.open { display: flex; }
  .nav-toggle { display: block; }
}

/* Hero */
.hero {
  background: #0D1B3E;
  color: var(--white);
  padding: 289px 0 190px;
  text-align: center;
  position: relative;
  overflow: hidden;
  min-height: 1000px;
  display: flex;
  align-items: center;
}
.hero-video {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: center 25%;
  z-index: 0;
}
.hero-overlay {
  position: absolute;
  inset: 0;
  background: linear-gradient(160deg, rgba(13,27,62,0.88) 0%, rgba(22,38,79,0.82) 60%, rgba(13,27,62,0.92) 100%);
  z-index: 1;
}
.hero .container { position: relative; z-index: 2; }
.hero-placeholder-note {
  font-size: 0.7rem;
  color: #9aa5c4;
  text-transform: uppercase;
  letter-spacing: 1px;
  border: 1px dashed #4a5686;
  display: inline-block;
  padding: 6px 14px;
  border-radius: 3px;
  margin-bottom: 24px;
}
.hero h1 { color: var(--white); font-size: 3.4rem; max-width: 780px; margin: 0 auto 20px; }
.hero .subhead { font-size: 1.15rem; max-width: 620px; margin: 0 auto 36px; color: #D7DAE6; }
.hero-buttons { display: flex; gap: 16px; justify-content: center; flex-wrap: wrap; }

.hero-stats {
  display: flex;
  justify-content: center;
  align-items: flex-start;
  gap: 56px;
  flex-wrap: wrap;
  margin-top: 30px;
  padding-top: 22px;
  border-top: 1px solid rgba(255,255,255,0.25);
}
.hero-stats .stat-number { font-size: 2.6rem; }
.hero-stats .stat-label { color: #D7DAE6; }

@media (max-width: 760px) {
  .hero-stats { gap: 32px; margin-top: 20px; padding-top: 16px; }
  .hero-stats .stat-number { font-size: 2rem; }
}

@media (max-width: 760px) {
  .hero { min-height: 544px; padding: 119px 0 60px; }
}

.btn {
  display: inline-block;
  padding: 14px 28px;
  border-radius: 3px;
  font-weight: 600;
  font-size: 0.85rem;
  text-transform: uppercase;
  letter-spacing: 0.5px;
}
.btn i { margin-right: 7px; }
.hero-buttons-nowrap { flex-wrap: nowrap; gap: 10px; }
.hero-buttons-nowrap .btn { padding: 12px 16px; font-size: 0.75rem; white-space: nowrap; }
@media (max-width: 700px) {
  .hero-buttons-nowrap { gap: 6px; }
  .hero-buttons-nowrap .btn { padding: 10px 10px; font-size: 0.65rem; }
  .hero-buttons-nowrap .btn i { margin-right: 4px; }
}
@media (max-width: 480px) {
  .hero-buttons-nowrap { overflow-x: auto; justify-content: flex-start !important; -webkit-overflow-scrolling: touch; padding-bottom: 4px; }
}
.btn-primary { background: var(--orange); color: var(--white); }
.btn-primary:hover { background: #cf5414; text-decoration: none; }
.btn-outline { border: 1.5px solid var(--white); color: var(--white); }
.btn-outline:hover { background: rgba(255,255,255,0.1); text-decoration: none; }
.btn-outline-navy { border: 1.5px solid var(--navy); color: var(--navy); }
.btn-outline-navy:hover { background: var(--navy); color: var(--white); text-decoration: none; }

/* Sections */
.section { padding: 80px 0; }
.section-alt { background: var(--warm-gray); }
.section-navy { background: var(--navy); color: #D7DAE6; }
.section-navy h2 { color: var(--white); }

.pillars { display: grid; grid-template-columns: repeat(3, 1fr); gap: 32px; margin-top: 40px; }
@media (max-width: 760px) { .pillars { grid-template-columns: 1fr; } }
.pillar {
  display: block;
  padding: 28px;
  border: 1px solid var(--border);
  border-radius: 4px;
  text-decoration: none;
  color: inherit;
  transition: transform 0.15s ease, box-shadow 0.15s ease;
}
.pillar:hover { text-decoration: none; transform: translateY(-3px); box-shadow: 0 14px 30px rgba(13,27,62,0.12); }
.pillar .accent-rule { width: 40px; height: 3px; background: var(--orange); margin-bottom: 16px; }

/* Trust bar */
.trust-bar {
  padding: 48px 0;
  text-align: center;
  border-top: 1px solid var(--border);
  border-bottom: 1px solid var(--border);
}
.trust-bar p { text-transform: uppercase; font-size: 0.85rem; font-weight: 700; letter-spacing: 1.5px; color: var(--navy); margin-bottom: 20px; }
.trust-placeholder {
  border: 1px dashed #D1D5DB;
  color: #9CA3AF;
  font-size: 0.85rem;
  padding: 18px;
  border-radius: 4px;
}
.trust-marquee {
  overflow: hidden;
  position: relative;
  width: 100%;
  max-width: 760px;
  margin: 0 auto;
  -webkit-mask-image: linear-gradient(90deg, transparent, #000 8%, #000 92%, transparent);
  mask-image: linear-gradient(90deg, transparent, #000 8%, #000 92%, transparent);
}
.trust-track {
  display: flex;
  align-items: center;
  gap: 70px;
  width: max-content;
  animation: trust-slide 24s linear infinite;
}
.trust-marquee:hover .trust-track { animation-play-state: paused; }
.trust-logo {
  height: 60px;
  width: auto;
  max-width: 200px;
  object-fit: contain;
  opacity: 0.85;
  filter: grayscale(15%);
  flex-shrink: 0;
}
@keyframes trust-slide {
  from { transform: translateX(0); }
  to { transform: translateX(-50%); }
}
@media (max-width: 760px) {
  .trust-logo { height: 40px; max-width: 130px; }
  .trust-track { gap: 40px; animation-duration: 18s; }
}
@media (prefers-reduced-motion: reduce) {
  .trust-track { animation: none; }
}

/* Cards / lists */
.topic-list { list-style: none; margin-top: 24px; }
.topic-list li {
  padding: 18px 0;
  border-bottom: 1px solid var(--border);
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: 12px;
}
.topic-list li span {
  font-weight: 600;
  color: var(--navy);
}
.topic-list li .btn {
  padding: 8px 18px;
  font-size: 0.75rem;
  flex-shrink: 0;
}

/* Topic detail pages */
.topic-hero-label {
  text-transform: uppercase;
  letter-spacing: 1px;
  font-size: 0.8rem;
  font-weight: 700;
  color: var(--orange);
  margin-bottom: 10px;
  display: block;
}
.topic-back-link { font-size: 0.85rem; font-weight: 600; }
.topic-takeaways { margin: 20px 0 0; padding-left: 20px; color: var(--body-gray); }
.topic-takeaways li { margin-bottom: 10px; }
.topic-meta-box {
  background: var(--warm-gray);
  border-left: 3px solid var(--orange);
  border-radius: 4px;
  padding: 22px 26px;
  margin: 32px 0;
}
.topic-meta-box h3 { font-size: 1.1rem; margin-bottom: 8px; }
.topic-meta-box p { margin: 0; color: var(--body-gray); }

.pull-quote {
  background: var(--navy);
  color: var(--white);
  font-family: 'Bebas Neue', sans-serif;
  font-size: 1.6rem;
  text-align: center;
  padding: 50px 40px;
  border-radius: 4px;
  margin: 40px 0;
  letter-spacing: 0.5px;
}

.stats-row {
  display: flex;
  justify-content: center;
  align-items: flex-start;
  gap: 70px;
  flex-wrap: wrap;
  text-align: center;
  margin-top: 32px;
  padding-top: 32px;
  border-top: 1px solid var(--border);
}
.stat-item { display: flex; flex-direction: column; align-items: center; }
.stat-number-row { display: flex; align-items: center; gap: 12px; }
.stat-icon { height: 34px; width: auto; }
.stat-number {
  font-family: 'Bebas Neue', sans-serif;
  font-size: 4rem;
  color: var(--orange);
  letter-spacing: 0.5px;
  line-height: 1;
}
.stat-label {
  font-size: 0.85rem;
  text-transform: uppercase;
  letter-spacing: 0.75px;
  color: var(--body-gray);
  margin-top: 8px;
  font-weight: 700;
}

.headshot-row { display: flex; gap: 40px; align-items: center; margin-bottom: 36px; }
.headshot-row img { width: 200px; height: auto; border-radius: 6px; box-shadow: 0 8px 24px rgba(13,27,62,0.18); flex-shrink: 0; object-fit: cover; }
@media (max-width: 760px) {
  .headshot-row { flex-direction: column; text-align: center; }
  .headshot-row img { width: 160px; height: 160px; object-fit: cover; object-position: top; }
}

.testimonial-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 20px; margin: 24px 0; }
@media (max-width: 900px) { .testimonial-grid { grid-template-columns: 1fr 1fr; } }
@media (max-width: 600px) { .testimonial-grid { grid-template-columns: 1fr; } }
.testimonial-card {
  background: var(--warm-gray);
  border-radius: 4px;
  padding: 24px;
  border-left: 3px solid var(--orange);
}
.testimonial-card p { color: var(--navy); font-style: italic; margin-bottom: 12px; }
.testimonial-card span { font-size: 0.8rem; color: var(--body-gray); font-style: normal; }

.placeholder-box {
  border: 2px dashed #D1D5DB;
  background: #FAFAF8;
  color: #9CA3AF;
  padding: 24px;
  border-radius: 4px;
  font-size: 0.9rem;
  text-align: center;
  margin: 20px 0;
}

/* Watch page */
.watch-intro-banner {
  width: 100%;
  max-height: 460px;
  object-fit: cover;
  border-radius: 6px;
  display: block;
  margin: 24px 0;
  box-shadow: 0 8px 24px rgba(13,27,62,0.18);
}
@media (max-width: 760px) {
  .watch-intro-banner { max-height: 260px; margin: 18px 0; }
}
.watch-featured { margin-top: 24px; }
.watch-featured video {
  width: 100%;
  border-radius: 6px;
  display: block;
  background: #000;
  box-shadow: 0 8px 24px rgba(13,27,62,0.18);
}
.watch-featured-caption { display: flex; justify-content: space-between; align-items: flex-start; flex-wrap: wrap; gap: 10px; margin-top: 14px; }
.watch-featured-caption h3 { margin-bottom: 2px; }
.watch-featured-caption span { color: var(--body-gray); font-size: 0.9rem; }

/* Play-button overlay: a large, obvious play icon sits centered on every
   poster'd clip (featured video + the "More Clips" grid) so it's clear at a
   glance which images are playable video and where to click. It disappears
   once that video starts playing so it doesn't sit on top of the controls. */
.watch-video-wrap { position: relative; }
.watch-play-badge {
  position: absolute; inset: 0; display: flex; align-items: center; justify-content: center;
  pointer-events: none; transition: opacity 0.15s ease;
}
.watch-play-badge span {
  width: 64px; height: 64px; border-radius: 50%; background: rgba(13,27,62,0.78);
  display: flex; align-items: center; justify-content: center;
  box-shadow: 0 4px 14px rgba(0,0,0,0.3);
}
.watch-play-badge span::before {
  content: ""; border-style: solid; border-width: 12px 0 12px 20px; border-color: transparent transparent transparent #fff; margin-left: 5px;
}
.watch-play-badge-lg span { width: 84px; height: 84px; }
.watch-play-badge-lg span::before { border-width: 15px 0 15px 25px; margin-left: 6px; }
.watch-video-wrap.is-playing .watch-play-badge { opacity: 0; }
@media (max-width: 760px) {
  .watch-play-badge span { width: 48px; height: 48px; }
  .watch-play-badge span::before { border-width: 9px 0 9px 15px; margin-left: 4px; }
  .watch-play-badge-lg span { width: 64px; height: 64px; }
  .watch-play-badge-lg span::before { border-width: 12px 0 12px 20px; margin-left: 5px; }
}

.watch-grid {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 28px;
  margin-top: 20px;
}
@media (max-width: 760px) {
  .watch-grid { grid-template-columns: 1fr 1fr; gap: 18px; }
}
.watch-card video {
  width: 100%;
  aspect-ratio: 9 / 16;
  object-fit: cover;
  border-radius: 6px;
  display: block;
  background: #000;
  box-shadow: 0 6px 16px rgba(13,27,62,0.15);
}
.watch-card h3 { font-size: 1.05rem; margin: 12px 0 2px; }
.watch-card span { color: var(--body-gray); font-size: 0.8rem; }

.watch-event-badge {
  display: flex;
  align-items: center;
  gap: 10px;
  margin-top: 14px;
}
.watch-event-badge img { height: 100px; width: auto; }
.watch-featured-caption .watch-event-badge { margin-top: 0; }
.watch-featured-caption .watch-event-badge img { height: 120px; }
@media (max-width: 760px) {
  .watch-event-badge img { height: 76px; }
  .watch-featured-caption .watch-event-badge img { height: 90px; }
}

.watch-yt-grid {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 28px;
  margin-top: 20px;
}
@media (max-width: 760px) {
  .watch-yt-grid { grid-template-columns: 1fr 1fr; gap: 18px; }
}
.watch-yt-card a.watch-yt-thumb { display: block; position: relative; border-radius: 6px; overflow: hidden; box-shadow: 0 6px 16px rgba(13,27,62,0.15); }
.watch-yt-card a.watch-yt-thumb img { width: 100%; aspect-ratio: 16/9; object-fit: cover; display: block; }
.watch-yt-card a.watch-yt-thumb .play-badge {
  position: absolute; inset: 0; display: flex; align-items: center; justify-content: center;
}
.watch-yt-card a.watch-yt-thumb .play-badge span {
  width: 52px; height: 52px; border-radius: 50%; background: rgba(13,27,62,0.75);
  display: flex; align-items: center; justify-content: center;
}
.watch-yt-card a.watch-yt-thumb .play-badge span::before {
  content: ""; border-style: solid; border-width: 9px 0 9px 15px; border-color: transparent transparent transparent #fff; margin-left: 3px;
}
.watch-yt-card h3 { font-size: 1rem; margin: 12px 0 10px; }
.watch-yt-footer { display: flex; align-items: center; justify-content: space-between; gap: 10px; }
.watch-yt-footer img { height: 100px; width: auto; }
.watch-yt-footer .btn { padding: 7px 14px; font-size: 0.7rem; flex-shrink: 0; }
@media (max-width: 760px) {
  .watch-yt-footer img { height: 76px; }
}

.linkedin-grid {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 28px;
  margin-top: 20px;
}
@media (max-width: 760px) {
  .linkedin-grid { grid-template-columns: 1fr 1fr; gap: 18px; }
}
.linkedin-card { display: flex; flex-direction: column; }
.linkedin-thumb {
  background: var(--navy);
  border-radius: 6px;
  aspect-ratio: 16/9;
  padding: 20px;
  display: flex;
  align-items: center;
  justify-content: center;
  text-align: center;
  box-shadow: 0 6px 16px rgba(13,27,62,0.15);
  position: relative;
}
.linkedin-thumb::before {
  content: "\201C";
  position: absolute;
  top: 6px;
  left: 14px;
  font-family: 'Bebas Neue', sans-serif;
  font-size: 3rem;
  color: var(--orange);
  opacity: 0.6;
  line-height: 1;
}
.linkedin-thumb p {
  font-family: 'Bebas Neue', sans-serif;
  color: #fff;
  font-size: 1.15rem;
  line-height: 1.3;
  letter-spacing: 0.3px;
}
.linkedin-card h3 { font-size: 1rem; margin: 12px 0 2px; }
.linkedin-card .li-meta { font-size: 0.8rem; color: var(--body-gray); margin-bottom: 10px; }
.linkedin-badge {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  font-size: 0.75rem;
  font-weight: 700;
  color: var(--body-gray);
  text-transform: uppercase;
  letter-spacing: 0.5px;
}
.linkedin-badge svg { flex-shrink: 0; }

.insights-list { display: grid; grid-template-columns: 1fr 1fr; gap: 20px; margin-top: 30px; }
.insight-item {
  background: var(--white);
  border: 1px solid var(--border);
  border-top: 4px solid var(--orange);
  border-radius: 6px;
  padding: 22px 26px 20px;
  display: flex;
  flex-direction: column;
  transition: transform 0.15s ease, box-shadow 0.15s ease;
}
.insight-item:hover { transform: translateY(-3px); box-shadow: 0 14px 30px rgba(13,27,62,0.10); }
.insight-item h3 { margin: 0 0 10px; font-size: 1.08rem; line-height: 1.3; }
.insight-item p.insight-note { margin: 0 0 8px; color: var(--body-gray); font-size: 0.76rem; font-style: italic; }
.insight-item p.insight-desc { margin: 0 0 18px; color: var(--body-gray); font-size: 0.88rem; line-height: 1.55; flex-grow: 1; }
.insight-item span.badge-outline {
  display: inline-block;
  align-self: flex-start;
  color: var(--orange);
  font-size: 0.66rem;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: 1px;
  padding: 4px 12px;
  border-radius: 20px;
  border: 1.5px solid var(--orange);
  margin-bottom: 12px;
}
.insight-item a { align-self: flex-start; margin-top: auto; }
@media (max-width: 760px) {
  .insights-list { grid-template-columns: 1fr; }
}

/* Footer */
.site-footer {
  background: var(--navy);
  color: #B9C0D6;
  padding: 60px 0 30px;
}
.footer-grid { display: grid; grid-template-columns: 2fr 1fr 1fr; gap: 40px; margin-bottom: 40px; }
@media (max-width: 760px) { .footer-grid { grid-template-columns: 1fr; } }
.footer-grid h4 { color: var(--white); font-family: 'Montserrat', sans-serif; font-size: 0.85rem; text-transform: uppercase; letter-spacing: 1px; margin-bottom: 14px; }
.footer-grid ul { list-style: none; }
.footer-grid li { margin-bottom: 8px; }
.footer-grid a { color: #B9C0D6; }
.footer-grid a:hover { color: var(--orange); }
.footer-bottom {
  border-top: 1px solid #23305A;
  padding-top: 24px;
  display: flex;
  justify-content: space-between;
  flex-wrap: wrap;
  gap: 12px;
  font-size: 0.8rem;
}

.newsletter-embed-placeholder {
  border: 1px dashed #3a4770;
  padding: 16px;
  border-radius: 4px;
  font-size: 0.8rem;
  color: #8b96bd;
}

/* Podcast page: side mic marks on navy sections */
.section-mics { position: relative; overflow: hidden; }
.side-mic {
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  height: 70%;
  width: auto;
  color: var(--orange);
  opacity: 0.09;
  z-index: 0;
  pointer-events: none;
}
.side-mic-left { left: -20px; }
.side-mic-right { right: -20px; transform: translateY(-50%) scaleX(-1); }
@media (max-width: 1100px) {
  .side-mic { display: none; }
}
.section-mics .container { position: relative; z-index: 1; }

/* Podcast page: episode archive */
.episode-filters {
  display: flex;
  gap: 14px;
  justify-content: center;
  flex-wrap: wrap;
  margin-bottom: 32px;
}
.episode-filter-select {
  font-family: 'Montserrat', sans-serif;
  font-size: 0.85rem;
  font-weight: 600;
  color: var(--navy);
  background: var(--white);
  border: 1.5px solid var(--border);
  border-radius: 4px;
  padding: 10px 16px;
  cursor: pointer;
}
.episode-filter-select:focus { outline: none; border-color: var(--orange); }
.episode-list {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 20px;
}
@media (max-width: 760px) { .episode-list { grid-template-columns: 1fr; } }
.episode-card {
  display: block;
  background: var(--white);
  border: 1px solid var(--border);
  border-top: 4px solid var(--navy);
  border-radius: 6px;
  padding: 24px;
  text-decoration: none;
  transition: transform 0.15s ease, box-shadow 0.15s ease;
}
.episode-card:hover {
  text-decoration: none;
  transform: translateY(-3px);
  box-shadow: 0 14px 30px rgba(13,27,62,0.12);
}
.episode-card .episode-meta {
  display: block;
  font-size: 0.72rem;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: 0.5px;
  color: var(--body-gray);
  margin-bottom: 6px;
}
.episode-card .post-label { margin-bottom: 8px; }
.episode-card h3 { color: var(--navy); font-size: 1.15rem; margin-bottom: 8px; }
.episode-card p { color: var(--body-gray); font-size: 0.9rem; margin-bottom: 12px; }