/* ========================================================================
   MOBILE MENU OVERLAY — STANDALONE, CARICATO PER ULTIMO
   Batte WP Core e qualsiasi altra regola grazie a cascade + !important.
   ======================================================================== */

/* Container: FULL SCREEN WHITE, nessuna trasparenza.
   Forza altezza viewport perché il backdrop-filter sull'header
   crea un containing block e il menu eredita l'altezza dell'header (~65px). */
.wp-block-navigation__responsive-container.is-menu-open {
	background: #fff !important;
	height: 100dvh !important;
	bottom: auto !important;
}

/* Dialog: padding in cima per non coprire la X, sfondo forzato.
   2026-08-26: padding-top 5rem → max(2.5rem, env(safe-area-inset-top)):
   le voci del menu erano troppo in basso. Su iOS (cover, env costante)
   resta sotto la notch. */
.wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__responsive-dialog {
	background: #fff !important;
	padding: max(2.5rem, env(safe-area-inset-top, 0px)) 2rem 3rem !important;
}

/* 2026-08-26: WP core mette padding-top:56px sul contenuto dell'overlay —
   sommato al padding del dialog spingeva la prima voce ("Home") a ~120px.
   Ridotto a 0.75rem: le voci partono subito sotto la X. */
.wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__responsive-container-content {
	padding-top: 0.75rem !important;
}

/* TUTTO dentro l'overlay: sfondo bianco, testo ink */
.wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__container,
.wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__container *,
.wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation-item,
.wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation-item *,
.wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__responsive-container-content,
.wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__responsive-container-content * {
	background: #fff !important;
	color: #26180F !important;
}

/* SPECIFICITY NUKE: body.home .site-header:not(.is-stuck) a (0,3,1)
   batteva i link nell'overlay. Questo selettore (0,5,1) lo annienta. */
body.home .site-header .wp-block-navigation__responsive-container.is-menu-open a,
body.is-front-page .site-header .wp-block-navigation__responsive-container.is-menu-open a,
body.home .site-header .wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation-item__content,
body.is-front-page .site-header .wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation-item__content,
body.home .site-header .wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation-item__label,
body.is-front-page .site-header .wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation-item__label {
	color: #26180F !important;
	background: transparent !important;
}

/* Link: full-width card style */
.wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation-item a,
.wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation-item__content {
	display: block !important;
	width: 100% !important;
	padding: 0.85rem 0 !important;
	font-size: 1.2rem !important;
	font-weight: 500 !important;
	border-bottom: 1px solid #D6D4C9 !important;
	text-decoration: none !important;
}

/* Submenu lingua: indentato */
.wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__submenu-container {
	display: flex !important;
	flex-direction: column !important;
	padding: 0.25rem 0 0.25rem 1rem !important;
}
.wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__submenu-container a {
	font-size: 1rem !important;
	border-bottom: none !important;
	opacity: 0.7;
}

/* Pulsante X: in alto a destra */
.wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__responsive-container-close,
body.home .site-header .wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__responsive-container-close {
	position: absolute !important;
	top: 1.5rem !important;
	right: 1.5rem !important;
	color: #26180F !important;
	background: transparent !important;
	width: 40px;
	height: 40px;
}

/* Forza colonna: annulla qualsiasi layout orizzontale */
.wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__container {
	display: flex !important;
	flex-direction: column !important;
	gap: 0 !important;
	padding: 0 !important;
	margin: 0 !important;
	width: 100% !important;
}
