/*
Theme Name: Ediltec child
Theme URI: https://elementor.com/hello-theme/?utm_source=wp-themes&utm_campaign=theme-uri&utm_medium=wp-dash
Template: hello-elementor
Author: Flush team
Author URI: https://www.flushdesign.it/
Version: 3.4.7.1775743517
Updated: 2026-04-09 14:05:17
*/

/* ── WPML Language Switcher ───────────────────────────────── */
.wpml-ls, .wpml-ls ul, .wpml-ls li {
    margin: 0; padding: 0; list-style: none;
}
.wpml-ls-native, .wpml-ls-display, .wpml-ls-bracket {
    display: none !important;
}
.wpml-ls {
    position: relative;
    display: inline-block;
    line-height: 1;
}
.wpml-ls-current-language > a.wpml-ls-item-toggle {
    width: 54px !important; height: 17px !important;
    min-width: 42px !important; min-height: 33px !important;
    border-radius: 18px !important; background: #000 !important;
    background-image: none !important; display: flex !important;
    align-items: center !important; justify-content: center !important;
    text-decoration: none !important; font-size: 0 !important;
    padding: 0 !important; box-sizing: border-box !important;
    overflow: hidden !important; position: relative !important;
}
.wpml-ls-legacy-dropdown-click .wpml-ls-item-toggle:after,
.wpml-ls-legacy-dropdown .wpml-ls-item-toggle:after,
.wpml-ls-current-language > a.wpml-ls-item-toggle:after {
    content: none !important; display: none !important;
    border: 0 !important; background: none !important; box-shadow: none !important;
}
.wpml-ls-current-language > a.wpml-ls-item-toggle svg,
.wpml-ls-current-language > a.wpml-ls-item-toggle i,
.wpml-ls-current-language > a.wpml-ls-item-toggle span {
    display: none !important;
}
.wpml-ls-item-it.wpml-ls-current-language > a.wpml-ls-item-toggle::before { content: "IT"; }
.wpml-ls-item-en.wpml-ls-current-language > a.wpml-ls-item-toggle::before { content: "EN"; }
.wpml-ls-item-de.wpml-ls-current-language > a.wpml-ls-item-toggle::before { content: "DE"; }
.wpml-ls-item-hr.wpml-ls-current-language > a.wpml-ls-item-toggle::before { content: "HR"; }
.wpml-ls-current-language > a.wpml-ls-item-toggle::before {
    display: block !important; color: #fff !important;
    font-size: 13px !important; font-weight: 600 !important;
    line-height: 1 !important; text-transform: uppercase !important;
}
.wpml-ls-legacy-dropdown-click a { border: 0px !important; }
.wpml-ls-sub-menu {
    position: absolute; top: calc(100% + 8px); left: 50%;
    transform: translateX(-50%); min-width: 64px; background: #000;
    border-radius: 14px; padding: 8px 0; border: none;
    box-shadow: 0 10px 24px rgba(0,0,0,0.18); z-index: 999;
}
.wpml-ls-sub-menu a {
    display: flex; align-items: center; justify-content: center;
    min-height: 36px; text-decoration: none; font-size: 0; padding: 0 12px;
}
.wpml-ls-sub-menu a span { display: none !important; }
.wpml-ls-sub-menu .wpml-ls-item-it > a::before { content: "IT"; }
.wpml-ls-sub-menu .wpml-ls-item-en > a::before { content: "EN"; }
.wpml-ls-sub-menu .wpml-ls-item-de > a::before { content: "DE"; }
.wpml-ls-sub-menu .wpml-ls-item-hr > a::before { content: "HR"; }
.wpml-ls-sub-menu a::before {
    color: #fff; font-size: 13px; font-weight: 600; text-transform: uppercase;
}
.wpml-ls-sub-menu a::after { content: none !important; display: none !important; }
.wpml-ls, .wpml-ls-item-toggle { width: auto !important; white-space: nowrap; }

/* ── Header e menu desktop ────────────────────────────────── */
.header-nav-sticky  {
    overflow: visible !important;
    z-index: 9999 !important;
}
.mobile-logo-alt { display: none; }
.elementor-nav-menu--main .elementor-nav-menu > li {
    padding-bottom: 16px;
    margin-bottom: -16px;
}

.elementor-nav-menu .menu-item:first-child > a,
.elementor-nav-menu .menu-item:first-child:hover > a {
    padding-left: 0;
}

.elementor-nav-menu a { color: #fff; }
.elementor-widget-image a img[src$=".svg"] { width: auto !important; }
.header-cta { width: fit-content !important; flex: 0 0 auto !important; }
.header-icon .elementor-icon-wrapper { display: flex; }

/* ── Mega menu pannelli ───────────────────────────────────── */
[class*="mega-panel-"] {
    position: absolute !important;
    top: 100% !important;
    left: 0 !important;
    width: 100% !important;
    z-index: 9999 !important;
    margin: 0 !important;
  
    opacity: 0;
    visibility: hidden;
    pointer-events: none;
    transform: translateY(-6px);
    transition: opacity 0.2s ease, visibility 0.2s ease, transform 0.2s ease;
}

[class*="mega-panel-"].is-open {
    opacity: 1 !important;
    visibility: visible !important;
    pointer-events: auto !important;
    transform: translateY(0) !important;
	
    position: fixed !important;
    left: 0 !important;
    right: 0 !important;
     top: var(--header-h, 60px)  !important;
    bottom: 0 !important;
    width: 100% !important;
    height: auto !important;
    overflow-y: auto;

}

/* ── Pannello prodotti ────────────────────────────────────── */
.mega-panel-prodotti { align-items: start; }
.mega-panel-prodotti .elementor-widget-html { width: 100%; }

.flex-box-header { display: flex; flex-direction: column; width: 100%; }

.prodotti-menu-colonna { display: flex; flex-direction: column; gap: 1rem; }

.prodotti-menu { display: flex; flex-wrap: wrap; gap: 6rem; flex: 1; }

.prodotti-menu__gruppo { display: flex; flex-direction: column; gap: 0.5rem; min-width: 160px; }

.prodotti-menu__parent {
    font-size: 18px; letter-spacing: 0.05em; color: #808080;
    text-decoration: none; padding-bottom: 0.35rem; margin-bottom: 0.25rem;
}

.prodotti-menu__children {
    list-style: none; margin: 0; padding: 0; display: flex; flex-direction: column;
}

.prodotti-menu__child { line-height: 50px; font-size: 18px; color: #fff; text-decoration: none; }

.prodotti-menu__speciali { margin-top: 3rem; padding-top: 1rem; }
.prodotti-menu__speciali .subheader { color: #fff; }
.prodotti-menu__speciali .intro-header { text-transform: uppercase; }
.prodotti-menu__speciali a { color: var(--e-global-color-primary); text-transform: uppercase; font-weight: 600; }

/* ── Pannello comunicazione / link con icone ──────────────── */
.menu-panel-links { display: flex; flex-direction: column; gap: 0.75rem; width: 100%; }

.mega-menu-link {
    display: flex; align-items: center; gap: 0.75rem;
    color: #ffffff; text-decoration: none; font-size: 0.875rem; line-height: 1.4;
}
.mega-menu-link:hover { color: #F59300; }
.mega-menu-link:hover svg path { fill: #F59300; }

/* ── Pannello applicazioni ────────────────────────────────── */
.mega-panel-applicazioni .e-con-inner,
.mega-panel-applicazioni .elementor-widget-container {
    padding: 0 !important; width: 100% !important;
}

.appl-menu {
    display: flex !important; width: 100% !important;
    min-height: 60vh; background: #1c1c1c;
    border-radius: 4px; position: relative; box-sizing: border-box;
}

.appl-menu__left {
    width: 42%; flex-shrink: 0; background: #000; 
}

.appl-menu__right {
    flex: 1; background: #282828; padding-left:28px;padding-right:28px min-width: 0;
}

.appl-menu__section-title{
	text-transform:uppercase;
    display: block; font-weight: 600; letter-spacing: 0.08em;
    color: var(--e-global-color-primary); margin-bottom: 18px;
    font-size: 18px; max-width: 50%; border-bottom: 1px solid; padding-bottom: 11px;
}
[class*="mega-panel-"] {padding-top:24px !important}
.appl-menu__parents { list-style: none !important; margin: 0 !important; padding: 0 !important; }

.appl-menu__parent {
    display: flex !important; align-items: center; gap: 14px;
    padding: 11px 24px; cursor: pointer;
    border-left: 3px solid transparent;
    transition: border-color 0.15s, background 0.15s;
}

.appl-menu__icon {
    flex-shrink: 0;
}
.appl-menu__parent:hover .appl-menu__icon,
.appl-menu__parent.is-active .appl-menu__icon {
filter: none;
}

.appl-menu__parent-label {
    font-size: 18px; font-weight: 600; letter-spacing: 0.04em;
    color: #777; text-transform: uppercase; transition: color 0.15s;
}
.appl-menu__parent:hover .appl-menu__parent-label,
.appl-menu__parent.is-active .appl-menu__parent-label {
    color: #e87722; text-decoration: underline; text-underline-offset: 3px;
}

.appl-menu__child-group { margin-bottom: 18px; }

.appl-menu__child-label {
    display: block; font-size: 18px; letter-spacing: 0.06em;
    color: #fff; margin-bottom: 6px; cursor: pointer;
}

.appl-menu__child-label::before {
    content: ''; display: inline-block; width: 7px; height: 11px; margin-right: 10px;
    background-image: url("data:image/svg+xml,%3Csvg width='7' height='11' viewBox='0 0 7 11' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M1 1L5.32472 5.32475L1 9.64947' stroke='%23989898' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'/%3E%3E%3C/svg%3E");
    background-repeat: no-repeat; background-size: contain; vertical-align: middle;
}
.appl-menu__child-group.is-open > .appl-menu__child-label::before {
    width: 12px; height: 2px; margin-right: 10px;
    background-image: url("data:image/svg+xml,%3Csvg width='12' height='2' viewBox='0 0 12 2' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M10.2004 1L1.00002 1' stroke='%23F59300' stroke-width='2' stroke-linecap='round'/%3E%3C/svg%3E");
}

.appl-menu__grandchild-label {
    display: flex; align-items: center; gap: 5px;
    font-size: 16px; color: #989898; padding: 3px 10px; cursor: pointer; transition: color 0.15s;
}
.appl-menu__grandchild-label::before {
    content: ''; display: inline-block; width: 7px; height: 11px;
    background-image: url("data:image/svg+xml,%3Csvg width='7' height='11' viewBox='0 0 7 11' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M1 1L5.32472 5.32475L1 9.64947' stroke='%23989898' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'/%3E%3E%3C/svg%3E");
    background-repeat: no-repeat; background-size: contain; vertical-align: middle;
}
.appl-menu__grandchild-label.is-active::before {
    width: 12px; height: 2px;
    background-image: url("data:image/svg+xml,%3Csvg width='12' height='2' viewBox='0 0 12 2' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M10.2004 1L1.00002 1' stroke='%23F59300' stroke-width='2' stroke-linecap='round'/%3E%3C/svg%3E");
}
.appl-menu__grandchild-label:hover,
.appl-menu__child-group.is-open .appl-menu__child-label,
.appl-menu__grandchild-label.is-active { color: var(--e-global-color-primary); }

.appl-menu__grandchildren {
    display: none !important;
    list-style: none !important; margin: 0 !important; padding: 0 0 0 10px !important;
}
.appl-menu__child-group.is-open .appl-menu__grandchildren { display: block !important; }

.appl-menu__panel { display: none !important; }
.appl-menu__panel.is-active { display: block !important; }

#appl-menu { display: flex !important; width: 100% !important; }
#appl-menu .appl-menu__left { width: 42% !important; flex-shrink: 0 !important; border-right: 1px solid #2e2e2e !important; }
#appl-menu .appl-menu__right { flex: 1 !important; padding: 24px 28px !important; }
#appl-menu [data-panel] {
    position: static !important; top: auto !important; left: auto !important;
    width: auto !important; opacity: 1 !important; visibility: visible !important;
    pointer-events: auto !important; transform: none !important;
    transition: none !important; z-index: auto !important; display: none !important;
}
#appl-menu [data-panel].is-active { display: block !important; }

.appl-menu__posts {
    list-style: none !important; margin: 10px 0 0 0 !important;
    line-height: 30px; padding: 0 0 0 12px !important;
}
.appl-menu__post-item a {
    display: block; font-size: 16px; color: #999;
    padding: 4px 20px; text-decoration: none; transition: color 0.15s;
}
.appl-menu__post-item a:hover { color: #fff; }
.appl-menu__post-item--empty { font-size: 12px; color: #666; padding: 2px 0; }
.appl-menu__posts--loading .appl-menu__post-item { color: #555; font-size: 12px; }

.appl-menu__close {
    position: absolute !important; top: 14px !important; right: 16px !important;
    background: none !important; border: none !important; color: #888 !important;
    font-size: 18px !important; line-height: 1 !important; cursor: pointer !important;
    border-radius: 0 !important; padding: 0 !important;
    width: auto !important; height: auto !important; z-index: 10;
}
.appl-menu__close:hover { color: #fff !important; background: none !important; }

/* ── Mobile menu ──────────────────────────────────────────── */
:root {
    --mm-bg: #ffffff; --mm-text: #1d1d1f;
    --mm-border: rgba(0,0,0,0.08); --mm-accent: #0071e3;
    --mm-header-h: 56px; --mm-font: -apple-system, BlinkMacSystemFont, 'Segoe UI', sans-serif;
    --mm-duration: 320ms; --mm-ease: cubic-bezier(0.4, 0, 0.2, 1);
}

body.mm-body-lock { overflow: hidden; }

#mobile-burger {
    display: none; flex-direction: column; justify-content: center;
    align-items: center; gap: 5px; width: 44px; height: 44px; padding: 8px;
    background: none; border: none; cursor: pointer; z-index: 9999;
    -webkit-tap-highlight-color: transparent;
}
.burger-line {
    display: block; width: 22px; height: 2px; background-color: #fff;
    border-radius: 2px;
    transition: transform var(--mm-duration) var(--mm-ease), opacity var(--mm-duration) var(--mm-ease);
}
#mobile-burger[aria-expanded="true"] .burger-line:nth-child(1) { transform: translateY(7px) rotate(45deg); }
#mobile-burger[aria-expanded="true"] .burger-line:nth-child(2) { opacity: 0; transform: scaleX(0); }
#mobile-burger[aria-expanded="true"] .burger-line:nth-child(3) { transform: translateY(-7px) rotate(-45deg); }

#mobile-menu-overlay {
    position: fixed; inset: 0; z-index: 9998; background: #000;
    display: flex; flex-direction: column; overflow: hidden;
    top: var(--wp-admin--admin-bar--height, 32px);
    opacity: 0; pointer-events: none; transform: translateY(-8px);
    transition: opacity var(--mm-duration) var(--mm-ease), transform var(--mm-duration) var(--mm-ease);
}
#mobile-menu-overlay.mm-overlay--open { opacity: 1; pointer-events: all; transform: translateY(0); }
#mobile-menu-overlay .mm-link svg {
    width: 18px;
    height: 18px;
    flex-shrink: 0;
}

#mobile-menu-overlay .mm-link {
    display: flex;
    align-items: center;
    gap: 12px;
}

.mm-header {
    display: flex; align-items: center; justify-content: space-between;
    height: var(--mm-header-h); padding: 0 16px;
    border-bottom: 1px solid var(--mm-border); flex-shrink: 0; gap: 12px;
}
.mm-header-logo img { height: 30px; width: auto; }
.mm-header-switcher { margin-left: auto; }
.mm-header .wpml-ls-current-language > a.wpml-ls-item-toggle{background:#fff !important}
.mm-header .wpml-ls-current-language > a.wpml-ls-item-toggle::before{color:#000 !important}
.mm-back, .mm-close {
    display: flex; align-items: center; gap: 4px; background: none; border: none;
    cursor: pointer; color: var(--mm-accent); font-family: var(--mm-font);
    font-size: 17px; padding: 8px 4px; -webkit-tap-highlight-color: transparent; transition: opacity 0.2s;
}
.mm-back:active, .mm-close:active { opacity: 0.5; }
.mm-back { background: none !important; transition: visibility var(--mm-duration), opacity var(--mm-duration); }
.mm-close { color: var(--mm-text); background: none !important; margin-left: auto; }
.mm-section-title {
	font-weight: 600; letter-spacing: 0.08em;
   margin-bottom: 10px;
    font-size: 18px;  border-bottom: 1px solid; padding-bottom: 5px;
	color:var(--e-global-color-primary); 
	text-transform:uppercase;
	max-width:fit-content !important}
.mm-panel {
	padding-left:6%;
    position: absolute; top: var(--mm-header-h); left: 0; right: 0; bottom: 0;
    overflow-y: auto; -webkit-overflow-scrolling: touch; background: #000;
    transform: translateX(0); transition: transform var(--mm-duration) var(--mm-ease); will-change: transform;
}
.mm-panel::-webkit-scrollbar { width: 3px; }
.mm-panel::-webkit-scrollbar-track { background: transparent; }
.mm-panel::-webkit-scrollbar-thumb { background: rgba(0,0,0,0.15); border-radius: 3px; }

.mm-list { list-style: none; margin: 0; padding: 8px 0; }
.mm-item { display: flex; align-items: center; border-bottom: 1px solid var(--mm-border); position: relative; }
.mm-item:last-child { border-bottom: none; }

.mm-link {
    flex: 1; display: block; padding: 10px 0px; font-family: var(--mm-font);
    font-size: 17px; font-weight: 400; color: #fff; text-decoration: none;
    background: none; border: none; text-align: left; cursor: pointer;
    -webkit-tap-highlight-color: transparent; transition: background 0.15s;
}
.mm-link:active { background: rgba(0,0,0,0.04); }
.mm-link--parent { font-weight: 400; }

.mm-chevron { display: flex; align-items: center; padding-right: 16px; color: rgba(0,0,0,0.3); pointer-events: none; flex-shrink: 0; }
.mm-chevron--btn {
    pointer-events: all; background: none !important; border: none; cursor: pointer;
    padding: 16px; display: flex; align-items: center; color: rgba(0,0,0,0.3);
    flex-shrink: 0; -webkit-tap-highlight-color: transparent;
}
.mm-chevron--btn:active { opacity: 0.5; }

.mm-footer { padding: 24px 20px; border-top: 1px solid var(--mm-border); display: flex; flex-direction: column; gap: 16px; }

#mobile-menu-footer {
    position: absolute !important; left: -9999px !important; top: -9999px !important;
    width: 1px !important; height: 1px !important; overflow: hidden !important; pointer-events: none !important;
}

@media (max-width: 1023px) {
    #mobile-burger { display: flex; }
    .loghi_esterno .elementor-widget-image {
        width: 68%; bottom: auto !important; top: 50% !important;
        left: 50% !important; transform: translate(-50%, -50%) !important;
    }
}

/* ── Varie ────────────────────────────────────────────────── */
.footer p { font-size: 14px !important; }

.editor_footer{max-width:fit-content;line-height:30px}

.editor_footer ul{list-style-type:none;padding-inline-start:0}
.editor_footer a {display:block;color:#6e6e6e;font-size:14px;}
.editor_footer h4 {display:block;color:#fff;font-size:14px !important;margin-block-end:5px}
.elementor-slideshow__title { display: none; }

.anno-filter {
    display: flex; flex-wrap: wrap; align-items: center; gap: 2px;
    background: #ECECEC; border-radius: 999px; padding: 5px 6px;
    width: fit-content; max-width: 100%;
}
.anno-filter__item {
    display: inline-flex; align-items: center; justify-content: center;
    padding: 5px 14px; border-radius: 999px; font-size: 14px; font-weight: 400;
    color: #000; text-decoration: none; white-space: nowrap; transition: background 0.15s ease;
}
.anno-filter__item--active,
.anno-filter__item--active:hover,
.anno-filter__item:hover { background: var(--e-global-color-primary); font-weight: 500; }

#breadcrumbs { color: #fff; }
.breadcrumb_last { color: #F59300; }

#map { width: 100%; height: clamp(260px, 50vh, 420px); }
#map .leaflet-tile-pane { filter: grayscale(100%); }
.leaflet-container { z-index: 0; }
.leaflet-top, .leaflet-bottom { z-index: 300; }
#sedi-presenza { scroll-margin-top: 80px; }

.map-controls { display: flex; align-items: center; gap: 1rem; flex-wrap: wrap; margin-top: .5rem; }
.map-tabs { display: flex; gap: 0; align-items: center; border-radius: 50px; padding: 4px; width: fit-content; }
.map-tab {
    appearance: none; background: #333 !important; color: #ccc; border: none;
    padding: .4rem 1.2rem; cursor: pointer; border-radius: 50px; transition: background 0.2s, color 0.2s;
}
.map-tab.is-active { background: #F59300 !important; color: #fff; z-index: 5; }
.map-tab:first-child { margin-right: -5%; }
.map-tab:hover:not(.is-active) { color: #fff; }
.map-select {
    padding: .5rem .75rem; color: #fff; border-radius: 22.495px;
    border: 1px solid #333; background: #333; cursor: pointer; appearance: auto;
}
.map-select:focus { outline: 2px solid #111; outline-offset: 2px; }
.is-hidden { display: none; }
[class*="mega-panel-"] svg {
   background: 
/* o il colore che vuoi */
    border-radius: 8px;  /* opzionale, per angoli arrotondati */
    
}
[class*="mega-panel-"] svg {
    background:rgba(245, 147, 0, 0.20);

    padding: 6px;
    width: 32px !important;
    height: 32px !important;
}

/*TAB INTERNE*/
.arancione{color: var(--e-global-color-primary); }
.light{color: #fff }
.e-n-tab-title[aria-selected="false"] .arancione,.e-n-tab-title[aria-selected="false"] .light {color:var(--e-global-color-b9fbdce) !important;}
.tab_categorie h3{font-size:40px !important;}
.tab_categorie .e-n-tab-title,.tab_categorie .e-n-tab-title:hover{background:transparent !important;padding-left:0px !important;padding-bottom:0px !important}
@media (max-width: 767px) { }