/**
 * Xyod Pin Elements — sticky cascade (dock + natural leave).
 */

.xyod-pin {
	width: 100%;
	max-width: 100%;
	position: relative;
	overflow: visible !important;
	overflow-anchor: none;
	z-index: 2;
	margin: 0;
	padding: 0;
	--xyod-pin-offset: 0px;
	--xyod-pin-stack-gap: 120px;
	box-sizing: border-box;
}

.xyod-pin__stack {
	display: flex;
	flex-direction: column;
	align-items: stretch;
	gap: 30px;
	width: 100%;
	max-width: 100%;
	position: relative;
	overflow: visible !important;
	margin: 0;
	padding: 0;
	box-sizing: border-box;
}

.xyod-pin--is-pinning .xyod-pin__stack {
	gap: 0 !important;
}

.xyod-pin__card {
	width: 100% !important;
	max-width: 100% !important;
	min-width: 0;
	position: relative;
	z-index: 1;
	box-sizing: border-box;
	opacity: 1;
	visibility: visible;
	flex: 0 0 auto;
	align-self: stretch !important;
}

.xyod-pin__stack > .e-con,
.xyod-pin__stack > .elementor-element,
.xyod-pin__card.e-con,
.xyod-pin__card > .e-con-inner {
	width: 100% !important;
	max-width: 100% !important;
	align-self: stretch !important;
	box-sizing: border-box;
}

.elementor-widget-xyod-pin-elements,
.elementor-widget-xyod-pin-elements > .elementor-widget-container,
.elementor-element.elementor-widget-xyod-pin-elements,
.e-con:has(> .elementor-widget-xyod-pin-elements),
.e-con:has(.xyod-pin),
.e-div-block:has(.xyod-pin),
.elementor-element:has(> .xyod-pin),
.elementor-element:has(.xyod-pin) {
	overflow: visible !important;
}

.elementor-widget-xyod-pin-elements,
.elementor-widget-xyod-pin-elements > .elementor-widget-container,
.elementor-element.elementor-widget-xyod-pin-elements {
	position: relative;
	z-index: 2;
	width: 100% !important;
	max-width: 100%;
	box-sizing: border-box;
}

.xyod-pin--stack-mobile .xyod-pin__card,
.xyod-pin--stack-tablet .xyod-pin__card {
	position: relative !important;
	top: auto !important;
	transform: none !important;
	inset: auto !important;
}

.xyod-pin--sticky.xyod-pin--is-pinning .xyod-pin__card,
.xyod-pin--sticky.xyod-pin--is-pinning .xyod-pin__card.is-pinned {
	position: sticky !important;
}

.xyod-pin__end-spacer {
	flex: 0 0 auto !important;
	width: 100% !important;
	pointer-events: none !important;
	visibility: hidden !important;
	margin: 0 !important;
	padding: 0 !important;
	border: 0 !important;
}

.xyod-pin__nav-dots {
	display: none !important;
	height: 0 !important;
	margin: 0 !important;
	padding: 0 !important;
	overflow: hidden !important;
	border: 0 !important;
}
