/* ==========================================================================
   Neutralize Hestia's ".main-raised" dark padding for video views so our hero
   + content areas run edge-to-edge on pure white.
   ========================================================================== */
body.post-type-archive-video .main-raised,
body.single-video .main-raised,
body.tax-video_category .main-raised,
body.tax-video_tag .main-raised {
	margin: 0 !important;
	padding: 0 !important;
	box-shadow: none !important;
	border-radius: 0 !important;
	background: #fff !important;
}

/* ==========================================================================
   Hero section — mirrors the /media/ Elementor hero (leadership.png + overlay).
   ========================================================================== */
.opa90-video-hero {
	background-image:
		linear-gradient(10deg, rgba(49,60,78,0.37), rgba(0,0,0,0.86)),
		url("https://www.opa90forum.org/wp-content/uploads/2024/03/leadership.png");
	background-size: cover;
	background-position: center center;
	background-repeat: no-repeat;
	padding: 160px 60px;
	text-align: center;
	color: #fff;
}

.opa90-video-hero-inner {
	max-width: 960px;
	margin: 0 auto;
}

.opa90-video-hero-subtitle {
	font-family: "Montserrat", sans-serif !important;
	font-size: 13px !important;
	font-weight: 400 !important;
	text-transform: uppercase;
	letter-spacing: 2px;
	color: #fff !important;
	margin: 0 !important;
}

.opa90-video-hero-divider {
	width: 10%;
	max-width: 140px;
	min-width: 60px;
	height: 3px;
	background: #ACECFF;
	margin: 18px auto 24px;
}

.opa90-video-hero-title {
	font-family: "Montserrat", sans-serif !important;
	font-size: 67px !important;
	font-weight: 700 !important;
	color: #fff !important;
	letter-spacing: -2px;
	line-height: 1.1 !important;
	margin: 0 !important;
	padding: 0 !important;
}

@media (max-width: 1024px) {
	.opa90-video-hero { padding: 120px 30px; }
	.opa90-video-hero-title { font-size: 50px !important; }
}

@media (max-width: 600px) {
	.opa90-video-hero { padding: 80px 20px; }
	.opa90-video-hero-title { font-size: 36px !important; }
}

/* ==========================================================================
   White content wrapper (used by archive below hero AND single top-to-bottom).
   ========================================================================== */
.opa90-video-content-wrap {
	background: #fff;
	padding: 60px 0 80px;
}
.opa90-video-content-wrap--single {
	padding-top: 80px; /* clear sticky nav since single has no hero */
}
.opa90-video-content-wrap .container { max-width: 1140px; }

/* ==========================================================================
   Single video page header (no hero — simple heading on white)
   ========================================================================== */
.opa90-video-header {
	text-align: center;
	margin-bottom: 1.5em;
}
.opa90-video-eyebrow {
	font-family: "Montserrat", sans-serif !important;
	font-size: 13px !important;
	font-weight: 400 !important;
	text-transform: uppercase;
	letter-spacing: 2px;
	color: #40788D !important;
	margin: 0 0 12px !important;
}
.opa90-video-article .opa90-video-title {
	font-family: "Montserrat", sans-serif !important;
	font-size: 46px !important;
	line-height: 1.2 !important;
	font-weight: 600 !important;
	color: #40788D !important;
	text-align: center;
	letter-spacing: -1px;
	margin: 0 !important;
	padding: 0 !important;
}
.opa90-video-article .opa90-video-title::after {
	content: "";
	display: block;
	width: 50px;
	height: 3px;
	background: #68C4EF;
	margin: 16px auto 0;
}
@media (max-width: 1024px) {
	.opa90-video-article .opa90-video-title { font-size: 36px !important; }
}
@media (max-width: 600px) {
	.opa90-video-article .opa90-video-title { font-size: 28px !important; }
}

.opa90-video-article .opa90-video-meta {
	text-align: center;
	color: #666;
	font-size: 0.9375em;
	margin: 1.5em 0 2em;
}

.opa90-video-player { margin: 0 0 24px; }
.opa90-video-iframe-wrap { position: relative; width: 100%; padding-top: 56.25%; }
.opa90-video-iframe-wrap iframe { position: absolute; inset: 0; width: 100%; height: 100%; border: 0; }
.opa90-video-player video {
	width: 100%;
	height: auto;
	max-height: 80vh;
	background: #000;
	display: block;
	box-shadow: 0 6px 24px rgba(0,0,0,0.18);
	border-radius: 4px;
}

.opa90-video-description {
	color: #333;
	line-height: 1.7;
	font-size: 1.0625em;
	margin: 1.5em 0;
}

.opa90-video-transcript {
	margin: 2em 0;
	padding: 1.25em;
	background: #f8f9fa;
	border: 1px solid #e5e5e5;
	border-radius: 6px;
	color: #333;
}
.opa90-video-transcript summary {
	cursor: pointer;
	font-weight: 600;
	color: #34788D;
}
.opa90-video-transcript-body { margin-top: 1em; line-height: 1.6; }

.opa90-video-back {
	margin: 3em 0 0;
	text-align: center;
}
.opa90-video-back a {
	font-family: "Montserrat", sans-serif;
	font-size: 13px;
	font-weight: 600;
	text-transform: uppercase;
	letter-spacing: 2px;
	color: #40788D;
	text-decoration: none;
}
.opa90-video-back a:hover { color: #68C4EF; }

/* ==========================================================================
   Linked video on regular posts (unchanged, minor polish)
   ========================================================================== */
.opa90-linked-video {
	margin: 0 0 2em;
	padding: 1em;
	background: #f8f9fa;
	border-left: 4px solid #40788D;
	border-radius: 0 4px 4px 0;
}
.opa90-linked-video-caption {
	margin: 0.5em 0 0;
	font-size: 0.875em;
	color: #555;
}
