/************************************************************************* Defaults */
body {
	margin: 0;
	-webkit-font-smoothing: antialiased;
	-moz-osx-font-smoothing: grayscale;
}
body.locked {
	overflow: hidden;
}
h1, h2, h3, h4, h5, h6, p {
	margin-top: 0;
}
a {
	color: inherit;
}
b {
	font-weight: 700;
}
strong {
	font-weight: 700;
}


/************************************************************************* Text Editor */
.elementor-widget-text-editor p:last-child {
	margin-bottom: 0;
}


/************************************************************************* Stretch */
.stretch {
	margin-left: -2000px;
    margin-right: -2000px;
    max-width: unset !important;
    width: unset !important;
    z-index: -1;
}


/************************************************************************* Vertical */
.elementor-widget-divider.vertical {
	margin-top: -150px;
	margin-bottom: -150px !important;
	height: var(--container-widget-width);
	width: 1px !important;
}
.elementor-widget-divider.vertical .elementor-divider {
	height: 100%;
}
.elementor-widget-divider.vertical .elementor-divider-separator {
	width: 1px;
    height: 100%;
    border: 0;
    background-color: var(--divider-color);
}

    
/************************************************************************* Button */
.elementor-widget-button .elementor-button {
	overflow: hidden;
    position: relative;
}
.elementor-widget-button:not(.elementor-button-info) .elementor-button:after {
	content: "";
    position: absolute;
    top: -50%;
    right: -50%;
    bottom: -50%;
    left: -100%;
    background: linear-gradient(180deg, rgba(229, 172, 142, 0), hsla(0, 0%, 100%, .5) 50%, rgba(229, 172, 142, 0));
    transform: rotate(60deg) translate(-5em, 7.5em);
}
.elementor-widget-button:not(.elementor-button-info) .elementor-button:hover:after {
	-webkit-animation: sheen 1s forwards;
    animation: sheen 1s forwards;	
}
@keyframes sheen {
    100% {
        transform: rotateZ(60deg) translate(1em, -9em);
    }
}

.elementor-element.elementor-button-info .elementor-button {
	background: transparent !important;
    padding: 0;
    border-radius: 0;
}


/************************************************************************* Hamburger */
.hamburger .elementor-widget-container {
	display: flex;
    flex-direction: column;
}
.hamburger span {
	width: 100%;
    height: 1px;
    background-color: var( --e-global-color-primary );
    margin: 4px 0;
}


/************************************************************************* Menu */
.mainmenu {    
	font-family: var(--e-global-typography-secondary-font-family), Sans-serif;
    margin: 0;
    padding: 0;
    list-style: none;
    display: flex;
    align-items: center;
    justify-content: end;
    font-size: 20px;
    letter-spacing: 1px;
    gap: 40px;
}
.mainmenu > li > a {
	padding: 30px 0;
}
.mainmenu > li:hover > a {
	color: var( --e-global-color-7c4975b );
}


/************************************************************************* Submenu */
.submenu {
	position: absolute;
    list-style: none;
	margin: 0 0 0 -20px;
    padding: 15px 0;
    font-size: 16px;
    background-color: #ffffff;
    min-width: 250px;
	display: none;
}
.submenu li a {
	display: block;
    padding: 15px 20px;
}
.mainmenu > li:hover > .submenu {
	display: block;
}


/************************************************************************* Pricing */
.pricing .elementor-icon-box-content {
	display: flex;
    justify-content: space-between;
}


/************************************************************************* Footer */
footer input {
	padding-left: 0;
}


@media screen and (max-width: 1366px) {
	
	.mainmenu {
	    gap: 30px;
	}

	.elementor-widget-divider.vertical {
		margin-top: -100px;
		margin-bottom: -80px !important;
	}

}


@media screen and (max-width: 1024px) {

	.menu_holder {
		position: fixed;
        display: none;
        left: 0;
        top: 0;
        background-color: #fff;
        height: 100%;
        padding: 122px 0 0 0;
	}
	.menu_holder nav {
		padding: 0 20px;
	}
	.mainmenu {
	    gap: 0;
        flex-direction: column;
        justify-content: start;
        align-items: start;
        font-size: 24px;
	}
	.mainmenu > li {
		width: 100%;
        border-top: 1px solid #efefef;
	}
	.mainmenu > li > a {
	    padding: 20px 0;
	    display: block;
	}
	.submenu {
	    position: relative;
	    margin: 0;
	    min-width: 0;
	    display: block;
	    padding: 0;
	}
	.submenu > li > a {
    	padding: 20px 0px;
	}
	
	header.active .menu_holder {
	    display: block;
	}
	.ass-login {
		width: 100%;
		position: fixed;
		bottom: 0;
		left: 0;
	}
	.ass-login .elementor-icon-box-wrapper {
		align-items: center;
	}
	header.active .ass-login {
		display: block;
	}
   
}


@media screen and (max-width: 766px) {

	.stretch {
		margin-left: 0;
	    margin-right: 0;
	}

	.elementor-widget-divider.vertical {
		width: 100% !important;
	}	

}