.sermon-video {
	margin: 0 0 24px;
	width: 100%;
}

/* Self-contained responsive 16:9 embed */
.sermon-video .wp-block-embed__wrapper {
	position: relative;
	overflow: hidden;
	width: 100%;
	padding-top: 56.25%; /* 16:9 */
}

.sermon-video .wp-block-embed__wrapper iframe {
	position: absolute;
	inset: 0;
	width: 100% !important;
	height: 100% !important;
	border: 0;
}

.sermon-actions .sermon-actions__buttons {
	margin-top: var(--wp--preset--spacing--2-xl);
}

.single-post__title.wp-block-post-title {
	margin-top: var(--wp--preset--spacing--4-xl);
}

.sermon-actions--download {
	margin-top: 32px;
}

.sermon-actions__buttons {
	display: flex;
	flex-wrap: wrap;
	gap: 12px;
	justify-content: center;
}

.sermon-actions__btn {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	height: 44px;
	padding-inline: 24px;
	border: 2px solid #365b46;
	border-radius: 8px;
	background: #365b46;
	color: #fff;
	font-size: 14px;
	font-weight: 600;
	letter-spacing: 0.16px;
	text-decoration: none;
	cursor: pointer;
	transition: background 0.2s ease, color 0.2s ease, border-color 0.2s ease;
}

.sermon-actions__btn:hover,
.sermon-actions__btn:focus-visible {
	background: #2b4737;
	border-color: #2b4737;
	color: #fff;
}

.sermon-actions__btn--questions {
	background: transparent;
	color: #365b46;
}

.sermon-actions__btn--questions:hover,
.sermon-actions__btn--questions:focus-visible {
	background: #365b46;
	color: #fff;
}

.sermon-actions__btn--download {
	background: #867446;
	border-color: #867446;
}

.sermon-actions__btn--download:hover,
.sermon-actions__btn--download:focus-visible {
	background: #6e5f3a;
	border-color: #6e5f3a;
}

/* ── Modal ─────────────────────────────────────────────────────────────── */

.sermon-modal {
	position: fixed;
	inset: 0;
	z-index: 100000;
	display: flex;
	align-items: center;
	justify-content: center;
	padding: 20px;
}

.sermon-modal[hidden] {
	display: none;
}

.sermon-modal__overlay {
	position: absolute;
	inset: 0;
	background: rgba(26, 38, 32, 0.75);
	opacity: 0;
	transition: opacity 0.25s ease;
}

.sermon-modal__panel {
	position: relative;
	width: 100%;
	max-width: 560px;
	max-height: 80vh;
	overflow-y: auto;
	background: #fff;
	border-radius: 8px;
	padding: 32px;
	box-shadow: 0 20px 60px rgba(0, 0, 0, 0.35);
	opacity: 0;
	transform: translateY(12px) scale(0.98);
	transition: opacity 0.25s ease, transform 0.25s ease;
}

.sermon-modal.is-open .sermon-modal__overlay {
	opacity: 1;
}

.sermon-modal.is-open .sermon-modal__panel {
	opacity: 1;
	transform: translateY(0) scale(1);
}

.sermon-modal__close {
	position: absolute;
	top: 16px;
	right: 16px;
	width: 36px;
	height: 36px;
	display: flex;
	align-items: center;
	justify-content: center;
	background: transparent;
	border: none;
	font-size: 22px;
	line-height: 1;
	color: #1a2620;
	cursor: pointer;
	border-radius: 4px;
}

.sermon-modal__close:hover,
.sermon-modal__close:focus-visible {
	background: #f7f5ef;
}

.sermon-modal__title {
	margin: 0 32px 16px 0;
	font-size: 20px;
	font-weight: 700;
	color: #1a2620;
}

.sermon-modal__content {
	font-size: 15px;
	line-height: 1.6;
	color: #24352b;
}

.sermon-modal__content p:first-child {
	margin-top: 0;
}

.sermon-modal__content p:last-child {
	margin-bottom: 0;
}

body.sermon-modal-open {
	overflow: hidden;
}
