.site-above-header-wrap,
/* .site-primary-header-wrap, */
.site-above-footer-wrap,
.site-primary-footer-wrap,
.site-below-footer-wrap {
	width: var(--wp--custom--ast-container-width);
	max-width: var(--cavalleretti-content-max-width);
	margin-left: auto !important;
	margin-right: auto !important;
	padding-left: 0px !important;
	padding-right: 0px !important;
}

:root {
	--cavalleretti-mobile-logo-offset: 30px;
	--cavalleretti-offcanvas-height: calc(100vh - calc(var(--cavalleretti-mobile-logo-offset) * 2));
	--cavalleretti-offcanvas-footer-height: calc(var(--header-main-h) / 1.5);
	--cavalleretti-xclose-size: 22px;
	--header-content-gap: 60px;
}

/* Header */
	header#masthead {z-index: 9999999;}
	/* Top Header */
		.ast-above-header-wrap .ast-above-header-bar.ast-above-header.site-header-focus-item {
			width: var(--wp--custom--ast-container-width);
			max-width: var(--cavalleretti-content-max-width);
			margin: auto;
		}
		.ast-above-header-wrap .site-header-above-section-right [data-section="section-hb-social-icons-1"] {line-height: 1em;}
		.ast-builder-language-switcher-menu-item-header {
			padding: 0px;
			display: flex;
			gap: 10px;
		}
		.ast-builder-language-switcher-menu-item-header:not(:first-child):before {
			content: "|";
			color: black;
		}
		.ast-builder-language-switcher-layout-horizontal .ast-builder-language-switcher-menu {gap: 10px;}
		.site-header-section>* {padding: 0px;}
		.site-header-above-section-right.site-header-section.ast-flex.ast-grid-right-section {gap: 30px;}
		.ast-primary-header-bar {transition: none;}
	/* END Top Header */
	/* Main Header */
		.site-primary-header-wrap {
			width: var(--cavalleretti-custom-container-width);
			max-width: var(--cavalleretti-content-max-width);
			padding-left: 0px !important;
			padding-right: 0px !important;
		}
		.ast-desktop .site-branding.ast-site-identity {padding: 0;}
		span.site-logo-img, a.custom-logo-link {display: flex !important;}
		.ast-builder-layout-element[data-section="title_tagline"] {display: flex;}
		.ast-desktop .menu-item-home {display: none !important;}
		.site-logo-img .transparent-custom-logo img, .ast-theme-transparent-header #ast-desktop-header .site-logo-img .astra-logo-svg {
			width: auto !important;
			height: var(--header-primary-h);
			max-width: 100% !important;
			object-fit: contain;
		}
		#ast-desktop-header .main-header-menu {
			gap: 30px;
			align-items: flex-start;
		}
		.ast-mobile-popup-inner .menu-item a:before, #ast-fixed-header .current-menu-item:before {background-color: black;}
		@media screen and (min-width: 1270px) and (max-width: 1500px) {
			#ast-desktop-header .site-header-primary-section-left.site-header-section.ast-flex.site-header-section-left {
				max-width: calc(var(--cavalleretti-content-max-width) - var(--cavalleretti-secondary-container-width) - 30px) !important;
			}
		}
		@media screen and (min-width: 1000px) and (max-width: 1269px) {
			.ast-theme-transparent-header .site-primary-header-wrap > .ast-builder-grid-row {align-items: center !important;}
			#ast-desktop-header .site-header-primary-section-left.site-header-section.ast-flex.site-header-section-left, #masthead .site-logo-img .astra-logo-svg {max-width: 250px;}
		}
		@media screen and (min-width: 922px) {
			.ast-theme-transparent-header .site-primary-header-wrap > .ast-builder-grid-row {
				display: flex;
				flex-direction: row;
				gap: 40px;
				justify-content: space-between;
				align-items: flex-start;
			}
		}
		.main-header-menu > .menu-item {color: black;}
		.track-days, .scuola-guida {--colormenu: var(--ast-global-color-1) !important;}
		.ast-desktop .main-navigation .menu-item.current-menu-item {
			/* background-color: white !important; */
			color: var(--colormenu);
		}
		.main-navigation .menu-item.current-menu-item > .menu-link {background-color: transparent !important;}
		#ast-desktop-header li.menu-item a.menu-link span.menu-text {font-weight: 400;}
		li.menu-item .sub-menu a.menu-link span.menu-text {
			border-bottom: 2px solid;
			border-color: transparent;
			transition: all var(--cavalleretti-animation);
		}
		li.menu-item .sub-menu a.menu-link:hover span.menu-text {border-color: black;}
		.menu-link {
			/* color: inherit !important; */
			line-height: 1em;
			padding: 10px 0px !important;
			border: 0px !important;
		}
		.ast-desktop span.dropdown-menu-toggle.ast-header-navigation-arrow {display: none;}
		nav#primary-site-navigation-desktop {display: flex;}
		.ast-desktop ul.sub-menu {
			border-radius: var(--cavalleretti-radius-small);
			box-shadow: 0px 6px 13px 0px rgba(0, 0, 0, 0.15) !important;
			color: black;
			padding: 5px 0px;
			display: flex;
			flex-direction: column;
		}
		.ast-desktop ul.sub-menu > .menu-item {padding: 0px 15px;}
		.ast-desktop ul.sub-menu ul.sub-menu {margin-left: 20px;}
		.ast-desktop ul.sub-menu ul.sub-menu:before {
			content: '';
			width: 20px !important;
			display: flex;
			height: 3em !important;
			left: -20px !important;
			top: 3em !important;
		}
		.ast-desktop .ast-menu-hover-style-underline > .menu-item:hover > .menu-link:before,
		.ast-desktop .ast-menu-hover-style-overline > .menu-item:hover > .menu-link:before {width: 100%;height: 2px;}
		@media screen and (min-width: 1160px) and (max-width: 1890px) {
			.ast-desktop .agricola ul.sub-menu ul.sub-menu {
				margin-left: 0px;
				margin-right: 20px;
				right: 100% !important;
				left: auto !important;
			}
			.ast-desktop .agricola ul.sub-menu ul.sub-menu:before {
				left: auto !important;
				right: -20px !important;
			}
		}
		/* Transparent */
			.ast-theme-transparent-header .ast-lswitcher-item-header {color: white !important;}
			.ast-theme-transparent-header .ast-builder-language-switcher-menu-item-header:not(:first-child):before {color: white;}
		/* END Transparent */
		/* Sticky */
			.ast-sticky-active {
				display: flex;
				align-items: center;
				justify-content: center;
				max-width: 100% !important;
			}
			.ast-stick-primary-below-wrapper.ast-sticky-active {
				background-image: linear-gradient(180deg, rgb(0 0 0 / 35%) 10%, transparent 90%);
				height: 100px;
			}
			.ast-theme-transparent-header .ast-main-header-wrap.main-header-bar-wrap > div:not([style="min-height: 100px;"]) .ast-primary-header-bar.ast-primary-header.main-header-bar.site-header-focus-item {
				background-color: transparent;
			}
			.ast-theme-transparent-header .ast-main-header-wrap.main-header-bar-wrap > div:not([style="min-height: 100px;"]) .ast-builder-menu-1 .main-header-menu > .menu-item > .menu-link {
				color: white;
			}
			.ast-sticky-active .site-branding.ast-site-identity {
				margin: 0;
				padding: 0 !important;
			}
			#masthead .ast-header-sticked .site-logo-img .astra-logo-svg {width: 250px !important;}
			#masthead .ast-header-sticked .site-primary-header-wrap {min-height: 100px !important;}
			#masthead .ast-header-sticked .site-primary-header-wrap .ast-builder-grid-row {align-items: flex-end;}
			#ast-fixed-header {
				overflow: hidden;
				box-shadow: 0px 4px 9.7px 1px rgba(0, 0, 0, 0.25) !important;
				background-color: var(--ast-global-color-1);
			}
			#ast-fixed-header .ast-main-header-wrap.main-header-bar-wrap {width: 100%;}
			#ast-fixed-header > div#ast-desktop-header {
				display: flex;
				width: var(--cavalleretti-custom-container-width);
				margin: auto;
				justify-content: space-between;
			}
			#ast-fixed-header .ast-builder-grid-row.ast-builder-grid-row-has-sides.ast-builder-grid-row-no-center {
				width: var(--cavalleretti-content-max-width) !important;
				max-width: var(--cavalleretti-content-max-width) !important;
				margin: auto;
				object-fit: contain;
			}
			.ast-desktop .ast-sticky-active .ast-main-header-wrap.main-header-bar-wrap {
				position: absolute;
				left: 0;
			}
			#ast-fixed-header .ast-primary-header-bar {box-shadow: none !important;}
			#ast-fixed-header .ast-below-header-wrap,
			#ast-fixed-header .site-primary-header-wrap.ast-builder-grid-row-container.site-header-focus-item.ast-container, 
			#ast-fixed-header .site-below-header-wrap.ast-builder-grid-row-container.site-header-focus-item.ast-container {
				display: flex;
				align-items: flex-end;
			}
			#ast-fixed-header .site-below-header-wrap.ast-builder-grid-row-container.site-header-focus-item.ast-container {padding: 0px;}
			#ast-fixed-header .main-header-menu {gap: 40px;}
			#ast-fixed-header .menu-item:before {background-color: var(--ast-global-color-0);}
		/* END Sticky */
		/* Responsive */
			#ast-mobile-header .site-primary-header-wrap {
				align-items: center;
				transition: none 0s ease 0s !important;
				padding: 0px !important;
				width: -webkit-fill-available;
				max-width: -webkit-fill-available;
			}
			#ast-mobile-header .site-primary-header-wrap.ast-header-sticked {margin: 0px !important;}
			.ast-theme-transparent-header #ast-mobile-header .site-logo-img .astra-logo-svg {
				height: auto;
				width: 100% !important;
				max-width: 100% !important;
			}
			#ast-mobile-header .site-branding.ast-site-identity {padding: 0;}
			#ast-mobile-header span.site-logo-img {padding: 0px !important;}
			#ast-mobile-header .astra-logo-svg {height: auto !important;}
			@media screen and (max-width: 921px) {
				header#ast-fixed-header {display: none;}
				.site-header-primary-section-left.site-header-section.ast-flex.site-header-section-left {
					justify-content: flex-start;
					width: 100%;
					/* margin-left: calc(calc(100vw - var(--cavalleretti-content-max-width)) / 2); */
				}
			}
			#ast-mobile-header .ast-main-header-wrap.main-header-bar-wrap {width: -webkit-fill-available !important;}
			#ast-mobile-header .ast-builder-grid-row {
				max-width: var(--cavalleretti-content-max-width);
				margin: auto;
				width: var(--cavalleretti-content-max-width);
			}
			.riga-menu {
				background-color: var(--ast-global-color-0);
				width: 100%;
				height: 3px;
				position: absolute;
			}
			.riga-menu.sup, .riga-menu.bot {width: 50%;}
			.riga-menu.sup {top: 0;left: 0;}
			.riga-menu.bot {bottom: 0;right: 0;}
			.mid {
				position: absolute;
				top: 50%;
				transform: translateY(-50%);
			}
			.mobile-menu-toggle-icon {padding: 5px;}
			span.ahfb-svg-iconset.ast-inline-flex.svg-baseline:first-child {
				display: flex;
				flex-direction: column;
				height: var(--cavalleretti-xclose-size);
				aspect-ratio: 1 / 1;
				justify-content: space-between;
				box-sizing: content-box;
				position: relative;
			}
			#ast-mobile-header span.site-logo-img .astra-logo-svg {max-width: 100%;}
		/* END Responsive */
		/* OFF-CANVAS */
			#ast-mobile-popup-wrapper {z-index: 99999997;}
			.ast-mobile-popup-inner {
				max-width: 100% !important;
				width: 100% !important;
			}
			#ast-mobile-popup-wrapper .ast-mobile-popup-full-width .ast-mobile-popup-inner {
				width: 100% !important;
				justify-content: flex-end;
			}
			/* Hamburger & X close btn */
				#ast-mobile-popup-wrapper .ast-mobile-popup-header {
					height: var(--header-main-h);
					width: auto;
					position: fixed;
					z-index: 99;
					right: 0;
					justify-content: center;
					align-items: center;
					top: 0;
				}
				#ast-mobile-popup-wrapper .ast-mobile-popup-header {margin-right: calc(calc(100vw - var(--cavalleretti-content-max-width)) / 2);} /* for sticky */
				#ast-mobile-popup-wrapper button#menu-toggle-close, #ast-mobile-header button.menu-toggle.main-header-menu-toggle {padding: 0;}
				#ast-mobile-popup-wrapper span.ast-svg-iconset {line-height: 0;}
				#ast-mobile-popup-wrapper svg.ast-mobile-svg.ast-close-svg, #ast-mobile-header svg.ast-mobile-svg.ast-menu-svg {
					width: var(--cavalleretti-xclose-size);
					height: var(--cavalleretti-xclose-size);
				}
			/* END Hamburger & X close btn */
			/* Canvas */
				#ast-mobile-popup-wrapper .ast-lswitcher-item-header, #ast-mobile-popup-wrapper .ast-theme-transparent-header .ast-builder-language-switcher-menu-item-header:not(:first-child):before {color: black !important;}
				#ast-mobile-popup-wrapper .ast-header-language-switcher-element {padding: 0px !important;}
				#ast-mobile-popup-wrapper aside.header-widget-area.widget-area.site-header-focus-item.header-widget-area-inner:has( svg) {padding: 0px;}
				#ast-mobile-popup-wrapper .pittogramma-mono {width: 70px;}
				#ast-mobile-popup-wrapper .ast-mobile-popup-content {
					height: 100%;
					display: flex !important;
					flex-direction: column;
					padding: 25px;
					padding-bottom: 75px;
				}
				#ast-mobile-popup-wrapper [data-section="section-hb-social-icons-1"] {padding: 0px !important;}
				#ast-mobile-popup-wrapper .ast-header-social-wrap .ast-social-color-type-custom .ast-builder-social-element svg {
					fill: black;
				}
				#ast-mobile-popup-wrapper [data-section="section-header-mobile-menu"] {padding-top: 30px !important;}
				#ast-mobile-popup-wrapper [data-section="section-hb-language-switcher"] {margin-top: auto;}
				#ast-mobile-popup-wrapper [data-section="sidebar-widgets-header-widget-2"] {padding: 20px 0px;}
				#ast-mobile-popup-wrapper #menu-top-menu {
					display: flex;
					flex-direction: column-reverse;
					gap: 20px;
				}
				#ast-mobile-popup-wrapper a.menu-link, #ast-mobile-popup-wrapper a.ast-builder-language-switcher-item {font-weight: 700 !important;}
				#ast-mobile-popup-wrapper ul.sub-menu a.menu-link {font-weight: 400 !important;}
				#ast-mobile-popup-wrapper .sub-menu span.ast-icon.icon-arrow {display: none !important;}
				#ast-mobile-popup-wrapper button.ast-menu-toggle {
					height: calc(1em + 20px);
					top: 0px !important;
					display: flex;
					justify-content: center;
					align-items: center;
					overflow: hidden;
					box-shadow: none;
				}
				#ast-mobile-popup-wrapper svg.ast-arrow-svg {margin: 0px !important;}
			/* END Canvas */
		/* END OFF-CANVAS */
	/* END Main Header */
/* END Header */

/* Footer */
	footer {
		margin-top: calc(var(--cavalleretti-radius-big) * -1);
		border-radius: var(--cavalleretti-radius-big) var(--cavalleretti-radius-big) 0px 0px !important;
		overflow: hidden;
		z-index: 99;
		background-color: white;
	}
	.site-primary-footer-wrap .ast-builder-footer-grid-columns {
		padding-top: 120px;
		padding-bottom: 75px;
	}
	@media screen and (max-width: 767px) {
		.site-primary-footer-wrap .ast-builder-footer-grid-columns {
			padding-top: 75px;
			padding-bottom: 75px;
		}
	}
	.site-footer-primary-section-1.site-footer-section.site-footer-section-1 .astra-logo-svg {width: 350px;}
	.site-primary-footer-wrap .ast-builder-footer-grid-columns {
		--vgap: 50px;
		--hgap: 45px;
		display: flex;
		gap: var(--hgap) var(--vgap);
		flex-wrap: wrap;
		justify-content: space-between;
		align-items: flex-end !important;
	}
	.site-footer-primary-section-3 aside.footer-widget-area {
		display: flex;
		justify-content: center;
		gap: 15px;
	}
	.site-footer-primary-section-3 aside.footer-widget-area section {margin: 0px;}
	.site-footer-section {
		width: max-content;
		max-width: var(--cavalleretti-content-max-width);
	}
	.site-footer-primary-section-2 h2.widget-title {margin: 0px;}
	/* Copyright */	/* END Copyright */
/* END Footer */

.menu-item:has( > a[href*="taglio-laser"]) {order: -1;}
.ast-primary-header-bar:hover, .ast-above-header-bar:hover, .ast-below-header-bar:hover, .site-primary-footer-wrap.site-footer-focus-item:hover, .site-above-footer-wrap.site-footer-focus-item:hover, .site-below-footer-wrap.site-footer-focus-item:hover, .customizer-item-block-preview:hover {
	outline: none !important;
}

/* For Developer backend */
.site-primary-footer-wrap[data-section="section-primary-footer-builder"] {border: 0px !important;}
header.ast-header-without-markup {display: none;}
body:not(:has( #wpadminbar)) .elementor-widget-shortcode:has( .wp-php-debug) {display: none;}