/* ========================================
   Podcast Featured Video Section
======================================== */
.podcast_featured_video_section {
    background-color: var(--color-soft-white);
    padding: 100px 0 120px 0;
    position: relative;
    z-index: 1;
}

/* ========================================
   Header
======================================== */
.pfv_header {
    max-width: 740px;
    margin: 0 auto 42px auto;
}

.pfv_eyebrow {
    display: inline-block;
    font-family: 'Inter Tight', sans-serif;
    font-size: 12px;
    font-weight: 600;
    line-height: 1;
    letter-spacing: 0.16em;
    text-transform: uppercase;
    color: var(--color-accent-green);
    padding: 8px 15px;
    border: 1px solid #e8e1d3;
    border-radius: 999px;
    background-color: var(--color-off-white);
    margin-bottom: 18px;
}

.pfv_title {
	font-size: var(--font-size-56);
	line-height: 1.05;
	letter-spacing: -1.06px;
	color: var(--color-brown);
	margin: 0 0 28px 0;
}

.pfv_subtitle {
    font-family: 'Inter Tight', sans-serif;
    font-size: var(--font-size-20);
    line-height: 1.55;
    color: var(--color-dark-gray);
    margin: 0;
}

/* ---------- Meta row ---------- */
.pfv_meta {
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    gap: 10px 24px;
    margin-top: 22px;
}

.pfv_meta_item {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    font-family: 'Inter Tight', sans-serif;
    font-size: 15px;
    font-weight: 600;
    color: var(--color-brown);
}

.pfv_meta_dot {
	width: 7px;
	height: 7px;
	border-radius: 50%;
	background-color: var(--color-dark-green);
}

/* ========================================
   Video Frame
======================================== */
.pfv_frame {
	position: relative;
	max-width: 1040px;
	margin: 0 auto;
	aspect-ratio: 16 / 9;
	border-radius: 26px;
	overflow: hidden;
	border: 7px solid var(--color-white);
	transition: transform 0.55s cubic-bezier(0.2, 0.7, 0.2, 1), box-shadow 0.55s;
	box-shadow: 0 0 0 1.5px rgba(2, 103, 57, 0.78), 0 62px 120px -40px rgba(16, 26, 20, 0.8);
}

.pfv_frame:hover {
    transform: translateY(-6px) scale(1.008);
}

.pfv_media {
    width: 100%;
    height: 100%;
    object-fit: cover;
    display: block;
}

.pfv_frame::after {
	content: "";
	position: absolute;
	inset: 0;
	pointer-events: none;
	transition: opacity 0.35s ease;
	background: radial-gradient(circle at 50% 50%, rgba(16, 26, 20, 0.12), rgba(16, 26, 20, 0.3));
}
.pfv_frame.is-playing::after {
    opacity: 0;
}

/* ---------- Play button ---------- */
.pfv_play {
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translate(-50%, -50%);
	width: 82px;
	height: 82px;
	border: 0;
	border-radius: 50%;
	cursor: pointer;
	background-color: var(--color-dark-green);
	display: grid;
	place-items: center;
	color: #fff;
	z-index: 2;
	transition: transform 0.2s ease, background 0.2s ease;
	animation: pfv_pulse 2.4s ease-out infinite;
	transform: translate(-50%, -50%) scale(1.08);
}

.pfv_play:hover {
    transform: translate(-50%, -50%) scale(1.08);
}

.pfv_play svg {
    width: 32px;
    height: 32px;
}

.pfv_play.is-hidden {
    opacity: 0;
    pointer-events: none;
}

@keyframes pfv_pulse {
    0%   { box-shadow: 0 0 0 0 rgba(2, 103, 57, 0.55); }
    70%  { box-shadow: 0 0 0 24px rgba(2, 103, 57, 0); }
    100% { box-shadow: 0 0 0 0 rgba(2, 103, 57, 0); }
}

@media (prefers-reduced-motion: reduce) {
    .pfv_play { animation: none; }
}

/* ========================================
   Responsive
======================================== */
@media screen and (max-width: 1800px) {
    .podcast_featured_video_section {
        padding: 80px 0 100px 0;
    }
}

@media screen and (max-width: 1360px) {
    .podcast_featured_video_section {
        padding: 70px 0 80px 0;
    }
    .pfv_frame {
        border-radius: 22px;
    }
}

@media screen and (max-width: 992px) {
    .podcast_featured_video_section {
        padding: 60px 0 70px 0;
    }
    .pfv_play {
        width: 70px;
        height: 70px;
    }
    .pfv_play svg {
        width: 26px;
        height: 26px;
    }
}

@media screen and (max-width: 768px) {
    .podcast_featured_video_section {
        padding: 50px 0 60px 0;
    }
    .pfv_subtitle {
        font-size: 16px;
    }
    .pfv_frame {
        border-width: 5px;
        border-radius: 18px;
    }
    .pfv_play {
        width: 60px;
        height: 60px;
    }
    .pfv_play svg {
        width: 22px;
        height: 22px;
    }
}

@media screen and (max-width: 640px) {
    .podcast_featured_video_section {
        padding: 40px 0 50px 0;
    }
    .pfv_meta {
        flex-direction: column;
        align-items: center;
        gap: 10px;
    }
    .pfv_play {
        width: 54px;
        height: 54px;
    }
    .pfv_play svg {
        width: 20px;
        height: 20px;
    }
}
