/* GLOBAL START */
body {
	--scrollbar-width: 15px;
}

body #content {
	overflow-x: clip;
}

body table,
body table td,
body table th {
	font-size: inherit;
	line-height: inherit;
}

body b, body strong {
    font-weight: 700;
}

.elementor-widget-heading p:last-child,
.elementor-widget-theme-post-excerpt p:last-child,
.elementor-widget-theme-post-content p:last-child,
.elementor-tab-content p:last-child,
.elementor-widget-text-editor p:last-child,
.elementor-widget-woocommerce-product-short-description p:last-child,
.jet-listing-dynamic-repeater__itemp:last-child {
	margin-bottom: 0;
}

.elementor-widget-icon,
.elementor-icon-box-icon,
.elementor-button-icon {
	line-height: 0;
}

.elementor-widget-icon .elementor-icon svg {
	transition: inherit;
}

.elementor-widget-icon-list .elementor-icon-list-icon svg {
	margin: 0 !important
}

.elementor-icon-list-item:market {
	display: none !important;
}

.elementor-button-content-wrapper {
	align-items: center;
}

.elementor-button-icon svg {
	width: auto !important;
	height: auto !important;
}

input:focus:not([type="button"]):not([type="submit"]),
textarea:focus,
.elementor-field-textual:focus {
	outline: 0 !important;
}

button:hover,
button:focus,
input[type="button"]:hover,
input[type="button"]:focus,
input[type="submit"]:hover,
input[type="submit"]:focus,
.elementor-button:hover,
.elementor-button:focus {
	text-decoration: inherit !important;
}

.grecaptcha-badge {
	display: none !important;
}

.framework-svg-auto svg {
	width: auto !important;
	height: auto !important;
}

.framework-sticky {
	position: sticky !important;
	top: 0;
}

@media screen and (max-width: 767px) {
	.framework-sticky {
		position: relative !important;
		top: auto;
	}
}
/* GLOBAL END */

.framework-text-marquee-holder {
	display: flex;
    white-space: nowrap;
    font-size: 0;
    position: relative;
    overflow: hidden;
	--gap: 30px;
	--speed: 10s;
	--animation: text-marquee;
}

.framework-text-marquee-reverse .framework-text-marquee-holder {
	--animation: text-marquee-reverse;
}

@keyframes text-marquee {
    0% {
        -webkit-transform: translateX(0%) translateZ(0);
        transform: translateX(0%) translateZ(0);
    }

    100% {
        -webkit-transform: translateX(-100%) translateZ(0);
        transform: translateX(-100%) translateZ(0);
    }
}

@keyframes text-marquee-reverse {
    0% {
		-webkit-transform: translateX(-100%) translateZ(0);
        transform: translateX(-100%) translateZ(0);
    }

    100% {
        -webkit-transform: translateX(0%) translateZ(0);
        transform: translateX(0%) translateZ(0);
    }
}

.framework-text-marquee-element {
	display: flex;
	font-size: 50px;
	will-change: transform;
	backface-visibility: hidden;
	animation: var(--animation) var(--speed) linear infinite;
}

body:not(.elementor-editor-active) .framework-text-marquee-holder:not(.marquee-in-viewport) .framework-text-marquee-element {
	animation-play-state: paused !important;
    will-change: auto !important;
}

.framework-text-marquee-element > span {
	padding: 0 calc( var(--gap) / 2 );
}

.framework-text-marquee-outlined .framework-text-marquee-element > span:nth-child(odd) {
    -webkit-text-stroke-width: 1px;
    stroke-width: 1px;
    -webkit-text-stroke-color: var(--outline-color);
    stroke: var(--outline-color);
}

/* ELEMENTOR ADDITIONAL ANIMATIONS START */
.fadeInTopFixed {
	-webkit-animation-name: fadeInTopFixed;
	animation-name: fadeInTopFixed;
}

@keyframes fadeInTopFixed {
	from {
		opacity: 0;
		-webkit-transform: translate3d(0,25px,0);
		transform: translate3d(0,25px,0);
	}
	to {
		opacity: 1;
		-webkit-transform: none;
		transform: none;
	}
}

.clipInTop {
	-webkit-animation-name: clipInTop;
	animation-name: clipInTop;
}

@keyframes clipInTop {
	from {
		-webkit-clip-path: polygon(0 0, 100% 0, 100% 0%, 0 0%);
		clip-path: polygon(0 0, 100% 0, 100% 0%, 0 0%);
	}
	to {
		-webkit-clip-path: polygon(0 0, 100% 0, 100% 100%, 0% 100%);
		clip-path: polygon(0 0, 100% 0, 100% 100%, 0% 100%);
	}
}

.clipInBottom {
	-webkit-animation-name: clipInBottom;
	animation-name: clipInBottom;
}

@keyframes clipInBottom {
	from {
		-webkit-clip-path: polygon(0 100%, 100% 100%, 100% 100%, 0% 100%);
		clip-path: polygon(0 100%, 100% 100%, 100% 100%, 0% 100%);
	}
	to {
		-webkit-clip-path: polygon(0 0, 100% 0, 100% 100%, 0% 100%);
		clip-path: polygon(0 0, 100% 0, 100% 100%, 0% 100%);
	}
}

.clipInLeft {
	-webkit-animation-name: clipInLeft;
	animation-name: clipInLeft;
}

@keyframes clipInLeft {
	from {
		-webkit-clip-path: polygon(0 0, 0 0, 0 100%, 0 100%);
		clip-path: polygon(0 0, 0 0, 0 100%, 0 100%);
	}
	to {
		-webkit-clip-path: polygon(0 0, 100% 0, 100% 100%, 0% 100%);
		clip-path: polygon(0 0, 100% 0, 100% 100%, 0% 100%);
	}
}

.clipInRight {
	-webkit-animation-name: clipInRight;
	animation-name: clipInRight;
}

@keyframes clipInRight {
	from {
		-webkit-clip-path: polygon(100% 0, 100% 0, 100% 100%, 100% 100%);
		clip-path: polygon(100% 0, 100% 0, 100% 100%, 100% 100%);
	}
	to {
		-webkit-clip-path: polygon(0 0, 100% 0, 100% 100%, 0% 100%);
		clip-path: polygon(0 0, 100% 0, 100% 100%, 0% 100%);
	}
}
/* ELEMENTOR ADDITIONAL ANIMATIONS END */

