/* ==========================================================================
   Podcast Episode Single & Shared Podcast Components
   ========================================================================== */

/* --- Two-Column Grid Layout --- */
.single-podcast #mvp-post-main {
    margin: 20px 0 0 0;
}

.podcast-episode {
    display: grid;
    grid-template-columns: 1fr 320px;
    gap: 40px;
    width: 100%;
}

/* --- LEFT COLUMN: Sidebar --- */
.podcast-episode__breadcrumb {
    margin-bottom: 24px;
}

.podcast-episode__breadcrumb a {
    color: #999;
    font-size: 0.875rem;
    font-weight: bold;
    text-decoration: none;
    display: inline-flex;
    align-items: center;
    gap: 4px;
    border: 1px solid #999;
    border-radius: 4px;
    padding: 4px 6px;
}

.podcast-episode__breadcrumb-chevron {
    font-size: 1.4em;
    line-height: 1;
    margin-bottom: 2px;
}

.podcast-episode__breadcrumb a:hover {
    color: #319F44;
}

/* --- Sidebar Hosts --- */
.podcast-episode__sidebar-hosts {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 10px;
    background: #f8f9fa;
    border-radius: 6px;
    padding: 16px;
}

@media screen and (min-width: 901px) {
    .podcast-episode__sidebar-hosts {
        margin-top: 20px;
        margin-bottom: 20px;
    }
}

.podcast-episode__sidebar-photos {
    display: flex;
    flex-shrink: 0;
}

.podcast-episode__sidebar-photos .podcast-episode__sidebar-host-photo + .podcast-episode__sidebar-host-photo {
    margin-left: -10px;
}

.podcast-episode__sidebar-host-photo {
    width: 50px;
    height: 50px;
    object-fit: cover;
    border: 4px solid #fff;
    border-radius: 50%;
    overflow: hidden;
}

.podcast-episode__sidebar-host-name {
    font-size: 0.9375rem;
    color: #000;
}

.podcast-episode__sidebar-host-role {
    display: block;
    color: #000;
    font-size: 13px;
    font-weight: 400;
    margin-top: 5px;
}

.podcast-episode__sidebar-info {
    min-width: 0;
}

.podcast-episode__sidebar-host-bio {
    width: 100%;
    font-size: 0.8125rem;
    line-height: 1.5;
    color: #666;
    margin: 0;
}

/* --- RIGHT COLUMN: Main Content --- */
.podcast-episode__main {
    min-width: 0; /* prevent grid blowout */
}

/* --- Show Label Badge --- */
.podcast-episode__show-label {
    margin-bottom: 12px;
}

.podcast-episode__show-label a {
    color: #fff;
    display: inline-block;
    font-size: 1rem;
    font-weight: 700;
    line-height: 1;
    padding: 5px 13px;
    text-transform: uppercase;
    text-decoration: none;
    background: #ff005b;
    -webkit-transform: skewX(-15deg);
    -moz-transform: skewX(-15deg);
    -ms-transform: skewX(-15deg);
    -o-transform: skewX(-15deg);
    transform: skewX(-15deg);
    font-family: Oswald, Arial, "Helvetica Neue", Helvetica, sans-serif;
}

/* --- Title --- */
.podcast-episode__title-row {
    display: flex;
    align-items: flex-start;
    gap: 16px;
}

.podcast-episode__title-row .podcast-episode__title {
    flex: 1;
}

.podcast-episode__title-row .podcast-episode__share {
    margin-left: auto;
    flex-shrink: 0;
    padding-top: 8px;
}

.podcast-episode__title {
    color: #000;
    font-family: Oswald, Arial, "Helvetica Neue", Helvetica, sans-serif;
    font-size: 2.3rem;
    font-weight: 700;
    letter-spacing: -.02em;
    line-height: 1.1;
    margin-bottom: 16px;
    width: 100%;
}

/* --- Meta Row (date + duration only, hosts are in sidebar) --- */
.podcast-episode__meta {
    display: flex;
    align-items: center;
    flex-wrap: wrap;
    gap: 12px;
    margin-bottom: 16px;
    font-size: 0.875rem;
    color: #666;
}

.podcast-episode__date {
    color: #999;
    font-weight: 500;
}

/* --- Duration Badge --- */
.podcast-episode__duration {
    display: inline-block;
    background-color: #319f44;
    color: #fff;
    font-size: 0.75rem;
    font-weight: 700;
    padding: 3px 8px;
    border-radius: 3px;
}

/* --- Featured Image --- */
.podcast-episode__featured-image {
    margin-bottom: 24px;
    border-radius: 6px;
    overflow: hidden;
}

.podcast-episode__featured-image img {
    display: block;
    width: 100%;
    height: auto;
}

/* --- Content --- */
.podcast-episode__content {
    margin-bottom: 24px;
    font-size: 1rem;
    line-height: 1.75;
    color: #000;
}

.podcast-episode__content p {
    margin-bottom: 1em;
}

.podcast-episode__content a {
    color: #319f44;
}

.podcast-episode__content img {
    max-width: 100%;
    height: auto;
}

/* --- Video Embed --- */
.podcast-episode__video {
    margin-bottom: 24px;
    border-radius: 6px;
    overflow: hidden;
}

.podcast-episode__video iframe {
    display: block;
    width: 100%;
    aspect-ratio: 16 / 9;
    height: auto;
    border: 0;
}

/* --- Tags + Share Row --- */
.podcast-episode__tags-row {
    display: flex;
    align-items: center;
    gap: 12px;
    margin-bottom: 24px;
}

.podcast-episode__tags {
    float: unset;
    flex: 1;
    min-width: 0;
    margin-top: 0;
}

/* --- Share (inside meta row, right-aligned) --- */
.podcast-episode__share {
    margin-left: auto;
}

.podcast-episode__share .socialShare {
    float: none;
    width: auto;
    justify-content: flex-end;
}

.podcast-episode__share .socialShare .socialShare__wrapper {
    gap: 4px;
}

.podcast-episode__share .socialShare .socialShare__item img {
    width: 16px;
}

/* --- Episode List (vertical) --- */
.podcast-episode__main .podcast-hub__shows {
    margin-top: 40px;
}

.podcast-episode__episodes {
    margin-top: 40px;
    padding-top: 24px;
    border-top: 1px solid #eee;
}

.podcast-episode__episodes .mvp-nav-links {
    margin-top: 10px;
    margin-bottom: 35px;
}

.podcast-episode__episodes-title {
    font-family: Oswald, Arial, "Helvetica Neue", Helvetica, sans-serif;
    font-size: 1.8rem;
    font-weight: 700;
    margin-bottom: 20px;
    color: #000;
}

.podcast-episode__episodes-list {
    margin-bottom: 25px;
    display: flex;
    flex-direction: column;
    gap: 0;
}

.podcast-episode__episode-item {
    padding: 28px 0 24px 0;
    border-bottom: 1px solid #eee;
}

.podcast-episode__episode-item:first-child {
    padding-top: 0;
}

.podcast-episode__episode-name {
    font-family: Oswald, Arial, "Helvetica Neue", Helvetica, sans-serif;
    font-size: 1.25rem;
    font-weight: 700;
    letter-spacing: -.02em;
    line-height: 1.3;
    margin: 0 0 8px;
}

.podcast-episode__episode-name a {
    color: #000;
    text-decoration: none;
}

.podcast-episode__episode-name a:hover {
    color: #319f44;
}

.podcast-episode__episode-meta {
    display: flex;
    align-items: center;
    gap: 12px;
    margin-bottom: 12px;
    font-size: 0.875rem;
}

.podcast-episode__episode-date {
    color: #999;
    font-weight: 500;
}

.podcast-episode__episode-video {
    margin-bottom: 8px;
    border-radius: 6px;
    overflow: hidden;
}

.podcast-episode__episode-video iframe {
    display: block;
    width: 100%;
    aspect-ratio: 16 / 9;
    height: auto;
    border: 0;
}

.podcast-episode__episode-excerpt {
    font-size: 14px;
    line-height: 1.55;
    color: #000;
    margin: 0;
    margin-bottom: 12px;
}

/* --- All Podcast Shows Grid ("Naše podcasty") --- */

/* ==========================================================================
   Responsive
   ========================================================================== */

/* Mobile hosts block: hidden by default, shown only on mobile */
.podcast-episode__sidebar-hosts--mobile {
    display: none;
}

@media screen and (max-width: 900px) {
    .podcast-episode {
        grid-template-columns: 1fr;
        gap: 0;
    }

    .podcast-episode__sidebar {
        display: flex;
        flex-wrap: wrap;
        align-items: center;
        gap: 16px;
        padding-bottom: 5px;
        order: -1;
    }

    /* Hide sidebar hosts on mobile (shown via --mobile duplicate above shows) */
    .podcast-episode__sidebar .podcast-episode__sidebar-hosts {
        display: none;
    }

    /* Show mobile hosts block above shows slider */
    .podcast-episode__sidebar-hosts--mobile {
        display: flex;
        flex-wrap: wrap;
        align-items: center;
        gap: 10px;
        margin-top: 40px;
        padding-top: 20px;
    }

    .podcast-episode__breadcrumb {
        width: 100%;
        margin-bottom: 8px;
    }

    .podcast-episode__sidebar-host-photo {
        width: 44px;
        height: 44px;
    }

    .podcast-episode__episodes .mvp-nav-links {
        margin-top: 10px;
        margin-bottom: 25px;
    }

}

@media screen and (max-width: 900px) {
    .podcast-episode__title {
        font-size: 2.5rem;
    }

}

@media screen and (max-width: 767px) {
    .podcast-episode__title {
        font-size: 1.9rem;
    }

}

@media screen and (max-width: 599px) {
    .podcast-episode__title {
        font-size: 1.8rem;
    }

    .podcast-episode__meta {
        gap: 8px;
    }

    .single-podcast #mvp-post-main {
        margin: 10px 0 0 0;
    }

}

/* ==========================================================================
   Podcast Show Page (taxonomy-podcast_show.php)
   ========================================================================== */

/* --- Back Button --- */
.podcast-show__back {
    margin-bottom: 20px;
}

.podcast-show__back a {
    color: #777;
    font-size: 0.875rem;
    text-decoration: none;
    display: inline-flex;
    align-items: center;
    gap: 4px;
}

.podcast-show__back a:hover {
    color: #000;
}

/* --- Show Header --- */
.podcast-show__header {
    display: flex;
    gap: 32px;
    align-items: flex-start;
    margin-bottom: 32px;
    padding-bottom: 24px;
    border-bottom: 1px solid #eee;
}

/* --- Header Hosts (left column) --- */
.podcast-show__header-hosts {
    display: flex;
    flex-direction: column;
    gap: 16px;
    flex-shrink: 0;
}

.podcast-show__header-host {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 4px;
    text-align: center;
}

.podcast-show__header-host-photo {
    width: 64px;
    height: 64px;
    border-radius: 50%;
    object-fit: cover;
    border: 3px solid #fff;
    box-shadow: 0 0 0 1px #ddd;
}

.podcast-show__header-host-name {
    font-size: 0.8125rem;
    font-weight: 600;
    color: #333;
}

/* --- Header Info (right column) --- */
.podcast-show__header-info {
    flex: 1;
    min-width: 0;
}

.podcast-show__title {
    font-size: 1.75rem;
    font-weight: 700;
    line-height: 1.25;
    margin: 0 0 12px;
    color: #000;
}

.podcast-show__description {
    font-size: 0.9375rem;
    line-height: 1.65;
    color: #444;
    margin-bottom: 16px;
}

.podcast-show__description p {
    margin-bottom: 0.75em;
}

.podcast-show__description p:last-child {
    margin-bottom: 0;
}

.podcast-show__platforms-list {
    display: flex;
    flex-wrap: wrap;
    gap: 12px;
    justify-content: flex-start;
    margin: 24px 0;
}

.podcast-show__platforms-list .podcast-hub__platform-card {
    display: flex;
    flex-direction: row;
    align-items: center;
    gap: 8px;
    text-decoration: none;
    background: #f8f9fa;
    border-radius: 6px;
    padding: 10px 16px;
    min-width: 0;
}

.podcast-show__platforms-list .podcast-hub__platform-card:hover .podcast-hub__platform-label {
    color: #319F44;
}

.podcast-show__platforms-list .podcast-hub__platform-icon {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 28px;
    height: 28px;
    border-radius: 50%;
}

.podcast-show__platforms-list .podcast-hub__platform-icon img {
    width: 16px;
    height: 16px;
}

.podcast-show__platforms-list .podcast-hub__platform-label {
    font-size: 0.875rem;
    font-weight: 600;
    color: #000;
}

/* --- Platform Links Row (legacy) --- */
.podcast-show__platforms {
    display: flex;
    flex-wrap: wrap;
    gap: 12px;
    margin-top: 16px;
}

.podcast-show__platform-link {
    display: inline-flex;
    align-items: center;
    gap: 6px;
    background: #333;
    color: #fff;
    font-size: 0.8125rem;
    font-weight: 600;
    padding: 6px 14px;
    border-radius: 20px;
    text-decoration: none;
    transition: background-color 0.2s;
}

.podcast-show__platform-link:hover {
    background: #555;
    color: #fff;
}

.podcast-show__platform-link img {
    width: 18px;
    height: 18px;
    flex-shrink: 0;
}

/* --- Episodes Heading --- */
.podcast-show__episodes-heading {
    display: flex;
    align-items: baseline;
    gap: 12px;
    margin-bottom: 24px;
}

.podcast-show__episodes-heading h2 {
    font-size: 1.25rem;
    font-weight: 700;
    margin: 0;
    color: #000;
}

.podcast-show__episode-count {
    font-size: 0.875rem;
    color: #999;
    font-weight: normal;
}

/* --- Episode Cards --- */
.podcast-show__episodes {
    display: flex;
    flex-direction: column;
    gap: 32px;
    margin-bottom: 32px;
}

.podcast-show__episode {
    padding-bottom: 32px;
    border-bottom: 1px solid #eee;
}

.podcast-show__episode:last-child {
    border-bottom: none;
}

.podcast-show__episode-text {
    margin-bottom: 16px;
}

.podcast-show__episode-title {
    font-size: 1.125rem;
    font-weight: 700;
    line-height: 1.35;
    margin: 0 0 8px;
}

.podcast-show__episode-title a {
    color: #000;
    text-decoration: none;
}

.podcast-show__episode-title a:hover {
    color: #319f44;
}

.podcast-show__episode-excerpt {
    font-size: 0.9375rem;
    line-height: 1.6;
    color: #555;
    margin: 0;
}

/* --- Episode Video Embed --- */
.podcast-show__episode-video {
    margin-bottom: 8px;
    border-radius: 6px;
    overflow: hidden;
}

.podcast-show__episode-video iframe {
    display: block;
    width: 100%;
    aspect-ratio: 16 / 9;
    height: auto;
    border: 0;
}

/* --- Video Links Row (YouTube + Podívat se) --- */
.podcast-show__episode-video-links {
    display: flex;
    gap: 16px;
    margin-bottom: 12px;
    font-size: 0.8125rem;
}

.podcast-show__episode-video-links a {
    display: inline-flex;
    align-items: center;
    gap: 4px;
    color: #555;
    text-decoration: none;
    font-weight: 600;
}

.podcast-show__episode-video-links a:hover {
    color: #319f44;
}

.podcast-show__episode-video-links a img {
    width: 16px;
    height: 16px;
    filter: brightness(0) saturate(100%) invert(35%);
}

/* --- Episode Meta Row (date + duration + share) --- */
.podcast-show__episode-meta {
    display: flex;
    align-items: center;
    gap: 12px;
    font-size: 0.8125rem;
    color: #777;
}

.podcast-show__episode-duration {
    display: inline-block;
    background-color: #319f44;
    color: #fff;
    font-size: 0.75rem;
    font-weight: 700;
    padding: 3px 8px;
    border-radius: 3px;
}

/* --- Share Dropdown --- */
.podcast-show__episode-share-wrap {
    position: relative;
    margin-left: auto;
}

.podcast-show__episode-share-btn {
    background: none;
    border: none;
    color: #999;
    font-size: 0.8125rem;
    font-weight: 600;
    cursor: pointer;
    padding: 0;
}

.podcast-show__episode-share-btn:hover {
    color: #319f44;
}

.podcast-show__episode-share-dropdown {
    position: absolute;
    bottom: calc(100% + 8px);
    right: 0;
    background: #fff;
    border: 1px solid #e0e0e0;
    border-radius: 8px;
    box-shadow: 0 4px 16px rgba(0, 0, 0, 0.12);
    padding: 8px;
    z-index: 100;
    min-width: 200px;
}

.podcast-show__share-copy {
    display: block;
    width: 100%;
    background: none;
    border: none;
    border-bottom: 1px solid #eee;
    padding: 8px 8px 10px;
    margin-bottom: 8px;
    font-size: 0.8125rem;
    font-weight: 600;
    color: #333;
    cursor: pointer;
    text-align: left;
}

.podcast-show__share-copy:hover {
    color: #319f44;
}

.podcast-show__episode-share-dropdown .socialShare {
    float: none;
    width: auto;
    justify-content: flex-start;
}

.podcast-show__episode-share-dropdown .socialShare__wrapper {
    gap: 6px;
}

/* --- Show Page Responsive --- */
@media screen and (max-width: 767px) {
    .podcast-show__header {
        flex-direction: column;
        gap: 16px;
    }

    .podcast-show__header-hosts {
        flex-direction: row;
        gap: 16px;
    }

    .podcast-show__header-host-photo {
        width: 48px;
        height: 48px;
    }

    .podcast-show__title {
        font-size: 1.375rem;
    }
}

@media screen and (max-width: 599px) {
    .podcast-show__platforms {
        gap: 8px;
    }

    .podcast-show__platform-link {
        padding: 5px 10px;
        font-size: 0.75rem;
    }

    .podcast-show__platform-link img {
        width: 14px;
        height: 14px;
    }
}

/* ==========================================================================
   Podcast Hub / Archive (archive-podcast.php)
   ========================================================================== */

/* --- Section Titles --- */
#mvp-content-main .podcast-hub__section-title,
.podcast-hub__section-title {
    font-family: Oswald, Arial, "Helvetica Neue", Helvetica, sans-serif;
    font-size: 1.8rem;
    font-weight: 700;
    margin-bottom: 24px;
    color: #000;
}

#mvp-content-main .podcast-hub__platforms-title {
    font-family: Oswald, Arial, "Helvetica Neue", Helvetica, sans-serif;
    font-size: 1.8rem;
    font-weight: 700;
    margin-bottom: 24px;
}

/* --- Slider Arrows (shared) --- */
.podcast-hub__slider-arrow {
    position: absolute;
    top: 43%;
    transform: translateY(-50%);
    width: 25px;
    height: 25px;
    border-radius: 50%;
    background: #fff;
    border: 1px solid #e0e0e0;
    box-shadow: 0 2px 8px rgba(0, 0, 0, 0.08);
    cursor: pointer;
    z-index: 10;
    display: flex;
    align-items: center;
    justify-content: center;
}

.podcast-hub__slider-arrow.--prev {
    left: -14px;
    display: none;
}

.podcast-hub__slider-arrow.--next {
    right: -14px;
}

.podcast-hub__slider-arrow::after {
    content: '';
    display: block;
    width: 6px;
    height: 6px;
    border-top: 2px solid #ff005b;
    border-right: 2px solid #ff005b;
}

.podcast-hub__slider-arrow.--prev::after {
    transform: rotate(-135deg);
    margin-left: 3px;
}

.podcast-hub__slider-arrow.--next::after {
    transform: rotate(45deg);
    margin-right: 3px;
}

.podcast-hub__slider-arrow {
    transition: box-shadow 0.2s, border-color 0.2s;
}

.podcast-hub__slider-arrow:hover {
    border-color: #ccc;
    box-shadow: 0 2px 10px rgba(0, 0, 0, 0.12);
}

/* --- Archive Header Override --- */
.post-type-archive-podcast #mvp-content-main .page-header h1 {
    font-size: unset;
}

.post-type-archive-podcast #mvp-content-main .page-header .section-divider {
    margin: 0 0 20px;
}

.post-type-archive-podcast .page-header .archive-description {
    text-align: center;
}

/* --- Latest Episodes Section --- */
.podcast-hub__latest {
    margin-bottom: 80px;
}

.podcast-hub__latest-slider-wrap {
    position: relative;
}

/* Pre-init fallback: only before tns adds .tns-slider class */
.jsPodcastLatestSlider:not(.tns-slider) {
    display: flex;
    gap: 20px;
    overflow: hidden;
}

.jsPodcastLatestSlider:not(.tns-slider) > .tns-item {
    flex: 0 0 calc((100% - 60px) / 4);
    min-width: 0;
}

@media screen and (max-width: 1023px) {
    .jsPodcastLatestSlider:not(.tns-slider) > .tns-item {
        flex: 0 0 calc((100% - 40px) / 3);
    }
}

@media screen and (max-width: 767px) {
    .jsPodcastLatestSlider:not(.tns-slider) > .tns-item {
        flex: 0 0 calc((100% - 20px) / 2);
    }
}

.podcast-hub__latest-thumb .mvp-vid-box-wrap {
    top: auto;
    left: auto;
    bottom: 10px;
    right: 10px;
    width: 37px;
    height: 37px;
    opacity: 1;
}

.podcast-hub__latest-card {
    display: block;
    text-decoration: none;
    color: #000;
}

.podcast-hub__latest-thumb {
    position: relative;
    display: block;
    border-radius: 6px;
    overflow: hidden;
    margin-bottom: 8px;
}

.podcast-hub__latest-thumb img {
    display: block;
    width: 100%;
    height: auto;
    aspect-ratio: 1 / 1;
    object-fit: cover;
}


.podcast-hub__latest-info {
    padding: 0 2px;
}

.podcast-hub__latest-meta {
    display: flex;
    align-items: center;
    gap: 7px;
    margin-bottom: 6px;
    font-size: 0.75rem;
    line-height: 1;
}

.podcast-hub__latest-duration {
    color: #ff005b;
    display: flex;
    align-items: center;
    gap: 6px;
}

.podcast-hub__latest-duration::after {
    content: '';
    display: block;
    width: 3px;
    height: 3px;
    border-radius: 50%;
    background: #ff005b;
    flex-shrink: 0;
}

.podcast-hub__latest-show {
    color: #fff;
    display: inline-flex;
    align-items: center;
    font-size: 10px;
    font-weight: 700;
    line-height: 1;
    padding: 4px 6px;
    text-transform: uppercase;
    text-decoration: none;
    background: #ff005b;
    transform: skewX(-15deg);
    font-family: Oswald, Arial, "Helvetica Neue", Helvetica, sans-serif;
}

#mvp-content-main .podcast-hub__latest-title,
.podcast-hub__latest-title {
    font-size: 20px;
    font-weight: 600;
    line-height: 1.4;
    margin: 0;
    color: #000;
}

.podcast-hub__latest-title a {
    color: inherit;
    text-decoration: none;
}

.podcast-hub__latest-title a:hover {
    opacity: .6;
}

/* --- Shows Section --- */
.podcast-hub__shows-slider-wrap {
    position: relative;
}

/* Pre-init fallback: only before tns adds .tns-slider class */
.jsPodcastShowsSlider:not(.tns-slider) {
    display: flex;
    gap: 16px;
    overflow: hidden;
}

.jsPodcastShowsSlider:not(.tns-slider) > * {
    flex: 0 0 calc((100% - 64px) / 5);
    min-width: 0;
}

@media screen and (max-width: 1023px) {
    .jsPodcastShowsSlider:not(.tns-slider) > * {
        flex: 0 0 calc((100% - 48px) / 4);
    }
}

@media screen and (max-width: 767px) {
    .jsPodcastShowsSlider:not(.tns-slider) > * {
        flex: 0 0 calc((100% - 32px) / 3);
    }
}

@media screen and (max-width: 479px) {
    .jsPodcastShowsSlider:not(.tns-slider) > * {
        flex: 0 0 calc((100% - 16px) / 2);
    }
}

.podcast-hub__show-card {
    display: block;
    text-decoration: none;
    text-align: center;
}

.podcast-hub__show-cover {
    border-radius: 6px;
    overflow: hidden;
    margin-bottom: 8px;
}

.podcast-hub__show-cover img {
    display: block;
    width: 100%;
    height: auto;
    aspect-ratio: 1 / 1;
    object-fit: contain;
}

.podcast-hub__show-placeholder {
    display: flex;
    align-items: center;
    justify-content: center;
    aspect-ratio: 1 / 1;
    background: #f0f0f0;
    color: #999;
    font-size: 0.8rem;
    font-weight: 600;
    padding: 8px;
}

.podcast-hub__show-count {
    font-size: 0.8125rem;
    color: #777;
}

/* --- Platform Links Section --- */
.podcast-hub__platforms {
    text-align: center;
    padding: 80px 0;
}

.podcast-hub__platforms-title {
    font-size: 2rem;
    font-weight: 700;
    line-height: 1.3;
    margin: 0 0 16px;
    color: #000;
}

.podcast-hub__platforms-desc {
    font-size: 0.9375rem;
    line-height: 1.6;
    color: #666;
    max-width: 480px;
    margin: 0 auto 32px;
}

.podcast-hub__platforms-list {
    display: flex;
    justify-content: center;
    gap: 16px;
    flex-wrap: wrap;
}

.podcast-hub__platform-card {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 10px;
    text-decoration: none;
    background: #f8f9fa;
    border-radius: 6px;
    padding: 24px 32px;
    min-width: 120px;
}

.podcast-hub__platform-icon {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 44px;
    height: 44px;
    border-radius: 50%;
}

.podcast-hub__platform-icon img {
    width: 24px;
    height: 24px;
}

.podcast-hub__platform-label {
    font-size: 0.875rem;
    font-weight: 600;
    color: #000;
    transition: color 0.2s;
}

.podcast-hub__platform-card:hover .podcast-hub__platform-label {
    color: #319F44;
}


@media screen and (max-width: 900px) {

    .podcast-hub__latest {
        margin-bottom: 50px;
    }

    .podcast-hub__platforms {
        text-align: center;
        padding: 40px 0;
    }
}

/* --- Hub Responsive --- */
@media screen and (max-width: 767px) {

    .podcast-hub__platforms-title {
        font-size: 1.5rem;
    }

    .podcast-hub__platform-card {
        padding: 16px 20px;
        min-width: 100px;
    }

    .podcast-hub__slider-arrow {
        display: none;
    }
}

@media screen and (max-width: 599px) {
    .podcast-hub__platforms-list {
        gap: 10px;
    }

    .podcast-hub__platform-card {
        padding: 14px 16px;
    }

    .podcast-hub__platforms-title {
        font-size: 1.25rem;
    }
}

/* ==========================================================================
   Homepage Podcast Slider (featured.php sidebar)
   ========================================================================== */

.podcast-home-slider {
    margin-bottom: 20px;
}

.podcast-home-slider .section-divider {
    margin-bottom: 12px;
}

/* --- Track --- */
.podcast-home-slider__track {
    cursor: grab;
    display: flex;
    gap: 12px;
    overflow-x: auto;
    scroll-snap-type: x mandatory;
    -webkit-overflow-scrolling: touch;
    scrollbar-width: none;
    -ms-overflow-style: none;
    padding: 0 2px;
}

.podcast-home-slider__track::-webkit-scrollbar {
    display: none;
}

.podcast-home-slider__track.is-dragging {
    cursor: grabbing;
    scroll-snap-type: none;
    user-select: none;
}

.podcast-home-slider__track.is-dragging a {
    pointer-events: none;
}

/* --- Right arrow --- */
.podcast-home-slider {
    position: relative;
}

.podcast-home-slider__arrow {
    display: none;
    position: absolute;
    right: -14px;
    top: 50%;
    transform: translateY(-50%);
    align-items: center;
    justify-content: center;
    width: 25px;
    height: 25px;
    border: 1px solid #e0e0e0;
    border-radius: 50%;
    background: #fff;
    cursor: pointer;
    z-index: 2;
    padding: 0;
    font-size: 0;
    transition: box-shadow 0.2s, border-color 0.2s;
}

.podcast-home-slider__arrow::after {
    content: '';
    display: block;
    width: 6px;
    height: 6px;
    border-top: 2px solid #ff005b;
    border-right: 2px solid #ff005b;
    transform: rotate(45deg);
    margin-right: 3px;
}

.podcast-home-slider__arrow:hover {
    border-color: #ccc;
    box-shadow: 0 2px 10px rgba(0, 0, 0, 0.12);
}

/* --- Cards: 2 visible + peek of 3rd --- */
.podcast-home-slider__card {
    flex: 0 0 calc((100% - 24px) / 2.4);
    scroll-snap-align: start;
    min-width: 0;
    text-decoration: none;
    color: #000;
    display: block;
}

/* Single episode — full width, 16:9 thumbnail */
.podcast-home-slider__card:only-child {
    flex: 0 0 100%;
}

.podcast-home-slider__card:only-child .podcast-home-slider__thumb img {
    aspect-ratio: 16 / 9;
}

/* Two episodes — half width each */
.podcast-home-slider__card:first-child:nth-last-child(2),
.podcast-home-slider__card:first-child:nth-last-child(2) ~ .podcast-home-slider__card {
    flex: 0 0 calc((100% - 12px) / 2);
}

.podcast-home-slider__thumb {
    position: relative;
    display: block;
    overflow: hidden;
    margin-bottom: 6px;
}

.podcast-home-slider__thumb img {
    display: block;
    width: 100%;
    height: auto;
    aspect-ratio: 1 / 1;
    object-fit: cover;
}

.podcast-home-slider__thumb .mvp-vid-box-wrap {
    top: auto;
    left: auto;
    bottom: 6px;
    right: 6px;
    width: 24px;
    height: 24px;
    opacity: 1;
    font-size: 10px;
}

.podcast-home-slider__thumb .mvp-vid-box-wrap i {
    margin-top: 8px;
}

.podcast-home-slider__info {
    padding: 0 1px;
}

.podcast-home-slider__title {
    font-size: 0.75rem;
    font-weight: 700;
    line-height: 1.3;
    margin: 0;
    color: #000;
}

.podcast-home-slider__card:hover .podcast-home-slider__title {
    opacity: .6;
}

/* --- Homepage Slider Responsive --- */
@media screen and (max-width: 1003px) {
    .podcast-home-slider__card {
        flex: 0 0 calc((100% - 24px) / 3.3);
    }
}

@media screen and (max-width: 599px) {
    .podcast-home-slider__card {
        flex: 0 0 calc((100% - 12px) / 2.3);
    }
}
