/* Native Elementor container effects. */
.cforge-ui-sticky-container {
	--cforge-ui-sticky-container-offset: 0px;
	transition: transform 220ms ease, opacity 220ms ease, background-color 220ms ease;
}

.cforge-ui-sticky-container--spacer {
	visibility: hidden !important;
	pointer-events: none !important;
	display: none !important;
	overflow: hidden !important;
	height: 0 !important;
	min-height: 0 !important;
	margin: 0 !important;
	padding-top: 0 !important;
	padding-bottom: 0 !important;
	border: 0 !important;
}

.cforge-ui-sticky-container.is-cforge-ui-fixed {
	position: fixed;
	top: 0;
	left: 0;
	right: 0;
	z-index: 999;
	width: 100%;
}

.cforge-ui-sticky-container.is-cforge-ui-fixed.cforge-ui-sticky-container--keep-offset {
	top: var(--cforge-ui-sticky-container-offset);
}

.cforge-ui-sticky-container--spacer.is-cforge-ui-active {
	display: block !important;
}

.cforge-ui-sticky-container.cforge-ui-sticky-container--transparent:not(.is-cforge-ui-fixed) {
	background: transparent;
}

.cforge-ui-sticky-container.is-cforge-ui-fixed.cforge-ui-sticky-container--fixed-hidden {
	transform: translate3d(0, -100%, 0);
	opacity: 0;
}

.cforge-ui-sticky-container.is-cforge-ui-fixed.cforge-ui-sticky-container--fixed-shown {
	transform: translate3d(0, 0, 0);
	opacity: 1;
}

/* Native Elementor widget effects. */
.cforge-ui-native-text-swipe__button {
	overflow: hidden;
}

.cforge-ui-native-text-swipe__wrap {
	--cforge-ui-native-text-swipe-distance: 1.25em;
	display: inline-block;
	overflow: hidden;
	line-height: inherit;
	vertical-align: middle;
	white-space: nowrap;
}

.cforge-ui-native-text-swipe__text {
	display: block;
	position: relative;
	line-height: inherit;
	white-space: inherit;
	text-shadow: 0 var(--cforge-ui-native-text-swipe-distance) 0 currentColor;
	transition: transform 650ms cubic-bezier(0.23, 1, 0.32, 1);
	will-change: transform;
}

.cforge-ui-native-text-swipe__button:hover .cforge-ui-native-text-swipe__text,
.cforge-ui-native-text-swipe__button:focus-visible .cforge-ui-native-text-swipe__text,
.cforge-ui-native-text-swipe__button.is-cforge-ui-active .cforge-ui-native-text-swipe__text {
	transform: translate3d(0, calc(-1 * var(--cforge-ui-native-text-swipe-distance)), 0);
}

.cforge-ui-native-nested-accordion.cforge-ui-has-accordion-icon-treatment .e-n-accordion-item-title-icon {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: auto;
	min-width: 44px;
	min-height: 44px;
	padding: 12px;
	border-radius: 999px;
	background-color: var(--cforge-ui-accordion-icon-bg-color, #fff);
}

.cforge-ui-native-nav-menu.cforge-ui-nav-menu--contain-link .elementor-nav-menu > .menu-item {
	display: flex;
	align-items: center;
}

.cforge-ui-native-nav-menu.cforge-ui-nav-menu--contain-link .elementor-nav-menu .elementor-item,
.cforge-ui-native-nav-menu.cforge-ui-nav-menu--contain-link .elementor-nav-menu--dropdown .elementor-item {
	width: fit-content;
	max-width: 100%;
}

.cforge-ui-native-nav-menu.cforge-ui-nav-menu--round-dropdown-links .elementor-nav-menu--dropdown .elementor-item {
	border-radius: 999px;
}

.cforge-ui-native-nav-menu .cforge-ui-nav-menu-submenu-toggle {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 32px;
	height: 32px;
	margin-left: 6px;
	padding: 0;
	border: 0;
	border-radius: 999px;
	background: transparent;
	color: currentColor;
	cursor: pointer;
}

.cforge-ui-native-nav-menu .cforge-ui-nav-menu-submenu-toggle::before {
	content: "";
	width: 8px;
	height: 8px;
	border-right: 2px solid currentColor;
	border-bottom: 2px solid currentColor;
	transform: rotate(45deg);
	transition: transform 180ms ease;
}

.cforge-ui-native-nav-menu .cforge-ui-nav-menu-item--open > .cforge-ui-nav-menu-submenu-toggle::before {
	transform: rotate(-135deg);
}

.cforge-ui-native-nav-menu .cforge-ui-nav-menu-item--open > .sub-menu,
.cforge-ui-native-nav-menu .cforge-ui-nav-menu-item--open > .elementor-nav-menu--dropdown {
	display: block;
	max-height: var(--cforge-ui-nav-menu-height, none);
}

.cforge-ui-popup-abs-pos .dialog-widget-content,
.cforge-ui-popup-abs-pos .dialog-message {
	position: absolute;
}
