/**
 * Masiello & Partners
 * Kit: inchiostro, pietra, testo, accento. Display Fraunces, UI Jost.
 * Breakpoint Elementor: tablet <=1024px, mobile <=767px.
 * Il desktop resta quello già composto.
 */

.elementor-kit-6 {
	--e-global-color-primary: #15130f;
	--e-global-color-secondary: #6e6858;
	--e-global-color-text: #262319;
	--e-global-color-accent: #15130f;
	--e-global-color-cream: #f2ece0;
	--e-global-color-paper: #fbf9f4;
	--e-global-color-sand: #e8e1d2;
	--e-global-color-line: #cfc7b4;
	--e-global-typography-primary-font-family: "Fraunces", serif;
	--e-global-typography-primary-font-weight: 500;
	--e-global-typography-secondary-font-family: "Fraunces", serif;
	--e-global-typography-secondary-font-weight: 400;
	--e-global-typography-text-font-family: "Jost", sans-serif;
	--e-global-typography-text-font-weight: 400;
	--e-global-typography-accent-font-family: "Jost", sans-serif;
	--e-global-typography-accent-font-weight: 500;
}

.elementor-kit-6 e-page-transition {
	background-color: #f2ece0;
}

/* Menu e lingue sono UI, non titoli. */
.elementor-widget-nav-menu .elementor-nav-menu .elementor-item,
.elementor-widget-nav-menu .elementor-nav-menu--dropdown .elementor-item,
.elementor-widget-polylang-language-switcher .cpel-switcher__lang a {
	font-family: "Jost", sans-serif;
	font-weight: 400;
}

.elementor-location-header .elementor-element.elementor-element-c07bba4 .elementor-menu-toggle {
	background-color: transparent;
	border-radius: 0;
	color: #15130f;
}

.elementor-location-header .elementor-element-c07bba4 .elementor-nav-menu--dropdown {
	background-color: #f2ece0;
	border-top: 1px solid #cfc7b4;
}

.elementor-location-header .elementor-element-c07bba4 .elementor-nav-menu--dropdown a {
	color: #15130f;
	font-size: 13px;
	letter-spacing: 0.08em;
}

.elementor-location-header .elementor-element-c07bba4 .elementor-nav-menu--dropdown a:hover,
.elementor-location-header .elementor-element-c07bba4 .elementor-nav-menu--dropdown a:focus,
.elementor-location-header .elementor-element-c07bba4 .elementor-nav-menu--dropdown a.elementor-item-active {
	background-color: #e8e1d2;
	color: #15130f;
}

.masiello-menu-backdrop {
	position: fixed;
	inset: 0;
	z-index: 1090;
	margin: 0;
	padding: 0;
	border: 0;
	background: rgba(21, 19, 15, 0.4);
	cursor: pointer;
}

.masiello-menu-backdrop[hidden] {
	display: none !important;
}

.elementor-2 .masiello-hero {
	--padding-top: 0px;
	--padding-right: 0px;
	--padding-bottom: 0px;
	--padding-left: 0px;
	--gap: 0px;
	--align-items: stretch;
}

.elementor-2 .masiello-hero-copy {
	--padding-top: 88px;
	--padding-bottom: 88px;
	--padding-left: 72px;
	--padding-right: 48px;
	--width: 58%;
	justify-content: center;
}

.masiello-scg-panel {
	background-color: #15130f;
	align-self: stretch;
}

.elementor-2 .masiello-scg-panel {
	--width: 42%;
	--padding-top: 88px;
	--padding-right: 72px;
	--padding-bottom: 88px;
	--padding-left: 48px;
	min-height: 100%;
}

.masiello-scg-panel .elementor-widget-text-editor {
	color: #f2ece0;
}

.elementor-2 .masiello-scg-kicker .elementor-widget-container {
	font-size: 14px;
	letter-spacing: 0.18em;
}

.elementor-2 .masiello-scg-title .elementor-widget-container {
	font-size: 46px;
	line-height: 1.18;
	letter-spacing: 0.1em;
}

.elementor-2 .masiello-scg-end .elementor-widget-container {
	font-size: 15px;
	letter-spacing: 0.14em;
}

.elementor-location-footer .elementor-element-620c3128 {
	border-top: 1px solid #cfc7b4;
}

.elementor-location-footer .elementor-element-277cd3a2 a {
	color: inherit;
	text-decoration: none;
}

.elementor-location-footer .elementor-element-277cd3a2 a:hover {
	text-decoration: underline;
}

.elementor-location-header .elementor-element.elementor-element-12f960b9 {
	--padding-left: 72px;
	--padding-right: 72px;
	width: 100%;
	max-width: 100%;
}

.elementor-location-header .masiello-header-start,
.elementor-location-header .masiello-header-end {
	--flex-direction: row;
	flex-direction: row;
	--align-items: center;
	align-items: center;
	--flex-wrap: nowrap;
	flex-wrap: nowrap;
	--width: auto;
	width: auto;
	max-width: none;
}

.elementor-location-header .masiello-header-start {
	--justify-content: flex-start;
	justify-content: flex-start;
	--gap: 28px;
	flex: 1 1 auto;
}

.elementor-location-header .masiello-header-end {
	--justify-content: flex-end;
	justify-content: flex-end;
	--gap: 16px;
	flex: 0 0 auto;
}

.elementor-location-header .elementor-element-37942f3e,
.elementor-location-header .elementor-element-37942f3e > .e-con-inner {
	--flex-wrap: nowrap;
	flex-wrap: nowrap;
	overflow: visible;
}

.elementor-location-header .elementor-element-5d6f87b .cpel-switcher__name,
.elementor-location-header .elementor-element-5d6f87b .cpel-switcher__code {
	display: none !important;
}

.elementor-location-header .elementor-element-5d6f87b .cpel-switcher__list {
	display: flex;
	flex-direction: row;
	align-items: center;
	gap: 8px;
	margin: 0;
	padding: 0;
}

.elementor-location-header .elementor-element-5d6f87b .cpel-switcher__lang a {
	display: flex;
	align-items: center;
	padding: 0;
	line-height: 0;
}

.elementor-location-header .elementor-element-5d6f87b .cpel-switcher__flag,
.elementor-location-header .elementor-element-5d6f87b img {
	width: 22px;
	height: auto;
	display: block;
}

.elementor-location-footer .elementor-element.elementor-element-620c3128 {
	--padding-left: 72px;
	--padding-right: 72px;
	width: 100%;
	max-width: 100%;
}

/* Tablet: le colonne editoriali da desktop (680px, rientro 220px) non ci stanno. */
@media (max-width: 1024px) {
	.elementor-location-header .elementor-element.elementor-element-12f960b9 {
		--padding-left: 32px;
		--padding-right: 32px;
		position: relative;
		overflow: visible;
	}

	.elementor-location-footer .elementor-element.elementor-element-620c3128 {
		--padding-left: 32px;
		--padding-right: 32px;
	}

	.elementor-location-header .elementor-element.elementor-element-37942f3e,
	.elementor-location-header .elementor-element.elementor-element-37942f3e > .e-con-inner {
		--flex-wrap: nowrap;
		flex-wrap: nowrap;
		--justify-content: space-between;
		justify-content: space-between;
		align-items: center;
		width: 100%;
		position: static;
	}

	.elementor-location-header .elementor-element.elementor-element-c07bba4,
	.elementor-location-header .elementor-element.elementor-element-c07bba4 .elementor-widget-container {
		position: static;
		width: auto;
		margin-left: 0;
	}

	.elementor-location-header .elementor-element.elementor-element-c07bba4 .elementor-menu-toggle {
		position: static;
		z-index: 1002;
		margin: 0;
		transform: none;
	}

	.elementor-location-header .elementor-nav-menu--toggle .elementor-menu-toggle + .elementor-nav-menu__container {
		position: fixed;
		top: 0;
		right: 0;
		bottom: 0;
		left: auto;
		width: min(360px, 88vw);
		height: 100dvh;
		max-height: none !important;
		margin: 0;
		padding: 96px 28px 32px;
		background-color: #f2ece0;
		border: 0;
		border-left: 1px solid #cfc7b4;
		overflow-y: auto !important;
		z-index: 1001;
		transform: translateX(100%) !important;
		transition: transform 0.35s ease;
		animation: none !important;
		pointer-events: none;
	}

	.elementor-location-header .elementor-nav-menu--toggle .elementor-menu-toggle.elementor-active + .elementor-nav-menu__container {
		transform: translateX(0) !important;
		pointer-events: auto;
	}

	.elementor-location-header .elementor-nav-menu--dropdown .elementor-nav-menu {
		display: flex;
		flex-direction: column;
		gap: 4px;
	}

	.elementor-location-header .elementor-nav-menu--dropdown .elementor-item {
		display: block;
		padding: 14px 0;
	}

	body.masiello-menu-open .elementor-location-header,
	body.masiello-menu-open .elementor-location-header .elementor-element.elementor-element-12f960b9 {
		position: relative;
		z-index: 1100;
	}

	body.masiello-menu-open {
		overflow: hidden;
	}

	.elementor-location-header .masiello-header-start {
		--gap: 12px;
	}

	.elementor-location-header .masiello-header-end {
		--gap: 12px;
	}

	.elementor-2 .elementor-element.elementor-element-9100b88,
	.elementor-2 .elementor-element.elementor-element-9100b88 > .e-con-inner,
	.elementor-2 .elementor-element.elementor-element-62d88ed2,
	.elementor-2 .elementor-element.elementor-element-62d88ed2 > .e-con-inner,
	.elementor-2 .elementor-element.elementor-element-cf15be0,
	.elementor-2 .elementor-element.elementor-element-cf15be0 > .e-con-inner,
	.elementor-2 .elementor-element.elementor-element-4a51257,
	.elementor-2 .elementor-element.elementor-element-4a51257 > .e-con-inner,
	.elementor-2 .elementor-element.elementor-element-893fc60,
	.elementor-2 .elementor-element.elementor-element-893fc60 > .e-con-inner {
		--flex-direction: column;
		flex-direction: column;
		--min-height: 0px;
		--padding-left: 32px;
		--padding-right: 32px;
	}

	.elementor-2 .elementor-element.elementor-element-8521b1c,
	.elementor-2 .elementor-element.elementor-element-8cf7d1d,
	.elementor-2 .elementor-element.elementor-element-36c19519,
	.elementor-2 .elementor-element.elementor-element-88bccfb,
	.elementor-2 .elementor-element.elementor-element-2cdae6e,
	.elementor-2 .elementor-element.elementor-element-51a5ac4,
	.elementor-2 .elementor-element.elementor-element-1cbf749,
	.elementor-2 .elementor-element.elementor-element-61c3710,
	.elementor-2 .elementor-element.elementor-element-7af1abb,
	.elementor-2 .elementor-element.elementor-element-7c2f5b7 {
		--width: 100%;
		--content-width: 100%;
		width: 100%;
		max-width: 100%;
	}

	.elementor-2 .elementor-element.elementor-element-8521b1c {
		--padding-top: 48px;
		--padding-bottom: 40px;
		--padding-left: 8px;
		--padding-right: 8px;
	}

	.elementor-2 .elementor-element.elementor-element-8cf7d1d {
		--padding-top: 28px;
		--padding-bottom: 28px;
		--padding-left: 24px;
		--padding-right: 24px;
	}

	.elementor-2 .elementor-element.elementor-element-36c19519,
	.elementor-2 .elementor-element.elementor-element-88bccfb,
	.elementor-2 .elementor-element.elementor-element-2cdae6e,
	.elementor-2 .elementor-element.elementor-element-51a5ac4 {
		--padding-left: 0px;
	}

	.elementor-2 .elementor-element.elementor-element-1cbf749,
	.elementor-2 .elementor-element.elementor-element-61c3710,
	.elementor-2 .elementor-element.elementor-element-7af1abb,
	.elementor-2 .elementor-element.elementor-element-7c2f5b7 {
		--padding-right: 0px;
		--padding-top: 8px;
	}

	.elementor-2 .elementor-element.elementor-element-0a48cc4,
	.elementor-2 .elementor-element.elementor-element-110beda5 {
		max-width: 100%;
		--container-widget-width: 100%;
	}

	.elementor-2 .elementor-element.elementor-element-f6274a1,
	.elementor-2 .elementor-element.elementor-element-579c0b2,
	.elementor-2 .elementor-element.elementor-element-a06ed1c,
	.elementor-2 .elementor-element.elementor-element-c316f18,
	.elementor-2 .elementor-element.elementor-element-b5bd27d {
		--padding-left: 32px;
		--padding-right: 32px;
	}

	.elementor-2 .elementor-element.elementor-element-b3cf5f9,
	.elementor-2 .elementor-element.elementor-element-1d4e294,
	.elementor-2 .elementor-element.elementor-element-521886f {
		--padding-top: 64px;
		--padding-bottom: 64px;
		--padding-left: 32px;
		--padding-right: 32px;
	}

	.elementor-2 .elementor-element.elementor-element-81ff068 {
		--padding-left: 32px;
		--padding-right: 32px;
		--padding-bottom: 48px;
	}

	.elementor-2 .elementor-element.elementor-element-715e28aa .elementor-heading-title,
	.elementor-2 .elementor-element.elementor-element-15dad7c .elementor-heading-title,
	.elementor-2 .elementor-element.elementor-element-3199916 .elementor-heading-title,
	.elementor-2 .elementor-element.elementor-element-b4b9e2f .elementor-heading-title,
	.elementor-2 .elementor-element.elementor-element-5f4e9dd .elementor-heading-title,
	.elementor-2 .elementor-element.elementor-element-7ae345e .elementor-heading-title,
	.elementor-2 .elementor-element.elementor-element-c469b31 .elementor-heading-title {
		font-size: 30px;
	}

	.elementor-2 .elementor-element.elementor-element-ff01228 .elementor-heading-title,
	.elementor-2 .elementor-element.elementor-element-4218807 .elementor-heading-title,
	.elementor-2 .elementor-element.elementor-element-bf068dc .elementor-heading-title,
	.elementor-27 .elementor-element.elementor-element-605d7dbf .elementor-heading-title,
	.elementor-27 .elementor-element.elementor-element-4d477d47 .elementor-heading-title,
	.elementor-27 .elementor-element.elementor-element-60414f1d .elementor-heading-title {
		font-size: 44px;
	}

	.elementor-2 .elementor-element.elementor-element-1e0f8847 .elementor-heading-title,
	.elementor-2 .elementor-element.elementor-element-f882fa6 .elementor-heading-title,
	.elementor-2 .elementor-element.elementor-element-b3befdf .elementor-heading-title {
		font-size: 28px;
	}

	.elementor .e-0eb046a-15e5514 {
		font-size: 40px;
	}

	.elementor .e-975c76c-25d5df4 {
		font-size: 28px;
	}

	.elementor-7 .elementor-element.elementor-element-1bb15eff .elementor-heading-title,
	.elementor-29 .elementor-element.elementor-element-2a3faa5e .elementor-heading-title {
		font-size: 36px;
	}

	.elementor-27 .elementor-element.elementor-element-3226c7a2 .elementor-heading-title {
		font-size: 32px;
	}

	.elementor-7 .elementor-element.elementor-element-5fec619,
	.elementor-7 .elementor-element.elementor-element-393f7b4,
	.elementor-29 .elementor-element.elementor-element-6284d474,
	.elementor-29 .elementor-element.elementor-element-700a9999,
	.elementor-27 .elementor-element.elementor-element-2e26a60b {
		--padding-left: 32px;
		--padding-right: 32px;
	}

	.elementor-location-footer .elementor-element.elementor-element-75055c4e,
	.elementor-location-footer .elementor-element.elementor-element-75055c4e > .e-con-inner {
		--flex-direction: column;
		flex-direction: column;
		--flex-wrap: wrap;
		--gap: 28px 28px;
	}

	.elementor-location-footer .elementor-element.elementor-element-2574bee7,
	.elementor-location-footer .elementor-element.elementor-element-217b037a,
	.elementor-location-footer .elementor-element.elementor-element-164d92fb {
		--width: 100%;
		width: 100%;
		max-width: 100%;
	}

}

/* Mobile: una colonna, margini da 20px, titoli che non sforano. */
@media (max-width: 767px) {
	.elementor-location-header .elementor-element.elementor-element-12f960b9 {
		--padding-left: 20px;
		--padding-right: 20px;
	}

	.elementor-location-footer .elementor-element.elementor-element-620c3128,
	.elementor-2 .elementor-element.elementor-element-9100b88,
	.elementor-2 .elementor-element.elementor-element-62d88ed2,
	.elementor-2 .elementor-element.elementor-element-cf15be0,
	.elementor-2 .elementor-element.elementor-element-4a51257,
	.elementor-2 .elementor-element.elementor-element-893fc60,
	.elementor-2 .elementor-element.elementor-element-f6274a1,
	.elementor-2 .elementor-element.elementor-element-579c0b2,
	.elementor-2 .elementor-element.elementor-element-a06ed1c,
	.elementor-2 .elementor-element.elementor-element-c316f18,
	.elementor-2 .elementor-element.elementor-element-b5bd27d,
	.elementor-2 .elementor-element.elementor-element-b3cf5f9,
	.elementor-2 .elementor-element.elementor-element-1d4e294,
	.elementor-2 .elementor-element.elementor-element-521886f,
	.elementor-2 .elementor-element.elementor-element-81ff068,
	.elementor-7 .elementor-element.elementor-element-5fec619,
	.elementor-7 .elementor-element.elementor-element-393f7b4,
	.elementor-29 .elementor-element.elementor-element-6284d474,
	.elementor-29 .elementor-element.elementor-element-700a9999,
	.elementor-27 .elementor-element.elementor-element-2e26a60b {
		--padding-left: 20px;
		--padding-right: 20px;
	}

	.elementor-2 .masiello-home-split,
	.elementor-2 .masiello-service-row {
		--padding-left: 20px;
		--padding-right: 20px;
	}

	.elementor-2 .elementor-element.elementor-element-8521b1c {
		--padding-top: 36px;
		--padding-bottom: 32px;
		--padding-left: 0px;
		--padding-right: 0px;
	}

	.elementor-2 .elementor-element.elementor-element-8cf7d1d {
		--padding-left: 16px;
		--padding-right: 16px;
	}

	.elementor-2 .elementor-element.elementor-element-b3cf5f9,
	.elementor-2 .elementor-element.elementor-element-1d4e294,
	.elementor-2 .elementor-element.elementor-element-521886f,
	.elementor-7 .elementor-element.elementor-element-5fec619,
	.elementor-29 .elementor-element.elementor-element-6284d474,
	.elementor-27 .elementor-element.elementor-element-2e26a60b {
		--padding-top: 48px;
		--padding-bottom: 48px;
	}

	.elementor-2 .elementor-element.elementor-element-715e28aa .elementor-heading-title,
	.elementor-2 .elementor-element.elementor-element-15dad7c .elementor-heading-title,
	.elementor-2 .elementor-element.elementor-element-3199916 .elementor-heading-title,
	.elementor-2 .elementor-element.elementor-element-b4b9e2f .elementor-heading-title,
	.elementor-2 .elementor-element.elementor-element-5f4e9dd .elementor-heading-title,
	.elementor-2 .elementor-element.elementor-element-7ae345e .elementor-heading-title,
	.elementor-2 .elementor-element.elementor-element-c469b31 .elementor-heading-title {
		font-size: 26px;
	}

	.elementor-2 .elementor-element.elementor-element-ff01228 .elementor-heading-title,
	.elementor-2 .elementor-element.elementor-element-4218807 .elementor-heading-title,
	.elementor-2 .elementor-element.elementor-element-bf068dc .elementor-heading-title,
	.elementor-27 .elementor-element.elementor-element-605d7dbf .elementor-heading-title,
	.elementor-27 .elementor-element.elementor-element-4d477d47 .elementor-heading-title,
	.elementor-27 .elementor-element.elementor-element-60414f1d .elementor-heading-title {
		font-size: 40px;
	}

	.elementor-2 .elementor-element.elementor-element-1e0f8847 .elementor-heading-title,
	.elementor-2 .elementor-element.elementor-element-f882fa6 .elementor-heading-title,
	.elementor-2 .elementor-element.elementor-element-b3befdf .elementor-heading-title,
	.elementor-7 .elementor-element.elementor-element-1bb15eff .elementor-heading-title,
	.elementor-29 .elementor-element.elementor-element-2a3faa5e .elementor-heading-title {
		font-size: 28px;
	}

	.elementor-27 .elementor-element.elementor-element-3226c7a2 .elementor-heading-title {
		font-size: 28px;
	}

	.elementor-2 .elementor-element.elementor-element-41c9c6a,
	.elementor-2 .elementor-element.elementor-element-79d1b63,
	.elementor-2 .elementor-element.elementor-element-ee9a4a0,
	.elementor-2 .elementor-element.elementor-element-acf6b64,
	.elementor-2 .elementor-element.elementor-element-0f86547,
	.elementor-2 .elementor-element.elementor-element-bf859bd,
	.elementor-2 .elementor-element.elementor-element-8966e89,
	.elementor-2 .elementor-element.elementor-element-3528a45,
	.elementor-2 .elementor-element.elementor-element-d6f5975,
	.elementor-2 .elementor-element.elementor-element-ccce7f7 {
		font-size: 16px;
	}

	.elementor .e-0eb046a-15e5514 {
		font-size: 32px;
	}

	.elementor .e-975c76c-25d5df4 {
		font-size: 24px;
	}

	.elementor-2 .elementor-element.elementor-element-bf4f692,
	.elementor-2 .elementor-element.elementor-element-579c0b2,
	.elementor-2 .elementor-element.elementor-element-b5bd27d {
		--e-con-grid-template-columns: repeat(1, 1fr);
	}

	.elementor-location-footer .elementor-element.elementor-element-538d4b07,
	.elementor-location-footer .elementor-element.elementor-element-538d4b07 > .e-con-inner {
		--flex-direction: column;
		flex-direction: column;
		--gap: 8px 0px;
		--align-items: flex-start;
		align-items: flex-start;
	}
}

.masiello-section {
	max-width: 100%;
}

.masiello-expertise,
#premium-accountancy {
	scroll-margin-top: 108px;
}

.masiello-expertise {
	align-items: flex-start;
}

.masiello-expertise-meta .elementor-widget-text-editor:first-child .elementor-widget-container {
	font-family: "Fraunces", serif;
	font-size: 22px;
	letter-spacing: 0.06em;
	color: #6e6858;
}

.masiello-expertise-meta .elementor-heading-title {
	font-size: 28px;
	line-height: 1.2;
}

.masiello-expertise-body ul {
	list-style: none;
	margin: 8px 0 0;
	padding: 0;
	columns: 2;
	column-gap: 40px;
}

.masiello-expertise-body ul li {
	break-inside: avoid;
	padding: 6px 0;
	border-bottom: 1px solid #e8e1d2;
	font-size: 14px;
	line-height: 1.4;
}

.masiello-expertise-body h3.elementor-heading-title {
	font-family: "Jost", sans-serif;
	font-size: 15px;
	font-weight: 500;
	letter-spacing: 0.04em;
	line-height: 1.3;
	margin-top: 8px;
}

@media (max-width: 1024px) {
	.masiello-home-split,
	.masiello-index,
	.masiello-expertise,
	.masiello-home-split > .e-con-inner,
	.masiello-index > .e-con-inner,
	.masiello-expertise > .e-con-inner {
		--flex-direction: column;
		flex-direction: column;
	}

	.masiello-home-split > .e-con,
	.masiello-index > .e-con,
	.masiello-index-col,
	.masiello-expertise > .e-con,
	.masiello-expertise-meta,
	.masiello-expertise-body {
		--width: 100%;
		width: 100%;
		max-width: 100%;
	}

	.masiello-expertise-body ul {
		columns: 1;
	}

	.elementor > .masiello-section:not(.masiello-hero) {
		--padding-left: 32px;
		--padding-right: 32px;
	}

	.elementor-2 .masiello-hero-copy {
		--width: 100%;
		--padding-left: 32px;
		--padding-right: 32px;
		--padding-top: 56px;
		--padding-bottom: 48px;
	}

	.elementor-2 .masiello-scg-panel {
		--width: 100%;
		--padding-left: 32px;
		--padding-right: 32px;
		--padding-top: 48px;
		--padding-bottom: 48px;
	}

	.elementor-2 .masiello-scg-title .elementor-widget-container {
		font-size: 40px;
	}

	.masiello-hero-title .elementor-heading-title,
	.elementor-2 .masiello-section h1,
	.elementor-2 h1.elementor-heading-title {
		font-size: 36px;
	}
}

@media (max-width: 767px) {
	.elementor > .masiello-section:not(.masiello-hero) {
		--padding-left: 20px;
		--padding-right: 20px;
	}

	.elementor-2 .masiello-hero-copy,
	.elementor-2 .masiello-scg-panel {
		--padding-left: 20px;
		--padding-right: 20px;
	}

	.elementor-2 .masiello-scg-title .elementor-widget-container {
		font-size: 32px;
	}
}

/*
 * Override Elementor ID CSS: le pagine rifatte usano classi, non più gli ID vecchi.
 * Hamburger a destra; lingue nel drawer; hero e expertise in colonna.
 */
@media (max-width: 1024px) {
	body .elementor-location-header .elementor-element.elementor-element-12f960b9 {
		position: relative;
		overflow: visible;
	}

	body .elementor-location-header .masiello-header-start,
	body .elementor-location-header .masiello-header-start .elementor-element,
	body .elementor-location-header .elementor-element-c07bba4,
	body .elementor-location-header .elementor-element-c07bba4 .elementor-widget-container,
	body .elementor-location-header .elementor-element-37942f3e,
	body .elementor-location-header .elementor-element-37942f3e > .e-con-inner {
		position: static !important;
	}

	body .elementor-location-header .elementor-element-c07bba4 .elementor-menu-toggle {
		position: absolute !important;
		right: 32px;
		top: 50%;
		transform: translateY(-50%);
		z-index: 1101;
		margin: 0;
	}

	body .elementor-location-header .masiello-header-end {
		margin-right: 52px;
	}

	body .elementor-location-header .elementor-element-5d6f87b:not(.masiello-drawer-flags) {
		display: none !important;
	}

	body .elementor .e-con.masiello-home-split,
	body .elementor .e-con.masiello-hero,
	body .elementor .e-con.masiello-expertise,
	body .elementor .e-con.masiello-home-split > .e-con-inner,
	body .elementor .e-con.masiello-hero > .e-con-inner,
	body .elementor .e-con.masiello-expertise > .e-con-inner {
		--flex-direction: column !important;
		flex-direction: column !important;
	}

	body .elementor .masiello-hero-copy,
	body .elementor .masiello-scg-panel,
	body .elementor .masiello-expertise > .e-con,
	body .elementor .masiello-expertise-meta,
	body .elementor .masiello-expertise-body,
	body .elementor .masiello-index-col {
		--width: 100% !important;
		width: 100% !important;
		max-width: 100% !important;
	}

	body .elementor .masiello-scg-panel {
		min-height: 0 !important;
	}

	body .elementor .masiello-section:not(.masiello-hero),
	body .elementor .masiello-expertise {
		--padding-left: 32px !important;
		--padding-right: 32px !important;
	}

	body .elementor .masiello-hero-copy,
	body .elementor .masiello-scg-panel {
		--padding-left: 32px !important;
		--padding-right: 32px !important;
		--padding-top: 48px !important;
		--padding-bottom: 48px !important;
	}

	body .elementor h1.elementor-heading-title {
		font-size: 36px !important;
		line-height: 1.15 !important;
	}

	body .elementor .masiello-expertise-meta h2.elementor-heading-title,
	body .elementor .masiello-section h2.elementor-heading-title {
		font-size: 28px !important;
		line-height: 1.2 !important;
	}

	body .elementor .masiello-expertise-body ul {
		columns: 1;
	}

	.masiello-drawer-extras {
		display: flex;
		flex-direction: column;
		align-items: flex-start;
		gap: 20px;
		margin-top: 28px;
		padding-top: 24px;
		border-top: 1px solid #cfc7b4;
	}

	.masiello-drawer-extras .elementor-button-wrapper,
	.masiello-drawer-extras .elementor-button {
		width: 100%;
	}

	.masiello-drawer-extras .elementor-button {
		justify-content: center;
	}

	.masiello-drawer-extras .cpel-switcher__list {
		display: flex;
		flex-direction: row;
		align-items: center;
		gap: 12px;
		margin: 0;
		padding: 0;
	}

	.masiello-drawer-extras .cpel-switcher__name,
	.masiello-drawer-extras .cpel-switcher__code {
		display: none !important;
	}

	.masiello-drawer-extras .cpel-switcher__flag,
	.masiello-drawer-extras img {
		width: 28px;
		height: auto;
		display: block;
	}
}

@media (max-width: 767px) {
	body .elementor-location-header .elementor-element-c07bba4 .elementor-menu-toggle {
		right: 20px;
	}

	body .elementor-location-header .masiello-header-end {
		display: none !important;
		margin-right: 0;
	}

	body .elementor .e-con.masiello-index,
	body .elementor .e-con.masiello-index > .e-con-inner {
		--flex-direction: column !important;
		flex-direction: column !important;
	}

	body .elementor .masiello-index > .e-con,
	body .elementor .masiello-index-col {
		--width: 100% !important;
		width: 100% !important;
		max-width: 100% !important;
	}

	body .elementor .masiello-section:not(.masiello-hero),
	body .elementor .masiello-expertise {
		--padding-left: 20px !important;
		--padding-right: 20px !important;
		--padding-top: 40px !important;
		--padding-bottom: 40px !important;
	}

	body .elementor .masiello-hero-copy,
	body .elementor .masiello-scg-panel {
		--padding-left: 20px !important;
		--padding-right: 20px !important;
		--padding-top: 40px !important;
		--padding-bottom: 40px !important;
	}

	body .elementor h1.elementor-heading-title {
		font-size: 30px !important;
	}

	body .elementor .masiello-expertise-meta h2.elementor-heading-title,
	body .elementor .masiello-section h2.elementor-heading-title {
		font-size: 24px !important;
	}

	body .elementor .masiello-expertise-body .elementor-field-group {
		width: 100% !important;
	}

	.elementor-2 .masiello-scg-title .elementor-widget-container {
		font-size: 32px !important;
	}
}
