/* HEADER */
.header-wrapper { height: 140px; }
@media (max-width: 992px) { .header-wrapper { height: 100px; } }

/* Top menu */
#menu-top .site-wrapper { margin: 10px 0; }
#menu-top .top-sx { width: 50%; display: flex; }
#menu-top .top-sx .social a { display: flex; }
#menu-top .top-sx .social a img { width: 20px; margin-right: 15px; }
#menu-top .top-dx { width: 50%; }
@media (max-width: 992px) { #menu-top { display: none; } }
#menu-top.mobile { position: fixed; bottom: 0; display: block; z-index: 160; background-color: #333; flex-direction: column-reverse; width: 100%; }
#menu-top.mobile .site-wrapper { flex-direction: column-reverse; }
#menu-top.mobile .site-wrapper .top-sx { width: 100%; justify-content: center; margin: 10px 0; }
#menu-top.mobile .site-wrapper .top-dx { width: 100%; }

.top-menu { background-color: transparent; padding: 0; height: 40px; display: flex; align-items: center; margin-top: 25px; }
@media (max-width: 992px) { .top-menu { height: auto; margin-top: 0; } }
.top-menu .menu-top-container, .top-menu .menu-top-en-container { width: 100%; display: flex; justify-content: flex-end; }
@media (max-width: 992px) { .top-menu .menu-top-container, .top-menu .menu-top-en-container { justify-content: center; } }
.top-menu .menu-top-container ul, .top-menu .menu-top-en-container ul { margin: 0; text-align: right; display: flex; justify-content: flex-end; list-style: none; padding-left: 0; position: relative; width: max-content; }
@media (max-width: 992px) { .top-menu .menu-top-container ul, .top-menu .menu-top-en-container ul { justify-content: center; } }
.top-menu .menu-top-container ul li, .top-menu .menu-top-en-container ul li { margin-left: 10px; display: flex; align-items: center; justify-content: center; height: 40px; margin-bottom: 0; }
.top-menu .menu-top-container ul li:not(:last-child):after, .top-menu .menu-top-en-container ul li:not(:last-child):after { content: '|'; color: #333; padding-left: 10px; }
@media (max-width: 992px) { .top-menu .menu-top-container ul li:not(:last-child):after, .top-menu .menu-top-en-container ul li:not(:last-child):after { color: #fff !important; } }
.top-menu .menu-top-container ul li a, .top-menu .menu-top-en-container ul li a { color: #333; text-decoration: none; font-size: 13px; font-weight: 400; }
@media (max-width: 992px) { .top-menu .menu-top-container ul li a, .top-menu .menu-top-en-container ul li a { color: #fff; } }
.top-menu .menu-top-container ul li a:hover, .top-menu .menu-top-en-container ul li a:hover { color: #196E51; }
@media (max-width: 992px) { .top-menu .menu-top-container ul li a:hover, .top-menu .menu-top-en-container ul li a:hover { color: #fff; } }
.top-menu .menu-top-container ul li.registro-elettronico span, .top-menu .menu-top-en-container ul li.registro-elettronico span { font-size: 18px; top: 4px; position: relative; }
.top-menu.fixed { margin: 0; transition: transform 0.3s ease-in-out; }
.top-menu.fixed.hidden { transform: translateY(-110%); }
.top-menu.fixed:not(.hidden) { margin-bottom: 7.5px; }
@media (max-width: 992px) { .top-menu.fixed:not(.hidden) { margin-bottom: 0; } }
.top-menu.fixed.visible { margin: 5px 0 20px 0; transition: transform 0.3s ease-in-out; top: 15px; position: relative; }
.top-menu.fixed .menu-top-container ul li a { color: #333; }
.top-menu.fixed .menu-top-container ul li a:hover { color: #196E51; }
@media (max-width: 992px) { .top-menu.fixed .menu-top-container ul li a { color: #fff; } }
.top-menu.fixed .menu-top-container ul li:not(:last-child):after { color: #333; }

/* Main Menu */
#masthead { display: block; align-items: center; top: 0; position: relative; z-index: 150; background-color: transparent; /* WPML */ }
@media (max-width: 1250px) { #masthead { margin: 0 25px; }
  #masthead.fixed { margin: 0; } }
@media (max-width: 992px) { #masthead { border-bottom: 1px solid rgba(255, 255, 255, 0.5); display: flex; height: 100px; -webkit-box-shadow: 0px 2px 5px 0px rgba(0, 0, 0, 0.25); -moz-box-shadow: 0px 2px 5px 0px rgba(0, 0, 0, 0.25); box-shadow: 0px 2px 5px 0px rgba(0, 0, 0, 0.25); background-color: #fff; margin: 0; }
  #masthead.mobile { height: 100%; } }
#masthead .site-wrapper { width: 100%; max-width: 1200px; padding: 0 25px; margin: 0 auto 25px auto; display: flex; align-items: center; background-color: #fff; border-radius: 20px; }
@media (max-width: 992px) { #masthead .site-wrapper { border-bottom: none; background-color: transparent; -webkit-box-shadow: none; -moz-box-shadow: none; box-shadow: none; margin: 0 auto; padding: 0 25px; } }
#masthead.fixed { position: fixed; width: 100%; top: 0; z-index: 150; animation: smoothScroll 0.5s forwards; transition: top 0.3s ease-in-out; }
@media (min-width: 992px) { #masthead.fixed { left: auto; right: auto; margin: 0 auto; } }
#masthead.fixed .site-wrapper { margin: 0 auto; padding: 0 25px; -webkit-box-shadow: 0px 2px 5px 0px rgba(0, 0, 0, 0.15); -moz-box-shadow: 0px 2px 5px 0px rgba(0, 0, 0, 0.15); box-shadow: 0px 2px 5px 0px rgba(0, 0, 0, 0.15); }
@keyframes smoothScroll { 0% { transform: translateY(-40px); }
  100% { transform: translateY(0px); } }
#masthead.fixed #masthead.mobile { height: 100%; }
#masthead .site-title, #masthead .site-description { display: none; }
@media (max-width: 992px) { #masthead .site-branding { position: absolute; top: 32px; } }
#masthead .site-branding .custom-logo-link { display: flex; }
#masthead .site-branding .custom-logo-link img { width: 275px; max-width: 100%; }
@media (max-width: 992px) { #masthead .site-branding .custom-logo-link img { width: 175px; } }
#masthead #site-navigation .menu-toggle { display: block; position: absolute; right: 35px; top: 35px; background-color: transparent !important; border: 0; outline: none; padding: 0; }
@media (min-width: 992px) { #masthead #site-navigation .menu-toggle { display: none; } }
#masthead #site-navigation .menu-toggle .sr-only { position: absolute; width: 1px; height: 1px; padding: 0; margin: -1px; overflow: hidden; clip: rect(0, 0, 0, 0); border: 0; }
#masthead #site-navigation .burger-menu { width: 25px; height: 3px; color: #666; position: relative; margin: 5px 0; display: block; -webkit-transition: all 0.3s 0s linear; -moz-transition: all 0.3s 0s linear; -o-transition: all 0.3s 0s linear; transition: all 0.3s 0s linear; background-color: #333; }
#masthead #site-navigation .menu-menu-container { -webkit-transition: all 0.3s 0s linear; -moz-transition: all 0.3s 0s linear; -o-transition: all 0.3s 0s linear; transition: all 0.3s 0s linear; }
#masthead #site-navigation.toggled .burger-menu { opacity: 0; }
#masthead #site-navigation.toggled .menu-toggle { margin-top: 8px; }
#masthead #site-navigation.toggled .burger-menu:nth-child(2) { transform: rotate(45deg); opacity: 1; -webkit-transition: all 0.3s 0s linear; -moz-transition: all 0.3s 0s linear; -o-transition: all 0.3s 0s linear; transition: all 0.3s 0s linear; }
#masthead #site-navigation.toggled .burger-menu:last-child { transform: rotate(-45deg); top: -16px; opacity: 1; -webkit-transition: all 0.3s 0s linear; -moz-transition: all 0.3s 0s linear; -o-transition: all 0.3s 0s linear; transition: all 0.3s 0s linear; }
#masthead #site-navigation.toggled .menu-menu-container, #masthead #site-navigation.toggled .menu-menu-en-container { background-color: #333; width: 100%; height: calc(100dvh - 180px); position: absolute; top: 100px; left: 0; visibility: visible; opacity: 1; -webkit-transition: all 0.5s 0s linear; -moz-transition: all 0.5s 0s linear; -o-transition: all 0.5s 0s linear; transition: all 0.5s 0s linear; display: flex; justify-content: center; text-align: center; align-items: center; /*padding-top:50px;*/ z-index: 150; }
@media (max-width: 992px) { #masthead #site-navigation.toggled .menu-menu-container, #masthead #site-navigation.toggled .menu-menu-en-container { background: #fff; border-top: 1px solid #ccc; } }
#masthead #site-navigation.toggled #primary-menu { float: none; }
@media (max-width: 992px) { #masthead #site-navigation.toggled #primary-menu { display: block; } }
#masthead #site-navigation.toggled #primary-menu .menu-item { margin: 20px 15px; }
#masthead #site-navigation.toggled #primary-menu .menu-item:first-child { margin-top: 0; }
#masthead #site-navigation.toggled #primary-menu .menu-item:last-child { margin-bottom: 0; }
#masthead #site-navigation #primary-menu { float: right; }
@media (max-width: 992px) { #masthead #site-navigation #primary-menu { display: none; } }
#masthead #site-navigation #primary-menu .menu-item { margin: 0 15px; height: 80px; display: flex; align-items: center; justify-content: center; }
#masthead #site-navigation #primary-menu .menu-item:last-child { margin: 0 0 0 15px; }
@media (max-width: 992px) { #masthead #site-navigation #primary-menu .menu-item:last-child { margin: 15px 0 0 0; } }
@media (max-width: 1250px) { #masthead #site-navigation #primary-menu .menu-item { margin: 0 10px; } }
@media (max-width: 992px) { #masthead #site-navigation #primary-menu .menu-item { height: auto; margin: 0; } }
#masthead #site-navigation #primary-menu .menu-item .sub-menu a { color: #333333; -webkit-transition: all 0.3s 0s linear; -moz-transition: all 0.3s 0s linear; -o-transition: all 0.3s 0s linear; transition: all 0.3s 0s linear; }
#masthead #site-navigation #primary-menu .menu-item .sub-menu a:hover { color: #333333; -webkit-transition: all 0.3s 0s linear; -moz-transition: all 0.3s 0s linear; -o-transition: all 0.3s 0s linear; transition: all 0.3s 0s linear; }
#masthead #site-navigation #primary-menu .menu-item .sub-menu .indietro a { color: #fff !important; }
#masthead #site-navigation #primary-menu .menu-item.current-menu-parent > a { color: #333333; font-weight: bold; }
@media (max-width: 992px) { #masthead #site-navigation #primary-menu .menu-item.current-menu-parent > a { color: #333333; } }
#masthead #site-navigation #primary-menu .menu-item.current-menu-parent > a:after { content: ''; display: block; height: 2px; -webkit-transition: all 0.3s 0s linear; -moz-transition: all 0.3s 0s linear; -o-transition: all 0.3s 0s linear; transition: all 0.3s 0s linear; opacity: 1; width: 100%; background-color: #38F4B5; }
#masthead #site-navigation #primary-menu .menu-item a { font-weight: 400; font-size: 16px; width: max-content; position: relative; top: 1px; color: #333333; }
@media (max-width: 992px) { #masthead #site-navigation #primary-menu .menu-item a { width: max-content; font-size: 16px; line-height: 24px; } }
#masthead #site-navigation #primary-menu .menu-item a:after { content: ''; display: block; height: 2px; opacity: 0; -webkit-transition: all 0.3s 0s linear; -moz-transition: all 0.3s 0s linear; -o-transition: all 0.3s 0s linear; transition: all 0.3s 0s linear; width: 0; }
@media (max-width: 992px) { #masthead #site-navigation #primary-menu .menu-item a:after { display: none; } }
#masthead #site-navigation #primary-menu .menu-item a:hover { color: #333; }
#masthead #site-navigation #primary-menu .menu-item a:hover:after { -webkit-transition: all 0.3s 0s linear; -moz-transition: all 0.3s 0s linear; -o-transition: all 0.3s 0s linear; transition: all 0.3s 0s linear; opacity: 1; width: 100%; background-color: #38F4B5; }
@media (max-width: 992px) { #masthead #site-navigation #primary-menu .menu-item a:hover:after { display: none; } }
#masthead #site-navigation #primary-menu .menu-item.current_page_item a { color: #333; font-weight: bold; }
#masthead #site-navigation #primary-menu .menu-item.current_page_item a:after { content: ''; display: block; height: 2px; -webkit-transition: all 0.3s 0s linear; -moz-transition: all 0.3s 0s linear; -o-transition: all 0.3s 0s linear; transition: all 0.3s 0s linear; opacity: 1; width: 100%; background-color: #38F4B5; }
@media (max-width: 992px) { #masthead #site-navigation #primary-menu .menu-item.current_page_item a { color: #333333; width: max-content; }
  #masthead #site-navigation #primary-menu .menu-item.current_page_item a:after { color: #333333; background-color: #38F4B5; } }
#masthead #site-navigation #primary-menu .menu-item-has-children:after { content: ""; width: 0; height: 0; border-left: 4px solid transparent; border-right: 4px solid transparent; position: relative; right: -7.5px; border-top: 4px solid #333333; }
@media (max-width: 992px) { #masthead #site-navigation #primary-menu .menu-item-has-children:after { /*display:none;*/ border-top: 4px solid #333333; top: 3px; } }
#masthead #site-navigation #primary-menu .sub-menu { display: block; background-color: #fff; }
@media (min-width: 992px) { #masthead #site-navigation #primary-menu .sub-menu { border-bottom-right-radius: 10px; border-bottom-left-radius: 10px; } }
#masthead #site-navigation #primary-menu .sub-menu li { display: block; height: auto; }
#masthead .language-switcher-container { display: flex; flex-direction: row; align-items: center; gap: 15px; justify-content: center; }
#masthead .language-switcher-container .language-divider { color: #eee; }
#masthead .language-switcher-container .wpml-ls-item { list-style: none; margin: 0 !important; }
#masthead .language-switcher-container ul .wpml-ls-menu-item a { display: flex; align-items: center; justify-content: center; }
@media (max-width: 992px) { #masthead .language-switcher-container { border-top: 1px solid #eee; padding-top: 15px; } }
@media (min-width: 992px) { #masthead .wpml-ls-current-language .sub-menu a { border: none !important; padding: 0 !important; }
  #masthead .wpml-ls-current-language a:not(.sub-menu) { border-left: 1px solid #ddd; padding-left: 15px; } }
@media (min-width: 992px) { #masthead .astm-search-menu a { border-left: 1px solid #ddd; padding-left: 15px; } }
@media (max-width: 992px) { #masthead .astm-search-menu a[role="button"] { top: 10px !important; } }
@media (max-width: 992px) { #masthead .astm-search-menu form { min-width: 250px; max-width: 100%; position: absolute; left: 0; bottom: 0; top: 0; height: 50px; z-index: 9; padding: 0 10px; } }
#masthead .astm-search-menu .search-close { z-index: 10; }
@media (max-width: 992px) { #masthead .astm-search-menu .search-close { top: calc(100% + -7px); right: 0; } }

.main-navigation ul li:hover > ul, .main-navigation ul li.focus > ul { left: 0; min-width: 200px; }
@media (max-width: 992px) { .main-navigation ul li:hover > ul, .main-navigation ul li.focus > ul { left: auto; } }
.main-navigation ul li:hover > ul li, .main-navigation ul li.focus > ul li { margin: 15px !important; height: 100%; }
@media (max-width: 992px) { .main-navigation ul li:hover > ul li, .main-navigation ul li.focus > ul li { margin: 10px !important; } }
.main-navigation ul li:hover > ul li a, .main-navigation ul li.focus > ul li a { color: #000; }
.main-navigation .wpml-ls-menu-item:hover > ul, .main-navigation .wpml-ls-menu-item li.focus > ul { min-width: 70px; }

.dropdown-livello-2-parent { display: none !important; }
@media (max-width: 992px) { .dropdown-livello-2-parent { display: block !important; } }

.dropdown-livello-2-aperto { position: fixed !important; display: flex !important; align-items: center !important; left: 0 !important; top: 100px !important; width: 100% !important; height: calc(100dvh - 180px) !important; z-index: 70 !important; flex-direction: column; justify-content: center; background: #FFF; }
.dropdown-livello-2-aperto li { margin: 10px auto !important; line-height: 20px; }

.dropdown-livello-2-chiuso { display: none !important; }

/*@media (max-width: 991px) { .sub-menu { pointer-events: none; } .sub-menu.dropdown-livello-2-aperto { pointer-events: auto; animation: enable-clicks 0.35s; }
}*/
@keyframes enable-clicks { 0%, 99% { pointer-events: none; }
  100% { pointer-events: auto; } }
.indietro { background-color: #333; border-radius: 30px; border: 1px solid #333; -webkit-transition: all 0.3s 0s linear; -moz-transition: all 0.3s 0s linear; -o-transition: all 0.3s 0s linear; transition: all 0.3s 0s linear; top: 5px; }
.indietro a { color: #fff !important; -webkit-transition: all 0.3s 0s linear; -moz-transition: all 0.3s 0s linear; -o-transition: all 0.3s 0s linear; transition: all 0.3s 0s linear; text-transform: none !important; font-weight: 500 !important; top: 0 !important; padding: 7px 25px; text-transform: uppercase !important; font-size: 15px !important; line-height: 25px !important; }
.indietro a:hover, .indietro a:focus { background-color: #fff; color: #333 !important; -webkit-transition: all 0.3s 0s linear; -moz-transition: all 0.3s 0s linear; -o-transition: all 0.3s 0s linear; transition: all 0.3s 0s linear; }

/* ============================================================================= FORM RICERCA NEL MENU  ============================================================================= */
.becoming-search-menu-item { position: relative; }
@media (min-width: 992px) { .becoming-search-menu-item > .becoming-search-wrapper > .becoming-search-toggle { border-left: 1px solid #ddd; padding-left: 15px; } }

.becoming-search-wrapper { position: relative; display: flex; align-items: center; }

/* --- Icona lente --- */
.becoming-search-toggle { background: none; border: none; padding: 4px 0; cursor: pointer; color: #333333; display: flex; align-items: center; line-height: 1; position: relative; top: 1px; transition: color 0.3s linear; }
.becoming-search-toggle:hover, .becoming-search-toggle:focus { color: #000; outline: none; }
@media (max-width: 992px) { .becoming-search-toggle { top: 0; padding: 8px 0; color: #333333; } }
.mobile .becoming-search-toggle { color: #333333; }

.becoming-search-box { display: flex; align-items: center; }
@media (min-width: 992px) { .becoming-search-box { position: absolute; right: -25px; top: 60px; width: 250px; z-index: 10; background: #fff; border: 1px solid #38f4b5 !important; border-radius: 20px; overflow: hidden; transition: border-color 0.2s; }
  .becoming-search-box:focus-within { border-color: #38f4b5; outline: 2px solid #38f4b5; } }
@media (max-width: 992px) { .becoming-search-box { position: absolute; left: 0; translate: -50%; right: 0; bottom: -35px; top: 0px; width: 250px; z-index: 200; background: #fff; border: 1px solid #38f4b5 !important; border-radius: 20px; overflow: hidden; transition: border-color 0.2s; height: 50px; }
  .becoming-search-box:focus-within { border-color: #38f4b5; outline: 2px solid #38f4b5; } }
.becoming-search-box form { display: flex; align-items: center; width: 100%; height: 100%; }

/* --- Input --- */
.becoming-search-input { flex: 1; border: none !important; border-radius: 0 !important; outline: none; padding: 5px 15px !important; font-size: 14px; color: #333 !important; background: transparent; min-width: 0; }
.becoming-search-input::placeholder { color: #aaa; }
.becoming-search-input::-webkit-search-cancel-button { display: none; }

.becoming-search-submit { background: none; border: none; padding: 8px 8px 8px 4px; cursor: pointer; color: #333; display: flex; align-items: center; transition: color 0.2s; }
.becoming-search-submit:hover, .becoming-search-submit:focus { color: #333; outline: none; }

.becoming-search-close { background: none; border: none; padding: 8px; cursor: pointer; color: #333; display: flex; align-items: center; transition: color 0.2s; z-index: 10; }
.becoming-search-close:hover, .becoming-search-close:focus { color: #333; outline: none; }
@media (max-width: 992px) { .becoming-search-close { position: relative; right: 0; } }

#becoming-search-box { display: none !important; }

#becoming-search-box.becoming-search-open { display: flex !important; }

/*# sourceMappingURL=menu.css.map */
