/************************************************/
/*** # VARIABLES ********************************/
/************************************************/

:root {
    --color-fff: #fff;
    --color-black: #000;
    --color-f7: #f7f7f7;

    --main-container-max-width: 1280;

    --tablet-breakpoint: 1140px;
    --mobile-breakpoint: 767px;


}


/************************************************/
/*** # ELEMENTOR GLOBAL STYLES ******************/
/************************************************/
.color-primary {
    color: var(--e-global-color-primary) !important
}

.color-secondary {
    color: var(--e-global-color-secondary) !important
}

.color-text {
    color: var(--e-global-color-text) !important
}

.color-accent {
    color: var(--e-global-color-accent) !important
}

.color-fff {
    color: var(--color-fff) !important
}

.bg-color-primary {
    background-color: var(--e-global-color-primary) !important
}

.bg-color-secondary {
    background-color: var(--e-global-color-secondary) !important
}

.bg-color-text {
    background-color: var(--e-global-color-text) !important
}

.bg-color-accent {
    background-color: var(--e-global-color-accent) !important
}

.bg-color-fff {
    background-color: var(--color-fff) !important
}

.bg-color-f7 {
    background-color: var(--color-f7) !important
}

.text-primary {
    font-family: var(--e-global-typography-primary-font-family);
    font-size: var(--e-global-typography-primary-font-size);
    font-weight: var(--e-global-typography-primary-font-weight);
    line-height: var(--e-global-typography-primary-line-height);
    letter-spacing: var(--e-global-typography-primary-letter-spacing);
    word-spacing: var(--e-global-typography-text-word-spacing);

}

.text-secondary {
    font-family: var(--e-global-typography-secondary-font-family);
    font-size: var(--e-global-typography-secondary-font-size);
    font-weight: var(--e-global-typography-secondary-font-weight);
    line-height: var(--e-global-typography-secondary-line-height);
    letter-spacing: var(--e-global-typography-secondary-letter-spacing);
    word-spacing: var(--e-global-typography-text-word-spacing);
}

.text-accent {
    font-family: var(--e-global-typography-accent-font-family);
    font-size: var(--e-global-typography-accent-font-size);
    font-weight: var(--e-global-typography-accent-font-weight);
    line-height: var(--e-global-typography-accent-line-height);
    letter-spacing: var(--e-global-typography-accent-letter-spacing);
    word-spacing: var(--e-global-typography-text-word-spacing);
}

.text-normal {
    font-family: var(--e-global-typography-text-font-family);
    font-size: var(--e-global-typography-text-font-size);
    font-weight: var(--e-global-typography-text-font-weight);
    line-height: var(--e-global-typography-text-line-height);
    letter-spacing: var(--e-global-typography-text-letter-spacing);
    word-spacing: var(--e-global-typography-text-word-spacing);
}



/************************************************/
/*** # MAIN RULES *******************************/
/************************************************/
html {
    font-size: 18px;
    /*REM*/
}

body {
    font-family: "Acumin Local", sans-serif;
}

e.con {
    overflow: hidden
}

strong,
b,
.strong,
.bold {
    font-weight: bold
}

i,
em {
    font-style: italic
}





/* - - - - - - - - - - - - - - - - - - - - - - -
# HEADER
- - - - - - - - - - - - - - - - - - - - - - - - */

/* spazio per admin bar se utente loggato */
body.logged-in:not(.elementor-editor-active) #header {
    top: 32px
}

/* body.logged-in:not(.elementor-editor-active) #header_logo {
    top: 32px
} */

@media (max-width: 781px) {
    body.logged-in:not(.elementor-editor-active) #header {
        top: 46px
    }

    /* body.logged-in:not(.elementor-editor-active) #header_logo {
        top: 46px
    } */
}

#header {
    position: fixed;
    top: 0px;
    width: 100%;
    z-index: 10;

}

#header_logo {
    width: clamp(200px, 17vw, 300px);
    clip-path: polygon(0 0, 78% 0, 100% 100%, 0% 100%);
    background-color: var(--color-fff);
    padding: 20px 60px 20px 20px;
}

/*
#header_logo svg {
    width: auto;
    height: clamp(75px, 6vw, 110px);
    background: #fff;
    padding: 8px 12px;
    transition: height .3s ease
} */

/* #header.scrolled #header_logo svg {
    height: var(--header-height);
}

.header_content {
    height: var(--header-height);
} */


/* #header_nav_menu {
    position: absolute;
    top: -350px;
    right: 20px;
    transition: top .35s ease;
}

#header_nav_menu.open {
    top: var(--header-height);
    transition: top .6s ease;
}

#header_nav_menu li {
    text-align: right
}

#header_nav_menu li a {
    font-weight: 500;
    letter-spacing: 1px;
    text-transform: uppercase;
    display: inline;
}

@media (max-width:767px) {
    #header_nav_menu {
        right: 0px;
    }
} */

/* safari fix */
/* .header_content .elementor-widget-icon:nth-child(3) .elementor-icon,
.header_content .elementor-widget-icon:nth-child(5) .elementor-icon {
    max-width: .1em;
} */


/* - - - - - - - - - - - - - - - - - - - - - - -
# FOOTER
- - - - - - - - - - - - - - - - - - - - - - - - */
#footer p a {
    all: unset;
    cursor: pointer;
    transition: color .4s ease;
}

#footer p a:hover {
    color: var(--e-global-color-primary)
}

#footer .elementor-widget-text-editor a {
	color:white;
	transition: color .4s ease;
}
#footer .elementor-widget-text-editor a:hover {
    color: var(--e-global-color-primary)
}

/****************************************************************************************/
/* # CUSTOM PADDINGS ********************************************************************/
/* classi impostate tramite controllo iniettato nel widget 'container' di elementor     */
/****************************************************************************************/

/* default -> non inserisco regole */
.e-con.h_padding_default {}

.e-con.v_padding_default {}

.e-con.h_padding_medium {
    padding-left: 5vw;
    padding-right: 5vw;
    padding-left: 5dvw;
    padding-right: 5dvw;
}

.e-con.h_padding_big {
    padding-left: 10vw;
    padding-right: 10vw;
    padding-left: 10dvw;
    padding-right: 10dvw;
}

.e-con.v_padding_medium {
    padding-top: 5vh;
    padding-bottom: 5vh;
    padding-top: 5dvh;
    padding-bottom: 5dvh;
}

.e-con.v_padding_big {
    padding-top: 10vh;
    padding-bottom: 10vh;
    padding-top: 10dvh;
    padding-bottom: 10dvh;
}

/* se non default, reset elementor padding */
.e-con.h_padding_none,
.e-con.h_padding_medium .e-con-inner,
.e-con.h_padding_big .e-con-inner,
.e-con.h_padding_none .e-con-inner {
    padding-left: 0px;
    padding-right: 0px;
}

.e-con.v_padding_none,
.e-con.v_padding_medium .e-con-inner,
.e-con.v_padding_big .e-con-inner,
.e-con.v_padding_none .e-con-inner {
    padding-top: 0px;
    padding-bottom: 0px;
}

@media (max-width:1140px) {
    .e-con.h_padding_medium {}

    .e-con.v_padding_big {
        /* 		padding-top: 6vh;
		padding-bottom: 6vh;
		padding-top: 6dvh;
		padding-bottom: 6dvh; */
    }

    .e-con.v_padding_medium {}

    .e-con.v_padding_big {}
}



/****************************************************************************************/
/* # CUSTOM MARGINS ********************************************************************/
/* classi impostate tramite controllo iniettato nel widget 'container' di elementor     */
/****************************************************************************************/

/* default -> non inserisco regole */

.e-con.v_margin_default {}


.e-con.v_margin_medium {
    margin-top: 5vh;
    margin-bottom: 5vh;
    margin-top: 5dvh;
    margin-bottom: 5dvh;
}

.e-con.v_margin_big {
    margin-top: 10vh;
    margin-bottom: 10vh;
    margin-top: 10dvh;
    margin-bottom: 10dvh;
}

/* se non default, reset elementor margin */
.e-con.v_margin_none,
.e-con.v_margin_medium .e-con-inner,
.e-con.v_margin_big .e-con-inner,
.e-con.v_margin_none .e-con-inner {
    margin-top: 0px;
    margin-bottom: 0px;
}

@media (max-width:1140px) {

    .e-con.v_margin_big {}

    .e-con.v_margin_medium {}

    .e-con.v_margin_big {}
}



/************************************************/
/*** # RONCONI STYLES ***************************/
/************************************************/

.hover_circle {cursor:pointer}

.hover_circle::before {
    content: "";
    background-color: var(--e-global-color-primary);
    border-radius: 100%;
    width: 70%;
    aspect-ratio: 1;
    position: absolute;
    top: 50%;
    left: 50%;
    z-index: -1;
    transform: translate(-50%, -50%) scale(0);
    transition: transform .6s ease;

}


.hover_circle:hover::before {
    transform: translate(-50%, -50%) scale(1);
}

#header .menu-item-has-children a.has-submenu .sub-arrow {
    padding: 0;
    padding-left: 10px;
}

#header .menu-item-has-children a.has-submenu .sub-arrow::after {
    content: url('data:image/svg+xml;charset=UTF-8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 20 20"><g><path d="m10,19.5c5.25,0,9.5-4.25,9.5-9.5h0c0-5.25-4.25-9.5-9.5-9.5S.5,4.75.5,10s4.25,9.5,9.5,9.5" fill="%23fff" stroke-width="0"/><path d="m9.99,11.93h4.04c-.35.71-.89,1.32-1.55,1.76l-2.49-1.76Z" fill="%23ff5800" stroke-width="0"/><path d="m11.93,10.43c.04-.17.07-.34.07-.51,0-1.11-.89-2.01-2-2.02-.04,0-.09,0-.13,0-1,.07-1.8.87-1.87,1.87-.05.73.3,1.43.91,1.83h0l3.23,2.28-2.07,1.47-2.39-1.57h0c-1.29-.79-2.1-2.17-2.17-3.68-.13-2.5,1.79-4.62,4.29-4.75.07,0,.14,0,.21,0,2.5.01,4.51,2.05,4.5,4.54,0,.18,0,.35-.03.53h-2.54Z" fill="%23ff5800" stroke-width="0"/></g></svg>');
    display: inline-block;
    width: 35px;

}


.lh-1 {
    line-height: 1em !important;
}

.lh-2 {
    line-height: 1.25em !important;
}

.lh-3 {
    line-height: 1.5em !important;
}

.lh-4 {
    line-height: 1.75em !important;
}

.lh-5 {
    line-height: 2em !important;
}


.carosello_accessori .elementor-heading-title {
    min-height: 2.5em;
}


.slider_bg::before {
    content: "";
    background-color: var(--e-global-color-secondary);
    width: 100%;
    height: 50%;
    position: absolute;
    top: 50%;
    left: 0;
    transform: translateY(-50%);
    z-index: -1;

}

.menu_prodotti .elementor-icon-box-wrapper {
    align-items: center;
}


.contact_bg_title {
    min-width: 450px !important;
    background: var(--color-black);
    display: flex;
    justify-content: center;
    padding: 5px 5px 2px 5px;
}

@media (max-width:1140px) {
    .contact_bg_title {
        min-width: 300px !important;
    }

    .contact_table a {
        font-size: 1em;
    }
}


/************************************************/
/*** # WPML *************************************/
/************************************************/
#header .elementor-widget-wpml-language-switcher {
	margin-left:40px
}
@media (max-width:1140px) {
	#header .elementor-widget-wpml-language-switcher {
		margin-left:0px;
		margin-right: 20px
	}
}

#header .wpml-ls-legacy-list-horizontal,
#header a.wpml-ls-link {
	padding: 0;
}



#header .wpml-ls-legacy-list-horizontal ul {
	display: flex;
	gap: 20px;
	position: relative;
	
}
#header .wpml-ls-legacy-list-horizontal ul::after {
	content:"/";
    position: relative;
    font-weight: bold;
    font-size: 1.5em;
    left: -56%;
    top: -0.15em;
}

#header .wpml-ls-legacy-list-horizontal li.wpml-ls-current-language a{
	color: var(--e-global-color-primary)
}


#whatsapp_badge {display: none} /* temp */



/* 
 * TODO
 * - whatsapp
 * - analytics
 * - policies
 * */
