/*
 * TPF — Case Study Video Embed
 * Black-framed 16:9 video block; rounded inner; poster image fallback.
 */

.tpf-csve {
	background-color: #293c7b;
	color: #ffffff;
	width: 100vw;
	margin-left: calc(50% - 50vw);
	margin-right: calc(50% - 50vw);
	margin-bottom: 0;
	padding: 1.5rem 0;
	font-family: proxima-nova, "Proxima Nova", -apple-system, BlinkMacSystemFont, sans-serif;
}

.tpf-csve__inner {
	max-width: 1100px;
	margin: 0 auto;
	padding: 0 1.5rem;
}

.tpf-csve__frame {
	background-color: #0c0000;
	padding: 26px 12% 27px;
}

.tpf-csve__media {
	position: relative;
	aspect-ratio: 16 / 9;
	border-radius: 10px;
	overflow: hidden;
	background-color: #000000;
}

.tpf-csve__media iframe,
.tpf-csve__media video,
.tpf-csve__media embed,
.tpf-csve__media object {
	position: absolute;
	inset: 0;
	width: 100%;
	height: 100%;
	border: 0;
}

.tpf-csve__poster {
	display: block;
	width: 100%;
	height: 100%;
	object-fit: cover;
}

.tpf-csve__caption {
	font-size: 20px;
	line-height: 30px;
	font-weight: 500;
	color: #ffffff;
	margin: 1rem 0 0;
	padding: 0;
}

@media (max-width: 1024px) {
	.tpf-csve__frame { padding: 24px 6%; }
	.tpf-csve__caption { font-size: 18px; line-height: 28px; }
}

@media (max-width: 600px) {
	.tpf-csve__frame { padding: 16px 16px; }
}
