/* Innovate ScrollStage · Elementor glue styles.
   These classes are applied by ss-elementor.js ONLY to the real ancestor chain
   of a tagged pinning host — never globally — so a position:sticky stage can
   actually stick. Trade-off: an unclipped ancestor no longer hides overflow or
   carries its own transform; that's necessary for pinning and scoped to the
   stack's own ancestors. */
.ss-unclip-overflow {
	overflow: visible !important;
}

.ss-unclip-transform {
	transform: none !important;
	perspective: none !important;
	filter: none !important;
}

/* Pinned effects recede the buried panel with a depth scale, so
   any area the top panel doesn't cover reveals whatever is BEHIND the stage.
   Give the pinned stage an opaque default background so that "behind" is the
   stage itself, not the page. A background the user sets on the container in
   Elementor outputs a higher-priority rule and overrides this default. */
.ss-viewport {
	background-color: var(--ss-stage-bg, #0b0f1a);
}

/* Elementor gives every container default padding (padding-block AND
   padding-inline, on .e-con-full and on .e-con > .e-con-inner). On a pinned
   stage that padding insets the viewport and panels on ALL four sides, leaving
   a strip of the stage/page showing at every edge. Zero it on the tagged stage
   so panels sit truly edge-to-edge. Content spacing inside a panel should come
   from the panel's own design, not this structural padding. */
.ss-host,
.ss-host > .e-con-inner,
.ss-viewport,
.ss-viewport > .e-con-inner,
.ss-panel,
.ss-panel > .e-con-inner {
	padding: 0 !important;
}

