/*
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 ───────────────────────────────── */
:lang(de) button.e-filter-item[data-filter="__all"] {
  display:none !important
}
.cmplz-document .site-main{color:#fff;padding-top:2%;padding-bottom:2%;max-width:80%}
#popup-media-dinamico{display:none !important}
#cmplz-cookies-overview {color:#000}
#acustico,.woocommerce-product-gallery__trigger{display:none !important}
.wpml-ls, .wpml-ls ul, .wpml-ls li {
    margin: 0; padding: 0; list-style: none;
}
.applicazione .elementor-widget-theme-post-content a{color:#000 !important}
.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-legacy-dropdown-click .wpml-ls-sub-menu{border:0 !important;left:20%;}
.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: 99999 !important;
}
.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; }
/* Override CSS WPML per lo switcher clonato nel menu mobile */
#mobile-menu-overlay .mm-header-switcher .wpml-ls-sub-menu {
    visibility: visible !important;
    position: static !important;
    top: auto !important;
    right: auto !important;
    display: none;
}

#mobile-menu-overlay .mm-header-switcher .wpml-ls-sub-menu.is-open {
	display:block;
    visibility: visible !important;
    position: absolute !important;
    top: 100% !important;
    right: 0 !important;
}
/* ── Header e menu desktop ────────────────────────────────── */
.header-nav-sticky  {
    overflow: visible !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-cta:hover a{color:#fff !important}
.blocco_contenuto  a{color:#000 !important}
.blocco_contenuto img{width:100%}
.case_hi .gallery-item img, .sezione-body .gallery-item img{width:auto !important;margin-right:10px;border-radius:20px}
.case_hi .gallery ,.sezione-body .gallery {display:inline-flex;}

.blocco_indice a{color:#fff !important}
.woocommerce div.product div.images .woocommerce-product-gallery__trigger{z-index:93 !important}
.header-icon .elementor-icon-wrapper { display: flex; }

/* ── Mega menu pannelli ───────────────────────────────────── */
[class*="mega-panel-"] {
    position: fixed !important;
    top: var(--header-h, 60px) !important;
    left: 0 !important;
    right: 0 !important;
    width: 100% !important;
    z-index: 9999 !important;
    margin: 0 !important;
    opacity: 0;
    height: 0 !important;
    overflow: hidden !important;
    visibility: hidden;
    pointer-events: none;
    transform: translateY(-6px);
    transition: opacity 0.3s ease, visibility 0.3s ease, transform 0.3s ease;
}
[class*="mega-panel-"].is-open {
    opacity: 1 !important;
    visibility: visible !important;
    pointer-events: auto !important;
    transform: translateY(0) !important;
    height: auto !important;
    overflow-y: auto !important;
    max-height: calc(100vh - var(--header-h, 60px)) !important;
}
#mega-overlay {
    position: fixed;
    inset: 0;
    top: var(--header-h, 60px);
    background: rgba(0, 0, 0, 0.4);
    backdrop-filter: blur(4px);
    -webkit-backdrop-filter: blur(4px);
    z-index: 82;
    opacity: 0;
    pointer-events: none;
    transition: opacity 0.2s ease;
}
#mega-overlay.is-visible {
    opacity: 1;
    pointer-events: auto;
}
.mega-panel-notetecniche p, .mega-panel-azienda p { line-height: 30px; }

/* ── Pannello prodotti ────────────────────────────────────── */
.mega-panel-prodotti { align-items: start; }
.mega-panel-prodotti .elementor-widget-html { width: 100%; }
.panel-close {
    position: absolute;
    top: 10px;
    right: 6%;
    z-index: 999;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 36px;
    height: 36px;
    cursor: pointer;
    transition: opacity 0.2s;
    line-height: 1;
}
.mega-panel-applicazioni .panel-close{right:3% !important}
.panel-close:hover { opacity: 1; }
#close_btn_x {
    background: transparent !important;
    width: 53px !important;
    height: 54px !important;
    color: var(--e-global-color-primary) !important;
    display: block;
    flex-shrink: 0;
}
.flex-box-header { display: flex; flex-direction: column; width: 100%; }
.prodotti-menu-colonna { display: flex; flex-direction: column; gap: 0; }
.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: 16px; letter-spacing: 0.05em; color: #808080 !important;
    text-decoration: none; padding-bottom: 0; margin-bottom: 0;
}
 .prodotti-menu__parent:hover{
  color: var(--e-global-color-primary) !important;
}
.intro_categorie_sorelle h3{color: var(--e-global-color-primary);font-size:16px !important}
.intro_categorie_sorelle .ms-categoria-sorella{color:var(--e-global-color-86802eb);font-size:16px
}
.prodotti-menu__children {
    list-style: none; margin: 0; padding: 0; display: flex; flex-direction: column;
}
.prodotti-menu__child { line-height: 30px; font-size: 16px; color: #fff; text-decoration: none; }
.prodotti-menu__speciali { margin-top: 3rem; padding-top: 1rem; padding-bottom: 2%; }
.prodotti-menu__speciali .subheader { color: #fff; }
.prodotti-menu__speciali .intro-header { text-transform: uppercase; }
.prodotti-menu__speciali a { color: var(--e-global-color-primary) !important; text-transform: uppercase; font-weight: 600; }
.prodotti-menu__speciali a:hover{color:#fff !important;}
/* ── 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;
     background: #1c1c1c;
    border-radius: 4px; position: relative; box-sizing: border-box;
}
.appl-menu__left {
	padding-bottom:1%;
    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 , .intro-header{
    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;
}
 .intro-header{padding-bottom:05px;margin-bottom:05px}
.prodotti_speciali_menu br:first-of-type {display:none}
[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: 0px 24px; cursor: pointer;
    border-left: 3px solid transparent;
    transition: border-color 0.15s, background 0.15s;
}
.appl-menu__icon { flex-shrink: 0;max-width:12% !important }
.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 { background: var(--e-global-color-8eb2907); border-radius: 20px; }
.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__parent a {
    width: 100%;
    display: flex;
    flex-direction: row;
    align-items: center;
    column-gap: 26px;
}
.appl-menu__child-group { margin-bottom: 18px; }
.appl-menu__child-label {
    display: block; font-size: 16px; letter-spacing: 0.06em;
    color: #fff; margin-bottom:3px; cursor: pointer;
}
.appl-menu__child-label::after {
    float: right;
    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;
    transition: transform 0.3s ease;
}
.appl-menu__child-group.is-open > .appl-menu__child-label::after {
    transform: rotate(90deg);
}
.appl-menu__grandchild-label {
	line-height:22px;
    display: flex; align-items: center; gap: 5px; justify-content: space-between;
    font-size: 16px; color: #989898; padding-left: 10px; cursor: pointer; transition: color 0.15s;
}
.appl-menu__grandchild-label::after {
    float: right;
    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;
    transition: transform 0.3s ease;
}
.appl-menu__grandchild-label.is-active::after { transform: rotate(90deg); }
.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: block !important;
    max-height: 0;
    overflow: hidden;
    transition: max-height 0.7s ease-in-out;
    list-style: none !important; margin: 0 !important; padding: 0 0 0 10px !important;
}
.appl-menu__child-group.is-open .appl-menu__grandchildren { max-height: 500px; }
.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; padding-right: 2%; }
#appl-menu .appl-menu__right { flex: 1 !important;     padding: 24px 56px 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;
    line-height: 30px; padding: 0 0 0 12px !important;
    max-height: 0;
    overflow: hidden;
    transition: max-height 0.7s ease-in-out;
}
.appl-menu__child-group:not(.is-open) .appl-menu__grandchildren {
    transition: max-height 0.3s ease;
}
.appl-menu__posts.is-open { max-height: 600px; }
.appl-menu__post-item a, #aree-menu .appl-menu__grandchildren a {
    display: block; font-size: 16px; color: var(--e-global-color-86802eb) !important;
    padding: 4px 20px; text-decoration: none; transition: color 0.15s;
}
.appl-menu__post-item a:hover, .appl-menu__child-label:hover, #aree-menu .appl-menu__grandchildren a:hover { color: var(--e-global-color-primary) !important; }
.appl-menu__post-item--empty { font-size: 12px; color: #666; padding: 2px 0; }
.appl-menu__posts--loading .appl-menu__post-item { color: var(--e-global-color-86802eb); 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: 0;
    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;  }
.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;
}
.no-link a{color:var(--e-global-color-bfb7dfd) !important;cursor: context-menu;}


/* ── Varie ────────────────────────────────────────────────── */
/*.video-loop-card:hover{background-color: #F593001C; border:1px solid var(--e-global-color-primary); }*/
.download .e-filter-item.is-hidden {
    display: none;
}
.e-filter-item--child {
    PADDING-left: 12px;
}
.video-loop-card,.singolo_prodotto_card  {
	border-radius:20px !important;
    position: relative;
    overflow: hidden;
}

.video-loop-card::before, .singolo_prodotto_card::before  {
    content: '';
    position: absolute;
    inset: 0;
    background: #F593001C !important;
    border: 2px solid #F59300;
    border-radius: inherit;
    opacity: 0;
    transition: opacity 0.25s ease;
    pointer-events: none;
    z-index: 13;
}

.video-loop-card:hover::before, .singolo_prodotto_card:hover::before  {
    opacity: 1;
}

.video-loop-card > * , .singolo_prodotto_card>*{
    position: relative;
    z-index: 2;
}

.card_approfondimenti {
    position: relative;
}

.card_approfondimenti .box_titolo_approfondimenti_Card {
    position: absolute;
    left: auto;
    right: auto;
    bottom: 10px;
    z-index: 2;
    width: 100%;
}
.card_approfondimenti::before {
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background-color: #F59300; /* il tuo brand color, regola l'opacità qui sotto */
    opacity: 0;
    z-index: 1; /* sopra l'immagine, sotto il box titolo */
    transition: opacity 0.3s ease;
    pointer-events: none; /* l'overlay non deve intercettare i click */
}

.card_approfondimenti:hover::before {
    opacity: 0.4; /* regola l'intensità dell'overlay */
}
.box_icone_prodotto:hover {    background: #F593001C !important;
    border: 2px solid #F59300;}
/* ── Aree tematiche (stesso stile visivo di appl-menu) ────── */


.aree-menu__l1{padding-bottom:5px}
/* --- Livello 1 (stile identico a appl-menu__parent-label) --- */
.aree-menu__l1-list {
    list-style: none;
    margin: 0;
    padding: 0;
}
.aree-menu__l1-toggle {
    width: 100%;
    display: flex;
    align-items: center;
    justify-content: space-between;
    margin-bottom: 3px;
    letter-spacing: 0.04em;
    color: #fff;
   
    cursor: pointer;
    transition: color 0.15s;
}

.aree-menu__l1-toggle:hover,
.aree-menu__l1.is-open > .aree-menu__l1-toggle {
    color:var(--e-global-color-primary);

}

.aree-menu__arrow {
    display: inline-block;
    width: 7px;
    height: 11px;
    flex-shrink: 0;
    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%3C/svg%3E");
    background-repeat: no-repeat;
    background-size: contain;
    font-size: 0;
    transition: transform 0.3s ease;
}

.aree-menu__l1.is-open > .aree-menu__l1-toggle .aree-menu__arrow {
    transform: rotate(90deg);
}

/* --- Contenitore L2 (accordion animato, stessa transizione di appl-menu__grandchildren) --- */
.aree-menu__l2-list {
    list-style: none;
    margin: 0;
    padding: 0 0 0 10px;
    max-height: 0;
    overflow: hidden;
    transition: max-height 0.7s ease-in-out;
}

.aree-menu__l1.is-open > .aree-menu__l2-list {
    max-height: 3000px;
}

/* --- Livello 2 (stile identico a appl-menu__grandchild-label) --- */
.aree-menu__l2 {
    margin-bottom: 05px;
}

.aree-menu__l2-toggle {
    width: 100%;
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 5px;
    line-height: 22px;
    font-size: 16px;
    color: #989898;
    cursor: pointer;
    transition: color 0.15s;
}

.aree-menu__l2-toggle:hover,
.aree-menu__l2.is-open > .aree-menu__l2-toggle {
    color: var(--e-global-color-primary);
}

.aree-menu__arrow-sm {
    display: inline-block;
    width: 7px;
    height: 11px;
    flex-shrink: 0;

    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%3C/svg%3E");
    background-repeat: no-repeat;
    background-size: contain;
    font-size: 0;
    transition: transform 0.3s ease;
}

.aree-menu__l2.is-open > .aree-menu__l2-toggle .aree-menu__arrow-sm {
    transform: rotate(90deg);
}

/* --- Contenitore post (accordion animato, stessa transizione di appl-menu__posts) --- */
.aree-menu__posts-list {
    list-style: none;
    margin: 0;
    padding: 0 0 0 10px;
    max-height: 0;
    overflow: hidden;
    transition: max-height 0.7s ease-in-out;
}

.aree-menu__l2.is-open > .aree-menu__posts-list {
    max-height: 1500px;
}

/* --- Post (stile identico a appl-menu__post-item a) --- */
.aree-menu__post-item {
    display: block;
    font-size: 16px;
    color: var(--e-global-color-86802eb) !important;
    padding: 4px 20px;
    text-decoration: none;
    transition: color 0.15s;
}

.aree-menu__post-item:hover {
    color: var(--e-global-color-primary) !important;
}

.aree-menu__no-posts,
.aree-menu__no-children {
    font-size: 12px;
    color: #666;
    padding: 2px 0 2px 20px;
}
.product h1{font-size:22px !important;}
.woocommerce div.product div.images .woocommerce-product-gallery__wrapper .zoomImg{background-color: var(--e-global-color-6a3bfb5) !important;}
.evento-card,.nota_tecnica, .cont_box  {cursor:pointer}
.titolo_applicazione{font-size:30px}
.info_cat_prod .elementor-post-info__terms-list-item {font-size:20px !important;}
.box_image_app{ border-radius :20px !important;min-height:500px !important;}
.box_image_app img{border:1px solid var(--e-global-color-86802eb);}
.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: var(--e-global-color-86802eb) !important; font-size: 14px; }
.editor_footer a:hover{ color:  var(--e-global-color-primary) !important; }
.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: var(--e-global-color-6a3bfb5); 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; }
.speciale-prodotto #breadcrumbs { color: var(--e-global-color-472dce8);font-weight:800}
.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: 20px !important;
    border: 1px solid #333; background: #333; cursor: pointer; appearance: auto;
}
.map-select:focus { outline: 2px solid #111; outline-offset: 2px; }
.box_azienda h2 { font-size: 32px; text-transform: uppercase; }
.box_azienda .elementor-icon svg path { fill: var(--e-global-color-primary) !important; }
.box_azienda .elementor-icon { background: transparent; border: 1px solid var(--e-global-color-primary) !important; }
.zcwf_col_lab {color:#fff}
.box_azienda .zcwf_privacy_txt { color: #fff !important; }
.box_azienda .ediltec-field input, .box_azienda .ediltec-field textarea { background-color: var(--e-global-color-472dce8) !important; }
.box_gruppo h2{font-weight:800}
.box_gruppo h3{margin-block-end:5px}
.is-hidden { display: none; }
[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); }
.dark { color: #000; }
.light { color: #fff; }
.intro_up { color: var(--e-global-color-primary); text-transform: uppercase; }
.hero_text .arancione, .hero_text .light { font-size: 40px; font-weight: 700; }
.e-n-tab-title[aria-selected="false"] .arancione,
.e-n-tab-title[aria-selected="false"] .light { color: var(--e-global-color-b9fbdce) !important; transition: color 0.2s ease; }
.e-n-tab-title[aria-selected="false"]:hover .light { color: rgba(255, 255, 255, 0.55) !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; }
html[lang="de-DE"] .tab_categorie  .elementor-grid-4 .elementor-grid{    grid-template-columns: repeat(2, 1fr) !important;}
/* ── Filter bar ───────────────────────────────────────────── */
.my-filter-reset {
    background-color: transparent !important;
    font-size: 18px;
    font-weight: 700;
    width: 100%;
    padding: 4% 1%;
    text-align: left;
    border-bottom: 1px solid #7b7b7b !important;
    border-radius: 0 !important;
}
.my-filter-option { color: #B4B4B4; padding-left: 3%; line-height: 30px; }
.my-filter-option:hover, .my-filter-trigger-label:hover { cursor: pointer; color: #fff; }
.my-filter-trigger { display: flex; align-items: center; justify-content: space-between; }
.my-filter-list { margin: 1% 0; }
.my-filter-trigger-arrow { display: flex; align-items: center; flex-shrink: 0; transition: transform 0.2s ease; }
.my-filter-accordion.is-open .my-filter-trigger-arrow { transform: rotate(180deg); }
.my-filter-accordion { padding: 4% 1%; border-bottom: 1px solid #7b7b7b; }
.my-filter-trigger-label { font-size: 16px; color: #fff; font-weight: 500; }
.badge-taxonomy {
    display: inline-block;
    padding: 2% 5%;
    font-size: 14px;
    line-height: 1;
    color: #ffffff;
    background-color: var(--e-global-color-primary);
    border-radius: 20px;
    text-transform: uppercase;
    letter-spacing: 0.5px;
}
.home .bread_row, .single-product .bread_row { display: none; }
.home .blog_card {background:var(--e-global-color-8eb2907);border-radius:20px;padding:3% 4%}
.img_border {
    display: inline-block;
    border-radius: 20px;
    background:
        linear-gradient(#000, #000) padding-box,
        linear-gradient(
            45deg,
            #000000 0%,
            #090500 25%,
            #f19000 45%,
            #f59300 50%,
            #f19000 55%,
            #090500 75%,
            #000000 100%
        ) border-box;
    border: 2px solid transparent;
	 animation: img-push 2s ease-in-out infinite;
}
.img_border img { width: 100%; }
@keyframes img-push {
  0%, 100% {
    box-shadow: 
      0px 0px 21px 10px rgba(151, 91, 0, 0.95),
      inset 0px 0px 0px rgba(151, 91, 0, 0);
    filter: brightness(100%);
  }
  50% {
    box-shadow: 
      0px 0px 0px 0px rgba(151, 91, 0, 0),
      inset 6px 6px 18px rgba(151, 91, 0, 0.9);
    filter: brightness(90%);
  }
}
.stat-card {
    background: var(--e-global-color-8eb2907);
    color: #fff;
    border-radius: 20px !important;
    padding: 3% !important;
}
.stat-card h4 { font-weight: 700; }
.stat-card .elementor-widget-image {
    max-width: fit-content !important;
    border-radius: 10px;
    background: rgba(245, 147, 0, 0.15);
    padding: 12px;
}
.box_image_stat { max-width: 32% !important; }
.box_image_stat .elementor-image-box-title { color: var(--e-global-color-bfb7dfd); }
.box_image_stat .elementor-image-box-description { color: var(--e-global-color-86802eb); }
.box_icone_prodotto {
    border-radius: 15px !important;
    padding: 3% !important;
    border: 0.5px solid #D6D6D6;
    background: var(--e-global-color-6a3bfb5);
    display: flex;
    justify-content: center !important;
}
.box_icone_prodotto  h6{color:#000}
.applicazioni-grid {
    display: grid;
    grid-template-columns: repeat(var(--cols), 1fr);
    gap: 24px;
    margin: 32px 0;
}
.applicazione-card {
    background: var(--e-global-color-6a3bfb5);
    border-radius: 12px;
    overflow: hidden;
    display: flex;
    flex-direction: column;
}
.applicazione-card__img { width: 100%; height: 100%; object-fit: contain; }
.applicazione-card__body {
    text-align: right;
    padding: 16px;
    display: flex;
    flex-direction: column;
    align-items: flex-end;
    flex: 1;
}
.applicazione-card__title { color: var(--e-global-color-primary); font-size: 16px; font-weight: 600; margin: 0; }
.applicazione-card__btn { display: inline-block; text-align: center; margin-top: auto; }

/* ── Carosello prodotti ───────────────────────────────────── */
.carosello_prodotti .elementor-swiper-button-prev { display: none !important; }
.carosello_dark .e-parent { border: 1px solid #2D2D2D; background: var(--e-global-color-472dce8) !important; }
.carosello_dark h3 { color: var(--e-global-color-bfb7dfd) !important; }
.carosello_dark .elementor-icon { background-color: #434343 !important; }

/* ── Row info app ─────────────────────────────────────────── */
#row_app .elementor-image-box-wrapper{max-width:80%}
.row_info_app .elementor-image-box-wrapper {
    display: grid;
    grid-template-columns: auto 1fr;
    grid-template-rows: auto auto;
  
    align-items: center;
    gap: 10px 12px;
	height:100%;
    padding: 6% 4%;
}
.sp .is-visible{  background: var(--e-global-color-6a3bfb5);
    border-radius: 20px;}
.row_info_app .elementor-image-box-img {
    grid-column: 1;
    grid-row: 1;
    width: 90% !important;
    background-color: var(--e-global-color-bfb7dfd);
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 13px 15px;
    margin: 0 !important;
    box-sizing: border-box;
}
.row_info_app .elementor-image-box-content { display: contents; }
.row_info_app .elementor-image-box-title { grid-column: 2; grid-row: 1; margin: 0; text-align: left; text-transform: uppercase; font-weight: 800; }
.row_info_app .elementor-image-box-description { grid-column: 1 / -1; grid-row: 2; margin-top: 8px; display: flex; text-align: left;   flex-direction: column;    min-height: 120px; }
.row_info_app .elementor-image-box-description .apri-popup-dinamico { display: block; text-align: right !important;margin-top:auto; }

.sp .cont_box{max-width:33%;width:100%}
#popup-media-dinamico img {
    width: 90% !important;
    background-color: var(--e-global-color-bfb7dfd);
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 13px 15px;
    box-sizing: border-box;
}
#popup-titolo-dinamico h3 { text-transform: uppercase; font-weight: 800; }
#social_icon a { display: flex !important; }

/* ── FAQ card ─────────────────────────────────────────────── */
.faq_card .elementor-post-info__terms-list-item::after { content: "" !important; }
.faq_card .elementor-post-info__terms-list-item { margin-right: 8px; }
.faq_card .elementor-post-info__terms-list-item:last-child { margin-right: 0; }
.faq_card .elementor-post-info__terms-list-item, .single-tag-link_blog {
    background: var(--e-global-color-primary);
    color: var(--e-global-color-bfb7dfd) !important;
    line-height: 0;
    padding: 2% 5%;
	font-size:12px;
	text-transform:uppercase;
    border-radius: 16px;

	margin-bottom:3px;
}
.single-tag-esp { background: var(--e-global-color-primary);
    color: var(--e-global-color-bfb7dfd) !important;
	display:inline-block;
    line-height: 0;
		margin-bottom:10px;
    padding: 2% 8%;
	font-size:15px;
	text-transform:uppercase;
    border-radius: 16px;}
.single-tag-link_blog {padding: 1% 3% !important;}
.elementor-post-info__terms-list-item { display: inline; }
.faq_card .elementor-post-info__terms-list { white-space: nowrap; }

/* ── Mobile slider — dots ─────────────────────────────────── */

/* ── Scroll animations ────────────────────────────────────── */
.ms-js .ms-animate {
    opacity: 0;
    transform: translateY(32px);
    transition: opacity 0.6s ease, transform 0.6s ease;
}
.ms-js .ms-animate.is-visible { opacity: 1; transform: none; }
.ms-js .ms-animate-children > * {
    opacity: 0;
    transform: translateY(32px);
    transition: opacity 0.6s ease, transform 0.6s ease;
}
.ms-js .ms-animate-children > *.is-visible { opacity: 1; transform: none; }
.elementor-editor-active .ms-animate,
.elementor-editor-active .ms-animate-children > *,
.elementor-editor-preview .ms-animate,
.elementor-editor-preview .ms-animate-children > * {
    opacity: 1 !important;
    transform: none !important;
    transition: none !important;
}
.ms-js .ms-animate-children > .elementor-widget-container {
    opacity: 1 !important;
    transform: none !important;
    transition: none !important;
}
.ms-js .ms-animate-children .elementor-loop-container > .e-loop-item {
    opacity: 0;
    transform: translateY(32px);
    transition: opacity 0.6s ease, transform 0.6s ease;
}
.ms-js .ms-animate-children .elementor-loop-container > .e-loop-item.is-visible {
    opacity: 1 !important;
    transform: none !important;
}

/* ── Hover effetti loop ───────────────────────────────────── */
.elementor-loop-container .e-loop-item > .e-con { overflow: hidden !important; }
.effetto_immagine .e-loop-item .elementor-widget-image img { transition: transform 0.7s ease !important; display: block; }
.effetto_immagine .e-loop-item:hover .elementor-widget-image img { transform: scale(1.08) !important; }
.elementor-loop-container .e-loop-item .elementor-icon { transition: transform 0.3s ease !important; }
.elementor-loop-container .e-loop-item:hover .elementor-icon { transform: scale(1.15) !important; }
.loghi_esterno > .e-con.e-child { overflow: hidden !important; }
.loghi_esterno > .e-con.e-child .elementor-widget-image img { transition: transform 0.7s ease !important; display: block; }
.loghi_esterno > .e-con.e-child:hover .elementor-widget-image img { transform: scale(1.05) !important; }
.loghi_esterno > .e-con.e-child .elementor-icon { transition: transform 0.3s ease !important; }
.loghi_esterno > .e-con.e-child:hover .elementor-icon { transform: scale(1.15) !important; }
.elementor-loop-container .e-loop-item > .e-con,
.loghi_esterno > .e-con.e-child { transition: transform 0.3s ease, box-shadow 0.3s ease; }
.elementor-loop-container .e-loop-item:hover > .e-con,
.loghi_esterno > .e-con.e-child:hover { transform: translateY(-6px) !important; }
svg.e-fas-plus:hover{cursor:pointer}
.contenitore_bianco {
    display: flex;
    flex-direction: column;
    height: 100%; /* occupa tutta l'altezza della card */
}

.evento-card .description_content{min-height:100px;display:block;}
.home 
.evento-card .description_content{min-height:100px;display:block;}
.app_up:hover {transform: translateY(-4px) !important; }
/* ── Underline animato menu desktop ──────────────────────── */
.elementor-nav-menu--main .elementor-nav-menu > li > a { position: relative; display: inline-block; }
.elementor-nav-menu--main .elementor-nav-menu > li > a::after {
    content: '';
    position: absolute;
    bottom: -2px;
    left: 0px;
    width: 100%;
    height: 2px;
    background-color: var(--e-global-color-primary);
    transform: scaleX(0);
    transform-origin: left;
    transition: transform 0.25s ease;
}
.elementor-nav-menu--main .elementor-nav-menu > li > a:hover::after,
.elementor-nav-menu--main .elementor-nav-menu > li.current-menu-item > a::after,
.elementor-nav-menu--main .elementor-nav-menu > li.current-menu-ancestor > a::after { transform: scaleX(1); }

/* ── App tree ─────────────────────────────────────────────── */
.app-tree { background: var(--e-global-color-8eb2907); border-radius: 20px; }
.app-tree__l2-header {
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding: 17px 20px;
    color: #fff;
    cursor: pointer;
    font-weight: 600;
    transition: background .2s;
}
.app-tree__l2:first-child .app-tree__l2-header { border-top-left-radius: 20px; border-top-right-radius: 20px; }
.app-tree__l2:last-child .app-tree__l2-header { border-bottom-left-radius: 20px; border-bottom-right-radius: 20px; }
.app-tree__l2-header:hover { background: var(--e-global-color-primary); }
.app-tree__arrow { transition: transform .2s; font-size: 20px; line-height: 1; }
.app-tree__l2:has(.app-tree__l3-header.active) .app-tree__l2-header { background: none; }
.app-tree__l2-header.active { background: var(--e-global-color-primary); }
.app-tree__l2:last-child .app-tree__l2-header.active,
.app-tree__l3-wrap .app-tree__l3:last-child .app-tree__l3-header.has-detail.active { border-bottom-left-radius: 0px; border-bottom-right-radius: 0px; }
.app-tree__l3-wrap .app-tree__l3:last-child .app-tree__l3-header.has-detail,
.app-tree__l3:last-child .app-tree__l3-panel.open .app-tree__app-item:last-child { border-bottom-left-radius: 20px; border-bottom-right-radius: 20px; }
.app-tree__l2-header.active .app-tree__arrow { transform: rotate(90deg); }
.app-tree__l3-wrap { display: none; overflow: hidden; }
.app-tree__l3-wrap.open { display: block; }
.app-tree__l3 { border-bottom: 1px solid #333; }
.app-tree__l3:last-child { border-bottom: none; }
.app-tree__l3-header {
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding: 12px 28px;
    color: #fff;
    font-size: 14px;
    transition: background .15s;
}
.app-tree__l3-header.has-detail { cursor: pointer; }
.app-tree__l3-header.active, .app-tree__l3-header:hover { color: #fff; background: var(--e-global-color-primary); }
.app-tree__arrow-sm { font-size: 16px; transition: transform .2s; flex-shrink: 0; margin-left: 12px; }
.app-tree__l3-header.active .app-tree__arrow-sm { transform: rotate(90deg); }
.app-tree__l3-panel { display: none; background: #1e1e1e; border-top: 1px solid #333; }
.app-tree__l3-panel.open { display: block; }
.app-tree__app-item {
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding: 0.5% 28px 0.5% 44px;
    border-bottom: 1px solid #2a2a2a;
    gap: 16px;
}
.app-tree__app-item:last-child { border-bottom: none; }
.app-tree__app-title { color: var(--e-global-color-86802eb) !important; font-size: 16px; text-decoration: none; flex: 1; }
.app-tree__app-title:hover { color: #f08000; }
.app-tree__prodotti { font-size: 16px; color: #aaa; text-align: right; flex-shrink: 0; }
.app-tree__prodotti em { color: #666; font-style: normal; margin-right: 4px; }
.app-tree__prodotto-link { color: #fff; text-decoration: none; }
.separatore { max-width: 98%; margin: auto !important; border: none; border-top: 1px solid #787878; color: #787878; }
.app-tree__l2:last-child hr.separatore { display: none; }
.app-tree__prodotto-link:hover { text-decoration: underline; }
.app-tree__app-item a:hover { color: var(--e-global-color-primary) !important; }
.custom_dots .swiper{padding-top:2% !important} 
.custom_dots {padding-top:0% !important}
#carosello_prodotto_appl .swiper-wrapper:has(> .swiper-slide:only-of-type) .swiper-slide {
    width: 33.333% !important; /* Mantiene la proporzione di slides_to_show = 3 */
    max-width: 25% !important;
  
}
#contenitore_schedaprodo .swiper-slide{margin:auto}
/* ── Box radius circle ────────────────────────────────────── */
.box_radius_circle {
    margin: auto;
    background: var(--e-global-color-primary);
    border-radius: 50%;
    padding: 1%;
    max-width: fit-content;
    display: inline-block;
}
.blocco_box_radius_circle .elementor-image-box-img {
    width: 80px;
    height: 80px;
    display: flex !important;
    align-items: center;
    justify-content: center;
    background-color: var(--e-global-color-primary);
    border-radius: 50%;
    margin: 0 auto 15px !important;
}
.blocco_box_radius_circle .elementor-image-box-img img { width: 20px; height: auto; }
.custom_dots .swiper-pagination{display:none;height:0}
/* ── FAQ search ───────────────────────────────────────────── */
#faq-search { border-radius: 20px; border: none; }
#faq-search::-webkit-search-cancel-button { cursor: pointer; width: 18px; height: 18px; margin-right: 8px; opacity: 0.9; transition: opacity 0.2s; }
#faq-search::-webkit-search-cancel-button:hover { opacity: 1; }
#faq-search::-moz-search-cancel-button { appearance: none; cursor: pointer; opacity: 0.6; transition: opacity 0.2s; border: none; }
#faq-search::-moz-search-cancel-button:hover { opacity: 1; }

/* ── Popup nota tecnica / evento ──────────────────────────── */
.nota_tecnica-overlay, .evento-overlay { display: none; position: fixed; inset: 0; background: rgba(0,0,0,0.5); z-index: 999; }
.evento-popup__image { border-radius: 20px !important; }
.blocco_interno { display: flex; column-gap: 15px; width: 100%; }
.nota_tecnica-popup, .evento-popup {
    display: none;
    position: fixed;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    background: var(--e-global-color-8eb2907);
    border-radius: 20px;
    padding: 40px;
    z-index: 98000;
    width: 1400px;
    max-width: 90vw;
    max-height: 85vh;
    overflow-y: hidden;
}
.nota_tecnica-popup__content, .evento-popup__content {
    overflow-y: auto;
    flex: 1;
    padding-right: 12px;
    scrollbar-width: thin;
    scrollbar-color: var(--e-global-color-primary) #f0f0f000;
}
.nota_tecnica-popup__content::-webkit-scrollbar, .evento-popup__content::-webkit-scrollbar { width: 3px; }
.nota_tecnica-popup__content::-webkit-scrollbar-button, .evento-popup__content::-webkit-scrollbar-button { display: none !important; width: 0 !important; height: 0 !important; }
.nota_tecnica-popup__content::-webkit-scrollbar-track, .evento-popup__content::-webkit-scrollbar-track { background: #f0f0f0; border-radius: 10px; }
.nota_tecnica-popup__content::-webkit-scrollbar-thumb, .evento-popup__content::-webkit-scrollbar-thumb { background: #888; border-radius: 10px; border: 2px solid #f0f0f0; }
.nota_tecnica-popup__content::-webkit-scrollbar-thumb:hover, .evento-popup__content::-webkit-scrollbar-thumb:hover { background: #555; }
.nota_tecnica-overlay.is-open, .evento-overlay.is-open { display: block; }
.nota_tecnica-popup.is-open, .evento-popup.is-open { display: flex; flex-direction: column; color: #fff; }
.nota_tecnica-popup__close, .evento-popup__close {
    position: absolute;
    top: 16px;
    right: 16px;
    width: 75px;
    height: 75px;
    border: none;
    font-size: 20px;
    cursor: pointer;
    color: #666;
    line-height: 1;
    padding: 0.5em !important;
    transition: color 0.2s;
}
#elementor-popup-modal-8277 .dialog-widget-content{border-radius:20px !important}
#elementor-popup-modal-8277 .dialog-lightbox-close-button svg{fill:#fff !important}
#elementor-popup-modal-8277 .dialog-lightbox-close-button{
	background :var(--e-global-color-primary);
	color:#fff;
    padding: 0.5em !important;
	font-size:20px;
	border-radius:20px;
	top:-10px;
	right:-10px;
}
.nota_tecnica-popup__close span, .evento-popup__close span { font-size: 45px; }
.type-evento h3 { font-size: 18px; color: var(--e-global-color-472dce8); font-weight: 700; text-transform: uppercase; }

.evento-card  .arancione {color:var(--e-global-color-primary)  !important; font-size:10px;}
.evento-card .primo_blocco span{color:var(--e-global-color-86802eb);font-size: 13px;}
.evento-card strong{font-weight:800;color:#fff }
.evento-card  .contenitore_bianco{background:#fff;border-radius:20px;padding:4% 3% 3% 3%}
.contenitore_bianco span {color:var(--e-global-color-86802eb)}
.nota_tecnica-popup__title, .evento-popup__title { font-size: 18px; font-weight: 600; margin: 0 0 20px 0; padding-right: 32px; flex-shrink: 0; }
.nota_tecnica-loading, .evento-popup-loading { text-align: center; padding: 40px; }
.term-loop-thumb-box .elementor-shortcode { max-width: fit-content; padding: 5% 7%; background: #555; border-radius: 50%; }

/* ── Download / filtri ────────────────────────────────────── */
.no-select-filter.download .e-filter-item,
.no-select-filter.download .e-filter-item:hover { width: 100%; padding: 6%; color: #fff; }
.no-select-filter.download .e-filter-item[aria-pressed="true"],
.no-select-filter.download .e-filter-item:hover { background: var(--e-global-color-primary); color: #fff !important; }
#materiali_filtri {
	padding-left:20px;
    visibility: hidden;
    opacity: 0;
    max-height: 0;
    overflow: hidden;
	margin-top:-20px;
	font-size:15px;
    transition: opacity 0.3s ease, max-height 0.3s ease, visibility 0s linear 0.3s;
}
#materiali_filtri.no-select-filter.download .e-filter-item[aria-pressed="true"],
#materiali_filtri.no-select-filter.download .e-filter-item:hover { color: var(--e-global-color-primary) !important; background: transparent !important; }

#materiali_filtri.is-visible {
    visibility: visible;
    opacity: 1;
    max-height: 200px;
    transition: opacity 0.3s ease, max-height 0.3s ease, visibility 0s linear 0s;
}
/* ── Formazione ───────────────────────────────────────────── */
.formazione_pag .arancione { text-transform: uppercase; }
.formazione_pag .light { font-weight: 800; }
.formazione_pag .e-con:hover svg { transform: rotate(-45deg) !important; transition: transform 0.2s ease-in-out !important; cursor: pointer; }
.formazione_pag .e-con:hover svg path { fill: #000 !important; }
.formazione_pag .e-con:hover .elementor-icon { background: var(--e-global-color-primary) !important; }

/* ── Card approfondimenti ─────────────────────────────────── */
.card_approfondimenti .elementor-widget-image img { border-radius: 20px; }
.box_titolo_approfondimenti_Card { border-radius: 20px !important; max-width: 98%; background: #fff; margin: 0 auto; }
.card_approfondimenti .elementor-icon { background-color: var(--e-global-color-primary) !important; color: #fff !important; border: 0 !important; padding: 0.3em !important; font-size: 20px !important; }
p { margin-block-end: 0; }
.card_approfondimenti .intro_up { font-size: 10px; padding-bottom: 2px; }
.card_approfondimenti .elementor-heading-title { font-size: 18px; font-weight: 700; line-height: 1.2;color: var(--e-global-color-472dce8);}
.card_approfondimenti .contenuto_app{color:var(--e-global-color-86802eb) !important}
.white_card .card_approfondimenti .titolo_approfondimento{color:#fff}
.white_card  .box_titolo_approfondimenti_Card {background:#000;}
.white_card .contenuto_app{color:var(--e-global-color-86802eb) !important}
.box-title-archivio h3 { line-height: 1.2; }
.box-title-archivio .box-icon-arancione .elementor-icon { background: var(--e-global-color-primary) !important; color: #fff !important; border: 0 !important; font-size: 35px; }
.faq-filter-all-btn { width: 100%; border-radius: 0px; }

/* ── Griglia certificazioni ───────────────────────────────── */
.speciale_filtri.elementor-grid-4 {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    gap: 20px;
}
.speciale_filtri.elementor-grid-4 .type-download { height: 100% !important; display: flex !important; flex-direction: column !important; }
.speciale_filtri.elementor-grid-4 .elementor-grid-item { display: flex !important; flex-direction: column !important; --grid-item-height: auto !important; }
.speciale_filtri.elementor-grid-4 .type-download .e-parent { height: 100% !important; }

/* ── Search custom ────────────────────────────────────────── */
.custom-ajax-search-wrapper { width: 100%; margin-bottom: 10px; padding: 0 3%; }
#input-ricerca-custom {
    width: 100%;
    padding: 12px 20px 12px 45px;
    font-size: 16px;
    border: 0;
    border-radius: 20px;
    outline: none;
    transition: border-color 0.3s ease, background-color 0.3s ease;
    background-repeat: no-repeat;
    background-position: 15px center;
    background-size: 16px 16px;
    background-color: var(--e-global-color-472dce8);
    color: #ffffff;
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' viewBox='0 0 24 24' fill='none' stroke='%23fff' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Ccircle cx='11' cy='11' r='8'%3E%3C/circle%3E%3Cline x1='21' y1='21' x2='16.65' y2='16.65'%3E%3C/line%3E%3C/svg%3E");
}

/* ── Filtri avanzati ──────────────────────────────────────── */
.btn_filtri { width: 100%; text-align: left; border-radius: 0px !important; padding: 3% 0% 3% 6%; font-weight: 800; font-size: 18px; }
.filtri_adv .map-select option:hover { background: #fff !important; }
.filtri_adv .map-select { background-color: var(--e-global-color-b9fbdce) !important; border-radius: 0 !important; border: 0 !important; }
.faq-filter-reset-btn { display: none !important; }

/* ── Blog loop ────────────────────────────────────────────── */
.blog_loop .elementor-loop-container.elementor-grid {
    display: grid !important;
    grid-template-columns: repeat(4, 1fr) !important;
    gap: var(--grid-column-gap, 30px) !important;
    justify-content: stretch !important;
    align-content: stretch !important;
    grid-auto-flow: dense !important;
}
.blog_loop .elementor-loop-container.elementor-grid .e-loop-item {
    display: flex !important;
    width: 100% !important;
    max-width: 100% !important;
    height: 100% !important;
    margin: 0 !important;
    grid-column: span 1 !important;
    background: var(--e-global-color-8eb2907);
    border-radius: 20px !important;
    padding: 4% !important;
}
.blog_loop .elementor-loop-container.elementor-grid .e-loop-item .blog_card {
    display: flex !important;
    flex-direction: column !important;
    width: 100% !important;
    max-width: 100% !important;
    height: 100% !important;
    flex-grow: 1 !important;
    flex-basis: 100% !important;
}
.blog_loop .elementor-loop-container.elementor-grid .e-loop-item:nth-child(6n+5),
.blog_loop .elementor-loop-container.elementor-grid .e-loop-item:nth-child(6n+6) { grid-column: span 2 !important; }
.blog_card h3 { color: #fff; font-weight: 700; font-size: 15px; }
.blog_card span { color: var(--e-global-color-86802eb); }

/* ── Spaziature container ─────────────────────────────────── */
.titolo_pagina { padding-left: 5% !important; padding-right: 5% !important; padding-top: 4% !important; padding-bottom: 2% !important; 
}
.titolo_pagina::before{ opacity:0.7 !important}
.container-padding-custom, .custom-container-padding { padding-left: 5% !important; padding-top: 3% !important; padding-bottom: 3% !important; padding-right: 5% !important; }
.box_azienda { padding-top: 4% !important; padding-bottom: 4% !important; }
footer .e-atomic-element { padding-left: 2.5% !important; padding-right: 2.5% !important; }
.footer_first { padding-top: 2% !important; padding-bottom: 1.5% !important; }
.footer_middle { padding-top: 0.5% !important; padding-bottom: 0% !important; }
.footer_last { padding-top: 0.5% !important; padding-bottom: 0.5% !important; }
.blocco_newsletter {background: var(--e-global-color-8eb2907);padding:2%;border-radius:20px;}
.blocco_newsletter h3 {color:#fff}
.blocco_newsletter input[type=text]{background:var(--e-global-color-6a3bfb5);border-radius:30px; margin-top:5px}
.blocco_newsletter .zcwf_privacy_txt, .blocco_newsletter .zcwf_privacy_txt a{color:var(--e-global-color-86802eb) !important}
.blocco_newsletter  [type=reset]{width: auto !important;
    max-width: none !important;
    min-width: 150px;
    /* height: 58px; */
    padding: 2%;
    border: 0 !important;
    border-radius: 999px !important;
    background: var(--e-global-color-86802eb) !important;
    color: #000 !important;
    font-size: 17px !important;
    font-weight: 600 !important;
    letter-spacing: 0 !important;
    text-transform: none !important;
    cursor: pointer !important;
    box-shadow: none !important;
    transition: background .2s ease, transform .2s ease;}
/* ── Correlati ────────────────────────────────────────────── */
#correlati .type-focus_on {
    display: flex !important;
    width: 100% !important;
    max-width: 100% !important;
    height: 100% !important;
    margin: 0 !important;
    grid-column: span 1 !important;
    background: var(--e-global-color-8eb2907);
    border-radius: 20px !important;
    padding: 4% !important;
}
.box_azienda .ms-animate-children { margin-top: 2%; }
.ms-sottocategorie-grid {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    gap: 20px;
    align-items: stretch;
}
.ms-term-thumbnail{border-radius:20px !important}

/* ogni item renderizzato da get_builder_content_for_display */
.ms-sottocategorie-grid > * {
    height: 100%;
}

/* il container principale della card dentro il template Elementor */
.ms-sottocategorie-grid .e-con.e-parent {
    height: 100%;
}
/* ── Indice sezioni / contenuto ───────────────────────────── */
.indice-sezioni-shortcode ul { list-style-type: none; padding-inline-start: 0; }
.indice-sezioni-shortcode ul li { border-bottom: 1px solid var(--e-global-color-86802eb); padding: 3% 0; }
.blocco_contenuto h4 { font-size: 18px; text-transform: uppercase; font-weight: 700; }
.blocco_contenuto h3 { font-size: 32px; text-transform: uppercase; font-weight: 700; }
.blocco_contenuto .single-tag-link { font-weight: 500; font-size: 16px; text-transform: uppercase; color: var(--e-global-color-primary); }
.indice-sezioni-shortcode h3 { color: #fff; font-weight: 700; font-size: 26px; }
.sezione-card { padding-top: 2%; scroll-margin-top: 200px; }
.blocco_contenuto table,
.blocco_contenuto table tr,
.blocco_contenuto table td,
.blocco_contenuto table th { background: transparent !important; background-color: transparent !important; border: none; }
.blocco_contenuto table { max-width: 80% !important; font-size: 18px; }
.blocco_contenuto table tr { border-bottom: 1px solid var(--e-global-color-8eb2907) !important; }
.blocco_contenuto tr td:first-child, .blocco_contenuto tr:first-child { color: var(--e-global-color-primary); font-weight: 800; }
.blocco_contenuto tr td:first-child { padding-left: 0; }
.blocco_contenuto p { margin-block-end: 20px; }
.blocco_contenuto .riga-evidenziata { background: var(--e-global-color-8eb2907); color: var(--e-global-color-86802eb) !important; padding: 2%; border-radius: 20px; max-width: 98%; }
.blocco_contenuto .riga-evidenziata strong { color: var(--e-global-color-primary); font-weight: 400 !important; }
.dark_background { color: var(--e-global-color-86802eb); }

/* ── Form Zoho ────────────────────────────────────────────── */
#crmWebToEntityForm.ediltec-form-wrap,
#crmWebToEntityForm.ediltec-form-wrap * { box-sizing: border-box; direction: ltr; }
#crmWebToEntityForm.ediltec-form-wrap { width: 100% !important; max-width: 100% !important; margin: 0 auto !important; padding: 0 !important; background: transparent !important; color: #1f1f1f !important; text-align: left; }
#crmWebToEntityForm .ediltec-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 18px 22px; width: 100%; }
#crmWebToEntityForm .ediltec-field { width: 100%; }
#crmWebToEntityForm .ediltec-field-full { grid-column: 1 / -1; }
#crmWebToEntityForm label.ediltec-sr-only { position: absolute !important; width: 1px !important; height: 1px !important; padding: 0 !important; margin: -1px !important; overflow: hidden !important; clip: rect(0,0,0,0) !important; white-space: nowrap !important; border: 0 !important; }
#crmWebToEntityForm input[type=text],
#crmWebToEntityForm textarea { width: 100% !important;  border: 0 !important; font-size: 16px !important; line-height: 1.4 !important; box-shadow: none !important; outline: 0 !important; resize: vertical; appearance: none; }
#crmWebToEntityForm textarea { min-height: 190px; border-radius: 32px !important; padding-top: 24px !important; }
#crmWebToEntityForm input::placeholder,
#crmWebToEntityForm textarea::placeholder { color: #7d7d7d !important; opacity: 1; }
#crmWebToEntityForm input[type=text]:focus,
#crmWebToEntityForm textarea:focus { background: #eee; box-shadow: 0 0 0 2px rgba(232,142,27,.35) !important; }
#crmWebToEntityForm.ediltec-bottom-row { display: flex; align-items: center; justify-content: space-between; gap: 24px; margin-top: 22px; width: 100%; }
#crmWebToEntityForm .zcwf_privacy { display: flex !important; align-items: flex-start !important; gap: 10px !important; padding: 0 !important; margin: 3% auto !important; flex: 1 1 auto; min-width: 0; }
#crmWebToEntityForm .zcwf_privacy .dIB,
#crmWebToEntityForm .zcwf_privacy .displayPurpose,
#crmWebToEntityForm .zcwf_privacy label {  align-items: center !important; margin: 0 !important; padding: 0 !important; }
#crmWebToEntityForm #privacyTool831010000002595025 { width: 20px !important; height: 20px !important; margin: 0 !important; accent-color: #e88e1b; flex: 0 0 auto; }
#crmWebToEntityForm .zcwf_privacy_txt { display: block !important; width: auto !important; margin: 0 !important; padding: 0 !important; color: #454545; font-family: Inter, Arial, Helvetica, sans-serif !important; font-size: 14px !important; line-height: 1.35 !important; }
#crmWebToEntityForm .zcwf_privacy_txt a {font-weight: 600 !important; text-decoration: underline !important; text-underline-offset: 3px; }
#privacyErr831010000002595025 { position: absolute; margin-top: 28px; color: #c0392b !important; font-family: Inter, Arial, Helvetica, sans-serif !important; font-size: 13px !important; }
#crmWebToEntityForm .ediltec-submit-wrap { flex: 0 0 auto; display: flex; justify-content: flex-end; }
#crmWebToEntityForm .formsubmit.zcwf_button { width: auto !important; max-width: none !important; min-width: 150px; padding: 2% !important; border: 0 !important; border-radius: 999px !important; background: #e88e1b !important; color: #fff !important; font-family: Inter, Arial, Helvetica, sans-serif !important; font-size: 17px !important; font-weight: 600 !important; letter-spacing: 0 !important; text-transform: none !important; cursor: pointer !important; box-shadow: none !important; transition: background .2s ease, transform .2s ease; }
#crmWebToEntityForm .formsubmit.zcwf_button:hover { background: #d77f12 !important; transform: translateY(-1px); }
#crmWebToEntityForm .formsubmit.zcwf_button:disabled { opacity: .65; cursor: not-allowed !important; transform: none; }


/* ============================================================
   MEDIA QUERIES
   ============================================================ */

/* ── max-width: 1023px ────────────────────────────────────── */
@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;
    }
}

/* ── max-width: 768px ─────────────────────────────────────── */
@media (max-width: 768px) {
	.app-tree__app-item{flex-direction: column !important;gap:8px !important}
	.header-logo{width:67% !important}
	.header-logo a {float:left !important}
	.single-tag-esp{    padding: 4% 8% !important;}
	#wpadminbar{display:none !important}
	#row_app{grid-template-columns: repeat(2, 1fr) !important;
    gap: 12px;
		display:grid !important
}
	
	.stat-card h4 br{display:none}
.stat-card h4 br::after {
  content: ' ';
}
	.titolo_pagina{row-gap:10px !important;}
	.titolo_pagina h1{font-size:25px !important;}
	.titolo_applicazioni_interno h1{line-height:18px;margin-bottom:0}
	.ms-dots {
    display: flex;
    justify-content: center;
    align-items: center;
    gap: 6px;
    margin-top: 14px;
}
.ms-dot {
    height: 6px;
    width: 6px;
    border-radius: 99px;
    border: none;
    background: #ccc;
    cursor: pointer;
    padding: 0;
    transition: width 0.3s ease, background 0.3s ease;
}
.ms-dot.is-active {
    width: 24px;
    background: var(--e-global-color-primary, #f59300);
}
.sp .cont_box{max-width:100%}
.custom_dots .swiper-pagination {
    display: flex;
    justify-content: center;
    align-items: center;
    gap: 6px;
    position: static;      /* Swiper li mette absolute di default */
    margin-top: 14px;
}
.custom_dots .swiper-pagination-bullets{transform: none !important;
    width: 100% !important;}

.custom_dots .swiper-pagination-bullet {
    height: 6px;
    width: 6px;
    border-radius: 99px;
    background: #ccc;
    opacity: 1;            /* Swiper mette opacity: 0.2 sui non-attivi */
    margin: 0 !important;  /* Swiper aggiunge margin inline */
    transition: width 0.3s ease, background 0.3s ease;
    flex-shrink: 0;
}

.custom_dots .swiper-pagination-bullet-active {
    width: 24px !important;
    background: var(--e-global-color-primary, #f59300);
}

	.map-select{font-size:13px}
	.titolo_pagina  {background-image:none;min-height:auto !important}
	.filtri_adv {
		padding-top:0px !important;
    overflow: hidden !important;
}
	#advblock{margin-top:3%}
	
/*	.blog_loop .elementor-loop-container.elementor-grid{grid-template-columns: repeat(2, 1fr) !important;}*/
	.blog_loop .elementor-loop-container.elementor-grid{grid-template-columns: repeat(1, 1fr) !important;}
	.blog_loop .elementor-loop-container.elementor-grid .e-loop-item:nth-child(6n+5),
	.blog_loop .elementor-loop-container.elementor-grid .e-loop-item:nth-child(6n+6) { grid-column: span 1 !important; }
	.container-padding-custom, .custom-container-padding{padding-top:6% !important;padding-bottom:6% !important}
	.hero_text .arancione, .hero_text .light{font-size:25px}
	.light,.arancione,.dark{font-size:20px}	
	.box_radius_circle{padding:5% !important}
	.nota_tecnica-popup__close, .evento-popup__close{    width: 55px;
    height: 55px;
		z-index:10;
	line-height:0.5}
    /* Box statistiche */
    .box_image_stat { max-width: 100% !important; }
    .box_image_stat .elementor-image-box-wrapper {
        display: flex;
        flex-direction: row;
        align-items: center;
        gap: 16px;
    }
    .box_image_stat .elementor-image-box-img {
        flex-shrink: 0;
        margin: 0 !important;
    }

    /* Griglia certificazioni */
    .speciale_filtri.elementor-grid-4 {
        grid-template-columns: repeat(2, 1fr) !important;
    }

    /* Mobile slider — Loop Grid */
    .ms-slider .elementor-loop-container,
    .ms-slider.elementor-loop-container {
        display: flex !important;
        flex-wrap: nowrap !important;
        overflow-x: auto;
        scroll-snap-type: x mandatory;
        -webkit-overflow-scrolling: touch;
        gap: 16px !important;
        padding-bottom: 8px;
        grid-template-columns: unset !important;
        scrollbar-width: none;
    }
    .ms-slider .elementor-loop-container::-webkit-scrollbar,
    .ms-slider.elementor-loop-container::-webkit-scrollbar { display: none; }
    .ms-slider .elementor-loop-container > .e-loop-item,
    .ms-slider.elementor-loop-container > .e-loop-item {
        flex: 0 0 82% !important;
        scroll-snap-align: start;
        min-width: 0;
        max-width: none !important;
    }

    /* Mobile slider — container flex */
    .ms-slider.e-con {
        display: flex !important;
        flex-wrap: nowrap !important;
        overflow-x: auto;
        scroll-snap-type: x mandatory;
        -webkit-overflow-scrolling: touch;
        gap: 16px !important;
        padding-bottom: 8px;
        scrollbar-width: none;
    }
    .ms-slider.e-con::-webkit-scrollbar { display: none; }
    .ms-slider.e-con > .e-con {
        flex: 0 0 82% !important;
        scroll-snap-align: start;
        min-width: 0;
    }
	 .ms-sottocategorie-grid.ms-slider {
        display: flex;
        flex-wrap: nowrap;
        overflow-x: auto;
        overflow-y: visible;
        scroll-snap-type: x mandatory;
        -webkit-overflow-scrolling: touch;
		    scrollbar-width: none; /* Firefox */
        gap: 16px;
    }
.ms-sottocategorie-grid.ms-slider::-webkit-scrollbar {
        display: none; /* Chrome, Safari */
    }
    .ms-sottocategorie-grid.ms-slider > [data-elementor-type="loop-item"] {
        flex: 0 0 80vw;
        scroll-snap-align: start;
        height: auto;
    }
  	.blocco_inline_richiamo .elementor-widget-image {
       top: auto !important;
        left: auto !important;
        transform: none !important;
        width: 100% !important;
	      flex: 1 !important;
        align-self: flex-end !important;
    }
	.blocco_inline_richiamo {   flex-direction: row !important;
        align-items: flex-end !important;
        justify-content: space-between !important;
        width: 100% !important;}
	.blocco_inline_richiamo .elementor-widget-icon{  align-self: flex-end !important;
        flex-shrink: 0 !important;}
    /* Griglia applicazioni */
    .applicazioni-grid {
        grid-template-columns: repeat(min(var(--cols), 2), 1fr);
    }
 .elementor-7024 .elementor-element.elementor-element-ac47b80 {
        justify-content: flex-start !important;
        min-height: 120px;
    }
	   .tab_categorie.elementor-widget-n-tabs .e-n-tabs {
        flex-direction: column !important;
    }

    .tab_categorie.elementor-widget-n-tabs .e-n-tabs-heading {
        order: -1 !important;
        display: flex !important;
        flex-direction: column !important;
        width: 100% !important;
    }
	 .tab_categorie.elementor-widget-n-tabs .e-n-tabs-heading h3{margin-block-end: 0 !important;
    margin-block-start: 0 !important;}

    .tab_categorie.elementor-widget-n-tabs .e-n-tabs-content {
        order: 1 !important;
    }
	.tab_categorie h3, .tab_categorie .light{font-size:21px !important}
	
    .tab_categorie .e-n-tab-title {
		margin-block-end:0px !important;
		padding-block-end :0px !important;
			padding-block-start :0px !important;
        width: 100% !important;
        text-align: left !important;
    }
.box_image_stat .elementor-image-box-wrapper {
    align-items: center; /* già impostato da elementor-vertical-align-middle */
}

.box_image_stat .elementor-image-box-img {
    width: 60px;        /* larghezza fissa uguale per tutti */
    min-width: 60px;    /* evita che flexbox la schiacci */
    display: flex;
    align-items: center;
    justify-content: center;
    margin: 0;          /* Elementor di default mette margin-right */
    margin-right: 15px; /* o il valore che usi tu */
}

.box_image_stat .elementor-image-box-img img {
    width: auto;
    height: auto;
    max-width: 100%;
    max-height: 54px;   /* altezza massima = la più alta delle icone */
    object-fit: contain;
}
  

    /* titolo: cresce e centra il testo verticalmente */
    .elementor-7024 .elementor-element.elementor-element-e443d8e {
        flex-grow: 1 !important;
        display: flex !important;
        align-items: center !important;
        padding: 0 8px !important;
    }

    .elementor-7024 .elementor-element.elementor-element-e443d8e .elementor-heading-title {
        margin: 0 !important;
    }

    /* icona download: sempre in fondo */
    .elementor-7024 .elementor-element.elementor-element-1bd176b {
        margin-top: auto !important;
        padding: 0 !important;
    }
.box_titolo_approfondimenti_Card 	.elementor-widget-icon{align-self:center !important}
	.primo_blocco .elementor-icon-box-icon{display:none !important}
    /* Form Zoho */
    #crmWebToEntityForm .ediltec-grid { grid-template-columns: 1fr; gap: 14px; }
    #crmWebToEntityForm input[type=text],
    #crmWebToEntityForm textarea { min-height: 58px; padding: 16px 22px !important; font-size: 15px !important; }
    #crmWebToEntityForm textarea { min-height: 160px; }
    #crmWebToEntityForm .ediltec-bottom-row { flex-direction: column; align-items: stretch; gap: 18px; }
    #crmWebToEntityForm .zcwf_privacy { align-items: flex-start !important; }
    #crmWebToEntityForm .ediltec-submit-wrap,
    #crmWebToEntityForm .formsubmit.zcwf_button { width: 100% !important; margin-top:2% }

    /* Reduced motion */
    .ms-js .ms-animate,
    .ms-js .ms-animate-children > * {
        opacity: 1 !important;
        transform: none !important;
        transition: none !important;
    }
	.mm-section-title {max-width:94% !important;width:100%;}
	.e-loop-item h3{font-size:15px !important}
	.card_approfondimenti .elementor-heading-title{white-space:normal;font-size:15px !important}
	.blocco_contenuto h3{text-transform:initial !important}
}

/* ── max-width: 480px ─────────────────────────────────────── */
@media (max-width: 480px) {
    .applicazioni-grid {
        grid-template-columns: 1fr;
    }
}

/* Se dentro l'ID approfondimenti_tecnici esiste il messaggio di "nessun risultato", nascondi l'intera sezione */
#approfondimenti_tecnici:has(.e-loop-nothing-found-message) , #sezione_faq:has(.e-loop-nothing-found-message), #applicazioni_row:has(.e-loop-nothing-found-message),#focus_on:has(.e-loop-nothing-found-message),#row_product:has(.e-loop-nothing-found-message), #altri_prodotti_prodotto:has(.e-loop-nothing-found-message),#correlati:has(.e-loop-nothing-found-message) {
    display: none !important;
}



.video-loop-card {
    position: relative;
    overflow: hidden;
    border-radius: 8px;
    cursor: pointer;
    aspect-ratio: 16 / 9;
	min-height:180px;
}
.video-loop-card h3{color:#fff;text-align:center;}
.video-loop-card .video-thumb {
    position: absolute;
    inset: 0;
    background-size: cover;
    background-position: center;
    transition: transform 0.4s ease;
}

.video-loop-card:hover .video-thumb {
    transform: scale(1.03);
}



.video-loop-card:hover::before {
    background: rgba(0, 0, 0, 0.3);
}

/* Play centrato */
.video-loop-card .play-icon {
    position: absolute;
	text-align:center;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    z-index: 2;
    transition: transform 0.3s ease;
    pointer-events: none;
	width:100%
}

.video-loop-card:hover .play-icon {
    transform: translate(-50%, -50%) scale(1.1);
}

/* Iframe iniettato al click */
.video-loop-card iframe {
    position: absolute;
    inset: 0;
    width: 100%;
    height: 100%;
    border: none;
    z-index: 3;
}
.video_filtri .e-filter-item {color:var(--e-global-color-bfb7dfd) !important;
background:var(--e-global-color-8eb2907) !important; border-radius:20px !important;padding :0.4% 0.7% !important;font-size:15px}
.video_filtri .e-filter-item[aria-pressed="true"] {
    /* stili per il bottone attivo */
    background: var(--e-global-color-primary)!important;
}
.lavora_con_noi  .dialog-close-button {
    border-radius: 50% !important;padding:2%;
}
.e-loop-item h3{font-size:18px !important;}
.card-applicazione h3{font-size:12px !important; color: var(--e-global-color-472dce8);}
.singolo_prodotto_card h3{  color: var(--e-global-color-472dce8);}
.singolo_prodotto_card .elementor-widget-image
{ overflow: hidden;
    aspect-ratio: 1 / 1; /* o il rapporto che preferisci, es. 4/3 */
    width: 75%; /* stringe il box stesso rispetto al contenitore padre */
    margin: 0 auto; /* per ricentrarlo nella card */}
.singolo_prodotto_card  .elementor-widget-image img{width: 100%;
    height: 100%;
	transform: scale(1.25); /* regola il valore in base a quanto bianco vuoi togliere */
    transition: transform 0.3s ease;
    object-fit: cover;
    object-position: center;}


/* A27 (28/10/2026): the mobile slider dots become 24x24 px touch targets (WCAG 2.5.8). The visible dot is drawn by
   ::before in the brand orange, as the Elementor kit button rule painted it before; the row keeps its 6 px height through
   negative vertical margins, so nothing below it moves. Selectors carry two classes to outrank ".elementor-kit-6 button".
   Delete this block to undo. */
.ms-dots { gap: 0; }
.elementor-kit-6 .ms-dot, .ms-dots .ms-dot { position: relative; width: 24px; height: 24px; margin: -9px 0; padding: 0; border: none; border-radius: 0; background: transparent; cursor: pointer; box-shadow: none; }
.ms-dots .ms-dot::before { content: ""; position: absolute; left: 50%; top: 50%; width: 6px; height: 6px; transform: translate(-50%, -50%); border-radius: 99px; background: var(--e-global-color-primary, #f59300); transition: width .3s ease; }
.elementor-kit-6 .ms-dot.is-active, .ms-dots .ms-dot.is-active { width: 24px; background: transparent; }
.ms-dots .ms-dot.is-active::before { width: 24px; }
.elementor-kit-6 .ms-dot:hover, .elementor-kit-6 .ms-dot:focus, .ms-dots .ms-dot:hover, .ms-dots .ms-dot:focus { background: transparent; }
