/* Header e menu: comportamenti del prototipo non ottenibili dalle sole impostazioni dei blocchi. */

/* In home l'header resta fisso sopra l'hero. */
body.home .hcs-header {
	position: fixed !important;
	top: 0;
	left: 0;
	right: 0;
	z-index: 50;
}
body.admin-bar.home .hcs-header { top: 32px; }
@media (max-width: 782px) {
	body.admin-bar.home .hcs-header { top: 46px; }
}

.hcs-bar {
	position: relative;
	transition: background-color .35s ease, border-color .35s ease, box-shadow .35s ease;
}
body.hcs-scrolled .hcs-bar { box-shadow: 0 8px 24px -16px rgba(11, 26, 63, .35); }

/* Home, in cima alla pagina: barra trasparente con testi bianchi. */
body.home.hcs-at-top .hcs-bar {
	background-color: transparent !important;
	border-color: transparent !important;
	box-shadow: none;
}
body.home.hcs-at-top .hcs-bar::before {
	content: "";
	position: absolute;
	inset: 0 0 -40px;
	background: linear-gradient(180deg, rgba(0, 0, 0, .35), rgba(0, 0, 0, 0));
	pointer-events: none;
	z-index: -1;
}
body.home.hcs-at-top .hcs-bar,
body.home.hcs-at-top .hcs-bar a,
body.home.hcs-at-top .hcs-bar .wp-block-navigation__responsive-container-open { color: #fff !important; }
body.home.hcs-at-top .hcs-bar .has-accent-4-color { color: rgba(255, 255, 255, .8) !important; }

/* Link Soluzioni / Settori con sottolineatura oro. */
.hcs-links .wp-block-navigation-item__content {
	position: relative;
	padding: 6px 0;
}
.hcs-links .wp-block-navigation-item__content::after {
	content: "";
	position: absolute;
	left: 0;
	bottom: 0;
	width: 0;
	height: 2px;
	background: var(--wp--preset--color--accent-2);
	transition: width .3s;
}
.hcs-links .wp-block-navigation-item__content:hover { text-decoration: none; }
.hcs-links .wp-block-navigation-item__content:hover::after,
.hcs-links .current-menu-item > .wp-block-navigation-item__content::after { width: 100%; }

/* Pulsante "Menu" con le tre linee. */
.hcs-menu-toggle .wp-block-navigation__responsive-container-open {
	display: flex;
	align-items: center;
	gap: 12px;
	padding: 8px 0;
	font-size: .76rem;
	font-weight: 700;
	letter-spacing: .16em;
	text-transform: uppercase;
}
.hcs-menu-toggle .wp-block-navigation__responsive-container-open::before {
	content: "";
	width: 28px;
	height: 18px;
	background:
		linear-gradient(currentColor 0 0) left top / 100% 2px no-repeat,
		linear-gradient(currentColor 0 0) right center / 70% 2px no-repeat,
		linear-gradient(currentColor 0 0) left bottom / 100% 2px no-repeat;
	transition: background-size .3s;
}
.hcs-menu-toggle .wp-block-navigation__responsive-container-open:hover::before {
	background-size: 100% 2px, 100% 2px, 100% 2px;
}

/* Menu aperto: niente margini del contenitore, la barra replica l'header. */
.hcs-menu-toggle .wp-block-navigation__responsive-container.is-menu-open { padding: 0 !important; }
.hcs-overlay .hcs-close {
	display: inline-flex;
	align-items: center;
	gap: 10px;
	color: #fff;
}
.hcs-overlay .hcs-close:hover { color: var(--wp--preset--color--oro-chiaro); }

/* Voci grandi con lineetta oro su hover e voce attiva. */
.hcs-overlay-nav .wp-block-navigation-item__content {
	display: inline-flex;
	align-items: center;
	padding: 6px 0;
}
.hcs-overlay-nav .wp-block-navigation-item__content::before {
	content: "";
	width: 0;
	height: 2px;
	margin-right: 0;
	background: var(--wp--preset--color--oro-chiaro);
	transition: width .3s ease, margin .3s ease;
}
.hcs-overlay-nav .wp-block-navigation-item__content:hover,
.hcs-overlay-nav .current-menu-item > .wp-block-navigation-item__content {
	color: var(--wp--preset--color--oro-chiaro);
	text-decoration: none;
}
.hcs-overlay-nav .wp-block-navigation-item__content:hover::before,
.hcs-overlay-nav .current-menu-item > .wp-block-navigation-item__content::before {
	width: 34px;
	margin-right: 16px;
}

/* Su mobile la colonna contatti va sotto, con filetto in alto. */
@media (max-width: 781px) {
	.hcs-overlay-aside {
		border-left: 0 !important;
		padding-left: 0 !important;
		padding-top: 24px;
		border-top: 1px solid rgba(255, 255, 255, .15);
	}
}
