/**
 * PTU Videos
 *
 * Same Divi specificity rule as cp-archive-grid.css: anything touching a
 * property Divi's Theme Builder reset forces with !important (color,
 * background-color, border-radius, box-shadow, img height) is written
 * twice — plain class + `#et-boc .et-l` prefixed — so it beats
 * `#et-boc .et-l div/p/a/img` on specificity. Keep both halves on any
 * rule you add.
 */

:root {
	--ptu-video-accent: #4f7a4f;      /* matches --cp-accent-green */
	--ptu-video-link: #c9862a;        /* matches --cp-accent-gold */
	--ptu-video-text: #242124;        /* matches --cp-accent-grey-black */
}

/* Player: 16:9 box, iframe fills it */
.ptu-video-embed,
#et-boc .et-l .ptu-video-embed {
	position: relative;
	width: 100%;
	aspect-ratio: 16 / 9;
	background: #000 !important;
	border-radius: 12px !important;
	overflow: hidden;
	margin: 0 0 24px;
}

.ptu-video-embed iframe,
#et-boc .et-l .ptu-video-embed iframe {
	position: absolute;
	inset: 0;
	width: 100% !important;
	height: 100% !important;
	border: 0;
}

/* Hosted by line */
.ptu-video-hosts,
#et-boc .et-l .ptu-video-hosts {
	margin: 0 0 18px !important;
	font-size: 1rem;
	color: var(--ptu-video-text) !important;
}

.ptu-video-hosts__label,
#et-boc .et-l .ptu-video-hosts__label {
	font-weight: 600;
}

.ptu-video-hosts a,
#et-boc .et-l .ptu-video-hosts a {
	color: var(--ptu-video-link) !important;
	text-decoration: none;
	font-weight: 600;
}

.ptu-video-hosts a:hover,
#et-boc .et-l .ptu-video-hosts a:hover {
	text-decoration: underline;
}

/* Description */
.ptu-video-description,
#et-boc .et-l .ptu-video-description {
	margin: 0 0 24px;
	color: var(--ptu-video-text) !important;
}

/* CTA button */
.ptu-video-cta,
#et-boc .et-l .ptu-video-cta {
	display: inline-block;
	padding: 14px 32px;
	background: var(--ptu-video-accent) !important;
	color: #fff !important;
	border-radius: 999px !important;
	font-weight: 700;
	text-decoration: none !important;
	transition: opacity 0.2s ease;
}

.ptu-video-cta:hover,
.ptu-video-cta:focus,
#et-boc .et-l .ptu-video-cta:hover,
#et-boc .et-l .ptu-video-cta:focus {
	opacity: 0.88;
}

/* Archive cards: show video thumbnails at 16:9 instead of the
   fixed 110px crop the partner cards use */
.cp-archive-card--ptu_video .cp-archive-card__image,
#et-boc .et-l .cp-archive-card--ptu_video .cp-archive-card__image {
	height: auto !important;
	aspect-ratio: 16 / 9;
}
