/* Haagala Video Page — RTL, mobile-first */
/* Design System v3.0 — dark+gold theme */
/* Tokens: defined in landing-page.css :root. This file only adds page-specific tokens. */

/* ——— Video Page Tokens ——— */
/* --lp-wa-* tokens defined in landing-page.css :root (always loaded before this file) */
:root {
	--lp-cta-zone-bg:           #1C1C22; /* was #F0F7FF — now surface-2 */
	--lp-video-bg:              #000000;
	--lp-video-overlay-bg:      rgba(0,0,0,0.60); /* was 0.45 — darker for dark-on-dark */
	--lp-video-play-btn-bg:     rgba(200,151,58,0.92); /* was rgba(255,255,255,0.96) */
	--lp-video-progress-height: 12px;
	--lp-progress-track-bg:     rgba(200,151,58,0.09);
	--lp-wa-container-hover:    #223A22;
	--lp-toast-bg:              #1C1C22;
	--lp-toast-text:            #F0EBE0;
}

/* ——— Elementor wrapper reset — full-bleed widget ——— */
.elementor-widget-haagala_video,
.elementor-widget-haagala_video > .elementor-widget-container,
.e-con:has(.elementor-widget-haagala_video),
.elementor-section:has(.elementor-widget-haagala_video),
.elementor-widget-wrap:has(.elementor-widget-haagala_video) {
	padding: 0 !important;
	margin: 0 !important;
	width: 100%;
}

body:has(.elementor-widget-haagala_video) {
	background-color: #0C0C0E;
}

/* ——— Hide Hello Elementor chrome on video page ——— */
body.haagala-video-body .site-header,
body.haagala-video-body .site-footer,
body.haagala-video-body #wpadminbar ~ .site-header {
	display: none !important;
}

/* ——— Screen-reader only ——— */
.lp-sr-only {
	position: absolute;
	width: 1px;
	height: 1px;
	padding: 0;
	margin: -1px;
	overflow: hidden;
	clip: rect(0,0,0,0);
	white-space: nowrap;
	border: 0;
}

/* ——— Video Hero — inherits .lp-hero, adds compact height ——— */
.lp-video-hero {
	min-height: 52vh;
	min-height: 52dvh;
	padding-block: 64px 48px;
}

/* ——— Video Section ——— */
.lp-video-section {
	background: var(--lp-bg-surface-2, #1C1C22);
	padding-block: 48px 64px;
}

/* ——— Video Card ——— */
.lp-video-card {
	background: var(--lp-bg-surface, #141418);
	border: 1px solid var(--lp-border, rgba(200,151,58,0.18));
	border-radius: var(--lp-radius-lg, 16px);
	box-shadow: var(--lp-shadow-2, 0 4px 16px rgba(0,0,0,.50));
	overflow: hidden;
	max-width: 800px;
	margin-inline: auto;
}

/* ——— Video Wrap — aspect ratio 16:9 ——— */
.lp-video-wrap {
	position: relative;
	width: 100%;
	padding-bottom: 56.25%;
	background: var(--lp-video-bg);
	overflow: hidden;
}

.lp-video-wrap > * {
	position: absolute;
	inset: 0;
}

/* Vimeo iframe injected by SDK */
#lp-vimeo-container iframe {
	position: absolute;
	inset: 0;
	width: 100%;
	height: 100%;
	border: 0;
}

/* ——— Overlay (poster + play btn) ——— */
.lp-video-overlay {
	position: absolute;
	inset: 0;
	display: flex;
	align-items: center;
	justify-content: center;
	background: var(--lp-video-overlay-bg);
	z-index: 2;
	transition: opacity 250ms ease;
}

.lp-video-overlay.is-hidden {
	opacity: 0;
	pointer-events: none;
}

.lp-video-poster {
	position: absolute;
	inset: 0;
	width: 100%;
	height: 100%;
	object-fit: cover;
	z-index: -1;
}

/* ——— Play Button ——— */
.lp-video-play-btn {
	position: relative;
	z-index: 3;
	display: flex;
	flex-direction: column;
	align-items: center;
	justify-content: center;
	gap: 10px;
	background: var(--lp-video-play-btn-bg);
	border: none;
	border-radius: var(--lp-radius-full, 9999px);
	width: 72px;
	height: 72px;
	cursor: pointer;
	box-shadow: var(--lp-shadow-gold, 0 0 24px rgba(200,151,58,0.28));
	transition: transform var(--lp-transition, 200ms cubic-bezier(0.4,0,0.2,1)),
	            box-shadow var(--lp-transition, 200ms cubic-bezier(0.4,0,0.2,1));
}

.lp-video-play-btn__label {
	position: absolute;
	bottom: -28px;
	font-size: 12px;
	font-weight: 500;
	color: var(--lp-text-primary, #F0EBE0);
	white-space: nowrap;
	letter-spacing: 0.02em;
}

.lp-video-play-btn__icon {
	display: flex;
	align-items: center;
	justify-content: center;
	color: #0C0C0E; /* dark on gold — ~11:1 AAA */
	margin-inline-start: 3px;
}

.lp-video-play-btn:hover {
	transform: scale(1.08);
	box-shadow: var(--lp-shadow-gold, 0 0 24px rgba(200,151,58,0.28)), 0 4px 16px rgba(0,0,0,.60);
}

.lp-video-play-btn:active {
	transform: scale(0.96);
}

.lp-video-play-btn:focus-visible {
	outline: 3px solid var(--lp-gold-light, #E8B86D);
	outline-offset: 3px;
}

/* ——— Error State ——— */
.lp-video-error {
	position: absolute;
	inset: 0;
	display: flex;
	flex-direction: column;
	align-items: center;
	justify-content: center;
	gap: 12px;
	background: var(--lp-bg-surface-2, #1C1C22);
	padding: 24px;
	text-align: center;
	z-index: 4;
	color: var(--lp-text-secondary, #9D9585);
}

.lp-video-error[hidden] {
	display: none;
}

.lp-video-error__title {
	font-size: 18px;
	font-weight: 600;
	color: var(--lp-text-primary, #F0EBE0);
	margin: 0;
}

.lp-video-error__body {
	font-size: 14px;
	line-height: 1.65;
	color: var(--lp-text-secondary, #9D9585);
	margin: 0;
	max-width: 320px;
}

/* ——— Ghost Button — error retry + general secondary ——— */
.lp-btn-ghost {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	gap: 8px;
	background: transparent;
	border: 1px solid var(--lp-border-strong, rgba(200,151,58,0.40));
	color: var(--lp-gold, #C8973A);
	border-radius: var(--lp-radius-full, 9999px);
	padding: 13px 28px;
	font-size: 15px;
	font-weight: 600;
	cursor: pointer;
	transition: background-color var(--lp-transition, 200ms cubic-bezier(0.4,0,0.2,1)),
	            border-color var(--lp-transition, 200ms cubic-bezier(0.4,0,0.2,1)),
	            transform var(--lp-transition, 200ms cubic-bezier(0.4,0,0.2,1));
	text-decoration: none;
}

.lp-btn-ghost:hover {
	background: var(--lp-gold-glow, rgba(200,151,58,0.18));
	border-color: var(--lp-gold, #C8973A);
	transform: translateY(-1px);
}

.lp-btn-ghost:active {
	transform: scale(0.98);
}

.lp-btn-ghost:focus-visible {
	outline: 2px solid var(--lp-gold-light, #E8B86D);
	outline-offset: 3px;
}

/* ——— Progress Bar ——— */
.lp-video-progress-wrap {
	padding: 20px 20px 14px;
	background: var(--lp-bg-surface, #141418);
}

/* Header row: label + % counter */
.lp-progress-header {
	display: flex;
	justify-content: space-between;
	align-items: center;
	margin-block-end: 20px;
	direction: rtl;
}

.lp-progress-header__label {
	font-size: 11px;
	font-weight: 700;
	letter-spacing: 0.09em;
	text-transform: uppercase;
	color: var(--lp-text-secondary, #9D9585);
}

.lp-progress-header__pct {
	font-size: 14px;
	font-weight: 800;
	color: var(--lp-gold-light, #E8B86D);
	font-variant-numeric: tabular-nums;
	direction: ltr;
	letter-spacing: 0.02em;
	transition: color 400ms;
}

/* Scene — 3D context for bar + milestones + particles */
.lp-progress-scene {
	position: relative;
	direction: ltr;
	padding-block: 20px; /* vertical room for milestone dots */
	overflow: visible;
}

/* Track */
.lp-video-progress {
	height: var(--lp-video-progress-height, 12px);
	background: var(--lp-progress-track-bg, rgba(200,151,58,0.09));
	border-radius: var(--lp-radius-full, 9999px);
	overflow: hidden;
	position: relative;
	box-shadow:
		inset 0 2px 5px rgba(0,0,0,0.50),
		inset 0 -1px 2px rgba(0,0,0,0.25),
		0 1px 0 rgba(255,255,255,0.04);
}

/* Fill — metallic gold bevel */
.lp-video-progress__fill {
	height: 100%;
	width: 0%;
	border-radius: inherit;
	position: relative;
	transition: width 500ms linear;
	background: linear-gradient(
		to bottom,
		#F5CA5A 0%,
		#D4A042 40%,
		#C8973A 65%,
		#9A6C20 100%
	);
	box-shadow:
		inset 0 1px 0 rgba(255,240,160,0.55),
		inset 0 -1px 0 rgba(60,30,0,0.35);
}

/* Gloss overlay on fill */
.lp-video-progress__fill::before {
	content: '';
	position: absolute;
	inset: 0;
	background: linear-gradient(
		to bottom,
		rgba(255,255,255,0.30) 0%,
		rgba(255,255,255,0.04) 55%,
		transparent 100%
	);
	border-radius: inherit;
	pointer-events: none;
}

.lp-video-progress__fill.is-complete {
	background: linear-gradient(
		to bottom,
		#A4E8B0 0%,
		#4CAF50 45%,
		#388E3C 100%
	);
	box-shadow:
		inset 0 1px 0 rgba(180,255,190,0.45),
		inset 0 -1px 0 rgba(0,40,0,0.30);
}

/* Glowing tip — follows fill % via JS */
.lp-progress-tip {
	position: absolute;
	top: 50%;
	left: 0%;
	width: 22px;
	height: 22px;
	border-radius: 50%;
	background: rgba(250,215,100,0.80);
	filter: blur(8px);
	transform: translate(-50%, -50%);
	pointer-events: none;
	opacity: 0;
	transition: left 500ms linear, opacity 350ms;
	z-index: 2;
}

.lp-progress-tip.is-active {
	opacity: 1;
}

/* ——— Milestone Markers ——— */
.lp-milestones {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	pointer-events: none;
	overflow: visible;
	z-index: 3;
}

.lp-milestone {
	position: absolute;
	top: 50%;
	transform: translate(-50%, -50%);
	display: flex;
	flex-direction: column;
	align-items: center;
	overflow: visible;
}

/* Expanding ring — burst effect */
.lp-milestone__ring {
	position: absolute;
	width: 16px;
	height: 16px;
	border-radius: 50%;
	border: 2px solid rgba(200,151,58,0.70);
	pointer-events: none;
	opacity: 0;
	transform: scale(1);
}

/* Dot */
.lp-milestone__dot {
	width: 16px;
	height: 16px;
	border-radius: 50%;
	background: #141418;
	border: 2px solid rgba(200,151,58,0.28);
	display: flex;
	align-items: center;
	justify-content: center;
	color: transparent;
	position: relative;
	z-index: 2;
	box-shadow:
		0 2px 6px rgba(0,0,0,0.40),
		inset 0 1px 0 rgba(255,255,255,0.07);
	transition:
		background 260ms,
		border-color 260ms,
		box-shadow 260ms,
		transform 260ms;
}

/* Badge — tooltip above dot */
.lp-milestone__badge {
	position: absolute;
	bottom: calc(100% + 14px);
	left: 50%;
	transform: translateX(-50%) translateY(8px);
	background: linear-gradient(135deg, #1C1C22 0%, #141418 100%);
	border: 1px solid rgba(200,151,58,0.50);
	border-radius: 20px;
	color: var(--lp-gold-light, #E8B86D);
	font-size: 11px;
	font-weight: 700;
	letter-spacing: 0.04em;
	white-space: nowrap;
	padding: 5px 12px;
	direction: rtl;
	box-shadow:
		0 4px 14px rgba(0,0,0,0.55),
		0 0 18px rgba(200,151,58,0.18);
	opacity: 0;
	pointer-events: none;
	transition:
		opacity 220ms cubic-bezier(0.4, 0, 0.2, 1),
		transform 280ms cubic-bezier(0.34, 1.56, 0.64, 1);
}

.lp-milestone__badge::after {
	content: '';
	position: absolute;
	top: 100%;
	left: 50%;
	transform: translateX(-50%);
	border: 5px solid transparent;
	border-top-color: rgba(200,151,58,0.50);
}

/* Finish dot slightly larger */
.lp-milestone--finish .lp-milestone__dot {
	width: 20px;
	height: 20px;
}

.lp-milestone--finish .lp-milestone__ring {
	width: 20px;
	height: 20px;
}

/* ——— Milestone: reached state ——— */
.lp-milestone.is-reached .lp-milestone__dot {
	background: linear-gradient(145deg, #F5CA5A, #C8973A);
	border-color: #E8B86D;
	color: #0C0C0E;
	transform: scale(1.25) translateY(-3px);
	box-shadow:
		0 0 16px rgba(200,151,58,0.70),
		0 4px 12px rgba(0,0,0,0.50),
		inset 0 1px 0 rgba(255,255,255,0.40);
}

/* Dot pop animation */
.lp-milestone.is-popping .lp-milestone__dot {
	animation: lp-ms-pop 620ms cubic-bezier(0.34, 1.56, 0.64, 1) both;
}

@keyframes lp-ms-pop {
	0%   { transform: scale(0.9) translateY(0px); }
	28%  { transform: scale(1.90) translateY(-9px); }
	58%  { transform: scale(1.30) translateY(-4px); }
	100% { transform: scale(1.25) translateY(-3px); }
}

/* Ring burst */
.lp-milestone.is-popping .lp-milestone__ring {
	animation: lp-ms-ring 750ms cubic-bezier(0.16, 1, 0.3, 1) both;
}

@keyframes lp-ms-ring {
	0%   { transform: scale(1); opacity: 0.90; }
	100% { transform: scale(4.0); opacity: 0; }
}

/* Badge appear */
.lp-milestone__badge.is-visible {
	opacity: 1;
	transform: translateX(-50%) translateY(0);
}

.lp-milestone__badge.is-leaving {
	animation: lp-badge-fade 320ms ease forwards;
}

@keyframes lp-badge-fade {
	from { opacity: 1; transform: translateX(-50%) translateY(0); }
	to   { opacity: 0; transform: translateX(-50%) translateY(-10px); }
}

/* Finish badge — right-anchored so it stays within the card */
.lp-milestone--finish .lp-milestone__badge {
	left: auto;
	right: 0;
	transform: translateY(8px);
}

.lp-milestone--finish .lp-milestone__badge::after {
	left: auto;
	right: 12px;
	transform: none;
}

.lp-milestone--finish .lp-milestone__badge.is-visible {
	opacity: 1;
	transform: translateY(0);
}

.lp-milestone--finish .lp-milestone__badge.is-leaving {
	animation: lp-badge-fade-r 320ms ease forwards;
}

@keyframes lp-badge-fade-r {
	from { opacity: 1; transform: translateY(0); }
	to   { opacity: 0; transform: translateY(-10px); }
}

/* ——— Particles container ——— */
.lp-particles {
	position: absolute;
	inset: 0;
	overflow: visible;
	pointer-events: none;
	z-index: 10;
}

/* Individual particle */
.lp-particle {
	position: absolute;
	border-radius: 50%;
	pointer-events: none;
	animation: lp-p-fly var(--dur, 700ms) ease-out var(--delay, 0ms) both;
}

.lp-particle--star {
	border-radius: 0;
	clip-path: polygon(50% 0%, 61% 35%, 98% 35%, 68% 57%, 79% 91%, 50% 70%, 21% 91%, 32% 57%, 2% 35%, 39% 35%);
}

@keyframes lp-p-fly {
	0% {
		opacity: 1;
		transform: translate(-50%, -50%) scale(0);
	}
	20% {
		opacity: 1;
		transform: translate(-50%, -50%) scale(1.5);
	}
	100% {
		opacity: 0;
		transform: translate(calc(-50% + var(--tx, 0px)), calc(-50% + var(--ty, 0px))) scale(0.15);
	}
}

.lp-video-hint {
	font-size: 13px;
	font-weight: 500;
	color: var(--lp-text-secondary, #9D9585);
	margin: 10px 0 0;
	text-align: center;
	direction: rtl;
}

/* ——— Collection: dot flies to finish ——— */
.lp-ms-flyer {
	position: absolute;
	width: 14px;
	height: 14px;
	border-radius: 50%;
	background: linear-gradient(145deg, #F5CA5A, #C8973A);
	border: 2px solid #E8B86D;
	transform: translate(-50%, -50%);
	pointer-events: none;
	z-index: 20;
	box-shadow: 0 0 14px rgba(200,151,58,0.85);
	animation: lp-ms-fly 580ms cubic-bezier(0.4, 0, 0.8, 1) forwards;
}

@keyframes lp-ms-fly {
	0%   { transform: translate(-50%, -50%) scale(1);   opacity: 1; }
	80%  { opacity: 0.85; }
	100% { transform: translate(calc(-50% + var(--dx)), calc(-50% + var(--dy))) scale(0.25); opacity: 0; }
}

/* Source dot fades after clone takes off */
.lp-milestone.is-flying .lp-milestone__dot {
	opacity: 0;
	transition: opacity 350ms ease;
}

/* ——— Counter inside finish dot ——— */
.lp-milestone__dot.lp-ms-counting {
	background: linear-gradient(145deg, #F5CA5A, #C8973A) !important;
	border-color: #E8B86D !important;
	color: #0C0C0E !important;
	transform: scale(1.55) translateY(-4px) !important;
	font-size: 10px;
	font-weight: 900;
}

.lp-ms-counter {
	font-size: 10px;
	font-weight: 900;
	color: #0C0C0E;
	line-height: 1;
	display: block;
	user-select: none;
}

.lp-ms-counter.is-bump {
	animation: lp-counter-bump 220ms cubic-bezier(0.34, 1.56, 0.64, 1) both;
}

@keyframes lp-counter-bump {
	0%   { transform: scale(1); }
	55%  { transform: scale(1.8); }
	100% { transform: scale(1); }
}

/* ——— Confetti container (fixed overlay) ——— */
.lp-confetti-container {
	position: fixed;
	inset: 0;
	pointer-events: none;
	z-index: 99999;
	overflow: hidden;
}

.lp-confetti-piece {
	position: absolute;
	top: -18px;
	opacity: 0;
	animation: lp-confetti-fall linear forwards;
	will-change: transform, opacity;
}

@keyframes lp-confetti-fall {
	0%   { opacity: 1;   transform: translateY(0)      rotate(0deg); }
	12%  { opacity: 1; }
	88%  { opacity: 0.7; }
	100% { opacity: 0;   transform: translateY(105vh)  rotate(var(--rot-end, 540deg)); }
}

@media (prefers-reduced-motion: reduce) {
	.lp-ms-flyer,
	.lp-confetti-piece,
	.lp-ms-counter.is-bump {
		animation-duration: 1ms !important;
	}
}

/* ——— CTA Zone ——— */
.lp-video-cta-zone {
	background: var(--lp-cta-zone-bg);
	border: 1px solid var(--lp-border-strong, rgba(200,151,58,0.40));
	border-radius: var(--lp-radius-lg, 16px);
	padding: 32px 24px;
	text-align: center;
	margin-block-start: 24px;
	max-width: 800px;
	margin-inline: auto;
	opacity: 0;
	transform: translateY(16px);
	transition: opacity 380ms cubic-bezier(0.4, 0, 0.2, 1),
	            transform 380ms cubic-bezier(0, 0, 0.2, 1);
}

.lp-video-cta-zone[hidden] {
	display: none;
}

.lp-video-cta-zone.is-visible {
	opacity: 1;
	transform: translateY(0);
}

.lp-video-cta-zone__eyebrow {
	font-size: 11px;
	font-weight: 700;
	letter-spacing: 0.14em;
	text-transform: uppercase;
	color: var(--lp-gold, #C8973A);
	margin: 0 0 8px;
}

.lp-video-cta-zone__title {
	font-size: 24px;
	font-weight: 700;
	color: var(--lp-text-primary, #F0EBE0);
	margin: 0 0 14px;
	line-height: 1.25;
}

.lp-video-cta-zone__body {
	font-size: 17px;
	line-height: 1.65;
	color: var(--lp-text-secondary, #9D9585);
	margin: 0 0 28px;
}

.lp-video-cta-zone__sub {
	font-size: 13px;
	font-weight: 500;
	color: var(--lp-text-secondary, #9D9585);
	margin: 14px 0 0;
}

/* ——— CTA template: "הפרטים נקלטו בהצלחה" ——— */
.lp-video-cta-zone__icon {
	display: inline-flex;
	color: var(--lp-gold, #C8973A);
	margin-block-end: 16px;
}

.lp-video-cta-zone__when {
	font-size: 15px;
	font-weight: 600;
	color: var(--lp-gold-light, #E8B86D);
	margin: 0 0 12px;
}

.lp-video-cta-zone__when[hidden] {
	display: none;
}

.lp-video-cta-zone--confirmation .lp-video-cta-zone__body {
	margin-block-end: 0;
}

.lp-video-cta-zone__cal-btn {
	display: inline-flex;
	align-items: center;
	gap: 8px;
	margin-block-start: 24px;
	padding: 12px 24px;
	background: transparent;
	border: 1.5px solid var(--lp-gold, #C8973A);
	border-radius: var(--lp-radius-full, 999px);
	color: var(--lp-gold-light, #E8B86D);
	font-size: 14px;
	font-weight: 600;
	text-decoration: none;
	transition: background var(--lp-transition), color var(--lp-transition);
}

.lp-video-cta-zone__cal-btn:hover {
	background: rgba(200, 151, 58, 0.12);
}

.lp-video-cta-zone__cal-btn:focus-visible {
	outline: 3px solid var(--lp-gold-light, #E8B86D);
	outline-offset: 3px;
}

.lp-video-cta-zone__cal-btn[hidden] {
	display: none;
}

/* ——— WhatsApp CTA Button ——— */
.lp-video-wa-btn {
	display: inline-flex;
	align-items: center;
	gap: 10px;
	background: var(--lp-wa-container-bg, #1A3A1A);
	color: var(--lp-wa-green, #25D366);
	text-decoration: none;
	font-size: 15px;
	font-weight: 700;
	padding: 13px 28px;
	border-radius: var(--lp-radius-full, 9999px);
	border: 1px solid rgba(37,211,102,0.30);
	direction: rtl;
	transition: background-color var(--lp-transition, 200ms cubic-bezier(0.4,0,0.2,1)),
	            transform var(--lp-transition, 200ms cubic-bezier(0.4,0,0.2,1)),
	            box-shadow var(--lp-transition, 200ms cubic-bezier(0.4,0,0.2,1));
}

.lp-video-wa-btn:hover {
	background: var(--lp-wa-container-hover, #223A22);
	color: var(--lp-wa-green, #25D366);
	box-shadow: 0 0 20px rgba(37,211,102,0.20);
	transform: translateY(-1px);
}

.lp-video-wa-btn:active {
	transform: translateY(0);
}

.lp-video-wa-btn:focus-visible {
	outline: 2px solid var(--lp-wa-green, #25D366);
	outline-offset: 3px;
}

/* ——— Toast — Skip-Block Notice ——— */
/* Lives outside .lp-page (sibling of <main>), so declare font locally. */
.lp-video-toast {
	position: fixed;
	bottom: 16px;
	left: 50%;
	transform: translateX(-50%);
	display: flex;
	align-items: flex-start;
	gap: 12px;
	font-family: 'Heebo', 'Segoe UI', Arial, sans-serif;
	-webkit-font-smoothing: antialiased;
	-moz-osx-font-smoothing: grayscale;
	background: var(--lp-bg-surface-2, #1C1C22);
	color: var(--lp-text-primary, #F0EBE0);
	padding: 14px 14px 14px 12px;
	border-radius: var(--lp-radius-lg, 16px);
	border: 1px solid var(--lp-border-strong, rgba(200,151,58,0.40));
	box-shadow:
		0 4px 16px rgba(0,0,0,.50),
		0 0 32px rgba(200,151,58,0.15);
	z-index: 9000;
	width: min(420px, calc(100vw - 32px));
	direction: rtl;
	text-align: right;
	overflow: hidden;
	transition: opacity 250ms ease, transform 250ms ease;
}

/* Right accent stripe (RTL: visually on the right edge) */
.lp-video-toast::before {
	content: '';
	position: absolute;
	inset-block: 0;
	inset-inline-end: 0;
	width: 4px;
	background: linear-gradient(180deg, var(--lp-gold-light, #E8B86D) 0%, var(--lp-gold, #C8973A) 100%);
}

.lp-video-toast[hidden] {
	display: none;
}

.lp-video-toast__icon {
	flex-shrink: 0;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 36px;
	height: 36px;
	border-radius: var(--lp-radius-full, 9999px);
	background: var(--lp-gold-muted, #5C4010);
	color: var(--lp-gold-light, #E8B86D);
}

.lp-video-toast__content {
	display: flex;
	flex-direction: column;
	gap: 2px;
	min-width: 0;
	padding-top: 2px;
}

.lp-video-toast__title {
	font-size: 14px;
	font-weight: 700;
	line-height: 1.3;
	color: var(--lp-text-primary, #F0EBE0);
	letter-spacing: -0.01em;
}

.lp-video-toast__body {
	font-size: 13px;
	font-weight: 400;
	line-height: 1.45;
	color: var(--lp-text-secondary, #9D9585);
}

.lp-video-toast.is-visible {
	animation:
		lp-toast-in 360ms cubic-bezier(0.16, 1, 0.3, 1) both,
		lp-toast-pulse 700ms ease-out 380ms 2;
}

.lp-video-toast.is-leaving {
	animation: lp-toast-out 220ms ease both;
}

@keyframes lp-toast-in {
	0% {
		opacity: 0;
		transform: translateX(-50%) translateY(20px) scale(0.94);
	}
	60% {
		opacity: 1;
	}
	100% {
		opacity: 1;
		transform: translateX(-50%) translateY(0) scale(1);
	}
}

@keyframes lp-toast-pulse {
	0%, 100% {
		box-shadow:
			0 4px 16px rgba(0,0,0,.50),
			0 0 32px rgba(200,151,58,0.15);
	}
	50% {
		box-shadow:
			0 4px 16px rgba(0,0,0,.50),
			0 0 48px rgba(200,151,58,0.30);
	}
}

@keyframes lp-toast-out {
	from {
		opacity: 1;
		transform: translateX(-50%) translateY(0) scale(1);
	}
	to {
		opacity: 0;
		transform: translateX(-50%) translateY(8px) scale(0.97);
	}
}

@media (min-width: 481px) {
	.lp-video-toast {
		bottom: 32px;
		padding: 16px 18px 16px 16px;
		gap: 14px;
	}
	.lp-video-toast__icon {
		width: 40px;
		height: 40px;
	}
	.lp-video-toast__title {
		font-size: 15px;
	}
	.lp-video-toast__body {
		font-size: 13.5px;
	}
}

@media (prefers-reduced-motion: reduce) {
	.lp-video-toast.is-visible,
	.lp-video-toast.is-leaving {
		animation-duration: 1ms;
	}
}

/* ——— No-JS fallback ——— */
.lp-video-noscript {
	background: var(--lp-bg-surface-2, #1C1C22);
	border: 1px solid var(--lp-border, rgba(200,151,58,0.18));
	border-radius: var(--lp-radius-lg, 16px);
	padding: 32px 24px;
	max-width: 600px;
	margin: 40px auto;
	text-align: center;
	font-family: 'Heebo', 'Segoe UI', Arial, sans-serif;
}

.lp-video-noscript h2 {
	font-size: 20px;
	font-weight: 700;
	color: var(--lp-text-primary, #F0EBE0);
	margin: 0 0 12px;
}

.lp-video-noscript p {
	font-size: 16px;
	line-height: 1.65;
	color: var(--lp-text-secondary, #9D9585);
	margin: 0;
}

/* ——— Landscape mobile — collapse hero, cap video height ——— */
@media (orientation: landscape) and (max-height: 500px) {
	.lp-video-hero {
		min-height: 0;
		padding-block: 24px 16px;
	}

	.lp-video-wrap {
		padding-bottom: 0;
		height: 56vh;
		height: 56dvh;
	}

	.lp-video-section {
		padding-block: 24px 32px;
	}
}

/* ——— Tablet (768px+) ——— */
@media (min-width: 768px) {
	.lp-video-hero {
		min-height: 48vh;
		min-height: 48dvh;
		padding-block: 72px 56px;
	}

	.lp-video-cta-zone__title {
		font-size: 28px;
	}

	.lp-video-cta-zone__body {
		font-size: 17px;
	}
}

/* ——— prefers-reduced-motion — scoped to video elements only ——— */
@media (prefers-reduced-motion: reduce) {
	.lp-video-section *,
	.lp-video-section *::before,
	.lp-video-section *::after,
	.lp-video-hero *,
	.lp-video-hero *::before,
	.lp-video-hero *::after,
	.lp-video-cta-zone,
	.lp-video-overlay {
		transition-duration: 0.01ms !important;
		animation-duration: 0.01ms !important;
		animation-iteration-count: 1 !important;
	}
}
