* {
    outline: none !important;
}

textarea {
    resize: none !important;
}

p a,
form a {
    color: inherit !important;
}

.subtitle {
    display: inline-block;
    background-color: var(--e-global-color-17f552c);
    padding: 4px 10px;
    border-top-right-radius: 10px;
}

.subtitle.white {
    background-color: #fff;
    color: var(--e-global-color-accent);
}

#map {
    height: 550px;
}

.mapboxgl-ctrl-logo {
    display: none !important;
}

#marker {
    width: 70px;
    height: 70px;
    background-image: url('../assets/img/syndic219-marker.svg');
    background-position: center;
    background-repeat: no-repeat;
    background-size: contain;
}

.elementor-field-type-html {
    font-weight: bold;
    margin-bottom: 10px !important;
}

#expertise-slider .elementor-swiper-button {
    top: 100% !important;
    left: auto !important;
    font-size: 2.2rem;
    transform: translateY(0%);
    color: var(--e-global-color-accent);
}

#expertise-slider .elementor-swiper-button-prev {
    right: 0 !important;
    transform: translateX(-100%);
}

.elementor-button {
    position: relative;
    overflow: hidden;
}

.elementor-button-content-wrapper {
    position: relative;
}

.btn-animate .elementor-button:before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 0%;
    height: 100%;
    background-color: var(--e-global-color-secondary);
    transition: all .3s cubic-bezier(.74,0,.24,.99);
}

.btn-animate .elementor-button-icon,
.btn-animate .elementor-button-text {
    transition: all .2s ease-in-out;
}

.btn-animate:hover .elementor-button:before {
    width: 100%;
}

.btn-animate:hover .elementor-button-icon,
.btn-animate:hover .elementor-button-text {
    color: #ffffff;
}

.animated {
    animation-timing-function: cubic-bezier(.66,0,.36,.99) !important;
    animation-duration: .6s !important;
}

.animated.fadeInUp {
    animation-fill-mode: forwards;
    animation-name: customFadeInUp !important;
}

.animated.fadeInDown {
    animation-fill-mode: forwards;
    animation-name: customFadeInDown !important;
}

.animated.slideInRight {
    animation-fill-mode: forwards;
    animation-name: customSlideInRight !important;
}

.animated.slideOutRight {
    animation-fill-mode: forwards;
    animation-name: customSlideOutRight !important;
}

e-page-transition:before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    transition: all .6s cubic-bezier(.74,0,.24,.99);
    clip-path: inset(0 100% 0 0);
    background-color: var(--e-global-color-accent);
    background-image: url('../assets/img/syndic219-icon-white.svg');
    background-repeat: no-repeat;
    background-position: center;
    background-size: 60px;
}

e-page-transition:after {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 0%;
    height: 4px;
    background-color: var(--e-global-color-secondary);
    transition: all 1.5s linear;
}

e-page-transition.e-page-transition--exiting:after {
    width: 90%;
}

e-page-transition.e-page-transition--entering:after {
    width: 90%;
    animation: transition-loading .2s linear;
    animation-fill-mode: forwards;
}

/* e-page-transition.e-page-transition--entered:after {
    width: 100%;
} */

e-page-transition {
    transition: all 1s cubic-bezier(.74,0,.24,.99) !important;
    background: none !important;
}

e-page-transition.e-page-transition--exiting:before {
    clip-path: inset(0 0 0 0);
}

e-page-transition.e-page-transition--entering:before {
    clip-path: inset(0 0 0 0);
    animation: transition-entering .6s cubic-bezier(.74,0,.24,.99);
    animation-fill-mode: forwards;
}

/* Removes the native rough design IOS */
.elementor-field-type-date input {
   -webkit-appearance: none;
}

/* Making checkbox and radio button invisible */
.elementor-field-type-checkbox .elementor-field-option input[type="checkbox"],
.elementor-field-type-radio .elementor-field-option input[type="radio"],
.elementor-field-type-acceptance input[type="checkbox"] {
	border: 0;
	clip: rect(0 0 0 0);
	height: 1px;
	margin: -1px;
	overflow: hidden;
	padding: 0;
	position: absolute;
	width: 1px;
}
/* For Checkbox */
.elementor-field-type-checkbox .elementor-field-option label:before,
.elementor-field-type-radio .elementor-field-option label:before,
.elementor-field-type-acceptance > div label:before {
	content: "";
	display: inline-block;
	width: 20px;
	height: 20px;
	margin-right: 0.5em;
	vertical-align: -3px;
	background-color: var(--e-global-color-d370e2a);
    border: 2px solid var(--e-global-color-accent);
    border-radius: 5px;
	background-clip: content-box;
	transition: all 0.2s ease;
    cursor: pointer;
}
.elementor-field-type-radio .elementor-field-option label:before {
    border-radius: 50%;
}
.elementor-field-type-checkbox .elementor-field-option label,
.elementor-field-type-radio .elementor-field-option label,
.elementor-field-type-acceptance > div label {
	margin-right: 1em;
	position: relative;
}
.elementor-field-type-checkbox .elementor-field-option label:after,
.elementor-field-type-radio .elementor-field-option label:after,
.elementor-field-type-acceptance > div label:after {
	border-right: 2px solid #ffffff;
	border-top: 2px solid #ffffff;
	content: "";
	height: 8px;
	left: 3.5px;
	position: absolute;
	top: 7px;
	transform: scaleX(-1) rotate(135deg);
	transform-origin: left top;
	width: 6px;
	display: none;
}
.elementor-field-type-checkbox .elementor-field-option > input:hover + label:before,
.elementor-field-type-radio .elementor-field-option > input:hover + label:before,
.elementor-field-type-acceptance > div input:hover + label:before {
	border-color: var(--e-global-color-accent);
}
.elementor-field-type-checkbox .elementor-field-option > input:checked + label:before,
.elementor-field-type-radio .elementor-field-option > input:checked + label:before,
.elementor-field-type-acceptance > div input:checked + label:before {
	border-color: var(--e-global-color-accent);
	background: var(--e-global-color-accent);
}
.elementor-field-type-checkbox .elementor-field-option > input:checked + label:after,
.elementor-field-type-radio .elementor-field-option > input:checked + label:after,
.elementor-field-type-acceptance > div input:checked + label:after {
	-moz-animation: check 0.8s ease 0s running;
	-webkit-animation: check 0.8s ease 0s running;
	animation: check 0.8s ease 0s running;
	display: block;
	width: 6px;
	height: 12px;
	border-color: #ffffff;
}

.elementor-field-type-upload {
    position: relative;
    padding: 0;
}

.elementor-field-type-upload label {
    display: flex;
    justify-content: center;
    width: 100%;
    border: 2px dashed var(--e-global-color-primary);
    color: var(--e-global-color-primary) !important;
    border-radius: 8px;
    padding: 30px !important;
    line-height: 1.4em;
}

.elementor-field-type-upload label::before {
    display: inline-block;
    margin-right: 4px;
    content: "\eaa0";
    font-size: 1.2rem;
    font-family: 'icomoon-tabler' !important;
}

.elementor-field-type-upload input[type="file"] {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    cursor: pointer;
    opacity: 0;
    visibility: hidden;
}

@keyframes transition-entering {
    to {
        clip-path: inset(0 0 0 100%);
    }
}

@keyframes transition-loading {
    to {
        width: 100%;
        opacity: 0;
    }
}

@keyframes customFadeInUp {
    0% {
        opacity: 0;
        transform: translate3d(0, 40%, 0);
    }
    100% {
        opacity: 1;
        transform: none;
    }
}

@keyframes customFadeInDown {
    0% {
        opacity: 0;
        transform: translate3d(0, -40%, 0);
    }
    100% {
        opacity: 1;
        transform: none;
    }
}

@keyframes customSlideInRight {
    0% {
        transform: translate3d(100%, 0, 0);
    }
    100% {
        transform: none;
    }
}

@keyframes customSlideOutRight {
    0% {
        transform: none;
    }
    100% {
        transform: translate3d(100%, 0, 0);
    }
}