/* TDH Page Enhancer — pinned scenes, original backgrounds kept */

body.tdh-pe-on.tdh-pe-pinned {
	overflow-x: hidden;
}

html:has(body.tdh-pe-on.tdh-pe-pinned) {
	scroll-behavior: auto;
}

body.tdh-pe-on.tdh-pe-pinned .elementor {
	min-height: 0;
}

.tdh-pe-spacer {
	width: 1px;
	height: 600vh;
	pointer-events: none;
	visibility: hidden;
}

/* Generic pinned scenes — IDs come from the page's animation preset */
body.tdh-pe-on.tdh-pe-pinned .tdh-pe-scene {
	position: fixed !important;
	top: 0;
	left: 0;
	right: 0;
	width: 100% !important;
	max-width: none !important;
	min-height: 100vh !important;
	height: 100vh !important;
	margin: 0 !important;
	overflow: hidden;
	will-change: opacity;
}

body.admin-bar.tdh-pe-on.tdh-pe-pinned .tdh-pe-scene {
	top: 32px;
	height: calc(100vh - 32px) !important;
	min-height: calc(100vh - 32px) !important;
}

@media screen and (max-width: 782px) {
	body.admin-bar.tdh-pe-on.tdh-pe-pinned .tdh-pe-scene {
		top: 46px;
		height: calc(100vh - 46px) !important;
		min-height: calc(100vh - 46px) !important;
	}
}

body.tdh-pe-on.tdh-pe-pinned .tdh-pe-scene.is-first {
	opacity: 1;
	visibility: visible;
	z-index: 3;
	pointer-events: auto;
}

body.tdh-pe-on.tdh-pe-pinned .tdh-pe-scene:not(.is-first) {
	opacity: 0;
	visibility: hidden;
	z-index: 1;
	pointer-events: none;
}

body.tdh-pe-on.tdh-pe-pinned .tdh-pe-scene.is-scrollable {
	overflow: auto;
}

body.tdh-pe-on.tdh-pe-pinned .tdh-pe-scene.is-scrollable input,
body.tdh-pe-on.tdh-pe-pinned .tdh-pe-scene.is-scrollable button,
body.tdh-pe-on.tdh-pe-pinned .tdh-pe-scene.is-scrollable textarea,
body.tdh-pe-on.tdh-pe-pinned .tdh-pe-scene.is-scrollable select {
	pointer-events: auto;
}

body.tdh-pe-on.tdh-pe-pinned #section-1,
body.tdh-pe-on.tdh-pe-pinned #section-2,
body.tdh-pe-on.tdh-pe-pinned #section-3,
body.tdh-pe-on.tdh-pe-pinned #section-4,
body.tdh-pe-on.tdh-pe-pinned #section-5,
body.tdh-pe-on.tdh-pe-pinned #section-6,
body.tdh-pe-on.tdh-pe-pinned #section-7 {
	position: fixed !important;
	top: 0;
	left: 0;
	right: 0;
	width: 100% !important;
	max-width: none !important;
	min-height: 100vh !important;
	height: 100vh !important;
	margin: 0 !important;
	overflow: hidden;
	will-change: opacity;
}

body.admin-bar.tdh-pe-on.tdh-pe-pinned #section-1,
body.admin-bar.tdh-pe-on.tdh-pe-pinned #section-2,
body.admin-bar.tdh-pe-on.tdh-pe-pinned #section-3,
body.admin-bar.tdh-pe-on.tdh-pe-pinned #section-4,
body.admin-bar.tdh-pe-on.tdh-pe-pinned #section-5,
body.admin-bar.tdh-pe-on.tdh-pe-pinned #section-6,
body.admin-bar.tdh-pe-on.tdh-pe-pinned #section-7 {
	top: 32px;
	height: calc(100vh - 32px) !important;
	min-height: calc(100vh - 32px) !important;
}

@media screen and (max-width: 782px) {
	body.admin-bar.tdh-pe-on.tdh-pe-pinned #section-1,
	body.admin-bar.tdh-pe-on.tdh-pe-pinned #section-2,
	body.admin-bar.tdh-pe-on.tdh-pe-pinned #section-3,
	body.admin-bar.tdh-pe-on.tdh-pe-pinned #section-4,
	body.admin-bar.tdh-pe-on.tdh-pe-pinned #section-5,
	body.admin-bar.tdh-pe-on.tdh-pe-pinned #section-6,
	body.admin-bar.tdh-pe-on.tdh-pe-pinned #section-7 {
		top: 46px;
		height: calc(100vh - 46px) !important;
		min-height: calc(100vh - 46px) !important;
	}
}

/* Load state: section-1 fully painted, later scenes waiting off-stage */
body.tdh-pe-on.tdh-pe-pinned #section-1 {
	opacity: 1;
	visibility: visible;
	z-index: 3;
	pointer-events: auto;
}

body.tdh-pe-on.tdh-pe-pinned #section-2,
body.tdh-pe-on.tdh-pe-pinned #section-3,
body.tdh-pe-on.tdh-pe-pinned #section-4,
body.tdh-pe-on.tdh-pe-pinned #section-5,
body.tdh-pe-on.tdh-pe-pinned #section-6,
body.tdh-pe-on.tdh-pe-pinned #section-7 {
	opacity: 0;
	visibility: hidden;
	z-index: 1;
	pointer-events: none;
}

body.tdh-pe-on.tdh-pe-pinned #section-7 {
	overflow: auto;
}

body.tdh-pe-on.tdh-pe-pinned #section-7-form,
body.tdh-pe-on.tdh-pe-pinned #section-7-form input,
body.tdh-pe-on.tdh-pe-pinned #section-7-form button {
	pointer-events: auto;
}

/* Overlay chrome: not a scene. Hidden on load, sticks above pinned sections after scroll. */
body.tdh-pe-on.tdh-pe-pinned #header,
body.tdh-pe-on.tdh-pe-pinned .tdh-pe-chrome {
	position: fixed !important;
	top: 0;
	left: 0;
	right: 0;
	width: 100% !important;
	max-width: none !important;
	height: auto !important;
	min-height: 0 !important;
	margin: 0 !important;
	z-index: 40;
	overflow: visible;
	--min-height: 0;
	opacity: 0;
	visibility: hidden;
	pointer-events: none;
	transform: translate3d(0, -110%, 0);
	transition: transform 0.48s cubic-bezier(0.22, 1, 0.36, 1), opacity 0.32s ease, visibility 0.48s;
	will-change: transform, opacity;
}

body.tdh-pe-on.tdh-pe-pinned.tdh-pe-header-on #header,
body.tdh-pe-on.tdh-pe-pinned.tdh-pe-header-on .tdh-pe-chrome {
	opacity: 1;
	visibility: visible;
	pointer-events: auto;
	transform: none;
}

body.admin-bar.tdh-pe-on.tdh-pe-pinned #header,
body.admin-bar.tdh-pe-on.tdh-pe-pinned .tdh-pe-chrome {
	top: 32px;
}

@media screen and (max-width: 782px) {
	body.admin-bar.tdh-pe-on.tdh-pe-pinned #header,
	body.admin-bar.tdh-pe-on.tdh-pe-pinned .tdh-pe-chrome {
		top: 46px;
	}
}

@media (prefers-reduced-motion: reduce) {
	body.tdh-pe-on.tdh-pe-pinned #header,
	body.tdh-pe-on.tdh-pe-pinned .tdh-pe-chrome {
		transform: none;
		transition: opacity 0.2s ease, visibility 0.2s;
	}
}

body.tdh-pe-on.tdh-pe-pinned .tdh-pe-anim {
	will-change: opacity, transform;
	backface-visibility: hidden;
}

body.tdh-pe-on.tdh-pe-pinned #section-1,
body.tdh-pe-on.tdh-pe-pinned #section-2,
body.tdh-pe-on.tdh-pe-pinned #section-3,
body.tdh-pe-on.tdh-pe-pinned #section-5,
body.tdh-pe-on.tdh-pe-pinned #section-6 {
	overflow: visible;
}

body.tdh-pe-on.tdh-pe-pinned #section-5 .e-con-inner {
	overflow: visible !important;
}

/* Section 5 cards — lift + white fill on hover (translate avoids fighting JS transform) */
body.tdh-pe-on.tdh-pe-pinned #section-5-col-1,
body.tdh-pe-on.tdh-pe-pinned #section-5-col-2,
body.tdh-pe-on.tdh-pe-pinned #section-5-col-3 {
	cursor: pointer;
	z-index: 1;
	transition: translate 0.28s cubic-bezier(0.22, 1, 0.36, 1), box-shadow 0.28s ease,
		background-color 0.28s ease, background 0.28s ease;
}

body.tdh-pe-on.tdh-pe-pinned #section-5-col-1:hover,
body.tdh-pe-on.tdh-pe-pinned #section-5-col-2:hover,
body.tdh-pe-on.tdh-pe-pinned #section-5-col-3:hover {
	z-index: 2;
	translate: 0 -10px;
	--background-color: #fff;
	background-color: #fff !important;
	background-image: none !important;
	box-shadow: 0 10px 28px rgba(15, 42, 59, 0.16);
}

@media (prefers-reduced-motion: reduce) {
	body.tdh-pe-on.tdh-pe-pinned #section-5-col-1,
	body.tdh-pe-on.tdh-pe-pinned #section-5-col-2,
	body.tdh-pe-on.tdh-pe-pinned #section-5-col-3 {
		transition: background-color 0.2s ease, box-shadow 0.2s ease;
	}

	body.tdh-pe-on.tdh-pe-pinned #section-5-col-1:hover,
	body.tdh-pe-on.tdh-pe-pinned #section-5-col-2:hover,
	body.tdh-pe-on.tdh-pe-pinned #section-5-col-3:hover {
		translate: none;
	}
}

body.tdh-pe-on.tdh-pe-pinned #section-6 .e-con-inner,
body.tdh-pe-on.tdh-pe-pinned #section-6-col-1,
body.tdh-pe-on.tdh-pe-pinned #section-6-col-2 {
	overflow: visible !important;
}

/* Section 6 contents list — bullets + tighter item spacing */
body.tdh-pe-on.tdh-pe-pinned #section-6-col-2 {
	gap: 0 !important;
	row-gap: 0 !important;
}

body.tdh-pe-on.tdh-pe-pinned #section-6-col-2-title {
	margin-bottom: 14px !important;
}

body.tdh-pe-on.tdh-pe-pinned #section-6-col-2-listitem-1,
body.tdh-pe-on.tdh-pe-pinned #section-6-col-2-listitem-2,
body.tdh-pe-on.tdh-pe-pinned #section-6-col-2-listitem-3,
body.tdh-pe-on.tdh-pe-pinned #section-6-col-2-listitem-4 {
	position: relative;
	display: flex !important;
	align-items: flex-start;
	margin: 0 0 8px !important;
}

body.tdh-pe-on.tdh-pe-pinned #section-6-col-2-listitem-4,
body.tdh-pe-on.tdh-pe-pinned #section-6-col-2 > [id^="section-6-col-2-listitem"]:last-child {
	margin-bottom: 0 !important;
}

/* Elementor hosted video fills pinned scenes (Hidden AI bill sections 3 and 5) */
body.tdh-pe-on.tdh-pe-pinned .tdh-pe-scene .elementor-background-video-container {
	position: absolute !important;
	inset: 0;
	width: 100% !important;
	height: 100% !important;
	overflow: hidden;
	z-index: 0;
	pointer-events: none;
}

body.tdh-pe-on.tdh-pe-pinned .tdh-pe-scene .elementor-background-video-hosted,
body.tdh-pe-on.tdh-pe-pinned .tdh-pe-scene .elementor-background-video-container video {
	object-fit: cover;
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translate(-50%, -50%);
	min-width: 100%;
	min-height: 100%;
	width: auto !important;
	height: auto !important;
	max-width: none !important;
}

body.tdh-pe-on.tdh-pe-pinned .tdh-pe-has-video > .e-con-inner {
	position: relative;
	z-index: 1;
}

body.tdh-pe-on.tdh-pe-pinned #section-6-col-2-listitem-1::before,
body.tdh-pe-on.tdh-pe-pinned #section-6-col-2-listitem-2::before,
body.tdh-pe-on.tdh-pe-pinned #section-6-col-2-listitem-3::before,
body.tdh-pe-on.tdh-pe-pinned #section-6-col-2-listitem-4::before {
	content: "";
	flex: 0 0 8px;
	width: 8px;
	height: 8px;
	margin-top: 12px;
	margin-right: 12px;
	border-radius: 50%;
	background: #f77a45;
	box-shadow: 0 0 0 3px rgba(247, 122, 69, 0.18);
	pointer-events: none;
}

body.tdh-pe-on.tdh-pe-pinned #section-1 .e-con-inner,
body.tdh-pe-on.tdh-pe-pinned #section-2 .e-con-inner,
body.tdh-pe-on.tdh-pe-pinned #section-3 .e-con-inner {
	overflow: visible;
}

body.tdh-pe-on.tdh-pe-pinned .tdh-pe-emblem,
body.tdh-pe-on.tdh-pe-pinned .tdh-pe-emblem .elementor-widget-container {
	overflow: visible !important;
}

body.tdh-pe-on.tdh-pe-pinned .tdh-pe-svg {
	display: block;
	width: 100%;
	height: auto;
	overflow: visible;
	transform-origin: center;
}

body.tdh-pe-on.tdh-pe-pinned #section-2-emblem img,
body.tdh-pe-on.tdh-pe-pinned #section-2-emblem .tdh-pe-svg {
	width: 56% !important;
	max-width: 56% !important;
	height: auto !important;
	display: block !important;
	margin-left: auto !important;
	margin-right: auto !important;
}

body.tdh-pe-on.tdh-pe-pinned .tdh-pe-svg-star {
	transform-box: view-box;
	transform-origin: 50% 50%;
}

body.tdh-pe-on.tdh-pe-pinned .tdh-pe-svg path {
	transform-box: fill-box;
	will-change: transform, opacity;
}

body.tdh-pe-on.tdh-pe-pinned .tdh-pe-svg-star.tdh-pe-spin {
	animation: tdh-pe-spin-star 2.6s cubic-bezier(0.4, 0, 0.2, 1) 1 forwards;
}

@keyframes tdh-pe-spin-star {
	0%,
	12% {
		transform: rotate(0deg);
	}
	100% {
		transform: rotate(360deg);
	}
}

@media (prefers-reduced-motion: reduce) {
	body.tdh-pe-on.tdh-pe-pinned .tdh-pe-anim:not(.tdh-pe-emblem):not(.tdh-pe-bounce) {
		transform: none !important;
	}
}

/* Section 4 — mouse-weighted meeting point between the two columns */
body.tdh-pe-on.tdh-pe-pinned #section-4.tdh-pe-split {
	--tdh-pe-left: 50%;
	--tdh-pe-right: 50%;
	--tdh-pe-left-emph: 0.5;
	--tdh-pe-right-emph: 0.5;
}

@media (min-width: 768px) {
	body.tdh-pe-on.tdh-pe-pinned #section-4.tdh-pe-split,
	body.tdh-pe-on.tdh-pe-pinned #section-4.tdh-pe-split > .e-con-inner {
		flex-direction: row !important;
		flex-wrap: nowrap !important;
		align-items: stretch !important;
	}

	body.tdh-pe-on.tdh-pe-pinned #section-4.tdh-pe-split #section-4-col-1,
	body.tdh-pe-on.tdh-pe-pinned #section-4.tdh-pe-split #section-4-col-2 {
		flex-grow: 0 !important;
		flex-shrink: 0 !important;
		min-width: 0 !important;
		max-width: none !important;
		height: 100% !important;
		overflow: hidden;
		will-change: width, flex-basis, filter;
		--flex-grow: 0;
		--flex-shrink: 0;
	}

	body.tdh-pe-on.tdh-pe-pinned #section-4.tdh-pe-split #section-4-col-1 {
		flex-basis: var(--tdh-pe-left) !important;
		width: var(--tdh-pe-left) !important;
		--width: var(--tdh-pe-left);
		--flex-basis: var(--tdh-pe-left);
		filter: brightness(calc(0.94 + 0.12 * var(--tdh-pe-left-emph)));
	}

	body.tdh-pe-on.tdh-pe-pinned #section-4.tdh-pe-split #section-4-col-2 {
		flex-basis: var(--tdh-pe-right) !important;
		width: var(--tdh-pe-right) !important;
		--width: var(--tdh-pe-right);
		--flex-basis: var(--tdh-pe-right);
		filter: brightness(calc(0.94 + 0.12 * var(--tdh-pe-right-emph)));
	}
}

/* Vertical section rail — rest points + travel between them */
body.tdh-pe-on .tdh-pe-nav {
	--tdh-pe-nav: #f77a45;
	position: fixed;
	right: 18px;
	top: 50%;
	transform: translateY(-50%);
	z-index: 50;
	display: flex;
	flex-direction: column;
	align-items: center;
	margin: 0;
	padding: 4px 0;
	user-select: none;
	pointer-events: none;
	filter: drop-shadow(0 1px 2px rgba(0, 0, 0, 0.45));
}

body.tdh-pe-on .tdh-pe-nav-btn {
	all: unset;
	pointer-events: auto !important;
	position: relative !important;
	display: flex !important;
	align-items: center !important;
	justify-content: center !important;
	box-sizing: border-box !important;
	width: 20px !important;
	height: 20px !important;
	min-width: 0 !important;
	min-height: 0 !important;
	margin: 0 !important;
	padding: 0 !important;
	border: 0 !important;
	border-radius: 0 !important;
	background: transparent !important;
	background-color: transparent !important;
	box-shadow: none !important;
	color: inherit !important;
	font: inherit !important;
	line-height: 0 !important;
	cursor: pointer !important;
	-webkit-appearance: none !important;
	appearance: none !important;
	-webkit-tap-highlight-color: transparent;
}

body.tdh-pe-on .tdh-pe-nav-dot {
	display: block !important;
	box-sizing: border-box !important;
	width: 6px !important;
	height: 6px !important;
	min-width: 6px !important;
	min-height: 6px !important;
	flex-shrink: 0;
	border-radius: 50% !important;
	border: 1.5px solid #fff !important;
	background: transparent !important;
	background-color: transparent !important;
	overflow: hidden;
	transition: width 0.22s ease, height 0.22s ease, background-color 0.22s ease, border-color 0.22s ease;
}

body.tdh-pe-on .tdh-pe-nav-btn.is-current .tdh-pe-nav-dot {
	width: 7px !important;
	height: 7px !important;
	min-width: 7px !important;
	min-height: 7px !important;
	background: var(--tdh-pe-nav) !important;
	background-color: var(--tdh-pe-nav) !important;
	border-color: var(--tdh-pe-nav) !important;
}

body.tdh-pe-on .tdh-pe-nav-btn:hover .tdh-pe-nav-dot,
body.tdh-pe-on .tdh-pe-nav-btn:focus-visible .tdh-pe-nav-dot {
	border-color: #fff !important;
}

body.tdh-pe-on .tdh-pe-nav-btn.is-current:hover .tdh-pe-nav-dot,
body.tdh-pe-on .tdh-pe-nav-btn.is-current:focus-visible .tdh-pe-nav-dot {
	border-color: var(--tdh-pe-nav) !important;
}

body.tdh-pe-on .tdh-pe-nav-btn:focus-visible {
	outline: none;
}

body.tdh-pe-on .tdh-pe-nav-btn:focus-visible .tdh-pe-nav-dot {
	box-shadow: 0 0 0 3px rgba(255, 255, 255, 0.35);
}

body.tdh-pe-on .tdh-pe-nav-label {
	position: absolute;
	right: calc(100% + 8px);
	top: 50%;
	transform: translateY(-50%) translateX(4px);
	white-space: nowrap;
	font-size: 10px;
	font-weight: 600;
	letter-spacing: 0.14em;
	text-transform: uppercase;
	line-height: 1;
	color: #fff;
	text-shadow: 0 1px 2px rgba(0, 0, 0, 0.55);
	opacity: 0;
	pointer-events: none;
	transition: opacity 0.2s ease, transform 0.2s ease;
}

body.tdh-pe-on .tdh-pe-nav-btn:hover .tdh-pe-nav-label,
body.tdh-pe-on .tdh-pe-nav-btn:focus-visible .tdh-pe-nav-label {
	opacity: 0.92;
	transform: translateY(-50%) translateX(0);
}

body.tdh-pe-on .tdh-pe-nav-line {
	position: relative;
	width: 2px;
	height: clamp(14px, 3vh, 24px);
	margin: 0;
	background: rgba(255, 255, 255, 0.55);
	overflow: hidden;
	pointer-events: none;
}

body.tdh-pe-on .tdh-pe-nav-line-fill {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	background: #fff;
	transform: scaleY(0);
	transform-origin: top center;
	will-change: transform;
}

@media (max-width: 782px) {
	body.tdh-pe-on .tdh-pe-nav {
		right: 8px;
	}

	body.tdh-pe-on .tdh-pe-nav-btn {
		width: 18px;
		height: 18px;
	}

	body.tdh-pe-on .tdh-pe-nav-label {
		display: none;
	}

	body.tdh-pe-on .tdh-pe-nav-line {
		height: clamp(10px, 2.4vh, 18px);
	}
}

@media (prefers-reduced-motion: reduce) {
	body.tdh-pe-on .tdh-pe-nav-dot,
	body.tdh-pe-on .tdh-pe-nav-label {
		transition: none;
	}
}

/* ======================================================================
   Persistent CTA footer — #tdh-pe-cta-1 / #tdh-pe-cta-2

   The two containers authored at the foot of an enhanced page are OVERLAYS,
   never document-flow elements. They are hidden from the very first paint
   (see the critical CSS printed in wp_head) and only ever shown by
   `.is-active`, so they can never sit at the bottom of the page — that is the
   failure mode that makes the bar look like it is doing nothing.

   `.is-active` is the single source of truth, written by ctaRender() in
   enhancer.js. If you rename it here, rename it there.
   ====================================================================== */
body.tdh-pe-on .tdh-pe-cta-overlay {
	position: fixed;
	left: 0;
	right: 0;
	bottom: 0;
	width: 100%;
	box-sizing: border-box;
	isolation: isolate;
	z-index: 60;
	/* Never let the bar eat the viewport on a short screen or at 200% zoom. */
	max-height: 45vh;
	overflow-y: auto;
	overscroll-behavior: contain;
	-webkit-overflow-scrolling: touch;
	opacity: 0;
	visibility: hidden;
	transform: translate3d(0, 100%, 0);
	pointer-events: none;
	transition:
		opacity var(--tdh-pe-cta-fade, 520ms) cubic-bezier(0.16, 1, 0.3, 1),
		transform var(--tdh-pe-cta-fade, 520ms) cubic-bezier(0.16, 1, 0.3, 1),
		visibility 0s linear var(--tdh-pe-cta-fade, 520ms);
}

body.tdh-pe-on .tdh-pe-cta-overlay.is-active {
	opacity: 1;
	visibility: visible;
	transform: translate3d(0, 0, 0);
	pointer-events: auto;
	transition:
		opacity var(--tdh-pe-cta-fade, 520ms) cubic-bezier(0.16, 1, 0.3, 1),
		transform var(--tdh-pe-cta-fade, 520ms) cubic-bezier(0.16, 1, 0.3, 1),
		visibility 0s linear 0s;
}

/* The engine writes inline opacity/transform onto scene items. The CTA is not
   a scene, but a container that happens to live in the pinned document, so
   make sure the entrance-reveal state cannot leave the live bar at opacity:0.
   Scoped to Elementor's own pre-animation class — deliberately NOT a blanket
   `animation: none`, which would break animations you meant to keep.
   `visibility` is not forced on the overlay itself: it is inherited, and
   forcing it visible on a descendant of a hidden bar would leak the CTA
   contents back on screen at the bottom of the page. */
body.tdh-pe-on .tdh-pe-cta-overlay.is-active .elementor-invisible {
	visibility: visible !important;
	opacity: 1 !important;
	transform: none !important;
	animation: none !important;
}

/* --- Close control ------------------------------------------------------ */

body.tdh-pe-on .tdh-pe-cta-overlay > .tdh-pe-cta-close {
	position: absolute;
	top: max(8px, env(safe-area-inset-top, 0px));
	right: 8px;
	z-index: 5;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 34px;
	height: 34px;
	margin: 0;
	padding: 0;
	appearance: none;
	border: 0;
	border-radius: 50%;
	background: rgba(15, 42, 59, 0.16);
	color: currentColor;
	cursor: pointer;
	line-height: 1;
	transition:
		background-color 200ms ease,
		transform 200ms ease;
}

body.tdh-pe-on .tdh-pe-cta-close svg {
	width: 15px;
	height: 15px;
	display: block;
	pointer-events: none;
}

body.tdh-pe-on .tdh-pe-cta-close:hover {
	background: rgba(15, 42, 59, 0.3);
	transform: scale(1.06);
}

body.tdh-pe-on .tdh-pe-cta-close:active {
	transform: scale(0.94);
}

body.tdh-pe-on .tdh-pe-cta-close:focus-visible {
	outline: 3px solid #f77a45;
	outline-offset: 2px;
}

/* Keep container copy clear of the close control without reflowing layout. */
body.tdh-pe-on .tdh-pe-cta-has-close > .e-con-inner {
	padding-right: var(--tdh-pe-cta-gutter, 46px);
}

/* Home-indicator spacing on iOS, only while the bar is actually pinned. */
@supports (padding: max(0px)) {
	body.tdh-pe-on .tdh-pe-cta-overlay.is-active {
		padding-bottom: env(safe-area-inset-bottom, 0px);
	}
}

@media (max-width: 767px) {
	body.tdh-pe-on .tdh-pe-cta-overlay {
		max-height: 52vh;
	}

	body.tdh-pe-on .tdh-pe-cta-close {
		width: 30px;
		height: 30px;
		top: max(6px, env(safe-area-inset-top, 0px));
		right: 6px;
	}

	body.tdh-pe-on .tdh-pe-cta-close svg {
		width: 13px;
		height: 13px;
	}

	body.tdh-pe-on .tdh-pe-cta-has-close > .e-con-inner {
		padding-right: var(--tdh-pe-cta-gutter, 40px);
	}
}

@media (prefers-reduced-motion: reduce) {
	body.tdh-pe-on .tdh-pe-cta-overlay,
	body.tdh-pe-on .tdh-pe-cta-close {
		transition-duration: 1ms !important;
	}

	body.tdh-pe-on .tdh-pe-cta-close:hover {
		transform: none;
	}
}
