/* On Demand Access singles.
   Tokens: pink #FA3375, hover #851DCF, text #0F1321, beige #EADED0 / #F8F4EF */

body.single-on-demand-access {
	--scw-pink: #fa3375;
	--scw-button-hover: #851dcf;
	--scw-text: #0f1321;
	--scw-black: #000000;
	--scw-muted: #5c6170;
	--scw-white: #ffffff;
	--scw-beige: #eaded0;
	--scw-beige-soft: #f8f4ef;
	--scw-border: #eaded0;
	--scw-font: "Inter", sans-serif;
	--scw-font-heading: "Manrope", sans-serif;
}

body.single-on-demand-access .page-header,
body.single-on-demand-access .entry-header {
	display: none;
}

.scw-ondemand-shell,
body.single-on-demand-access .elementor .scw-ondemand-shell {
	max-width: 800px;
	width: min(100%, 800px);
	margin: 2.5rem auto 4rem;
	padding: 0 1.25rem;
	color: var(--scw-text);
	font-family: var(--scw-font);
}

body.single-on-demand-access .scw-ondemand-shell.e-con,
body.single-on-demand-access .elementor .scw-ondemand-shell.e-con {
	--padding-top: 2.5rem;
	--padding-right: 0px;
	--padding-bottom: 0px;
	--padding-left: 0px;
}

.scw-ondemand-back {
	margin: 0 0 1.25rem;
}

.scw-ondemand-back .scw-ondemand-back__btn,
.scw-ondemand-back a.button.scw-ondemand-back__btn {
	display: inline-flex !important;
	align-items: center;
	justify-content: center;
	width: auto !important;
	min-height: 44px;
	padding: 0.65rem 1.15rem !important;
	margin: 0 !important;
	background: var(--scw-pink) !important;
	color: var(--scw-white) !important;
	border: 0 !important;
	border-radius: 999px !important;
	font-family: var(--scw-font-heading) !important;
	font-size: 0.88rem !important;
	font-weight: 700 !important;
	letter-spacing: 0.02em;
	line-height: 1.2 !important;
	text-decoration: none !important;
	text-transform: none !important;
	box-shadow: none !important;
}

.scw-ondemand-back .scw-ondemand-back__btn:hover,
.scw-ondemand-back .scw-ondemand-back__btn:focus,
.scw-ondemand-back a.button.scw-ondemand-back__btn:hover,
.scw-ondemand-back a.button.scw-ondemand-back__btn:focus {
	background: var(--scw-button-hover) !important;
	color: var(--scw-white) !important;
}

.scw-ondemand-kicker {
	margin: 0 0 0.35rem;
	color: var(--scw-pink);
	font-family: var(--scw-font-heading);
	font-size: 0.82rem;
	font-weight: 700;
	letter-spacing: 0.06em;
	text-transform: uppercase;
}

.scw-ondemand-kicker a {
	color: var(--scw-pink);
	text-decoration: none;
}

.scw-ondemand-kicker a:hover,
.scw-ondemand-kicker a:focus {
	color: var(--scw-button-hover);
	text-decoration: underline;
}

.scw-ondemand-player {
	position: relative;
	margin: 0 0 1.5rem;
	overflow: hidden;
	border-radius: 12px;
	background: #000;
	aspect-ratio: 16 / 9;
}

.scw-ondemand-player iframe {
	position: absolute;
	inset: 0;
	width: 100%;
	height: 100%;
	border: 0;
}

.scw-ondemand-player.is-link {
	aspect-ratio: auto;
	background: transparent;
	display: flex;
	align-items: center;
	overflow: visible;
	border-radius: 0;
	margin: 0 0 1.5rem;
}

.scw-ondemand-title,
body.single-on-demand-access .scw-ondemand-title .elementor-heading-title,
body.single-on-demand-access .elementor-widget-heading.scw-ondemand-title .elementor-heading-title,
body.single-on-demand-access .elementor-widget-theme-post-title .elementor-heading-title {
	margin: 0 0 1.25rem;
	color: var(--scw-black);
	font-family: var(--scw-font-heading);
	font-size: 2.1rem;
	font-weight: 700;
	line-height: 1.15;
	letter-spacing: -0.02em;
}

.scw-ondemand-hero-img {
	position: relative;
	margin: 0 0 1.5rem;
	overflow: hidden;
	border-radius: 12px;
	background: var(--scw-beige-soft);
}

.scw-ondemand-hero-img img {
	display: block;
	width: 100%;
	height: auto;
	object-fit: contain;
	object-position: center;
}

.scw-ondemand-hero-img.is-locked img {
	filter: blur(12px) brightness(0.42);
}

.scw-ondemand-hero-lock {
	position: absolute;
	inset: 0;
	display: flex;
	align-items: center;
	justify-content: center;
	padding: 1.25rem;
	z-index: 1;
}

.scw-ondemand-hero-lock .scw-ondemand-restricted {
	margin: 0;
	max-width: 28rem;
	background: rgba(15, 19, 33, 0.78);
	border: 0;
	color: #ffffff;
	text-align: center;
}

.scw-ondemand-hero-lock .scw-ondemand-restricted p {
	color: #ffffff;
}

.scw-ondemand-hero-lock .scw-ondemand-restricted__actions {
	justify-content: center;
}

.scw-ondemand-content,
body.single-on-demand-access .elementor-widget-text-editor.scw-ondemand-content {
	margin-top: 2rem;
	font-size: 1.05rem;
	line-height: 1.6;
}

body.single-on-demand-access .elementor-widget-shortcode:has(.scw-ondemand-hero-img),
body.single-on-demand-access .elementor-widget-shortcode:has(.scw-ondemand-player) {
	margin-bottom: 0.25rem;
}

.scw-ondemand-content p,
.scw-ondemand-content li {
	color: var(--scw-text);
}

.scw-ondemand-content a {
	color: var(--scw-pink);
}

.scw-ondemand-content iframe {
	width: 100%;
	max-width: 100%;
	aspect-ratio: 16 / 9;
	height: auto;
	border: 0;
	border-radius: 12px;
	background: #000;
}

.scw-ondemand-content [style*="padding:56.25%"],
.scw-ondemand-content [style*="padding: 56.25%"] {
	border-radius: 12px;
	overflow: hidden;
	margin: 1.25rem 0 0;
}

.woocommerce-memberships-content-restricted,
.wc-memberships-content-restricted-message,
.scw-ondemand-restricted,
.scw-ondemand-content .woocommerce-info {
	margin-top: 1.25rem;
	padding: 1.1rem 1.2rem;
	background: var(--scw-beige-soft);
	border: 1px solid var(--scw-border);
	border-radius: 12px;
	color: var(--scw-text);
}

.scw-ondemand-restricted p {
	margin: 0 0 0.85rem;
}

.scw-ondemand-restricted__actions {
	display: flex;
	flex-wrap: wrap;
	gap: 0.6rem;
	margin: 0 !important;
}

.scw-ondemand-restricted .scw-ondemand-restricted__btn,
.scw-ondemand-restricted a.button.scw-ondemand-restricted__btn,
.scw-ondemand-hero-lock .scw-ondemand-restricted__btn,
.scw-ondemand-hero-lock a.button.scw-ondemand-restricted__btn,
.scw-ondemand-player.is-link .scw-ondemand-watch-btn,
.scw-ondemand-player.is-link a.button.scw-ondemand-watch-btn {
	display: inline-flex !important;
	align-items: center;
	justify-content: center;
	width: auto !important;
	min-height: 44px;
	padding: 0.65rem 1.25rem !important;
	margin: 0 !important;
	background: var(--scw-pink) !important;
	color: var(--scw-white) !important;
	border: 0 !important;
	border-radius: 999px !important;
	font-family: var(--scw-font-heading) !important;
	font-size: 0.88rem !important;
	font-weight: 700 !important;
	letter-spacing: 0.02em;
	line-height: 1.2 !important;
	text-decoration: none !important;
	text-transform: none !important;
	box-shadow: none !important;
	transition: background 0.15s ease;
}

.scw-ondemand-restricted .scw-ondemand-restricted__btn:hover,
.scw-ondemand-restricted .scw-ondemand-restricted__btn:focus,
.scw-ondemand-restricted a.button.scw-ondemand-restricted__btn:hover,
.scw-ondemand-restricted a.button.scw-ondemand-restricted__btn:focus,
.scw-ondemand-hero-lock .scw-ondemand-restricted__btn:hover,
.scw-ondemand-hero-lock .scw-ondemand-restricted__btn:focus,
.scw-ondemand-hero-lock a.button.scw-ondemand-restricted__btn:hover,
.scw-ondemand-hero-lock a.button.scw-ondemand-restricted__btn:focus,
.scw-ondemand-player.is-link .scw-ondemand-watch-btn:hover,
.scw-ondemand-player.is-link .scw-ondemand-watch-btn:focus,
.scw-ondemand-player.is-link a.button.scw-ondemand-watch-btn:hover,
.scw-ondemand-player.is-link a.button.scw-ondemand-watch-btn:focus {
	background: var(--scw-button-hover) !important;
	color: var(--scw-white) !important;
}

@media (max-width: 767px) {
	.scw-ondemand-title {
		font-size: 1.65rem;
	}

	.scw-ondemand-shell {
		margin-top: 1.5rem;
	}

	body.single-on-demand-access .scw-ondemand-shell.e-con,
	body.single-on-demand-access .elementor .scw-ondemand-shell.e-con {
		--padding-top: 1.75rem;
	}
}
