@media (max-width: 992px){/* Sorgente di env_gjs_navbar_mobile_css(): non caricare così, va avvolto nella media query. */

.env-navbar:not([data-env-navbar-bp]) .env-navbar-toggle { display: inline-flex; }

/* Spostamento calcolato da spessore e spazio: a mano la X si storce. */
.env-navbar:not([data-env-navbar-bp]).is-open .env-navbar-toggle-bar:nth-child(1) { transform: translateY(calc(var(--env-navbar-burger-bar, 2px) + var(--env-navbar-burger-bar-gap, 5px))) rotate(45deg); }

.env-navbar:not([data-env-navbar-bp]).is-open .env-navbar-toggle-bar:nth-child(2) { opacity: 0; }

.env-navbar:not([data-env-navbar-bp]).is-open .env-navbar-toggle-bar:nth-child(3) { transform: translateY(calc(-1 * (var(--env-navbar-burger-bar, 2px) + var(--env-navbar-burger-bar-gap, 5px)))) rotate(-45deg); }

/* cursor non si eredita dal widget: vedi .env-burger-panel in hamburger.css. */
.env-navbar:not([data-env-navbar-bp]) .env-navbar-menu { cursor: auto; position: fixed; top: 0; right: 0; bottom: 0; left: auto; /* Variabili da env_gjs_navbar_style_map; il max-width tiene dentro lo schermo una larghezza scelta. */ width: var(--env-navbar-panel-width, min(340px, 85vw)); max-width: 100vw; height: 100vh; height: 100dvh; flex-direction: column; flex-wrap: nowrap; align-items: stretch; gap: 0; margin: 0; padding: var(--env-navbar-panel-pad-top, 64px) 0 24px; background: var(--env-navbar-panel-bg, #ffffff); box-shadow: var(--env-navbar-panel-shadow, -16px 0 40px rgba(0, 0, 0, 0.22)); overflow-y: auto; transform: translateX(100%); visibility: hidden; transition: transform 0.28s ease, visibility 0.28s ease; z-index: 1000; }

.env-navbar:not([data-env-navbar-bp]).is-open .env-navbar-menu { transform: translateX(0); visibility: visible; }

.env-navbar:not([data-env-navbar-bp]) .env-navbar-menu li { display: flex; flex-wrap: wrap; align-items: center; border-bottom: 1px solid var(--env-navbar-panel-divider, rgba(0, 0, 0, 0.06)); }

/* Colore con ripiego scuro: il pannello ha fondo proprio; inherit esplicito per la Tipografia. */
.env-navbar:not([data-env-navbar-bp]) .env-navbar-menu li > a { flex: 1 1 auto; padding: var(--env-navbar-panel-item-pad-y, 13px) var(--env-navbar-panel-item-pad-x, 20px); color: var(--env-navbar-panel-color, #1a1a1a); font-size: var(--env-navbar-panel-font-size, inherit); font-weight: var(--env-navbar-panel-font-weight, inherit); text-transform: var(--env-navbar-panel-caps, inherit); }

.env-navbar:not([data-env-navbar-bp]) .env-navbar-menu li > a:hover, .env-navbar:not([data-env-navbar-bp]) .env-navbar-menu li > a:focus-visible { color: var(--env-navbar-panel-hover, var(--env-navbar-panel-color, #1a1a1a)); background: var(--env-navbar-panel-hover-bg, transparent); }

/* Colore pieno + opacità: due campi separati invece di un rgba(). */
.env-navbar:not([data-env-navbar-bp]) .env-navbar-backdrop { display: block; cursor: pointer; position: fixed; inset: 0; background: var(--env-navbar-panel-backdrop, #020617); opacity: 0; visibility: hidden; pointer-events: none; transition: opacity 0.28s ease, visibility 0.28s ease; z-index: 999; }

.env-navbar:not([data-env-navbar-bp]).is-open .env-navbar-backdrop { opacity: var(--env-navbar-panel-backdrop-opacity, 50%); visibility: visible; pointer-events: auto; }

.env-navbar:not([data-env-navbar-bp]) .env-navbar-close { display: none; position: fixed; top: 14px; right: 14px; width: var(--env-navbar-panel-close-size, 38px); height: var(--env-navbar-panel-close-size, 38px); padding: 0; border: 0; border-radius: 50%; background: var(--env-navbar-panel-close-bg, rgba(0, 0, 0, 0.06)); color: var(--env-navbar-panel-close-color, #1a1a1a); font-size: 22px; line-height: 1; cursor: pointer; z-index: 1001; }

.env-navbar:not([data-env-navbar-bp]).is-open .env-navbar-close { display: flex; align-items: center; justify-content: center; }

/* Blocco scroll sulla radice, non sul body (rompe lo sticky); :root batte html.env-gjs-anim-clip. */
:root.env-navbar-open { overflow: hidden; }

.env-navbar:not([data-env-navbar-bp]) .env-navbar-menu .sub-menu { position: static; display: none; opacity: 1; visibility: visible; transform: none; box-shadow: none; border-radius: 0; min-width: 0; padding: 0 0 0 16px; }

/* :not obbligatorio: senza, questa regola batte quella che nasconde l'elenco col megamenu. */
.env-navbar:not([data-env-navbar-bp]) .env-navbar-menu .menu-item-has-children.is-open:not(.env-navbar-has-mega) > .sub-menu { display: block; }

.env-navbar:not([data-env-navbar-bp]) .env-navbar-menu .menu-item-has-children.is-open > .env-navbar-caret::before { transform: rotate(-135deg); }

.env-navbar:not([data-env-navbar-bp]) .env-navbar-mega { position: static; display: none; opacity: 1; visibility: visible; transform: none; box-shadow: none; border-radius: 0; padding: 0 0 0 16px; }

.env-navbar:not([data-env-navbar-bp]) .env-navbar-menu .env-navbar-has-mega.is-open > .env-navbar-mega { display: block; }

.env-navbar:not([data-env-navbar-bp]) .env-navbar-menu .env-navbar-has-mega.is-open > .env-navbar-caret::before { transform: rotate(-135deg); }

@media (prefers-reduced-motion: reduce) {
  .env-navbar:not([data-env-navbar-bp]) .env-navbar-menu, .env-navbar:not([data-env-navbar-bp]) .env-navbar-backdrop { transition: none; }
}
}