/*
Theme Name: Hello Elementor Child
Theme URI: https://crunchy-bytes.com
Description: Tema child per Hello Elementor.
Author: Crunchy Bytes
Author URI: https://crunchy-bytes.com
Template: hello-elementor
Version: 1.0.47
Text Domain: hello-elementor-child
*/

html {
	background-color: transparent;
}

body {
	--page-body-bg: #ffffff;
	--page-body-bg-image: none;
	--page-submenu-bg: #ffffff;
	--page-submenu-bg-image: none;
	--page-logo-color: #ffffff;
	background-color: var(--page-body-bg);
	background-image: var(--page-body-bg-image);
	background-size: cover;
	background-position: center;
	background-repeat: no-repeat;
	transition: background-color 1.2s cubic-bezier(0.4, 0, 0.2, 1);
}

body.page-id-2,
body.page-id-60 {
	--page-body-bg: #E3E3E3;
	--page-submenu-bg: #E3E3E3;
	--page-logo-color: #D52E14;
}

header.elementor-location-header {
	--header-padding-y: 30px;
	--header-logo-width: 168px;
	position: sticky;
	top: 0;
	z-index: 1000;
	transition: background-color 0.35s ease;
}

header.elementor-location-header.is-scrolled {
	--header-padding-y: 12px;
	--header-logo-width: 110px;
	background-color: var(--page-body-bg);
}

header.elementor-location-header .elementor-element.elementor-element-a3bcf0b {
	--padding-top: var(--header-padding-y);
	--padding-bottom: var(--header-padding-y);
	transition: padding 0.35s ease;
}

.airtek-logo {
	display: block;
	width: var(--header-logo-width, 168px);
	aspect-ratio: 895.9 / 270.4;
	height: auto;
	background-color: var(--page-logo-color);
	-webkit-mask: url('/wp-content/uploads/2026/06/airtek_logo.svg') no-repeat center / contain;
	mask: url('/wp-content/uploads/2026/06/airtek_logo.svg') no-repeat center / contain;
	transition:
		background-color 1.2s cubic-bezier(0.4, 0, 0.2, 1),
		width 0.35s ease;
}

body.page-id-62 {
	--page-body-bg: #E3E3E3;
	--page-body-bg-image: url('/wp-content/uploads/2026/06/air-tek-bg-prod-home-scaled.webp');
	--page-submenu-bg: #E3E3E3;
	--page-submenu-bg-image: none;
	--page-body-bg-size: contain;
    --page-body-bg-position: center bottom;
}

body.page-id-58,
body.page-id-64,
body.page-id-66,
body.page-id-69,
body.page-id-71,
body.page-id-73,
body.page-id-910 {
	--page-body-bg: #00577B;
	--page-submenu-bg: #00577B;
}

:is(
	body.page-id-58,
	body.page-id-64,
	body.page-id-66,
	body.page-id-69,
	body.page-id-71,
	body.page-id-73,
	body.page-id-910,
	body.page-id-62
) .elementor-13 .elementor-element.elementor-element-d0076c5 .elementor-nav-menu--main .elementor-item:not(.elementor-item-active),
:is(
	body.page-id-58,
	body.page-id-64,
	body.page-id-66,
	body.page-id-69,
	body.page-id-71,
	body.page-id-73,
	body.page-id-910
) .elementor-13 .elementor-element.elementor-element-d0076c5 .menu-item-79 > .sub-menu .elementor-sub-item:not(.elementor-item-active) {
	color: #ffffff !important;
	fill: #ffffff !important;
}

body .elementor-13 .elementor-element.elementor-element-d0076c5 .elementor-nav-menu--main .elementor-item.elementor-item-active,
body .elementor-13 .elementor-element.elementor-element-d0076c5 .elementor-nav-menu--main .menu-item-79.current-menu-ancestor > .elementor-item,
body .elementor-13 .elementor-element.elementor-element-d0076c5 .elementor-nav-menu--main .menu-item-79.current-menu-parent > .elementor-item,
body .elementor-13 .elementor-element.elementor-element-d0076c5 .menu-item-79 > .sub-menu .elementor-sub-item.elementor-item-active {
	color: #D52E14 !important;
	fill: #D52E14 !important;
	font-weight: 600 !important;
}

body .elementor-13 .elementor-element.elementor-element-d0076c5 .elementor-nav-menu--main .elementor-item:hover,
body .elementor-13 .elementor-element.elementor-element-d0076c5 .elementor-nav-menu--main .elementor-item:focus,
body .elementor-13 .elementor-element.elementor-element-d0076c5 .elementor-nav-menu--main .elementor-item.elementor-item-active:hover,
body .elementor-13 .elementor-element.elementor-element-d0076c5 .elementor-nav-menu--main .elementor-item.elementor-item-active:focus,
body .elementor-13 .elementor-element.elementor-element-d0076c5 .menu-item-79 > .sub-menu .elementor-sub-item:hover,
body .elementor-13 .elementor-element.elementor-element-d0076c5 .menu-item-79 > .sub-menu .elementor-sub-item:focus,
body .elementor-13 .elementor-element.elementor-element-d0076c5 .menu-item-79 > .sub-menu .elementor-sub-item.elementor-item-active:hover,
body .elementor-13 .elementor-element.elementor-element-d0076c5 .menu-item-79 > .sub-menu .elementor-sub-item.elementor-item-active:focus {
	color: #D52E14 !important;
	fill: #D52E14 !important;
}

body .elementor-13 .elementor-element.elementor-element-d0076c5 .elementor-nav-menu--main > .elementor-nav-menu > .menu-item-78 > .elementor-item.elementor-item-active,
body .elementor-13 .elementor-element.elementor-element-d0076c5 .elementor-nav-menu--main > .elementor-nav-menu > .menu-item-79 > .elementor-item.elementor-item-active,
body .elementor-13 .elementor-element.elementor-element-d0076c5 .elementor-nav-menu--main > .elementor-nav-menu > .menu-item-79.current-menu-ancestor > .elementor-item,
body .elementor-13 .elementor-element.elementor-element-d0076c5 .elementor-nav-menu--main > .elementor-nav-menu > .menu-item-79.current-menu-parent > .elementor-item,
body .elementor-13 .elementor-element.elementor-element-d0076c5 .menu-item-79 > .sub-menu .elementor-sub-item.elementor-item-active,
body .elementor-13 .elementor-element.elementor-element-d0076c5 .elementor-nav-menu--main > .elementor-nav-menu > .menu-item-78 > .elementor-item.elementor-item-active:hover,
body .elementor-13 .elementor-element.elementor-element-d0076c5 .elementor-nav-menu--main > .elementor-nav-menu > .menu-item-78 > .elementor-item.elementor-item-active:focus,
body .elementor-13 .elementor-element.elementor-element-d0076c5 .elementor-nav-menu--main > .elementor-nav-menu > .menu-item-79 > .elementor-item.elementor-item-active:hover,
body .elementor-13 .elementor-element.elementor-element-d0076c5 .elementor-nav-menu--main > .elementor-nav-menu > .menu-item-79 > .elementor-item.elementor-item-active:focus,
body .elementor-13 .elementor-element.elementor-element-d0076c5 .elementor-nav-menu--main > .elementor-nav-menu > .menu-item-79.current-menu-ancestor > .elementor-item:hover,
body .elementor-13 .elementor-element.elementor-element-d0076c5 .elementor-nav-menu--main > .elementor-nav-menu > .menu-item-79.current-menu-ancestor > .elementor-item:focus,
body .elementor-13 .elementor-element.elementor-element-d0076c5 .elementor-nav-menu--main > .elementor-nav-menu > .menu-item-79.current-menu-parent > .elementor-item:hover,
body .elementor-13 .elementor-element.elementor-element-d0076c5 .elementor-nav-menu--main > .elementor-nav-menu > .menu-item-79.current-menu-parent > .elementor-item:focus,
body .elementor-13 .elementor-element.elementor-element-d0076c5 .menu-item-79 > .sub-menu .elementor-sub-item.elementor-item-active:hover,
body .elementor-13 .elementor-element.elementor-element-d0076c5 .menu-item-79 > .sub-menu .elementor-sub-item.elementor-item-active:focus {
	color: #ffffff !important;
	fill: #ffffff !important;
}

:is(
	body.page-id-58,
	body.page-id-64,
	body.page-id-66,
	body.page-id-69,
	body.page-id-71,
	body.page-id-73,
	body.page-id-910,
	body.page-id-62
) .elementor-nav-menu--main .elementor-nav-menu > .menu-item:not(.wpml-ls-menu-item) > .elementor-item::after,
:is(
	body.page-id-58,
	body.page-id-64,
	body.page-id-66,
	body.page-id-69,
	body.page-id-71,
	body.page-id-73,
	body.page-id-910,
	body.page-id-62
) .elementor-nav-menu--main .menu-item-79.current-menu-ancestor > .elementor-item::after,
:is(
	body.page-id-58,
	body.page-id-64,
	body.page-id-66,
	body.page-id-69,
	body.page-id-71,
	body.page-id-73,
	body.page-id-910,
	body.page-id-62
) .elementor-nav-menu--main .menu-item-79.current-menu-parent > .elementor-item::after,
:is(
	body.page-id-58,
	body.page-id-64,
	body.page-id-66,
	body.page-id-69,
	body.page-id-71,
	body.page-id-73,
	body.page-id-910
) .elementor-nav-menu--main .menu-item-79 > .sub-menu .elementor-sub-item::after {
	background-color: #ffffff !important;
}

body .elementor-nav-menu--main .elementor-nav-menu > .menu-item:not(.wpml-ls-menu-item) > .elementor-item {
	padding-top: 20px !important;
	padding-left: 10px !important;
	padding-right: 10px !important;
}

body .elementor-nav-menu--main .menu-item-79 > .elementor-item .sub-arrow {
	display: none !important;
}

body .elementor-nav-menu--main .menu-item-79 {
	position: relative;
}

body .elementor-13 .elementor-element.elementor-element-d0076c5 .elementor-nav-menu--main > .elementor-nav-menu > .menu-item-79 > .sub-menu.elementor-nav-menu--dropdown,
body .elementor-nav-menu--main .menu-item-79 > .sub-menu.elementor-nav-menu--dropdown {
	background-color: var(--page-submenu-bg) !important;
	background-image: var(--page-submenu-bg-image);
	background-size: cover;
	background-position: center;
	background-repeat: no-repeat;
	padding: 30px 30px 30px 25px !important;
	width: 430px !important;
	min-width: 430px !important;
	max-width: 430px !important;
	text-align: left !important;
	left: auto !important;
	right: 0 !important;
	top: 100% !important;
	margin: 0 !important;
	box-shadow: 0 8px 16px rgba(0, 0, 0, 0.15);
}

@keyframes airtek-submenu-in {
	from {
		opacity: 0;
		transform: translateY(-10px);
	}

	to {
		opacity: 1;
		transform: translateY(0);
	}
}

body .elementor-nav-menu--main .menu-item-79 > .sub-menu.elementor-nav-menu--dropdown[aria-hidden="false"] {
	animation: airtek-submenu-in 0.4s cubic-bezier(0.4, 0, 0.2, 1) forwards;
}

body .elementor-nav-menu--main .menu-item-79 > .sub-menu .menu-item {
	background-color: transparent !important;
	margin: 0 !important;
	padding: 8px 0 20px 0 !important;
	text-align: left !important;
	border-top: none;
	border-bottom: 1px solid #ffffff;
}

body .elementor-nav-menu--main .menu-item-79 > .sub-menu .menu-item-81,
body .elementor-nav-menu--main .menu-item-79 > .sub-menu .menu-item:last-child {
	border-bottom: none !important;
}

body .elementor-13 .elementor-element.elementor-element-d0076c5 .menu-item-79 > .sub-menu .elementor-sub-item,
body .elementor-nav-menu--main .menu-item-79 > .sub-menu .elementor-sub-item {
	background-color: transparent !important;
	margin: 0 !important;
	margin-left: 0 !important;
	margin-inline-start: 0 !important;
	padding: 16px 0 0 0 !important;
	padding-left: 0 !important;
	padding-inline-start: 0 !important;
	text-align: left !important;
	justify-content: flex-start !important;
}

body .elementor-nav-menu--main .elementor-nav-menu > .menu-item:not(.wpml-ls-menu-item) > .elementor-item::after {
	content: '' !important;
	display: block !important;
	position: absolute !important;
	top: 0 !important;
	left: 10px !important;
	right: 10px !important;
	width: auto !important;
	height: 2px !important;
	background-color: #D52E14 !important;
	border: none !important;
	opacity: 0;
	transform: scaleX(0) !important;
	transform-origin: center top;
	transition:
		opacity 0.35s cubic-bezier(0.4, 0, 0.2, 1),
		transform 0.35s cubic-bezier(0.4, 0, 0.2, 1),
		background-color 0.35s cubic-bezier(0.4, 0, 0.2, 1);
	pointer-events: none;
	z-index: 2;
}

body .elementor-nav-menu--main .menu-item-79 > .sub-menu .elementor-sub-item::after {
	content: '' !important;
	display: block !important;
	position: absolute !important;
	top: 0 !important;
	left: 0 !important;
	right: 0 !important;
	width: auto !important;
	height: 2px !important;
	background-color: #D52E14 !important;
	border: none !important;
	opacity: 0;
	transform: scaleX(0) !important;
	transform-origin: center top;
	transition:
		opacity 0.35s cubic-bezier(0.4, 0, 0.2, 1),
		transform 0.35s cubic-bezier(0.4, 0, 0.2, 1),
		background-color 0.35s cubic-bezier(0.4, 0, 0.2, 1);
	pointer-events: none;
	z-index: 2;
}

body .elementor-nav-menu--main .elementor-nav-menu > .menu-item:not(.wpml-ls-menu-item) > .elementor-item:hover::after,
body .elementor-nav-menu--main .elementor-nav-menu > .menu-item:not(.wpml-ls-menu-item) > .elementor-item:focus::after,
body .elementor-nav-menu--main .elementor-nav-menu > .menu-item:not(.wpml-ls-menu-item) > .elementor-item.elementor-item-active::after,
body .elementor-nav-menu--main .elementor-nav-menu > .menu-item.menu-item-79.current-menu-ancestor > .elementor-item::after,
body .elementor-nav-menu--main .elementor-nav-menu > .menu-item.menu-item-79.current-menu-parent > .elementor-item::after,
body .elementor-nav-menu--main .menu-item-79 > .sub-menu .elementor-sub-item:hover::after,
body .elementor-nav-menu--main .menu-item-79 > .sub-menu .elementor-sub-item:focus::after,
body .elementor-nav-menu--main .menu-item-79 > .sub-menu .elementor-sub-item.elementor-item-active::after {
	opacity: 1 !important;
	transform: scaleX(1) !important;
}

/* Selettore lingua WPML */
body .elementor-nav-menu--main > .elementor-nav-menu > .wpml-ls-menu-item {
	margin-left: 40px !important;
	margin-right: 0 !important;
	margin-inline-end: 0 !important;
	padding-right: 0 !important;
	padding-inline-end: 0 !important;
}

body .elementor-nav-menu--main .elementor-nav-menu > .wpml-ls-menu-item > .elementor-item {
	padding-left: 20px !important;
	padding-right: 0 !important;
	padding-inline-end: 0 !important;
	margin-right: 0 !important;
	margin-inline-end: 0 !important;
}

body .elementor-nav-menu--main .elementor-nav-menu > .wpml-ls-menu-item > .elementor-item::before,
body .elementor-nav-menu--main .elementor-nav-menu > .wpml-ls-menu-item > .elementor-item::after {
	content: none !important;
	display: none !important;
	opacity: 0 !important;
	transform: none !important;
}

body .elementor-13 .elementor-element.elementor-element-d0076c5 .elementor-nav-menu--main .wpml-ls-menu-item > .elementor-item,
body .elementor-13 .elementor-element.elementor-element-d0076c5 .elementor-nav-menu--main .wpml-ls-menu-item > .sub-menu .elementor-sub-item {
	font-size: 20px !important;
}

body .elementor-nav-menu--main .wpml-ls-menu-item .wpml-ls-native,
body .elementor-nav-menu--main .wpml-ls-menu-item .wpml-ls-display {
	font-size: 20px !important;
}

body .elementor-nav-menu--main .wpml-ls-menu-item > .sub-menu.elementor-nav-menu--dropdown {
	text-align: center !important;
}

body .elementor-nav-menu--main .wpml-ls-menu-item > .sub-menu .menu-item {
	text-align: center !important;
	margin-left: 0 !important;
	margin-inline-start: 0 !important;
	background-color: transparent !important;
}

body .elementor-nav-menu--main .wpml-ls-menu-item > .sub-menu .elementor-sub-item {
	justify-content: center !important;
	text-align: center !important;
	color: #000000 !important;
	fill: #000000 !important;
	background-color: transparent !important;
}

body .elementor-13 .elementor-element.elementor-element-d0076c5 .elementor-nav-menu--main .wpml-ls-menu-item > .sub-menu .elementor-sub-item:hover,
body .elementor-13 .elementor-element.elementor-element-d0076c5 .elementor-nav-menu--main .wpml-ls-menu-item > .sub-menu .elementor-sub-item:focus,
body .elementor-nav-menu--main .wpml-ls-menu-item > .sub-menu .elementor-sub-item:hover,
body .elementor-nav-menu--main .wpml-ls-menu-item > .sub-menu .elementor-sub-item:focus {
	color: #D52E14 !important;
	fill: #D52E14 !important;
	background-color: transparent !important;
}

body .elementor-nav-menu--main .wpml-ls-menu-item > .sub-menu .elementor-sub-item::before,
body .elementor-nav-menu--main .wpml-ls-menu-item > .sub-menu .elementor-sub-item::after {
	content: none !important;
	display: none !important;
	opacity: 0 !important;
	transform: none !important;
}

/* Footer overlap layout */
.elementor-location-footer {
	--footer-overlap-up: 150px;
	--footer-overlap-down: 130px;
	position: relative;
	overflow: visible;
}

.elementor-location-footer .footer-top {
	position: relative;
	z-index: 2;
	margin-top: calc(var(--footer-overlap-up) * -1);
	margin-bottom: calc(var(--footer-overlap-down) * -1);
}

body.page-id-62 .elementor-location-footer .footer-top {
	display: none !important;
}

.elementor-location-footer .footer-bottom {
	position: relative;
	z-index: 1;
}

.elementor-location-footer .footer-bottom > .e-con-inner {
	display: flex;
	align-items: flex-end;
	justify-content: space-between;
}

body.page-id-62 .elementor-location-footer .footer-bottom > .e-con-inner {
	padding-top: 100px;
}

@media (max-width: 767px) {
	.elementor-location-footer {
		--footer-overlap-up: 80px;
		--footer-overlap-down: 60px;
	}

	.elementor-location-footer .footer-bottom > .e-con-inner {
		flex-direction: column;
		align-items: flex-start;
		gap: 1.5rem;
	}
}

.elementor-location-footer .icon-footer {
	line-height: 0;
}

.elementor-location-footer .icon-footer img {
	display: block;
}

/* Home / Company hero: testo sovrapposto all'immagine, allineato in basso a sinistra */
:is(.elementor-2, .elementor-60) .elementor-element.elementor-element-e848536,
:is(.elementor-2, .elementor-60) .elementor-element.elementor-element-af7af72 {
	--display: grid;
	display: grid !important;
	grid-template-columns: minmax(0, 1fr);
	grid-template-rows: minmax(0, auto);
	position: relative;
	overflow: hidden;
}

:is(.elementor-2, .elementor-60) .elementor-element.elementor-element-e848536 > .elementor-element-d2b1068,
:is(.elementor-2, .elementor-60) .elementor-element.elementor-element-e848536 > .elementor-element-8744fb2,
:is(.elementor-2, .elementor-60) .elementor-element.elementor-element-af7af72 > .elementor-element-77f634d,
:is(.elementor-2, .elementor-60) .elementor-element.elementor-element-af7af72 > .elementor-element-ec08d5c {
	grid-column: 1;
	grid-row: 1;
	width: 100% !important;
	max-width: none !important;
	--width: 100% !important;
	align-self: stretch !important;
	justify-self: stretch !important;
	--align-self: stretch !important;
}

:is(.elementor-2, .elementor-60) .elementor-element.elementor-element-8744fb2.title-bg,
:is(.elementor-2, .elementor-60) .elementor-element.elementor-element-ec08d5c.title-bg {
	position: relative;
	z-index: 1;
	background-color: transparent !important;
}

:is(.elementor-2, .elementor-60) .elementor-element.elementor-element-8744fb2.title-bg::after,
:is(.elementor-2, .elementor-60) .elementor-element.elementor-element-ec08d5c.title-bg::after {
	content: '';
	position: absolute;
	right: 0;
	bottom: 0;
	left: 0;
	height: 45%;
	background: linear-gradient(to bottom, rgba(227, 227, 227, 0) 0%, #E3E3E3 100%);
	pointer-events: none;
	z-index: 2;
}

.elementor-2 .elementor-element.elementor-element-c09e864.title-bg::after {
	content: '';
	position: absolute;
	right: 0;
	bottom: 0;
	left: 0;
	height: 45%;
	background: linear-gradient(to bottom, rgba(227, 227, 227, 0) 0%, #E3E3E3 100%);
	pointer-events: none;
	z-index: 2;
}

:is(.elementor-2, .elementor-60) .elementor-element.elementor-element-a17a810,
:is(.elementor-2, .elementor-60) .elementor-element.elementor-element-fb21363 {
	background-image: none !important;
}

:is(.elementor-2, .elementor-60) .elementor-element.elementor-element-a17a810 img,
:is(.elementor-2, .elementor-60) .elementor-element.elementor-element-fb21363 img {
	display: block;
	width: 100%;
	height: auto;
}

:is(.elementor-2, .elementor-60) .elementor-element.elementor-element-d2b1068,
:is(.elementor-2, .elementor-60) .elementor-element.elementor-element-77f634d {
	z-index: 3;
	--display: flex;
	display: flex !important;
	flex-direction: column;
	justify-content: flex-end !important;
	align-items: flex-start !important;
	align-self: stretch !important;
	background: transparent !important;
	padding-bottom: clamp(48px, 8vw, 96px);
	pointer-events: none;
}

:is(.elementor-2, .elementor-60) .elementor-element.elementor-element-d2b1068:not(.elementor-motion-effects-element-type-background),
:is(.elementor-2, .elementor-60) .elementor-element.elementor-element-d2b1068 > .elementor-motion-effects-container > .elementor-motion-effects-layer,
:is(.elementor-2, .elementor-60) .elementor-element.elementor-element-77f634d:not(.elementor-motion-effects-element-type-background),
:is(.elementor-2, .elementor-60) .elementor-element.elementor-element-77f634d > .elementor-motion-effects-container > .elementor-motion-effects-layer {
	background-color: transparent !important;
}

:is(.elementor-2, .elementor-60) .elementor-element.elementor-element-d2b1068 > .elementor-element,
:is(.elementor-2, .elementor-60) .elementor-element.elementor-element-77f634d > .elementor-element {
	pointer-events: auto;
	width: 100%;
	max-width: 100%;
}

:is(.elementor-2, .elementor-60) .title-hero .elementor-heading-title {
	font-size: clamp(32px, 3.5vw, 56px);
	line-height: 1.15;
}

@media (max-width: 767px) {
	:is(.elementor-2, .elementor-60) .elementor-element.elementor-element-e848536,
	:is(.elementor-2, .elementor-60) .elementor-element.elementor-element-af7af72 {
		--padding-left: 24px;
		--padding-right: 24px;
	}

	:is(.elementor-2, .elementor-60) .elementor-element.elementor-element-d2b1068,
	:is(.elementor-2, .elementor-60) .elementor-element.elementor-element-77f634d {
		padding-bottom: 40px;
	}

	:is(.elementor-2, .elementor-60) .title-hero .elementor-heading-title {
		font-size: 28px;
		line-height: 1.2;
	}
}

/* Company: carosello "La nostra storia" */
body.page-id-60 {
	overflow-x: clip;
}

body.page-id-60 .elementor-element-d189aaa {
	box-sizing: border-box;
	margin-left: 120px !important;
	width: calc(100% - 120px) !important;
	max-width: calc(100% - 120px) !important;
	overflow-x: clip;
}

body.page-id-60 .elementor-element-02d4b77,
body.page-id-60 .elementor-element-1bf6c95 {
	min-width: 0;
	max-width: 100%;
	overflow-x: clip;
}

body.page-id-60 .elementor-element-1bf6c95 {
	--e-n-carousel-swiper-slides-gap: 16px;
	position: relative;
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	justify-content: flex-start;
	column-gap: 20px;
	row-gap: 28px;
}

body.page-id-60 .elementor-element-1bf6c95 .e-n-carousel {
	order: 4;
	flex: 0 0 100%;
	width: 100%;
	max-width: 100%;
	padding-bottom: 0 !important;
	overflow: hidden;
}

body.page-id-60 .elementor-element-1bf6c95 .elementor-swiper-button-prev {
	order: 1;
}

body.page-id-60 .elementor-element-1bf6c95 .swiper-pagination {
	order: 2;
}

body.page-id-60 .elementor-element-1bf6c95 .elementor-swiper-button-next {
	order: 3;
}

body.page-id-60 .elementor-element.elementor-element-1bf6c95.elementor-widget-n-carousel :is(.swiper, .swiper-container) ~ .elementor-swiper-button-prev,
body.page-id-60 .elementor-element.elementor-element-1bf6c95.elementor-widget-n-carousel :is(.swiper, .swiper-container) ~ .elementor-swiper-button-next {
	position: static !important;
	inset: auto !important;
	top: auto !important;
	left: auto !important;
	right: auto !important;
	transform: none !important;
	width: auto;
	height: auto;
	margin: 0;
	padding: 0;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	color: #D52E14 !important;
	font-size: 28px;
	line-height: 1;
	cursor: pointer;
}

body.page-id-60 .elementor-element-1bf6c95 .elementor-swiper-button-prev svg,
body.page-id-60 .elementor-element-1bf6c95 .elementor-swiper-button-next svg {
	width: 28px;
	height: 28px;
	fill: #D52E14 !important;
}

body.page-id-60 .elementor-element-1bf6c95 .swiper-pagination {
	position: static !important;
	inset: auto !important;
	top: auto !important;
	bottom: auto !important;
	left: auto !important;
	transform: none !important;
	width: auto !important;
	height: auto;
	margin: 0;
	padding: 0;
	display: inline-flex !important;
	align-items: center;
	justify-content: flex-start;
	gap: 10px;
}

body.page-id-60 .elementor-element-1bf6c95 .swiper-pagination-bullet {
	width: 10px;
	height: 10px;
	margin: 0 !important;
	background: transparent !important;
	border: 2px solid #D52E14;
	opacity: 1;
	box-sizing: border-box;
}

body.page-id-60 .elementor-element-1bf6c95 .swiper-pagination-bullet-active {
	background: #D52E14 !important;
	border-color: #D52E14;
}

body.page-id-60 #company-carousel-timeline {
	position: absolute;
	left: 0;
	width: 100%;
	height: 1px;
	background-color: #D52E14;
	z-index: 5;
	pointer-events: none;
}

body.page-id-60 .elementor-element-1bf6c95 .swiper-slide .e-con-inner > [class*='e-flexbox-base'] {
	width: 100% !important;
	max-width: 100%;
	box-sizing: border-box;
}

body.page-id-60 .elementor-element-1bf6c95 .swiper-slide .e-image-base {
	display: block;
	width: 100%;
	height: auto;
	object-fit: cover;
}

body.page-id-60 .elementor-element-1bf6c95 hr.e-divider-base {
	appearance: none;
	border: 0;
	border-style: none;
	background-color: #D52E14;
	width: 40px;
	height: 9px;
	margin-block: 0 10px;
	margin-inline: 10px;
	padding: 0;
	display: block;
	position: relative;
	z-index: 6;
	box-sizing: border-box;
	box-shadow: none;
	outline: none;
	opacity: 1;
}

@media (max-width: 1600px) {
	body.page-id-60 .elementor-element-d189aaa {
		--padding-left: 80px;
		margin-left: 80px !important;
		width: calc(100% - 80px) !important;
		max-width: calc(100% - 80px) !important;
	}

	body.page-id-60 .elementor-element-1bf6c95 .e-heading-base {
		font-size: 24px !important;
		padding: 8px 12px !important;
	}

	body.page-id-60 .elementor-element-1bf6c95 .e-paragraph-base {
		font-size: 16px !important;
		line-height: 1.35 !important;
		padding-inline: 12px !important;
	}
}

@media (max-width: 1440px) {
	body.page-id-60 .elementor-element-d189aaa {
		--padding-left: 40px;
		margin-left: 60px !important;
		width: calc(100% - 60px) !important;
		max-width: calc(100% - 60px) !important;
	}

	body.page-id-60 .elementor-element-1bf6c95 .e-heading-base {
		font-size: 22px !important;
	}

	body.page-id-60 .elementor-element-1bf6c95 .e-paragraph-base {
		font-size: 15px !important;
	}
}

@media (max-width: 1280px) {
	body.page-id-60 .elementor-element-d189aaa {
		--padding-left: 24px;
		margin-left: 40px !important;
		width: calc(100% - 40px) !important;
		max-width: calc(100% - 40px) !important;
	}
}

/* Company: griglia sopra immagine team */
body.page-id-60 .company-grid {
	position: relative;
	z-index: 9;
}

/* Company: immagine team con sfumatura dal bianco verso trasparente (verso l'alto) */
body.page-id-60 .img-company {
	position: relative;
	overflow: hidden;
	background-color: #ffffff !important;
}

body.page-id-60 .img-company img {
	display: block;
	width: 100%;
	height: auto;
	-webkit-mask-image: linear-gradient(to top, transparent 0%, #000 45%);
	mask-image: linear-gradient(to top, transparent 0%, #000 45%);
}

/* Prodotti hero: testo sovrapposto all'immagine, allineato in basso a sinistra (come home) */
.elementor-58 .elementor-element.elementor-element-5ab33ab {
	--display: grid;
	display: grid !important;
	grid-template-columns: minmax(0, 1fr);
	grid-template-rows: minmax(0, auto);
	position: relative;
	overflow: hidden;
}

.elementor-58 .elementor-element.elementor-element-5ab33ab > .elementor-element-f06a8cf,
.elementor-58 .elementor-element.elementor-element-5ab33ab > .elementor-element-c09e864 {
	grid-column: 1;
	grid-row: 1;
	width: 100% !important;
	max-width: none !important;
	--width: 100% !important;
	align-self: stretch !important;
	justify-self: stretch !important;
	--align-self: stretch !important;
}

.elementor-58 .elementor-element.elementor-element-c09e864.title-bg {
	position: relative;
	z-index: 1;
	background-color: transparent !important;
}

.elementor-58 .elementor-element.elementor-element-c09e864.title-bg::after {
	content: '';
	position: absolute;
	right: 0;
	bottom: 0;
	left: 0;
	height: 45%;
	background: linear-gradient(to bottom, rgba(0, 87, 123, 0) 0%, #00577B 100%);
	pointer-events: none;
	z-index: 2;
}

.elementor-58 .elementor-element.elementor-element-c09e864 img {
	display: block;
	width: 100%;
	height: auto;
}

.elementor-58 .elementor-element.elementor-element-f06a8cf {
	z-index: 3;
	--display: flex;
	display: flex !important;
	flex-direction: column;
	justify-content: flex-end !important;
	align-items: flex-start !important;
	align-self: stretch !important;
	background: transparent !important;
	padding-bottom: clamp(48px, 8vw, 96px);
	pointer-events: none;
}

.elementor-58 .elementor-element.elementor-element-f06a8cf:not(.elementor-motion-effects-element-type-background),
.elementor-58 .elementor-element.elementor-element-f06a8cf > .elementor-motion-effects-container > .elementor-motion-effects-layer {
	background-color: transparent !important;
}

.elementor-58 .elementor-element.elementor-element-f06a8cf > .elementor-element {
	pointer-events: auto;
	width: 100%;
	max-width: 100%;
}

.elementor-58 .title-hero .elementor-heading-title {
	font-size: clamp(32px, 3.5vw, 56px);
	line-height: 1.15;
}

@media (max-width: 767px) {
	.elementor-58 .elementor-element.elementor-element-5ab33ab {
		--padding-left: 24px;
		--padding-right: 24px;
	}

	.elementor-58 .elementor-element.elementor-element-f06a8cf {
		padding-bottom: 40px;
	}

	.elementor-58 .title-hero .elementor-heading-title {
		font-size: 28px;
		line-height: 1.2;
	}
}

/* Prodotti: card con colore a riposo e immagine al hover */
body.page-id-58 .card-prodotti {
	--card-hover-scale-x: 1.12;
	--card-hover-scale-y: 1.22;
	overflow: visible;
	align-items: center !important;
	padding-block: clamp(24px, 3vw, 36px);
	margin-block: clamp(-12px, -1.5vw, -18px);
}

body.page-id-58 .card-prodotti > .e-con.e-child {
	position: relative;
	overflow: hidden;
	z-index: 1;
	flex: 1 1 0;
	min-width: 0;
}

body.page-id-58 .card-prodotti > .e-con.e-child:not(:nth-child(3))::before,
body.page-id-58 .card-prodotti > .e-con.e-child:not(:nth-child(3))::after {
	content: none;
}

body.page-id-58 .card-prodotti > .e-con.e-child:nth-child(3) {
	transform: scale(1);
	transform-origin: center center;
	transition:
		transform 0.45s cubic-bezier(0.4, 0, 0.2, 1),
		z-index 0s linear 0.45s;
}

body.page-id-58 .card-prodotti > .e-con.e-child:nth-child(3)::before {
	content: '';
	position: absolute;
	inset: 0;
	background-color: inherit;
	background-image: none;
	opacity: 1;
	transition: opacity 0.4s cubic-bezier(0.4, 0, 0.2, 1);
	pointer-events: none;
	z-index: 1;
}

body.page-id-58 .card-prodotti > .e-con.e-child:nth-child(3)::after {
	content: '';
	position: absolute;
	inset: 0;
	background-image: var(--card-hover-image, none);
	background-size: cover;
	background-position: center;
	background-repeat: no-repeat;
	opacity: 0;
	transition: opacity 0.4s cubic-bezier(0.4, 0, 0.2, 1);
	pointer-events: none;
	z-index: 0;
}

body.page-id-58 .card-prodotti > .e-con.e-child > .e-con-inner {
	position: relative;
	z-index: 2;
	height: 100%;
	min-height: 100%;
	box-sizing: border-box;
}

/* Prodotti card 3: layout interno */
body.page-id-58 .card-prodotti > .e-con.e-child .e-con-inner > [class*='e-flexbox-base']:first-child,
body.page-id-58 .card-prodotti > .e-con.e-child .e-con-inner > [class*='e-flexbox-base']:last-child {
	position: static;
}

body.page-id-58 .card-prodotti > .e-con.e-child:not(:nth-child(3)) h2.e-heading-base:nth-of-type(2) {
	display: none !important;
}

@media (hover: hover) {
	body.page-id-58 .card-prodotti > .e-con.e-child:nth-child(3):hover {
		transform: scale(var(--card-hover-scale-x), var(--card-hover-scale-y));
		z-index: 10;
		transition:
			transform 0.45s cubic-bezier(0.4, 0, 0.2, 1),
			z-index 0s linear 0s;
	}

	body.page-id-58 .card-prodotti > .e-con.e-child:nth-child(3):hover::before {
		opacity: 0;
	}

	body.page-id-58 .card-prodotti > .e-con.e-child:nth-child(3):hover::after {
		opacity: 1;
	}
}

/* Valvole di sicurezza hero: testo sovrapposto all'immagine, centrato */
.elementor-element.elementor-element-4dfffe1,
.elementor-element.elementor-element-18109c7 {
	--display: grid;
	display: grid !important;
	grid-template-columns: minmax(0, 1fr);
	grid-template-rows: minmax(0, auto);
	position: relative;
	overflow: hidden;
}

.elementor-element.elementor-element-4dfffe1 > .elementor-element-f1e0291,
.elementor-element.elementor-element-4dfffe1 > .elementor-element-6780184,
.elementor-element.elementor-element-18109c7 > .elementor-element-021d4b7,
.elementor-element.elementor-element-18109c7 > .elementor-element-b7d699f {
	grid-column: 1;
	grid-row: 1;
	width: 100% !important;
	max-width: none !important;
	--width: 100% !important;
	align-self: stretch !important;
	justify-self: stretch !important;
	--align-self: stretch !important;
}

.elementor-element.elementor-element-6780184.title-bg,
.elementor-element.elementor-element-b7d699f.title-bg {
	position: relative;
	z-index: 1;
	background-color: transparent !important;
}

.elementor-element.elementor-element-6780184.title-bg::after,
.elementor-element.elementor-element-b7d699f.title-bg::after {
	content: '';
	position: absolute;
	inset: 0;
	background: rgba(0, 0, 0, 0.28);
	pointer-events: none;
	z-index: 2;
}

.elementor-element.elementor-element-6780184 img,
.elementor-element.elementor-element-b7d699f img {
	display: block;
	width: 100%;
	height: auto;
}

.elementor-element.elementor-element-f1e0291,
.elementor-element.elementor-element-021d4b7 {
	z-index: 3;
	--display: flex;
	display: flex !important;
	flex-direction: column;
	justify-content: center !important;
	align-items: center !important;
	align-self: stretch !important;
	background: transparent !important;
	padding: clamp(48px, 8vw, 96px) clamp(24px, 5vw, 80px);
	pointer-events: none;
	text-align: center;
	color: #ffffff;
}

.elementor-element.elementor-element-f1e0291.title-bg,
.elementor-element.elementor-element-021d4b7.title-bg {
	background-color: transparent !important;
}

.elementor-element.elementor-element-f1e0291.title-bg::after,
.elementor-element.elementor-element-021d4b7.title-bg::after {
	content: none;
}

.elementor-element.elementor-element-f1e0291:not(.elementor-motion-effects-element-type-background),
.elementor-element.elementor-element-f1e0291 > .elementor-motion-effects-container > .elementor-motion-effects-layer,
.elementor-element.elementor-element-021d4b7:not(.elementor-motion-effects-element-type-background),
.elementor-element.elementor-element-021d4b7 > .elementor-motion-effects-container > .elementor-motion-effects-layer {
	background-color: transparent !important;
}

.elementor-element.elementor-element-f1e0291 > .elementor-element,
.elementor-element.elementor-element-f1e0291 > .e-paragraph-base,
.elementor-element.elementor-element-021d4b7 > .elementor-element,
.elementor-element.elementor-element-021d4b7 > .e-paragraph-base,
.elementor-element.elementor-element-021d4b7 > .e-svg-base {
	pointer-events: auto;
	width: 100%;
	max-width: min(720px, 90%);
	margin-left: auto;
	margin-right: auto;
}

.elementor-element.elementor-element-f1e0291 .title-hero .elementor-heading-title,
.elementor-element.elementor-element-021d4b7 .title-hero .elementor-heading-title {
	font-size: clamp(32px, 3.5vw, 56px);
	line-height: 1.15;
	color: #ffffff;
	text-align: center;
}

.elementor-element.elementor-element-f1e0291 .e-paragraph-base,
.elementor-element.elementor-element-021d4b7 .e-paragraph-base {
	color: #ffffff;
	text-align: center;
	margin: 0;
}

.elementor-element.elementor-element-f1e0291 [data-id="c3a957d"],
.elementor-element.elementor-element-021d4b7 [data-id="d4f8647"] {
	font-size: clamp(20px, 2vw, 28px);
	line-height: 1;
	margin: clamp(8px, 1.5vw, 16px) 0;
}

.elementor-element.elementor-element-f1e0291 [data-id="6e5c393"],
.elementor-element.elementor-element-021d4b7 [data-id="f8b480b"] {
	font-size: clamp(14px, 1.2vw, 18px);
	line-height: 1.55;
	margin-top: clamp(8px, 1.5vw, 16px);
}

@media (max-width: 767px) {
	.elementor-element.elementor-element-4dfffe1,
	.elementor-element.elementor-element-18109c7 {
		--padding-left: 24px;
		--padding-right: 24px;
	}

	.elementor-element.elementor-element-f1e0291,
	.elementor-element.elementor-element-021d4b7 {
		padding: 40px 24px;
	}

	.elementor-element.elementor-element-f1e0291 .title-hero .elementor-heading-title,
	.elementor-element.elementor-element-021d4b7 .title-hero .elementor-heading-title {
		font-size: 28px;
		line-height: 1.2;
	}
}

/* Home Chi Siamo: quadrato rosso decorativo dietro l'immagine */
.elementor-2 .elementor-element.elementor-element-a31d11e,
.elementor-2 .elementor-element.elementor-element-dddb934 {
	overflow: visible;
}

.elementor-2 .elementor-element.elementor-element-dddb934 {
	--chi-siamo-accent-size: clamp(140px, 28vw, 280px);
	--chi-siamo-accent-offset: clamp(48px, 9vw, 96px);
	position: relative;
	align-self: flex-start;
	isolation: isolate;
}

/* Elementor usa già ::before sui container .e-con per gli overlay di sfondo */
.elementor-2 .elementor-element.elementor-element-dddb934::after {
	content: '';
	position: absolute;
	top: 0;
	left: 0;
	width: var(--chi-siamo-accent-size);
	height: var(--chi-siamo-accent-size);
	background-color: #D52E14;
	z-index: 0;
	pointer-events: none;
}

.elementor-2 .elementor-element.elementor-element-dddb934 img {
	position: relative;
	z-index: 1;
	display: block;
	width: 100%;
	height: auto;
	margin-top: var(--chi-siamo-accent-offset);
	margin-left: var(--chi-siamo-accent-offset);
}

@media (max-width: 767px) {
	.elementor-2 .elementor-element.elementor-element-dddb934 {
		--chi-siamo-accent-size: clamp(100px, 32vw, 160px);
		--chi-siamo-accent-offset: clamp(32px, 8vw, 56px);
	}
}

/* Sidebar categorie menu */
.airtek-menu-shortcode {
	--airtek-menu-marker-size: 20px;
	--airtek-menu-marker-gap: 10px;
}

.airtek-menu-shortcode > .menu {
	list-style: none;
	margin: 0;
	padding: 0;
}

.airtek-menu-shortcode > .menu > .menu-item:not(:last-child) {
	padding-bottom: 20px;
	margin-bottom: 20px;
	border-bottom: 1px solid #ffffff;
}

.airtek-menu-shortcode > .menu > .menu-item > a {
	display: inline-flex;
	align-items: center;
	gap: var(--airtek-menu-marker-gap);
	font-family: "Bebas Neue", sans-serif;
	font-size: 25px;
	font-weight: 400;
	line-height: 1.2;
	color: #ffffff;
	text-decoration: none;
}

.airtek-menu-shortcode > .menu > .menu-item > a:hover,
.airtek-menu-shortcode > .menu > .menu-item > a:focus {
	color: #D52E14;
}

.airtek-menu-shortcode > .menu > .menu-item > a::before {
	content: "→";
	font-family: "Bebas Neue", sans-serif;
	font-size: 20px;
	line-height: 1;
	color: #ffffff;
	flex-shrink: 0;
	min-width: var(--airtek-menu-marker-size);
}

.airtek-menu-shortcode > .menu > .menu-item > a:hover::before,
.airtek-menu-shortcode > .menu > .menu-item > a:focus::before {
	color: #D52E14;
}

.airtek-menu-shortcode > .menu > .menu-item.current-menu-item > a,
.airtek-menu-shortcode > .menu > .menu-item.current-menu-ancestor > a,
.airtek-menu-shortcode > .menu > .menu-item.current-menu-parent > a,
.airtek-menu-shortcode > .menu > .menu-item.current-page-ancestor > a,
.airtek-menu-shortcode > .menu > .menu-item.current-page-parent > a,
.airtek-menu-shortcode > .menu > .menu-item.current_page_item > a,
.airtek-menu-shortcode > .menu > .menu-item.current_page_parent > a,
.airtek-menu-shortcode > .menu > .menu-item.current_page_ancestor > a {
	font-weight: 700;
	color: #ffffff;
}

.airtek-menu-shortcode > .menu > .menu-item.current-menu-item > a:hover,
.airtek-menu-shortcode > .menu > .menu-item.current-menu-item > a:focus,
.airtek-menu-shortcode > .menu > .menu-item.current-menu-ancestor > a:hover,
.airtek-menu-shortcode > .menu > .menu-item.current-menu-ancestor > a:focus,
.airtek-menu-shortcode > .menu > .menu-item.current-menu-parent > a:hover,
.airtek-menu-shortcode > .menu > .menu-item.current-menu-parent > a:focus,
.airtek-menu-shortcode > .menu > .menu-item.current-page-ancestor > a:hover,
.airtek-menu-shortcode > .menu > .menu-item.current-page-ancestor > a:focus,
.airtek-menu-shortcode > .menu > .menu-item.current-page-parent > a:hover,
.airtek-menu-shortcode > .menu > .menu-item.current-page-parent > a:focus,
.airtek-menu-shortcode > .menu > .menu-item.current_page_item > a:hover,
.airtek-menu-shortcode > .menu > .menu-item.current_page_item > a:focus,
.airtek-menu-shortcode > .menu > .menu-item.current_page_parent > a:hover,
.airtek-menu-shortcode > .menu > .menu-item.current_page_parent > a:focus,
.airtek-menu-shortcode > .menu > .menu-item.current_page_ancestor > a:hover,
.airtek-menu-shortcode > .menu > .menu-item.current_page_ancestor > a:focus {
	color: #D52E14;
}

.airtek-menu-shortcode > .menu > .menu-item.current-menu-item > a:hover::before,
.airtek-menu-shortcode > .menu > .menu-item.current-menu-item > a:focus::before,
.airtek-menu-shortcode > .menu > .menu-item.current-menu-ancestor > a:hover::before,
.airtek-menu-shortcode > .menu > .menu-item.current-menu-ancestor > a:focus::before,
.airtek-menu-shortcode > .menu > .menu-item.current-menu-parent > a:hover::before,
.airtek-menu-shortcode > .menu > .menu-item.current-menu-parent > a:focus::before,
.airtek-menu-shortcode > .menu > .menu-item.current-page-ancestor > a:hover::before,
.airtek-menu-shortcode > .menu > .menu-item.current-page-ancestor > a:focus::before,
.airtek-menu-shortcode > .menu > .menu-item.current-page-parent > a:hover::before,
.airtek-menu-shortcode > .menu > .menu-item.current-page-parent > a:focus::before,
.airtek-menu-shortcode > .menu > .menu-item.current_page_item > a:hover::before,
.airtek-menu-shortcode > .menu > .menu-item.current_page_item > a:focus::before,
.airtek-menu-shortcode > .menu > .menu-item.current_page_parent > a:hover::before,
.airtek-menu-shortcode > .menu > .menu-item.current_page_parent > a:focus::before,
.airtek-menu-shortcode > .menu > .menu-item.current_page_ancestor > a:hover::before,
.airtek-menu-shortcode > .menu > .menu-item.current_page_ancestor > a:focus::before {
	color: #D52E14;
}

.airtek-menu-shortcode .sub-menu {
	list-style: none;
	margin: 16px 0 0;
	padding: 0;
}

.airtek-menu-shortcode .sub-menu .menu-item + .menu-item {
	margin-top: 16px;
}

.airtek-menu-shortcode .sub-menu .menu-item > a {
	display: inline-flex;
	align-items: center;
	gap: var(--airtek-menu-marker-gap);
	font-family: "Bebas Neue", sans-serif;
	font-size: 23px;
	font-weight: 400;
	line-height: 1.2;
	color: #ffffff;
	text-decoration: none;
}

.airtek-menu-shortcode .sub-menu .menu-item > a:hover,
.airtek-menu-shortcode .sub-menu .menu-item > a:focus {
	color: #D52E14;
}

.airtek-menu-shortcode .sub-menu .menu-item:not(.current-menu-item) > a::before {
	content: "";
	display: block;
	width: var(--airtek-menu-marker-size);
	flex-shrink: 0;
}

.airtek-menu-shortcode .sub-menu .menu-item.current-menu-item > a,
.airtek-menu-shortcode .sub-menu .menu-item.current_page_item > a {
	font-weight: 700;
	color: #ffffff;
}

.airtek-menu-shortcode .sub-menu .menu-item.current-menu-item > a:hover,
.airtek-menu-shortcode .sub-menu .menu-item.current-menu-item > a:focus,
.airtek-menu-shortcode .sub-menu .menu-item.current_page_item > a:hover,
.airtek-menu-shortcode .sub-menu .menu-item.current_page_item > a:focus {
	color: #D52E14;
}

.airtek-menu-shortcode .sub-menu .menu-item.current-menu-item > a::before {
	content: "";
	width: var(--airtek-menu-marker-size);
	height: 7px;
	flex-shrink: 0;
	align-self: center;
	background-image: radial-gradient(circle, #ffffff 3.5px, transparent 3.5px);
	background-size: 7px 7px;
	background-position: right center;
	background-repeat: no-repeat;
}

.airtek-menu-shortcode .sub-menu .menu-item.current-menu-item > a:hover::before,
.airtek-menu-shortcode .sub-menu .menu-item.current-menu-item > a:focus::before,
.airtek-menu-shortcode .sub-menu .menu-item.current_page_item > a:hover::before,
.airtek-menu-shortcode .sub-menu .menu-item.current_page_item > a:focus::before {
	background-image: radial-gradient(circle, #D52E14 3.5px, transparent 3.5px);
}

/* Contact Form 7 — layout contatti */
body.page-id-62 .elementor-element-e48e1d2 {
	--width: 100%;
	--flex-grow: 1;
	--flex-shrink: 1;
	flex-grow: 1;
	flex-shrink: 1;
	align-self: stretch;
	width: 100% !important;
	max-width: 100%;
}

body.page-id-62 .elementor-element-e48e1d2 .elementor-shortcode,
body.page-id-62 .elementor-element-e48e1d2 .wpcf7,
body.page-id-62 .elementor-element-e48e1d2 .wpcf7 form {
	display: block;
	width: 100%;
	max-width: 100%;
}

.wpcf7:has(.contact-form-001),
.wpcf7 form:has(.contact-form-001) {
	display: block;
	width: 100%;
	max-width: 100%;
}

.contact-form-001 {
	--cf7-line-color: #D52E14;
	--cf7-field-gap: 10px;
	display: grid;
	grid-template-columns: 1fr auto;
	width: 100%;
	max-width: 100%;
	box-sizing: border-box;
}

.contact-form-001 p {
	margin: 0;
}

.contact-form-001 > p:has(> label) {
	grid-column: 1 / -1;
}

.contact-form-001 label:has(> .wpcf7-form-control-wrap) {
	display: flex;
	flex-direction: column;
	width: 100%;
	gap: var(--cf7-field-gap);
	border-top: 1px solid var(--cf7-line-color);
	padding: 14px 0 18px;
	font-family: "Bebas Neue", sans-serif;
	font-size: 22px;
	font-weight: 400;
	line-height: 1.1;
	letter-spacing: 0.9px;
	text-transform: uppercase;
	color: #000000;
}

.contact-form-001 label:has(textarea) {
	border-bottom: 1px solid var(--cf7-line-color);
	padding-bottom: 24px;
}

.contact-form-001 .wpcf7-form-control-wrap {
	display: block;
	width: 100%;
}

.contact-form-001 input[type="text"],
.contact-form-001 input[type="email"],
.contact-form-001 textarea {
	display: block;
	width: 100%;
	max-width: 100%;
	box-sizing: border-box;
	margin: 0;
	padding: 6px 0;
	border: none;
	border-radius: 0;
	background: transparent;
	box-shadow: none;
	font-family: "Montserrat", sans-serif;
	font-size: 16px;
	font-weight: 400;
	line-height: 1.4;
	color: #000000;
	outline: none;
	-webkit-appearance: none;
	appearance: none;
}

.contact-form-001 input[type="text"],
.contact-form-001 input[type="email"] {
	min-height: 28px;
}

.contact-form-001 textarea {
	min-height: 120px;
	resize: vertical;
}

.contact-form-001 input[type="text"]:focus,
.contact-form-001 input[type="email"]:focus,
.contact-form-001 textarea:focus {
	outline: none;
	box-shadow: none;
}

.contact-form-001 > p:has(.wpcf7-checkbox) {
	grid-column: 1;
	align-self: center;
	margin-top: 28px;
}

.contact-form-001 > p:has(.wpcf7-submit) {
	grid-column: 2;
	justify-self: end;
	align-self: center;
	margin-top: 28px;
}

.contact-form-001 .wpcf7-checkbox {
	display: block;
	margin: 0;
}

.contact-form-001 .wpcf7-list-item {
	margin: 0;
}

.contact-form-001 .wpcf7-list-item label {
	display: inline-flex;
	align-items: center;
	gap: 10px;
	font-family: "Montserrat", sans-serif;
	font-size: 14px;
	font-weight: 400;
	line-height: 1.4;
	text-transform: none;
	letter-spacing: 0;
	color: #000000;
	cursor: pointer;
}

.contact-form-001 input[type="checkbox"] {
	width: 16px;
	height: 16px;
	margin: 0;
	flex-shrink: 0;
	border: 1px solid #000000;
	border-radius: 0;
	background-color: #ffffff;
	accent-color: #000000;
	cursor: pointer;
	-webkit-appearance: none;
	appearance: none;
}

.contact-form-001 input[type="checkbox"]:checked {
	background-color: #000000;
	box-shadow: inset 0 0 0 2px #ffffff;
}

.contact-form-001 input[type="submit"] {
	display: inline-block;
	margin: 0;
	padding: 14px 36px;
	border: none;
	border-radius: 0;
	background-color: #ffffff;
	font-family: "Bebas Neue", sans-serif;
	font-size: 20px;
	font-weight: 700;
	line-height: 1;
	letter-spacing: 0.9px;
	text-transform: uppercase;
	color: #000000;
	cursor: pointer;
	transition: opacity 0.2s ease;
}

.contact-form-001 input[type="submit"]:hover,
.contact-form-001 input[type="submit"]:focus {
	opacity: 0.85;
}

.contact-form-001 .wpcf7-not-valid-tip {
	font-family: "Montserrat", sans-serif;
	font-size: 12px;
	color: #D52E14;
	margin-top: 6px;
}

.wpcf7 form:has(.contact-form-001) .wpcf7-response-output {
	width: 100%;
	max-width: 100%;
	box-sizing: border-box;
	margin: 20px 0 0;
	padding: 12px 16px;
	border: 1px solid var(--cf7-line-color);
	font-family: "Montserrat", sans-serif;
	font-size: 14px;
}

@media (max-width: 767px) {
	.contact-form-001 {
		grid-template-columns: 1fr;
	}

	.contact-form-001 > p:has(.wpcf7-checkbox),
	.contact-form-001 > p:has(.wpcf7-submit) {
		grid-column: 1;
		justify-self: stretch;
	}

	.contact-form-001 > p:has(.wpcf7-submit) {
		margin-top: 16px;
	}

	.contact-form-001 input[type="submit"] {
		width: 100%;
		text-align: center;
	}
}

/* Back to top */
.airtek-back-to-top {
	position: fixed;
	right: 24px;
	bottom: 24px;
	z-index: 1001;
	display: flex;
	align-items: center;
	justify-content: center;
	width: 52px;
	height: 52px;
	padding: 0;
	border: 0;
	border-radius: 50%;
	background-color: #000;
	color: #fff;
	cursor: pointer;
	transition: background-color 0.2s ease;
}

.airtek-back-to-top:hover,
.airtek-back-to-top:focus-visible {
	background-color: #d52e14;
	outline: none;
}

.airtek-back-to-top.is-reset,
.airtek-back-to-top.is-reset:hover,
.airtek-back-to-top.is-reset:focus-visible {
	background-color: #000;
}

.airtek-back-to-top svg {
	display: block;
	width: 28px;
	height: 28px;
}

@media (max-width: 767px) {
	.airtek-back-to-top {
		right: 16px;
		bottom: 16px;
		width: 48px;
		height: 48px;
	}
}

/* Fixed contact link — mid-page envelope */
.airtek-contact-float {
	position: fixed;
	top: 50%;
	right: 24px;
	z-index: 1001;
	display: flex;
	align-items: center;
	justify-content: center;
	width: 52px;
	height: 52px;
	border-radius: 50%;
	background-color: #d52e14;
	color: #fff;
	text-decoration: none;
	box-shadow: 0 4px 16px rgba(213, 46, 20, 0.3);
	transform: translateY(-50%);
	transition:
		transform 0.4s cubic-bezier(0.34, 1.56, 0.64, 1),
		background-color 0.3s ease,
		box-shadow 0.3s ease;
}

.airtek-contact-float:hover,
.airtek-contact-float:focus-visible {
	background-color: #000;
	color: #fff;
	transform: translateY(-50%) scale(1.1);
	box-shadow: 0 10px 28px rgba(0, 0, 0, 0.35);
	outline: none;
}

.airtek-contact-float__label {
	position: absolute;
	top: 50%;
	right: calc(100% + 14px);
	display: flex;
	align-items: center;
	height: 52px;
	padding: 0 24px;
	border-radius: 999px;
	background-color: #d52e14;
	color: #fff;
	font-size: 0.8125rem;
	font-weight: 600;
	letter-spacing: 0.02em;
	white-space: nowrap;
	opacity: 0;
	transform: translateY(-50%) translateX(10px);
	pointer-events: none;
	transition:
		opacity 0.3s ease,
		transform 0.35s cubic-bezier(0.34, 1.56, 0.64, 1),
		background-color 0.3s ease;
}

.airtek-contact-float:hover .airtek-contact-float__label,
.airtek-contact-float:focus-visible .airtek-contact-float__label {
	opacity: 1;
	transform: translateY(-50%) translateX(0);
	background-color: #000;
}

.airtek-contact-float__icon {
	display: flex;
	align-items: center;
	justify-content: center;
}

.airtek-contact-float__icon svg {
	display: block;
	width: 26px;
	height: 26px;
}

@media (max-width: 767px) {
	.airtek-contact-float {
		right: 16px;
		width: 48px;
		height: 48px;
	}

	.airtek-contact-float__label {
		display: none;
	}
}

@media (prefers-reduced-motion: reduce) {
	.airtek-contact-float,
	.airtek-contact-float__label {
		transition: none;
	}
}
