/* DSD37 序列帧动画 - Elementor HTML 组件 */

.dsd37-anim-root {
	width: 100vw;
	max-width: 100vw;
	position: relative;
	left: 50%;
	right: 50%;
	margin-left: -50vw;
	margin-right: -50vw;
	padding: 0;
	line-height: 0;
}

.dsd37-anim-root .sequence-section {
	width: 100%;
	position: relative;
	background: transparent;
	margin: 0;
	padding: 0;
	height: 400vh;
	line-height: 0;
}

.dsd37-anim-root .sequence-section[data-scroll-height="600"] {
	height: 600vh;
}

.dsd37-anim-root .sequence-section[data-scroll-height="400"] {
	height: 400vh;
}

.dsd37-anim-root .sequence-section[data-scroll-height="500"] {
	height: 500vh;
}

.dsd37-anim-root .sequence-section .sequence-image-wrapper,
.dsd37-anim-root .sequence-section [class$="-image-wrapper"] {
	position: sticky;
	top: 0;
	width: 100%;
	height: 100vh;
	height: 100dvh;
	line-height: 0;
	overflow: hidden;
}

.dsd37-anim-root .anim1-image-wrapper {
	position: sticky;
	top: 0;
}

.dsd37-anim-root .anim1-overlay-title {
	position: absolute;
	left: 66.67%;
	top: 50%;
	transform: translate(0, -50%);
	z-index: 2;
	font-size: clamp(32px, 5vw, 96px);
	font-weight: 900;
	color: #ffffff;
	text-align: left;
	text-shadow: 0 8px 40px rgba(0, 0, 0, 0.8);
	opacity: 0;
	transition: opacity 0.8s ease-in-out;
	pointer-events: none;
	white-space: nowrap;
}

.dsd37-anim-root .anim1-overlay-title.visible {
	opacity: 1;
}

.dsd37-anim-root .anim1-overlay-title.hidden {
	opacity: 0;
}

.dsd37-anim-root .sequence-image {
	width: 100%;
	min-width: 100%;
	height: 100%;
	display: block;
	object-fit: cover;
	object-position: center;
	aspect-ratio: unset !important;
}

/* Elementor HTML 组件：去掉内边距并允许全宽 */
.elementor-widget-html:has(.dsd37-anim-root) {
	width: 100% !important;
	max-width: none !important;
}

.elementor-widget-html:has(.dsd37-anim-root) .elementor-widget-container {
	padding: 0 !important;
	margin: 0 !important;
	max-width: none !important;
}

.elementor-column:has(.dsd37-anim-root),
.elementor-container:has(.dsd37-anim-root) {
	max-width: 100% !important;
}
