.elementor-kit-8{--e-global-color-primary:#006B90;--e-global-color-secondary:#616161;--e-global-color-text:#3C4043;--e-global-color-accent:#61CE70;--e-global-color-f9eae1c:#009FE3;--e-global-color-9d168d1:#FFFFFF;--e-global-color-786bc63:#000000;--e-global-color-07d6c6c:#F7F7F7;--e-global-color-718985d:#E5F5FC;--e-global-typography-primary-font-family:"Red Hat Display";--e-global-typography-primary-font-size:58px;--e-global-typography-primary-font-weight:700;--e-global-typography-secondary-font-family:"Red Hat Display";--e-global-typography-secondary-font-weight:400;--e-global-typography-text-font-family:"Red Hat Display";--e-global-typography-text-font-weight:400;--e-global-typography-accent-font-family:"Red Hat Display";--e-global-typography-accent-font-weight:700;}.elementor-kit-8 button:hover,.elementor-kit-8 button:focus,.elementor-kit-8 input[type="button"]:hover,.elementor-kit-8 input[type="button"]:focus,.elementor-kit-8 input[type="submit"]:hover,.elementor-kit-8 input[type="submit"]:focus,.elementor-kit-8 .elementor-button:hover,.elementor-kit-8 .elementor-button:focus{background-color:var( --e-global-color-f9eae1c );color:var( --e-global-color-9d168d1 );border-style:none;}.elementor-kit-8 e-page-transition{background-color:#FFBC7D;}.elementor-kit-8 a{color:var( --e-global-color-f9eae1c );font-family:"Red Hat Display", Sans-serif;font-size:12px;}.elementor-kit-8 a:hover{color:var( --e-global-color-primary );}.elementor-kit-8 h1{color:var( --e-global-color-secondary );font-family:"Red Hat Display", Sans-serif;font-size:30px;font-weight:900;}.elementor-kit-8 h2{color:var( --e-global-color-secondary );font-family:"Red Hat Display", Sans-serif;font-weight:bold;}.elementor-kit-8 h3{color:var( --e-global-color-secondary );font-family:"Red Hat Display", Sans-serif;font-size:20px;}.elementor-kit-8 h4{color:var( --e-global-color-secondary );font-family:"Red Hat Display", Sans-serif;font-size:23px;}.elementor-kit-8 h5{color:var( --e-global-color-secondary );font-family:"Red Hat Display", Sans-serif;font-size:20px;}.elementor-kit-8 h6{color:var( --e-global-color-secondary );font-family:"Red Hat Display", Sans-serif;font-size:10px;}.elementor-kit-8 button,.elementor-kit-8 input[type="button"],.elementor-kit-8 input[type="submit"],.elementor-kit-8 .elementor-button{font-family:"Red Hat Display", Sans-serif;font-size:10px;font-weight:900;text-transform:uppercase;color:var( --e-global-color-f9eae1c );border-style:solid;border-color:var( --e-global-color-secondary );border-radius:20px 0px 020px 20px;}.elementor-section.elementor-section-boxed > .elementor-container{max-width:1500px;}.e-con{--container-max-width:1500px;}.elementor-widget:not(:last-child){margin-block-end:20px;}.elementor-element{--widgets-spacing:20px 20px;--widgets-spacing-row:20px;--widgets-spacing-column:20px;}{}h1.entry-title{display:var(--page-title-display);}.elementor-lightbox{--lightbox-header-icons-size:0px;}.site-header .site-branding{flex-direction:column;align-items:stretch;}.site-header{padding-inline-end:0px;padding-inline-start:0px;}.site-footer .site-branding{flex-direction:column;align-items:stretch;}@media(max-width:1024px){.elementor-section.elementor-section-boxed > .elementor-container{max-width:1024px;}.e-con{--container-max-width:1024px;}}@media(max-width:767px){.elementor-section.elementor-section-boxed > .elementor-container{max-width:767px;}.e-con{--container-max-width:767px;}}/* Start custom CSS *//*html, body {overflow-x:hidden !important;}
.wpr-sticky-section-yes {overflow-x:visible !important;
}*/
.wpr-mobile-mega-menu li:hover > a {
  background-color: #009FE3 !important;
}

.wpr-mobile-mega-menu li.current-menu-item > a {
  background-color: #009FE3 !important;}
  
  .wpr-mobile-toggle:hover .wpr-mobile-toggle-line {
  background-color: #009FE3 !important;
}

/* -----------------------------------------
   WPML SUBMENU FIXES
----------------------------------------- */
.wpr-sub-menu .wpml-ls-menu-item {
    width: 50px !important;
    min-width: 50px !important;
    max-width: 50px !important;
    overflow: hidden !important;
    border: none !important;
}

.wpr-sub-menu:has(.wpml-ls-menu-item) {
    width: 50px !important;
    min-width: 50px !important;
    max-width: 50px !important;
    padding: 0 !important;
    border: none !important;
}

.wpr-sub-mega-menu {
    transition: all 1.2s ease-in-out !important;
}
/* -----------------------------------------
   TRIGGER + ARROW (ONE ELEMENT)
----------------------------------------- */
.trigger-wrapper {
    position: fixed;
    top: 45%;
    right: 0;
    transform: translateY(-50%);
    display: flex;
    align-items: center;
    gap: 8px;
    z-index: 9999;
    cursor: pointer;
    transition: opacity 0.3s ease;
}

.trigger-wrapper.hidden {
    opacity: 0;
    pointer-events: none;
}

.menu-arrow {
    font-size: 30px;
    color: #000;
    font-weight: 200;
    transition: transform 0.3s ease;

}

.side-trigger {
    background: #009FE3;
    padding: 5px 25px;
    display: flex;
    align-items: center;
    justify-content: center;
}

.trigger-logo {
    height: 80px;
    width: 80px;
}

/* Desktop hover */
@media (min-width: 1025px) {
    .trigger-wrapper:hover .menu-arrow {
        transform: scale(1.2);
    }
}

/* -----------------------------------------
   DESKTOP MENU (SLIDING PANEL)
----------------------------------------- */
.side-menu {
    position: fixed;
    top: 0;
    right: -500px;
    width: 500px;
    height: 100vh;
    background: #009FE3;
    padding: 60px 20px;
    display: flex;
    flex-direction: column;
    justify-content: space-between;
    transition: right 0.35s ease;
    z-index: 9998;
}

.side-menu.open {
    right: 0;
}

/* -----------------------------------------
   MOBILE MENU (FULLSCREEN OVERLAY)
----------------------------------------- */
@media (max-width: 1024px) {
    .menu-arrow { display:none;}

    .side-menu {
        position: fixed !important;
        top: 0 !important;
        right: 0 !important;

        width: 100% !important;
        height: 100vh !important;

    
        padding: 50px 0 115px 0 !important;

        background: #009FE3;

        display: none !important;   /* hidden by default */
        flex-direction: column;
        justify-content: space-between;

        box-sizing: border-box !important;

        z-index: 9998 !important;

        /* IMPORTANT: remove sliding animation */
        transition: none !important;
    }
    
    body.menu-open .trigger-wrapper {
        display: flex !important;
    }

    .side-menu.open {
        display: flex !important;   /* fullscreen overlay */
    }

    /* Trigger moves to corner */
    .trigger-wrapper {
        top: 5% !important;
        right: 20px !important;
        transform: none !important;
        display: none !important;
    }

    /* Shrink trigger */
    .side-trigger {
        padding: 5px 15px !important;
    }

    .trigger-logo {
        height: 50px !important;
        width: 50px !important;
    }

    .menu-arrow {
        font-size: 22px !important;
    }
}


/* -----------------------------------------
   CLOSE BUTTON (X)
----------------------------------------- */
.close-menu {
    position: absolute;
    top: 20px;
    left: 20px;
    font-size: 40px;
    color: white;
    cursor: pointer;
    z-index: 9999;
    transition: transform 0.3s ease;
}

.close-menu:hover {
    transform: scale(1.2);
}

/* -----------------------------------------
   MENU LOGO ZOOM
----------------------------------------- */
.center-zoom-image {
    display: block;
    margin: 0 auto;
    transition: transform 0.4s ease;
    width: 50%;
}

@media (min-width: 1025px) {
    .center-zoom-image:hover {
        transform: scale(1.08);
    }
}

@media (max-width: 1024px) {
    .center-zoom-image:hover {
        transform: scale(1.03);
    }
}

/* -----------------------------------------
   WHITE LINE
----------------------------------------- */
.riga-bianca {
    opacity: 0.5;
    height: 1px;
    background-color: white;
    width: 80%;
    margin: 0 auto;
}


/* Horizontal (main) menu: ALWAYS white in every state */
.elementor-nav-menu--layout-horizontal a.elementor-item,
.elementor-nav-menu--layout-horizontal a.elementor-item:hover,
.elementor-nav-menu--layout-horizontal a.elementor-item:focus,
.elementor-nav-menu--layout-horizontal a.elementor-item:active,
.elementor-nav-menu--layout-horizontal .current-menu-item > a.elementor-item,
.elementor-nav-menu--layout-horizontal .current-menu-ancestor > a.elementor-item,
.elementor-nav-menu--layout-horizontal .current_page_item > a.elementor-item,
.elementor-nav-menu--layout-horizontal .current_page_ancestor > a.elementor-item {
    color: #fff !important;
}


/* DROPDOWN / MEGAMENU: hover + active = #009FE3 */
.elementor-nav-menu--dropdown a.elementor-item:hover,
.elementor-nav-menu--dropdown a.elementor-item:focus,
.elementor-nav-menu--dropdown .current-menu-item > a.elementor-item,
.elementor-nav-menu--dropdown .current-menu-ancestor > a.elementor-item {
    color: #009FE3 !important;
}
.e-font-icon-svg path {
    fill: black !important;
}
/* Social icons should be white */
.elementor-social-icon svg path,
.elementor-social-icons-wrapper svg path,
.social-icon svg path {
    fill: white !important;
}


.ep-icon-arrow-left-3,
.ep-icon-arrow-right-3 {
    color: #000 !important;
}

/* the left line 
.acc-trigger::before,
.acc-trigger2::before {
  content: "";
  position: absolute;
  left: 0;
  top: 0.2em;
  bottom: 0.2em;
  width: 3px;
  background-color: transparent;
  border-radius: 2px;
  transition: background-color 0.25s ease, height 0.25s ease;
}*/

/* hover effect 
.acc-trigger:hover::before,
.acc-trigger2:hover::before {
  background-color: #009FE3; 
}*/

/* optional: change text color on hover */
.acc-trigger:hover,
.acc-trigger2:hover,
.acc-trigger3:hover {
  color: #009FE3 !important;
}



.elementor-tab-content { text-align:justify !important;
}

/* .wpr-mobile-mega-menu-wrap {
    position: fixed !important;
    top: 0 !important;
    left: 0 !important;
    width: 100vw !important;  
    height: 100vh !important;  
    margin: 0 !important;
    padding: 0 !important;
    z-index: 99999 !important; 
    overflow-y: auto !important; 
    background: #fff;          
    box-sizing: border-box;
}


.wpr-mobile-mega-menu-wrap .wpr-mobile-nav-menu {
    width: 100% !important;
    min-height: 100%;
    display: flex;
    flex-direction: column;
    padding: 20px;  
}


.wpr-mobile-mega-menu-wrap .wpr-mobile-sub-mega-menu {
    width: 100% !important;
  
}

.wpr-mobile-mega-menu-wrap[style] {
    left: 0 !important;
    width: 100vw !important;
}*/

/* Fullscreen mobile menu panel */
.wpr-mobile-mega-menu-wrap  {
    position: fixed !important;
    top: 0; !important;
    left: 0; !important;
    inset: 0 !important;
    width: 100vw !important;
    height: 100vh !important;
    max-height: 100vh !important;
    overflow-y: auto !important;
    background: #fff; /* your color */
    z-index: 999 !important;
    padding: 0 !important;
    padding-top: 100px !important; /* add only top padding */
    margin: 0 !important;
}

.wpr-mobile-mega-menu-wrap a:hover, .wpr-mobile-mega-menu-wrap a.elementor-item-active {
    color: #fff !important; /* your hover color */
}

.wpr-mobile-close-btn {
    position: absolute;
    top: 20px;
    left: 20px;
    font-size: 32px;
    font-weight: bold;
    color: #000; /* or #fff if dark background */
    cursor: pointer;
    z-index: 1000;
}

.wpr-mobile-menu-item { height: 70px; }/* End custom CSS */