body.episode-site { background:#111; color:#eee; }
.episode-nav { background:#111; border:0; border-radius:0; margin:0; }
.episode-nav .navbar-brand, .episode-nav .navbar-nav>li>a { color:#fff; }
.episode-nav .navbar-nav>li>a:hover, .episode-nav .navbar-nav>li>a:focus { color:#f4c542; background:transparent; }
.episode-hero { background:url('../img/background-earth-dark.jpg') center center/cover no-repeat; padding:70px 0; color:#fff; }
.episode-hero h1 { font-weight:800; margin-top:0; }
.episode-hero p { font-size:18px; max-width:820px; }
.episode-main { background:#fff; color:#333; padding:50px 0 70px; min-height:500px; }
.episode-card { border:1px solid #e4e4e4; margin-bottom:25px; padding:24px; min-height:235px; background:#fff; }
.episode-card h2 { font-size:22px; line-height:1.3; margin-top:5px; }
.episode-card h2 a { color:#222; }
.episode-card .episode-date { text-transform:uppercase; font-size:12px; font-weight:700; letter-spacing:.08em; color:#777; }
.episode-card p { line-height:1.7; }
.episode-btn { border-radius:0; font-weight:700; text-transform:uppercase; letter-spacing:.04em; }
.episode-meta { margin:15px 0 25px; color:#777; }
.episode-copy { font-size:17px; line-height:1.8; }
.episode-player { margin:25px 0; }
.episode-tags { margin:30px 0; }
.episode-tags a { display:inline-block; padding:7px 10px; margin:0 6px 6px 0; background:#f2f2f2; color:#333; }
.episode-actions { margin:25px 0; }
.episode-actions .btn { margin:0 8px 8px 0; }
.episode-breadcrumb { margin-bottom:25px; }
.archive-tools { margin-bottom:30px; }
.archive-tools input { border-radius:0; height:44px; }
.archive-count { color:#777; padding-top:12px; }
.episode-footer { background:#111; color:#aaa; padding:35px 0; }
.episode-footer a { color:#fff; }
.shorts-promo { background:#f5f5f5; padding:30px; margin-top:35px; }
@media (max-width:767px) { .episode-hero { padding:45px 0; } .episode-card { min-height:0; } }

/* Episode artwork */
/* Episode archive cards + artwork */
#episodeGrid {
  display:flex;
  flex-wrap:wrap;
  align-items:stretch;
}
#episodeGrid > .col-md-6 {
  display:flex;
  float:none;
}
.episode-card {
  width:100%;
  display:flex;
  flex-direction:column;
}
.episode-card-inner {
  display:flex;
  align-items:flex-start;
  gap:20px;
  width:100%;
  flex:1 1 auto;
}
.episode-card-art {
  display:block;
  width:120px;
  height:120px;
  object-fit:cover;
  object-position:center;
  flex:0 0 120px;
  border:1px solid #e1e1e1;
}
.episode-card-copy {
  min-width:0;
  flex:1 1 auto;
  display:flex;
  flex-direction:column;
}
/* Reserve room for longer titles instead of shrinking them. */
.episode-card-copy h2 {
  min-height:116px;
  margin-bottom:16px;
}
.episode-card-copy p {
  margin-bottom:20px;
}
.episode-card-copy .episode-btn {
  align-self:flex-start;
  margin-top:auto;
}
.episode-page-art {
  display:block;
  width:100%;
  max-width:300px;
  aspect-ratio:1 / 1;
  object-fit:cover;
  object-position:center;
  height:auto;
  margin:0 0 25px;
  border:1px solid #e1e1e1;
}
.episode-feature { margin-bottom:10px; }

@media (max-width:991px) {
  #episodeGrid > .col-md-6 {
    width:100%;
  }
  .episode-card-copy h2 {
    min-height:0;
  }
}

@media (max-width:600px) {
  .episode-card-inner { display:block; }
  .episode-card-art {
    width:100%;
    max-width:220px;
    height:auto;
    aspect-ratio:1 / 1;
    object-fit:cover;
    margin-bottom:18px;
  }
  .episode-page-art { max-width:240px; }
}

/* Episode archive sorting control */
.archive-tools select {
  border-radius:0;
  height:44px;
}
@media (max-width:767px) {
  .archive-tools .form-control { margin-bottom:10px; }
  .archive-count { padding-top:2px; padding-bottom:8px; }
}


/* Individual episode sidebar: show-level listening + social links */
.episode-sidebar-panel {
  background:#f5f5f5;
  padding:28px 30px;
  margin-top:0;
  margin-bottom:22px;
}
.episode-sidebar-panel h3 { margin-top:0; }
.episode-sidebar-intro { color:#666; margin-bottom:18px; }
.episode-sidebar-platforms a {
  display:flex;
  align-items:center;
  gap:12px;
  padding:12px 0;
  border-bottom:1px solid #ddd;
  color:#222;
  font-weight:600;
  text-decoration:none;
}
.episode-sidebar-platforms a:first-child { border-top:1px solid #ddd; }
.episode-sidebar-platforms a:hover,
.episode-sidebar-platforms a:focus { color:#d9534f; }
.episode-sidebar-platforms i { width:22px; font-size:20px; text-align:center; }
.episode-sidebar-social { margin-top:22px; }
.episode-sidebar-social a {
  display:inline-flex;
  align-items:center;
  justify-content:center;
  width:42px;
  height:42px;
  margin-right:8px;
  border:1px solid #ccc;
  border-radius:50%;
  color:#222;
  font-size:18px;
  text-decoration:none;
}
.episode-sidebar-social a:hover,
.episode-sidebar-social a:focus {
  color:#fff;
  background:#222;
  border-color:#222;
}
.episode-sidebar-shorts { margin-top:0; }
@media (max-width:991px) {
  .episode-sidebar-panel { margin-top:30px; }
}
