.elementor-kit-4{--e-global-color-primary:#3A3238;--e-global-color-secondary:#8F5450;--e-global-color-text:#6B6069;--e-global-color-accent:#FBF7F5;--e-global-color-carta-alt:#F4EBE7;--e-global-color-accento-su-scuro:#E7C9C5;--e-global-color-accento-decorativo:#C08480;--e-global-color-resume-pannello:#F1EDF4;--e-global-typography-primary-font-family:"Cormorant Garamond";--e-global-typography-primary-font-weight:300;--e-global-typography-secondary-font-family:"Cormorant Garamond";--e-global-typography-secondary-font-weight:300;--e-global-typography-text-font-family:"Karla";--e-global-typography-text-font-weight:300;--e-global-typography-accent-font-family:"Karla";--e-global-typography-accent-font-weight:500;}.elementor-section.elementor-section-boxed > .elementor-container{max-width:1140px;}.e-con{--container-max-width:1140px;}.elementor-widget:not(:last-child){--kit-widget-spacing:20px;}.elementor-element{--widgets-spacing:20px 20px;--widgets-spacing-row:20px;--widgets-spacing-column:20px;}{}h1.entry-title{display:var(--page-title-display);}@media(max-width:1024px){.elementor-section.elementor-section-boxed > .elementor-container{max-width:1024px;}.e-con{--container-max-width:1024px;}}@media(max-width:767px){.elementor-section.elementor-section-boxed > .elementor-container{max-width:767px;}.e-con{--container-max-width:767px;}}
body.elementor-page .elementor-widget-menu-anchor{margin-block-end:0}
.elementor-widget-heading .elementor-heading-title[class*=elementor-size-]>a{color:inherit;font-size:inherit;line-height:inherit}.elementor-widget-heading .elementor-heading-title.elementor-size-small{font-size:15px}.elementor-widget-heading .elementor-heading-title.elementor-size-medium{font-size:19px}.elementor-widget-heading .elementor-heading-title.elementor-size-large{font-size:29px}.elementor-widget-heading .elementor-heading-title.elementor-size-xl{font-size:39px}.elementor-widget-heading .elementor-heading-title.elementor-size-xxl{font-size:59px}
.elementor-widget-image{text-align:center}.elementor-widget-image a{display:inline-block}.elementor-widget-image a img[src$=".svg"]{width:48px}.elementor-widget-image img{display:inline-block;vertical-align:middle}
.elementor-counter{align-items:stretch;display:flex;flex-direction:column-reverse;justify-content:center}.elementor-counter .elementor-counter-number{flex-grow:var(--counter-number-grow,0)}.elementor-counter .elementor-counter-number-wrapper{display:flex;flex:1;font-size:69px;font-weight:600;line-height:1;text-align:center}.elementor-counter .elementor-counter-number-prefix{flex-grow:var(--counter-prefix-grow,1);text-align:end;white-space:pre-wrap}.elementor-counter .elementor-counter-number-suffix{flex-grow:var(--counter-suffix-grow,1);text-align:start;white-space:pre-wrap}.elementor-counter .elementor-counter-title{align-items:center;display:flex;flex:1;font-size:19px;font-weight:400;justify-content:center;line-height:2.5;margin:0;padding:0}
.stw-card-grid__intestazione {
	display: flex;
	flex-wrap: wrap;
	align-items: flex-end;
	gap: clamp(18px, 3cqw, 48px);
	margin-bottom: clamp(26px, 3.4cqw, 50px);
}

.stw-card-grid__intestazione-testata {
	flex: 1 1 400px;
}

.stw-card-grid__occhiello {
	display: inline-flex;
	align-items: center;
	gap: 10px;
	margin: 0 0 18px;
	font-family: var(--stw-font-testo, "Manrope", sans-serif);
	font-size: var(--stw-etichetta, 11px);
	font-weight: var(--stw-font-testo-peso-forte, 600);
	letter-spacing: var(--stw-etichetta-spaziatura, 0.18em);
	text-transform: var(--stw-etichetta-trasformazione, uppercase);
	color: var(--stw-accento-testo, var(--stw-accento, #2557d6));
}

.stw-card-grid__occhiello::before {
	content: "";
	display: block;
	width: 22px;
	height: 1px;
	background: var(--stw-accento-decorativo, #2f6bff);
	flex: 0 0 auto;
}

.stw-card-grid__intestazione-titolo {
	margin: 0;
	font-family: var(--stw-font-titoli, "Sora", sans-serif);
	font-weight: var(--stw-font-titoli-peso, 300);
	font-size: var(--stw-display-h2, var(--stw-h2, 48px));
	line-height: 1.06;
	letter-spacing: var(--stw-font-titoli-spaziatura, -0.04em);
	color: inherit;
}

.stw-card-grid__intestazione-testo {
	flex: 1 1 240px;
	max-width: 38ch;
	margin: 0;
	font-family: var(--stw-font-testo, "Manrope", sans-serif);
	font-weight: var(--stw-font-testo-peso, 400);
	font-size: var(--stw-corpo, 17px);
	line-height: 1.7;
	color: var(--stw-testo-secondario, #5b6673);
}

.stw-card-grid__griglia {
	--stw-card-grid-cols: 3;
	display: grid;

	grid-template-columns: repeat(min(var(--stw-card-grid-cols), var(--stw-card-grid-voci, 99)), minmax(0, 1fr));
	gap: var(--stw-gap-card-max, 26px);
}

.stw-card-grid__card {
	position: relative;
	overflow: hidden;
	display: flex;
	flex-direction: column;
	gap: 12px;
	min-height: 240px;
	padding: clamp(22px, 2.8cqw, 34px);
	background: var(--stw-carta-alt, #ffffff);
	border: var(--stw-bordo, 1px solid rgba(12, 17, 22, 0.09));
	border-radius: var(--stw-raggio-card, 18px);
	color: inherit;
	text-decoration: none;
	transition:
		transform var(--stw-hover-durata, 0.45s) var(--stw-ingresso-easing, cubic-bezier(0.22, 0.61, 0.36, 1)),
		box-shadow var(--stw-hover-durata, 0.45s) ease,
		background var(--stw-hover-durata, 0.45s) ease,
		color var(--stw-hover-durata, 0.45s) ease,
		border-color var(--stw-hover-durata, 0.45s) ease;
}

.stw-card-grid__card::before {
	content: "";
	position: absolute;
	top: 0;
	left: 0;
	right: 0;
	height: 3px;
	background: var(--stw-accento, #2557d6);
	transform: scaleX(0);
	transform-origin: left;
	transition: transform var(--stw-hover-durata, 0.45s) var(--stw-ingresso-easing, cubic-bezier(0.22, 0.61, 0.36, 1));
}

.stw-card-grid__decorazione {
	position: relative;
	display: block;
	width: 34px;
	height: 34px;
	border-radius: 50%;
	background: var(--stw-card-grid-decorazione, currentColor);
}

.stw-card-grid__decorazione::before {
	content: "";
	position: absolute;
	top: -50px;
	right: -50px;
	width: 150px;
	height: 150px;
	border-radius: 50%;
	background: var(--stw-card-grid-decorazione, currentColor);
	opacity: 0;
	transform: scale(0.4);
	transition: transform var(--stw-hover-durata, 0.7s) var(--stw-ingresso-easing, cubic-bezier(0.22, 0.61, 0.36, 1)),
		opacity var(--stw-hover-durata, 0.7s) ease;
	pointer-events: none;
}

.stw-card-grid__card:focus-visible .stw-card-grid__decorazione::before {
	opacity: 1;
	transform: scale(1);
}

@media (hover: hover) and (pointer: fine) {
	.stw-card-grid__card:hover .stw-card-grid__decorazione::before {
		opacity: 1;
		transform: scale(1);
	}
}

.stw-card-grid__badge {
	display: block;
	font-family: var(--stw-font-testo, "Manrope", sans-serif);
	font-size: var(--stw-etichetta, 11px);
	font-weight: var(--stw-font-testo-peso-forte, 600);
	letter-spacing: var(--stw-etichetta-spaziatura, 0.14em);
	text-transform: var(--stw-etichetta-trasformazione, uppercase);
	color: var(--stw-accento-testo, var(--stw-accento, #2557d6));
}

.stw-card-grid--badge-cerchio .stw-card-grid__badge {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 34px;
	height: 34px;
	border-radius: 50%;

	background: rgb(from var(--stw-accento-decorativo, var(--stw-accento, #2557d6)) r g b / 0.14);
	letter-spacing: 0;
	text-transform: none;
}

.stw-card-grid__titolo {
	margin: 0;
	font-family: var(--stw-font-titoli, "Sora", sans-serif);
	font-weight: var(--stw-font-titoli-peso-forte, 600);
	font-size: var(--stw-h3, 24px);
	line-height: 1.22;
	letter-spacing: var(--stw-font-titoli-spaziatura, -0.02em);
	color: inherit;
}

.stw-card-grid__testo {
	margin: 0;
	font-family: var(--stw-font-testo, "Manrope", sans-serif);
	font-weight: var(--stw-font-testo-peso, 400);
	font-size: var(--stw-corpo, 17px);
	line-height: 1.65;
	color: var(--stw-testo-secondario, #5b6673);
}

.stw-card-grid__spaziatore {
	flex: 1 1 auto;
}

.stw-card-grid__meta,
.stw-card-grid__link {
	display: inline-flex;
	align-items: center;
	gap: 8px;
	font-family: var(--stw-font-testo, "Manrope", sans-serif);
	font-size: 13px;
	font-weight: var(--stw-font-testo-peso-forte, 600);
}

.stw-card-grid__meta {
	color: var(--stw-testo-secondario, #5b6673);
}

.stw-card-grid__link {
	color: var(--stw-accento-testo, var(--stw-accento, #2557d6));
}

.stw-card-grid__freccia {
	display: inline-block;
	transition: transform var(--stw-hover-durata, 0.45s) var(--stw-ingresso-easing, cubic-bezier(0.22, 0.61, 0.36, 1));
}

.stw-widget--card-grid.stw-card-grid--hover-sollevamento .stw-card-grid__card:focus-visible {
	transform: translateY(-8px);
	box-shadow: 0 26px 50px rgba(12, 17, 22, 0.14);
}

@media (hover: hover) and (pointer: fine) {
	.stw-widget--card-grid.stw-card-grid--hover-sollevamento .stw-card-grid__card:hover {
		transform: translateY(-8px);
		box-shadow: 0 26px 50px rgba(12, 17, 22, 0.14);
	}
}

.stw-widget--card-grid.stw-card-grid--hover-sollevamento .stw-card-grid__card:focus-visible::before {
	transform: scaleX(1);
}

@media (hover: hover) and (pointer: fine) {
	.stw-widget--card-grid.stw-card-grid--hover-sollevamento .stw-card-grid__card:hover::before {
		transform: scaleX(1);
	}
}

.stw-widget--card-grid.stw-card-grid--hover-sollevamento .stw-card-grid__card:focus-visible .stw-card-grid__freccia {
	transform: translateX(6px);
}

@media (hover: hover) and (pointer: fine) {
	.stw-widget--card-grid.stw-card-grid--hover-sollevamento .stw-card-grid__card:hover .stw-card-grid__freccia {
		transform: translateX(6px);
	}
}

.stw-widget--card-grid.stw-card-grid--hover-inversione .stw-card-grid__card::before {
	display: none;
}

.stw-widget--card-grid.stw-card-grid--hover-inversione .stw-card-grid__card:focus-visible {
	background: var(--stw-inchiostro, #0c1116);
	color: var(--stw-carta, #f5f4f1);
	--stw-testo-secondario: rgb(from var(--stw-carta, #f5f4f1) r g b / 0.78);
	--stw-accento-testo: var(--stw-accento-su-scuro, var(--stw-accento, #2557d6));
}

@media (hover: hover) and (pointer: fine) {
	.stw-widget--card-grid.stw-card-grid--hover-inversione .stw-card-grid__card:hover {
		background: var(--stw-inchiostro, #0c1116);
		color: var(--stw-carta, #f5f4f1);
		--stw-testo-secondario: rgb(from var(--stw-carta, #f5f4f1) r g b / 0.78);
		--stw-accento-testo: var(--stw-accento-su-scuro, var(--stw-accento, #2557d6));
	}
}

@media (prefers-reduced-motion: reduce) {
	.stw-card-grid__decorazione::before {
		transition: none;
	}
}

@media (max-width: 767px) {
	.stw-card-grid__card {
		min-height: 0;
	}
}

.stw-marquee-band__pista {
	overflow: hidden;
	width: 100%;

	-webkit-mask-image: linear-gradient(90deg, transparent, #000 7%, #000 93%, transparent);
	mask-image: linear-gradient(90deg, transparent, #000 7%, #000 93%, transparent);
}

@media (hover: hover) and (pointer: fine) {
	.stw-marquee-band__pista:hover .stw-marquee-band__riga {
		animation-play-state: paused;
	}
}

.stw-marquee-band__pista:focus-within .stw-marquee-band__riga {
	animation-play-state: paused;
}

.stw-marquee-band__riga {
	display: flex;
	width: max-content;
	animation: stw-marquee var(--stw-marquee-durata, 26s) linear infinite;
}

.stw-marquee-band__gruppo {
	display: flex;
	align-items: center;
	flex: 0 0 auto;
	gap: var(--stw-marquee-gap, clamp(24px, 4cqw, 64px));
	padding-right: var(--stw-marquee-gap, clamp(24px, 4cqw, 64px));
}

.stw-marquee-band__voce {
	display: inline-flex;
	align-items: center;
	white-space: nowrap;
	font-family: var(--stw-font-testo, "Manrope", sans-serif);
	font-size: var(--stw-etichetta, 12px);
	font-weight: var(--stw-font-testo-peso-forte, 500);
	letter-spacing: var(--stw-etichetta-spaziatura, 0.14em);
	text-transform: var(--stw-etichetta-trasformazione, uppercase);

	color: var(--stw-testo-secondario, #5b6673);
}

.stw-marquee-band--separatore-punto .stw-marquee-band__voce:not(:last-child)::after {
	content: "·";
	margin-left: var(--stw-marquee-gap, clamp(24px, 4cqw, 64px));
	color: var(--stw-accento-testo, var(--stw-accento, #2557d6));
}

.stw-marquee-band__voce--logo img {
	display: block;
	height: var(--stw-marquee-logo-altezza, 28px);
	width: auto;
}

@keyframes stw-marquee {
	from {
		transform: translateX(0);
	}
	to {
		transform: translateX(-50%);
	}
}

.stw-marquee-band--direzione-indietro .stw-marquee-band__riga {
	animation-direction: reverse;
}

@media (prefers-reduced-motion: reduce) {
	.stw-marquee-band__riga {
		animation: none;
		transform: none;
		width: auto;
		flex-wrap: wrap;
	}

	.stw-widget--marquee-band .stw-marquee-band__gruppo {
		padding-right: 0;
		flex-wrap: wrap;
		row-gap: .4em;
		max-width: 100%;
	}

	.stw-widget--marquee-band .stw-marquee-band__voce {
		white-space: normal;
		max-width: 100%;
	}

	.stw-marquee-band__gruppo--duplicato {
		display: none;
	}
}

.stw-project-grid__filtri {
	display: flex;
	flex-wrap: wrap;
	gap: 10px;
	margin-bottom: clamp(20px, 2.6cqw, 32px);
}

.stw-project-grid__filtro {
	font: inherit;
	font-family: var(--stw-font-testo, "Figtree", sans-serif);
	font-size: 13px;
	font-weight: var(--stw-font-testo-peso-forte, 600);
	letter-spacing: var(--stw-etichetta-spaziatura, 0.14em);
	text-transform: var(--stw-etichetta-trasformazione, uppercase);
	padding: 10px 18px;
	border: var(--stw-bordo, 2px solid #1c1e20);
	border-radius: var(--stw-raggio-pulsante, 0);
	background: transparent;
	color: inherit;
	cursor: pointer;
	transition: background var(--stw-hover-durata, 0.35s) ease, color var(--stw-hover-durata, 0.35s) ease;
}

.stw-project-grid__filtro.is-attivo {
	background: var(--stw-inchiostro, #1c1e20);
	color: var(--stw-carta, #e7e5e1);
	border-color: var(--stw-inchiostro, #1c1e20);
}

.stw-project-grid__griglia {
	--stw-project-grid-cols: 3;
	display: grid;
	grid-template-columns: repeat(var(--stw-project-grid-cols), 1fr);
	gap: var(--stw-gap-card-max, 26px);
}

.stw-project-grid__card {
	display: flex;
	flex-direction: column;
	gap: 12px;
	color: inherit;
	text-decoration: none;
	transition: transform var(--stw-hover-durata, 0.45s) var(--stw-ingresso-easing, cubic-bezier(0.22, 0.61, 0.36, 1)),
		background var(--stw-hover-durata, 0.45s) ease,
		color var(--stw-hover-durata, 0.45s) ease;
}

.stw-project-grid__card.is-nascosta {
	display: none !important;
}

.stw-project-grid__immagine {
	display: block;
	overflow: hidden;
	border: var(--stw-bordo, 2px solid #1c1e20);
}

.stw-project-grid__immagine img {
	display: block;
	width: 100%;
	height: 100%;
	object-fit: cover;
	transition: transform 700ms cubic-bezier(0.23, 1, 0.32, 1);
}

@media (hover: hover) and (pointer: fine) and (prefers-reduced-motion: no-preference) {
	.stw-project-grid__card:hover .stw-project-grid__immagine img {
		transform: scale(1.035);
	}
}

.stw-project-grid__immagine--4-3 {
	aspect-ratio: 4 / 3;
}

.stw-project-grid__immagine--1-1 {
	aspect-ratio: 1 / 1;
}

.stw-project-grid__immagine--16-9 {
	aspect-ratio: 16 / 9;
}

.stw-project-grid__immagine--3-4 {
	aspect-ratio: 3 / 4;
}

.stw-project-grid__tipo {
	display: block;
	font-family: var(--stw-font-testo, "Figtree", sans-serif);
	font-size: var(--stw-etichetta, 11px);
	font-weight: var(--stw-font-testo-peso-forte, 600);
	letter-spacing: var(--stw-etichetta-spaziatura, 0.14em);
	text-transform: var(--stw-etichetta-trasformazione, uppercase);
	color: var(--stw-accento-testo, #785c00);
}

.stw-project-grid__titolo {
	margin: 0;
	font-family: var(--stw-font-titoli, "Barlow Condensed", sans-serif);
	font-weight: var(--stw-font-titoli-peso, 700);
	text-transform: var(--stw-font-titoli-trasformazione, uppercase);
	font-size: var(--stw-h3, 24px);
	line-height: 1.05;
	color: inherit;
}

.stw-project-grid__nota {
	margin: 0;
	font-family: var(--stw-font-testo, "Figtree", sans-serif);
	font-size: 14px;
	color: var(--stw-testo-secondario, #54585c);
}

.stw-widget--project-grid.stw-project-grid--hover-sollevamento .stw-project-grid__card:focus-visible {
	transform: translateY(-6px);
}

@media (hover: hover) and (pointer: fine) {
	.stw-widget--project-grid.stw-project-grid--hover-sollevamento .stw-project-grid__card:hover {
		transform: translateY(-6px);
	}
}

.stw-widget--project-grid.stw-project-grid--hover-inversione .stw-project-grid__card:focus-visible {
	background: var(--stw-inchiostro, #1c1e20);
	color: var(--stw-carta, #e7e5e1);
}

@media (hover: hover) and (pointer: fine) {
	.stw-widget--project-grid.stw-project-grid--hover-inversione .stw-project-grid__card:hover {
		background: var(--stw-inchiostro, #1c1e20);
		color: var(--stw-carta, #e7e5e1);
	}
}

@media (prefers-reduced-motion: reduce) {
	.stw-project-grid__card,
	.stw-project-grid__filtro {
		transition: none;
	}

	.stw-widget--project-grid.stw-project-grid--hover-sollevamento .stw-project-grid__card:hover,
	.stw-widget--project-grid.stw-project-grid--hover-sollevamento .stw-project-grid__card:focus-visible {
		transform: none;
	}
}

.stw-timeline-skills__riga {
	display: flex;
	flex-wrap: wrap;
	gap: clamp(24px, 4cqw, 72px);
}

.stw-timeline-skills__colonna {
	flex: 1 1 min(100%, 300px);
}

.stw-timeline-skills__occhiello {
	margin: 0;
	font-family: var(--stw-font-testo, "Karla", sans-serif);
	font-size: var(--stw-etichetta, 11px);
	font-weight: var(--stw-font-testo-peso-forte, 500);
	letter-spacing: var(--stw-etichetta-spaziatura, 0.24em);
	text-transform: var(--stw-etichetta-trasformazione, uppercase);
	color: var(--stw-testo-secondario, #6e6088);
}

.stw-timeline-skills__titolo {
	margin: 18px 0 0;
	font-family: var(--stw-font-titoli, "Cormorant Garamond", serif);
	font-weight: var(--stw-font-titoli-peso, 300);
	font-size: var(--stw-h2, 50px);
	line-height: 1.1;
	letter-spacing: -0.01em;
	color: inherit;
}

.stw-timeline-skills__tappe {
	margin-top: 26px;
	display: flex;
	flex-direction: column;
}

.stw-timeline-skills__tappa {
	display: flex;
	gap: 18px;
	padding: 18px 0;
	border-top: var(--stw-bordo, 1px solid rgba(58, 50, 56, 0.12));
}

.stw-timeline-skills__tappa:first-child {
	border-top: 0;
}

.stw-timeline-skills__anni {

	flex: 0 1 auto;
	min-width: 86px;
	max-width: 180px;
	font-family: var(--stw-font-testo, "Karla", sans-serif);
	font-size: 12px;
	font-weight: var(--stw-font-testo-peso-forte, 500);
	line-height: 1.7;
	letter-spacing: 0.06em;
	color: var(--stw-testo-secondario, #6e6088);
}

.stw-timeline-skills__ruolo {
	margin: 0;
	font-family: var(--stw-font-titoli, "Cormorant Garamond", serif);
	font-weight: var(--stw-font-titoli-peso-forte, 400);
	font-size: 20px;
	line-height: 1.25;
	color: inherit;
}

.stw-timeline-skills__luogo {
	margin: 6px 0 0;
	max-width: 44ch;
	font-family: var(--stw-font-testo, "Karla", sans-serif);
	font-weight: var(--stw-font-testo-peso, 300);
	font-size: 14px;
	line-height: 1.7;
	color: var(--stw-testo-secondario, #6b6069);
}

.stw-timeline-skills__barre {
	margin-top: 26px;
	display: flex;
	flex-direction: column;
	gap: 20px;
}

.stw-timeline-skills__competenza-intestazione {
	display: flex;
	justify-content: space-between;
	align-items: baseline;
	gap: 12px;
}

.stw-timeline-skills__nome {
	font-family: var(--stw-font-testo, "Karla", sans-serif);
	font-size: 14px;
	font-weight: var(--stw-font-testo-peso, 400);
	color: inherit;
}

.stw-timeline-skills__percentuale {

	font-variant-numeric: tabular-nums;
	font-family: var(--stw-font-testo, "Karla", sans-serif);
	font-size: 12px;
	color: var(--stw-testo-secondario, #6b606a);
}

.stw-timeline-skills__binario {
	margin-top: 10px;
	height: 4px;
	border-radius: 99px;
	background: rgba(58, 50, 56, 0.1);
	overflow: hidden;
}

.stw-timeline-skills__riempimento {
	display: block;
	height: 100%;
	width: var(--stw-timeline-skills-percentuale, 0%);
	border-radius: 99px;
	background: linear-gradient(
		90deg,
		var(--stw-accento-decorativo, #c08480),
		var(--stw-accento-secondario, #8f7fa8)
	);
}

.stw-timeline-skills__barre[data-stw-anima-barre] .stw-timeline-skills__riempimento {
	width: var(--stw-timeline-skills-percentuale, 0%);
	transform: scaleX(0);
	transform-origin: left center;
	transition: transform 1.4s var(--stw-ingresso-easing, cubic-bezier(0.22, 0.61, 0.36, 1));
}

.stw-timeline-skills__barre[data-stw-anima-barre].is-visibile .stw-timeline-skills__riempimento {
	transform: none;
}

.stw-timeline-skills__tag {
	margin-top: 30px;
	padding-top: 22px;
	border-top: var(--stw-bordo, 1px solid rgba(58, 50, 56, 0.12));
	display: flex;
	flex-wrap: wrap;
	gap: 8px;
}

.stw-timeline-skills__tag-voce {
	border: var(--stw-bordo, 1px solid rgba(58, 50, 56, 0.16));
	border-radius: 99px;
	padding: 9px 15px;
	font-family: var(--stw-font-testo, "Karla", sans-serif);
	font-size: 12px;
	color: var(--stw-testo-secondario, #6b6069);
}

@media (prefers-reduced-motion: reduce) {
	.stw-timeline-skills__barre[data-stw-anima-barre] .stw-timeline-skills__riempimento {
		transform: none;
		transition: none;
	}
}

.elementor-widget-n-accordion{--n-accordion-title-font-size:20px;--n-accordion-title-flex-grow:initial;--n-accordion-title-justify-content:initial;--n-accordion-title-icon-order:-1;--n-accordion-border-width:1px;--n-accordion-border-color:#d5d8dc;--n-accordion-border-style:solid;--n-accordion-item-title-flex-grow:initial;--n-accordion-item-title-space-between:0px;--n-accordion-item-title-distance-from-content:0px;--n-accordion-padding:10px;--n-accordion-border-radius:0px;--n-accordion-icon-size:15px;--n-accordion-title-normal-color:#1f2124;--n-accordion-title-hover-color:#1f2124;--n-accordion-title-active-color:#1f2124;--n-accordion-icon-normal-color:var(--n-accordion-title-normal-color);--n-accordion-icon-hover-color:var(--n-accordion-title-hover-color);--n-accordion-icon-active-color:var(--n-accordion-title-active-color);--n-accordion-icon-gap:0 10px;width:100%}.elementor-widget-n-accordion .e-n-accordion details>summary::-webkit-details-marker{display:none}.elementor-widget-n-accordion .e-n-accordion-item{display:flex;flex-direction:column;position:relative}.elementor-widget-n-accordion .e-n-accordion-item:not(:last-child){margin-block-end:var(--n-accordion-item-title-space-between)}:where(.elementor-widget-n-accordion .e-n-accordion-item>.e-con){border:var(--n-accordion-border-width) var(--n-accordion-border-style) var(--n-accordion-border-color)}.elementor-widget-n-accordion .e-n-accordion-item-title{align-items:center;border-color:var(--n-accordion-border-color);border-radius:var(--n-accordion-border-radius);border-style:var(--n-accordion-border-style);border-width:var(--n-accordion-border-width);color:var(--n-accordion-title-normal-color);cursor:pointer;display:flex;flex-direction:row;flex-grow:var(--n-menu-title-flex-grow);gap:var(--n-accordion-icon-gap);justify-content:var(--n-accordion-title-justify-content);list-style:none;padding:var(--n-accordion-padding)}.elementor-widget-n-accordion .e-n-accordion-item-title-header{display:flex}.elementor-widget-n-accordion .e-n-accordion-item-title-header h1,.elementor-widget-n-accordion .e-n-accordion-item-title-header h2,.elementor-widget-n-accordion .e-n-accordion-item-title-header h3,.elementor-widget-n-accordion .e-n-accordion-item-title-header h4,.elementor-widget-n-accordion .e-n-accordion-item-title-header h5,.elementor-widget-n-accordion .e-n-accordion-item-title-header h6,.elementor-widget-n-accordion .e-n-accordion-item-title-header p{margin-block-end:0;margin-block-start:0}.elementor-widget-n-accordion .e-n-accordion-item-title-text{align-items:center;font-size:var(--n-accordion-title-font-size)}.elementor-widget-n-accordion .e-n-accordion-item-title-icon{align-items:center;display:flex;flex-direction:row;order:var(--n-accordion-title-icon-order);position:relative;width:-moz-fit-content;width:fit-content}.elementor-widget-n-accordion .e-n-accordion-item-title-icon span{height:var(--n-accordion-icon-size);width:auto}.elementor-widget-n-accordion .e-n-accordion-item-title-icon span>i{color:var(--n-accordion-icon-normal-color);font-size:var(--n-accordion-icon-size)}.elementor-widget-n-accordion .e-n-accordion-item-title-icon span>svg{fill:var(--n-accordion-icon-normal-color);height:var(--n-accordion-icon-size)}.elementor-widget-n-accordion .e-n-accordion-item-title>span{cursor:pointer}.elementor-widget-n-accordion .e-n-accordion-item[open]>.e-n-accordion-item-title{color:var(--n-accordion-title-active-color);margin-block-end:var(--n-accordion-item-title-distance-from-content)}.elementor-widget-n-accordion .e-n-accordion-item[open]>.e-n-accordion-item-title .e-n-accordion-item-title-icon .e-opened{display:flex}.elementor-widget-n-accordion .e-n-accordion-item[open]>.e-n-accordion-item-title .e-n-accordion-item-title-icon .e-closed{display:none}.elementor-widget-n-accordion .e-n-accordion-item[open]>.e-n-accordion-item-title .e-n-accordion-item-title-icon span>i{color:var(--n-accordion-icon-active-color)}.elementor-widget-n-accordion .e-n-accordion-item[open]>.e-n-accordion-item-title .e-n-accordion-item-title-icon span>svg{fill:var(--n-accordion-icon-active-color)}.elementor-widget-n-accordion .e-n-accordion-item:not([open]) .e-con{display:none}.elementor-widget-n-accordion .e-n-accordion-item:not([open]):hover>.e-n-accordion-item-title{color:var(--n-accordion-title-hover-color)}.elementor-widget-n-accordion .e-n-accordion-item:not([open]):hover>.e-n-accordion-item-title .e-n-accordion-item-title-icon span>i{color:var(--n-accordion-icon-hover-color)}.elementor-widget-n-accordion .e-n-accordion-item:not([open]):hover>.e-n-accordion-item-title .e-n-accordion-item-title-icon span>svg{fill:var(--n-accordion-icon-hover-color)}.elementor-widget-n-accordion .e-n-accordion-item .e-n-accordion-item-title-icon .e-opened{display:none}.elementor-widget-n-accordion .e-n-accordion-item .e-n-accordion-item-title-icon .e-closed{display:flex}.elementor-widget-n-accordion .e-n-accordion-item .e-n-accordion-item-title-icon span>svg{fill:var(--n-accordion-icon-normal-color)}.elementor-widget-n-accordion .e-n-accordion-item .e-n-accordion-item-title-icon span>i{color:var(--n-accordion-icon-normal-color)}.elementor-widget-n-accordion .e-n-accordion-item>span{cursor:pointer}
.stw-list-rows__elenco {
	display: flex;
	flex-direction: column;
}

.stw-list-rows__riga {
	position: relative;
	display: flex;
	flex-wrap: wrap;
	align-items: flex-start;
	gap: clamp(14px, 2.6cqw, 44px);
	padding: clamp(20px, 2.8cqw, 40px) clamp(4px, 1cqw, 14px);
	border-bottom: var(--stw-bordo, 1px solid rgba(12, 17, 22, 0.12));
	color: inherit;
	text-decoration: none;
	transition:
		background var(--stw-hover-durata, 0.45s) ease,
		color var(--stw-hover-durata, 0.45s) ease;
}

.stw-list-rows__riga > * {
	transition: transform var(--stw-hover-durata, 0.45s) var(--stw-ingresso-easing, cubic-bezier(0.22, 0.61, 0.36, 1));
}

.stw-list-rows--separatore-pieno .stw-list-rows__riga {
	border-bottom: 2px solid var(--stw-inchiostro, #0c1116);
}

@media (min-width: 768px) {
	.stw-list-rows__riga:not(:has(.stw-list-rows__media)) {
		display: grid;
		grid-template-columns: 4ch minmax(0, 5fr) minmax(0, 6fr) minmax(4ch, 10rem);
		align-items: baseline;
	}

	.stw-list-rows__elenco:not(:has(.stw-list-rows__meta, .stw-list-rows__freccia)) > .stw-list-rows__riga:not(:has(.stw-list-rows__media)) {
		grid-template-columns: 4ch minmax(0, 5fr) minmax(0, 7fr);
	}

	.stw-list-rows__riga:not(:has(.stw-list-rows__media)) > .stw-list-rows__marcatore { grid-column: 1; }
	.stw-list-rows__riga:not(:has(.stw-list-rows__media)) > .stw-list-rows__titolo { grid-column: 2; margin: 0; }
	.stw-list-rows__riga:not(:has(.stw-list-rows__media)) > .stw-list-rows__testo { grid-column: 3; margin: 0; }
	.stw-list-rows__riga:not(:has(.stw-list-rows__media)) > :is(.stw-list-rows__meta, .stw-list-rows__freccia) {
		grid-column: 4;
		justify-self: end;
		text-align: end;
	}

	.stw-list-rows__elenco:not(:has(.stw-list-rows__marcatore)) > .stw-list-rows__riga:not(:has(.stw-list-rows__media)) {
		grid-template-columns: minmax(0, 5fr) minmax(0, 6fr) minmax(4ch, 10rem);
	}
	.stw-list-rows__elenco:not(:has(.stw-list-rows__marcatore, .stw-list-rows__meta, .stw-list-rows__freccia)) > .stw-list-rows__riga:not(:has(.stw-list-rows__media)) {
		grid-template-columns: minmax(0, 5fr) minmax(0, 7fr);
	}
	.stw-list-rows__elenco:not(:has(.stw-list-rows__marcatore)) > .stw-list-rows__riga:not(:has(.stw-list-rows__media)) > .stw-list-rows__titolo { grid-column: 1; }
	.stw-list-rows__elenco:not(:has(.stw-list-rows__marcatore)) > .stw-list-rows__riga:not(:has(.stw-list-rows__media)) > .stw-list-rows__testo { grid-column: 2; }
	.stw-list-rows__elenco:not(:has(.stw-list-rows__marcatore)) > .stw-list-rows__riga:not(:has(.stw-list-rows__media)) > :is(.stw-list-rows__meta, .stw-list-rows__freccia) { grid-column: 3; }
}

.stw-list-rows--separatore-nessuno .stw-list-rows__elenco {
	gap: 10px;
}

.stw-list-rows--separatore-nessuno .stw-list-rows__riga {

	padding: clamp(20px, 2.4cqw, 32px) clamp(18px, 2.4cqw, 32px);
	overflow: hidden;
	border-bottom: none;
	background: var(--stw-carta-alt, #ffffff);
	border: var(--stw-bordo, 1px solid rgba(12, 17, 22, 0.09));
	border-radius: var(--stw-raggio-riga-elenco, 16px);
}

.stw-list-rows__riga::before {
	content: "";
	position: absolute;
	left: 0;
	top: 0;
	bottom: 0;
	width: 4px;
	background: var(--stw-accento, #2557d6);
	transform: scaleY(0);
	transform-origin: bottom;

	visibility: hidden;
	transition: transform var(--stw-hover-durata, 0.45s) var(--stw-ingresso-easing, cubic-bezier(0.22, 0.61, 0.36, 1));
}

.stw-list-rows__marcatore {
	flex: 0 0 auto;
	min-width: 2.4ch;
	font-family: var(--stw-font-testo, "Manrope", sans-serif);
	font-size: var(--stw-etichetta, 11px);
	font-weight: var(--stw-font-testo-peso-forte, 600);
	letter-spacing: var(--stw-etichetta-spaziatura, 0.14em);
	text-transform: var(--stw-etichetta-trasformazione, uppercase);
	color: var(--stw-accento-testo, var(--stw-accento, #2557d6));
}

.stw-list-rows__titolo {
	flex: 1 1 240px;
	margin: 0;
	font-family: var(--stw-font-titoli, "Sora", sans-serif);
	font-weight: var(--stw-font-titoli-peso-forte, 600);
	font-size: calc(var(--stw-h3, 24px) * 1.12);
	line-height: 1.15;
	letter-spacing: var(--stw-font-titoli-spaziatura, -0.02em);
	color: inherit;
}

.stw-list-rows__testo {
	flex: 1 1 280px;
	margin: 0;
	font-family: var(--stw-font-testo, "Manrope", sans-serif);
	font-weight: var(--stw-font-testo-peso, 400);
	font-size: var(--stw-corpo, 17px);
	line-height: 1.65;
	color: var(--stw-testo-secondario, #5b6673);
}

.stw-list-rows__meta {
	flex: 0 0 auto;
	font-family: var(--stw-font-testo, "Manrope", sans-serif);
	font-size: 13px;
	font-weight: var(--stw-font-testo-peso-forte, 600);
	text-transform: var(--stw-etichetta-trasformazione, uppercase);
	color: var(--stw-testo-secondario, #5b6673);
}

.stw-list-rows--meta-prezzo .stw-list-rows__meta {
	font-size: clamp(15px, 1.2vw, 19px);
	text-transform: none;
	letter-spacing: -0.01em;
	color: var(--stw-accento-testo, var(--stw-accento, #2557d6));
}

.stw-list-rows__freccia {
	flex: 0 0 auto;
	font-size: 16px;
	color: var(--stw-accento-testo, var(--stw-accento, #2557d6));
	transition: transform var(--stw-hover-durata, 0.45s) var(--stw-ingresso-easing, cubic-bezier(0.22, 0.61, 0.36, 1));
}

@media (hover: hover) and (pointer: fine) {
	.stw-widget--list-rows.stw-list-rows--hover-scorrimento .stw-list-rows__riga:hover > * {
		transform: translateX(12px);
	}

	.stw-widget--list-rows.stw-list-rows--hover-scorrimento .stw-list-rows__riga:hover::before {
		visibility: visible;
		transform: scaleY(1);
	}

	.stw-widget--list-rows.stw-list-rows--hover-scorrimento .stw-list-rows__riga:hover .stw-list-rows__freccia {
		transform: translateX(18px);
	}
}

.stw-widget--list-rows.stw-list-rows--hover-scorrimento .stw-list-rows__riga:focus-visible > * {
	transform: translateX(12px);
}

.stw-widget--list-rows.stw-list-rows--hover-scorrimento .stw-list-rows__riga:focus-visible::before {
	visibility: visible;
	transform: scaleY(1);
}

.stw-widget--list-rows.stw-list-rows--hover-inversione .stw-list-rows__riga::before {
	display: none;
}

@media (hover: hover) and (pointer: fine) {
	.stw-widget--list-rows.stw-list-rows--hover-inversione .stw-list-rows__riga:hover {
		background: var(--stw-inchiostro, #0c1116);
		color: var(--stw-carta, #f5f4f1);
		--stw-testo-secondario: rgb(from var(--stw-carta, #f5f4f1) r g b / 0.78);
		--stw-accento-testo: var(--stw-accento-su-scuro, var(--stw-accento, #2557d6));
	}
}

.stw-widget--list-rows.stw-list-rows--hover-inversione .stw-list-rows__riga:focus-visible {
	background: var(--stw-inchiostro, #0c1116);
	color: var(--stw-carta, #f5f4f1);
	--stw-testo-secondario: rgb(from var(--stw-carta, #f5f4f1) r g b / 0.78);
	--stw-accento-testo: var(--stw-accento-su-scuro, var(--stw-accento, #2557d6));
}

@media (prefers-reduced-motion: reduce) {
	.stw-list-rows__riga,
	.stw-list-rows__riga > *,
	.stw-list-rows__freccia,
	.stw-list-rows__media img {
		transition: none;
	}

	.stw-widget--list-rows .stw-list-rows__riga > * {
		transform: none !important;
	}
}

.elementor-19 .elementor-element.elementor-element-9f0fc62{--display:flex;}.elementor-19 .elementor-element.elementor-element-fe8cfc0{--display:flex;--flex-direction:row;--container-widget-width:initial;--container-widget-height:100%;--container-widget-flex-grow:1;--container-widget-align-self:stretch;--flex-wrap-mobile:wrap;--gap:48px 48px;--row-gap:48px;--column-gap:48px;}.elementor-19 .elementor-element.elementor-element-c98e6cd{--display:flex;}.elementor-19 .elementor-element.elementor-element-7cfda39 .elementor-heading-title{color:var( --e-global-color-secondary );}.elementor-19 .elementor-element.elementor-element-10fbfc5 .elementor-heading-title{color:var( --e-global-color-primary );}.elementor-19 .elementor-element.elementor-element-f60a33d{color:var( --e-global-color-text );}.elementor-19 .elementor-element.elementor-element-313f7c8{--display:flex;--flex-direction:row;--container-widget-width:calc( ( 1 - var( --container-widget-flex-grow ) ) * 100% );--container-widget-height:100%;--container-widget-flex-grow:1;--container-widget-align-self:stretch;--flex-wrap-mobile:wrap;--justify-content:flex-start;--align-items:center;--gap:12px 12px;--row-gap:12px;--column-gap:12px;--flex-wrap:wrap;}.elementor-19 .elementor-element.elementor-element-0ecad3d .elementor-button{fill:var( --e-global-color-primary );color:var( --e-global-color-primary );}.elementor-19 .elementor-element.elementor-element-482118a{--display:flex;}.elementor-19 .elementor-element.elementor-element-caeac50{--display:flex;}.elementor-19 .elementor-element.elementor-element-e35c03c .elementor-heading-title{color:var( --e-global-color-primary );}.elementor-19 .elementor-element.elementor-element-7597186{color:var( --e-global-color-text );}.elementor-19 .elementor-element.elementor-element-e963246{--display:flex;}.elementor-19 .elementor-element.elementor-element-e963246:not(.elementor-motion-effects-element-type-background), .elementor-19 .elementor-element.elementor-element-e963246 > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:var( --e-global-color-carta-alt );}.elementor-19 .elementor-element.elementor-element-1e05d5e{--display:flex;--flex-direction:row;--container-widget-width:initial;--container-widget-height:100%;--container-widget-flex-grow:1;--container-widget-align-self:stretch;--flex-wrap-mobile:wrap;--gap:48px 48px;--row-gap:48px;--column-gap:48px;}.elementor-19 .elementor-element.elementor-element-9b4f035{--display:flex;}.elementor-19 .elementor-element.elementor-element-2b89a37{--display:flex;}.elementor-19 .elementor-element.elementor-element-d878f1d .elementor-heading-title{color:var( --e-global-color-secondary );}.elementor-19 .elementor-element.elementor-element-423c036 .elementor-heading-title{color:var( --e-global-color-primary );}.elementor-19 .elementor-element.elementor-element-0e1d673{color:var( --e-global-color-text );}.elementor-19 .elementor-element.elementor-element-7c41c65{--display:flex;}.elementor-19 .elementor-element.elementor-element-a06eba9{--display:flex;--flex-wrap:wrap;}.elementor-19 .elementor-element.elementor-element-769e9ff{--display:flex;}.elementor-19 .elementor-element.elementor-element-e894097 .elementor-counter{flex-direction:column-reverse;}.elementor-19 .elementor-element.elementor-element-e894097 .elementor-counter-number-wrapper{color:var( --e-global-color-primary );}.elementor-19 .elementor-element.elementor-element-e894097 .elementor-counter-title{color:var( --e-global-color-text );}.elementor-19 .elementor-element.elementor-element-df05378{--display:flex;}.elementor-19 .elementor-element.elementor-element-2c9bf02 .elementor-counter{flex-direction:column-reverse;}.elementor-19 .elementor-element.elementor-element-2c9bf02 .elementor-counter-number-wrapper{color:var( --e-global-color-primary );}.elementor-19 .elementor-element.elementor-element-2c9bf02 .elementor-counter-title{color:var( --e-global-color-text );}.elementor-19 .elementor-element.elementor-element-26edb39{--display:flex;}.elementor-19 .elementor-element.elementor-element-340da87 .elementor-counter{flex-direction:column-reverse;}.elementor-19 .elementor-element.elementor-element-340da87 .elementor-counter-number-wrapper{color:var( --e-global-color-primary );}.elementor-19 .elementor-element.elementor-element-340da87 .elementor-counter-title{color:var( --e-global-color-text );}.elementor-19 .elementor-element.elementor-element-0926992 .stw-card-grid__griglia{--stw-card-grid-cols:3;}.elementor-19 .elementor-element.elementor-element-044b5c8{--display:flex;--flex-direction:row;--container-widget-width:initial;--container-widget-height:100%;--container-widget-flex-grow:1;--container-widget-align-self:stretch;--flex-wrap-mobile:wrap;}.elementor-19 .elementor-element.elementor-element-f94af23 .elementor-heading-title{color:var( --e-global-color-primary );}.elementor-19 .elementor-element.elementor-element-103ca83 .stw-project-grid__griglia{--stw-project-grid-cols:3;}.elementor-19 .elementor-element.elementor-element-22f7bce{--display:flex;}.elementor-19 .elementor-element.elementor-element-69a2783{--display:flex;--flex-direction:row;--container-widget-width:initial;--container-widget-height:100%;--container-widget-flex-grow:1;--container-widget-align-self:stretch;--flex-wrap-mobile:wrap;--gap:48px 48px;--row-gap:48px;--column-gap:48px;}.elementor-19 .elementor-element.elementor-element-a7790b3{--display:flex;}.elementor-19 .elementor-element.elementor-element-e11e54a .elementor-heading-title{color:var( --e-global-color-primary );}.elementor-19 .elementor-element.elementor-element-0ea6b7e{color:var( --e-global-color-text );}.elementor-19 .elementor-element.elementor-element-4b8930d{--display:flex;}.elementor-19 .elementor-element.elementor-element-6aef34a{--display:flex;}.elementor-19 .elementor-element.elementor-element-3671018{color:var( --e-global-color-text );}.elementor-19 .elementor-element.elementor-element-08acc45{--display:flex;}.elementor-19 .elementor-element.elementor-element-c9e5fd7{color:var( --e-global-color-text );}.elementor-19 .elementor-element.elementor-element-caddd37{--display:flex;}.elementor-19 .elementor-element.elementor-element-3338f03{color:var( --e-global-color-text );}.elementor-19 .elementor-element.elementor-element-cbd2793{--display:flex;}.elementor-19 .elementor-element.elementor-element-1382c66{color:var( --e-global-color-text );}.elementor-19 .elementor-element.elementor-element-e27e33e{--display:flex;}.elementor-19 .elementor-element.elementor-element-158b7ac{color:var( --e-global-color-text );}.elementor-19 .elementor-element.elementor-element-0df782d{--display:flex;}.elementor-19 .elementor-element.elementor-element-b5809f4{color:var( --e-global-color-text );}.elementor-19 .elementor-element.elementor-element-ac13d18{--display:flex;}.elementor-19 .elementor-element.elementor-element-11ff3d3{color:var( --e-global-color-text );}.elementor-19 .elementor-element.elementor-element-141affa{--n-accordion-title-font-size:1rem;--n-accordion-item-title-space-between:0px;--n-accordion-item-title-distance-from-content:0px;--n-accordion-icon-size:15px;}.elementor-19 .elementor-element.elementor-element-fe2b15a{--display:flex;}.elementor-19 .elementor-element.elementor-element-887e3df{--display:flex;--flex-direction:row;--container-widget-width:initial;--container-widget-height:100%;--container-widget-flex-grow:1;--container-widget-align-self:stretch;--flex-wrap-mobile:wrap;--gap:48px 48px;--row-gap:48px;--column-gap:48px;}.elementor-19 .elementor-element.elementor-element-2ab9ac7{--display:flex;--flex-wrap:nowrap;}.elementor-19 .elementor-element.elementor-element-e002cec .elementor-heading-title{color:var( --e-global-color-primary );}.elementor-19 .elementor-element.elementor-element-e91db11{color:var( --e-global-color-text );}.elementor-19 .elementor-element.elementor-element-6ceca49{--display:flex;}:root{--page-title-display:none;}@media(min-width:768px){.elementor-19 .elementor-element.elementor-element-c98e6cd{--width:58%;}.elementor-19 .elementor-element.elementor-element-482118a{--width:42%;}.elementor-19 .elementor-element.elementor-element-9b4f035{--width:45%;}.elementor-19 .elementor-element.elementor-element-2b89a37{--width:55%;}.elementor-19 .elementor-element.elementor-element-a7790b3{--width:35%;}.elementor-19 .elementor-element.elementor-element-4b8930d{--width:65%;}.elementor-19 .elementor-element.elementor-element-2ab9ac7{--width:50%;}.elementor-19 .elementor-element.elementor-element-6ceca49{--width:50%;}}@media(max-width:1024px) and (min-width:768px){.elementor-19 .elementor-element.elementor-element-c98e6cd{--width:100%;}.elementor-19 .elementor-element.elementor-element-482118a{--width:100%;}.elementor-19 .elementor-element.elementor-element-9b4f035{--width:100%;}.elementor-19 .elementor-element.elementor-element-2b89a37{--width:100%;}.elementor-19 .elementor-element.elementor-element-a7790b3{--width:100%;}.elementor-19 .elementor-element.elementor-element-4b8930d{--width:100%;}.elementor-19 .elementor-element.elementor-element-2ab9ac7{--width:100%;}.elementor-19 .elementor-element.elementor-element-6ceca49{--width:100%;}}@media(max-width:1024px){.elementor-19 .elementor-element.elementor-element-fe8cfc0{--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;}.elementor-19 .elementor-element.elementor-element-1e05d5e{--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;}.elementor-19 .elementor-element.elementor-element-0926992 .stw-card-grid__griglia{--stw-card-grid-cols:2;}.elementor-19 .elementor-element.elementor-element-044b5c8{--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;}.elementor-19 .elementor-element.elementor-element-103ca83 .stw-project-grid__griglia{--stw-project-grid-cols:2;}.elementor-19 .elementor-element.elementor-element-69a2783{--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;}.elementor-19 .elementor-element.elementor-element-887e3df{--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;}}@media(max-width:767px){.elementor-19 .elementor-element.elementor-element-0926992 .stw-card-grid__griglia{--stw-card-grid-cols:1;}.elementor-19 .elementor-element.elementor-element-103ca83 .stw-project-grid__griglia{--stw-project-grid-cols:1;}}
.elementor-38 .elementor-element.elementor-element-eb27c4b{--display:flex;}.elementor-38 .elementor-element.elementor-element-eb27c4b:not(.elementor-motion-effects-element-type-background), .elementor-38 .elementor-element.elementor-element-eb27c4b > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:var( --e-global-color-carta-alt );}.elementor-38 .elementor-element.elementor-element-a27a3aa{--display:flex;--flex-direction:column;--container-widget-width:calc( ( 1 - var( --container-widget-flex-grow ) ) * 100% );--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;--align-items:center;}.elementor-38 .elementor-element.elementor-element-bb17cb5{--display:flex;--flex-direction:row;--container-widget-width:calc( ( 1 - var( --container-widget-flex-grow ) ) * 100% );--container-widget-height:100%;--container-widget-flex-grow:1;--container-widget-align-self:stretch;--flex-wrap-mobile:wrap;--justify-content:center;--align-items:center;}.elementor-38 .elementor-element.elementor-element-6567d4a{text-align:center;}.elementor-38 .elementor-element.elementor-element-6567d4a .elementor-heading-title{color:var( --e-global-color-text );}.elementor-38 .elementor-element.elementor-element-9951771{text-align:center;color:var( --e-global-color-text );}.elementor-38 .elementor-element.elementor-element-fa261b1{--display:flex;--flex-direction:row;--container-widget-width:initial;--container-widget-height:100%;--container-widget-flex-grow:1;--container-widget-align-self:stretch;--flex-wrap-mobile:wrap;--gap:40px 40px;--row-gap:40px;--column-gap:40px;}.elementor-38 .elementor-element.elementor-element-b8e3a8b{--display:flex;}.elementor-38 .elementor-element.elementor-element-b42eac9 .elementor-heading-title{color:var( --e-global-color-text );}.elementor-38 .elementor-element.elementor-element-c1fae85{color:var( --e-global-color-text );}.elementor-38 .elementor-element.elementor-element-52f7ad6{--display:flex;}.elementor-38 .elementor-element.elementor-element-5f626ff .elementor-heading-title{color:var( --e-global-color-text );}.elementor-38 .elementor-element.elementor-element-2cae665{color:var( --e-global-color-text );}.elementor-38 .elementor-element.elementor-element-65283c9{--display:flex;}.elementor-38 .elementor-element.elementor-element-717a219 .elementor-heading-title{color:var( --e-global-color-text );}.elementor-38 .elementor-element.elementor-element-d31ef33{color:var( --e-global-color-text );}.elementor-38 .elementor-element.elementor-element-4eaecf9{--display:flex;--flex-direction:row;--container-widget-width:initial;--container-widget-height:100%;--container-widget-flex-grow:1;--container-widget-align-self:stretch;--flex-wrap-mobile:wrap;--justify-content:space-between;--gap:22px 22px;--row-gap:22px;--column-gap:22px;}.elementor-38 .elementor-element.elementor-element-9394ea1 .elementor-heading-title{color:var( --e-global-color-text );}.elementor-38 .elementor-element.elementor-element-1cad88e .elementor-heading-title{color:var( --e-global-color-text );}@media(max-width:1024px){.elementor-38 .elementor-element.elementor-element-fa261b1{--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;}.elementor-38 .elementor-element.elementor-element-4eaecf9{--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;}}@media(min-width:768px){.elementor-38 .elementor-element.elementor-element-b8e3a8b{--width:31.333333333333%;}.elementor-38 .elementor-element.elementor-element-52f7ad6{--width:31.333333333333%;}.elementor-38 .elementor-element.elementor-element-65283c9{--width:31.333333333333%;}}@media(max-width:1024px) and (min-width:768px){.elementor-38 .elementor-element.elementor-element-b8e3a8b{--width:100%;}.elementor-38 .elementor-element.elementor-element-52f7ad6{--width:100%;}.elementor-38 .elementor-element.elementor-element-65283c9{--width:100%;}}
.comments-area a,.page-content a{text-decoration:underline}.alignright{float:right;margin-left:1rem}.alignleft{float:left;margin-right:1rem}.aligncenter{clear:both;display:block;margin-inline:auto}.alignwide{margin-inline:-80px}.alignfull{margin-inline:calc(50% - 50vw);max-width:100vw}.alignfull,.alignfull img{width:100vw}.wp-caption{margin-block-end:1.25rem;max-width:100%}.wp-caption.alignleft{margin:5px 20px 20px 0}.wp-caption.alignright{margin:5px 0 20px 20px}.wp-caption img{display:block;margin-inline:auto}.wp-caption-text{margin:0}.gallery-caption{display:block;font-size:.8125rem;line-height:1.5;margin:0;padding:.75rem}.pagination{display:flex;justify-content:space-between;margin:20px auto}.sticky{display:block;position:relative}.bypostauthor{font-size:inherit}.hide{display:none!important}.post-password-form{margin:50px auto;max-width:500px}.post-password-form p{align-items:flex-end;display:flex;width:100%}.post-password-form [type=submit]{margin-inline-start:3px}.screen-reader-text{clip:rect(1px,1px,1px,1px);height:1px;overflow:hidden;position:absolute!important;width:1px;word-wrap:normal!important}.screen-reader-text:focus{background-color:#eee;clip:auto!important;clip-path:none;color:#333;display:block;font-size:1rem;height:auto;left:5px;line-height:normal;padding:12px 24px;text-decoration:none;top:5px;width:auto;z-index:100000}.post .entry-title a{text-decoration:none}.post .wp-post-image{max-height:500px;-o-object-fit:cover;object-fit:cover;width:100%}@media(max-width:991px){.post .wp-post-image{max-height:400px}}@media(max-width:575px){.post .wp-post-image{max-height:300px}}#comments .comment-list{font-size:.9em;list-style:none;margin:0;padding:0}#comments .comment,#comments .pingback{position:relative}#comments .comment .comment-body,#comments .pingback .comment-body{border-block-end:1px solid #ccc;display:flex;flex-direction:column;padding-block-end:30px;padding-block-start:30px;padding-inline-end:0;padding-inline-start:60px}#comments .comment .avatar,#comments .pingback .avatar{border-radius:50%;left:0;margin-inline-end:10px;position:absolute}body.rtl #comments .comment .avatar,body.rtl #comments .pingback .avatar,html[dir=rtl] #comments .comment .avatar,html[dir=rtl] #comments .pingback .avatar{left:auto;right:0}#comments .comment-meta{display:flex;justify-content:space-between;margin-block-end:.9rem}#comments .comment-metadata,#comments .reply{font-size:11px;line-height:1}#comments .children{list-style:none;margin:0;padding-inline-start:30px;position:relative}#comments .children li:last-child{padding-block-end:0}#comments ol.comment-list .children:before{content:"↪";display:inline-block;font-size:1em;font-weight:400;left:0;line-height:100%;position:absolute;top:45px;width:auto}body.rtl #comments ol.comment-list .children:before,html[dir=rtl] #comments ol.comment-list .children:before{content:"↩";left:auto;right:0}@media(min-width:768px){#comments .comment-author,#comments .comment-metadata{line-height:1}}@media(max-width:767px){#comments .comment .comment-body{padding:30px 0}#comments .children{padding-inline-start:20px}#comments .comment .avatar{float:left;position:inherit}body.rtl #comments .comment .avatar,html[dir=rtl] #comments .comment .avatar{float:right}}.page-header .entry-title,.site-footer .footer-inner,.site-footer:not(.dynamic-footer),.site-header .header-inner,.site-header:not(.dynamic-header),body:not([class*=elementor-page-]) .site-main{margin-inline-end:auto;margin-inline-start:auto;width:100%}@media(max-width:575px){.page-header .entry-title,.site-footer .footer-inner,.site-footer:not(.dynamic-footer),.site-header .header-inner,.site-header:not(.dynamic-header),body:not([class*=elementor-page-]) .site-main{padding-inline-end:10px;padding-inline-start:10px}}@media(min-width:576px){.page-header .entry-title,.site-footer .footer-inner,.site-footer:not(.dynamic-footer),.site-header .header-inner,.site-header:not(.dynamic-header),body:not([class*=elementor-page-]) .site-main{max-width:500px}.site-footer.footer-full-width .footer-inner,.site-header.header-full-width .header-inner{max-width:100%}}@media(min-width:768px){.page-header .entry-title,.site-footer .footer-inner,.site-footer:not(.dynamic-footer),.site-header .header-inner,.site-header:not(.dynamic-header),body:not([class*=elementor-page-]) .site-main{max-width:600px}.site-footer.footer-full-width,.site-header.header-full-width{max-width:100%}}@media(min-width:992px){.page-header .entry-title,.site-footer .footer-inner,.site-footer:not(.dynamic-footer),.site-header .header-inner,.site-header:not(.dynamic-header),body:not([class*=elementor-page-]) .site-main{max-width:800px}.site-footer.footer-full-width,.site-header.header-full-width{max-width:100%}}@media(min-width:1200px){.page-header .entry-title,.site-footer .footer-inner,.site-footer:not(.dynamic-footer),.site-header .header-inner,.site-header:not(.dynamic-header),body:not([class*=elementor-page-]) .site-main{max-width:1140px}.site-footer.footer-full-width,.site-header.header-full-width{max-width:100%}}.site-header+.elementor{min-height:calc(100vh - 320px)}

.site-header{display:flex;flex-wrap:wrap;justify-content:space-between;padding-block-end:1rem;padding-block-start:1rem;position:relative}.site-header .site-title{font-size:2.5rem;font-weight:500;line-height:1.2}.site-header .site-branding{display:flex;flex-direction:column;gap:.5rem;justify-content:center}.site-header .header-inner{display:flex;flex-wrap:wrap;justify-content:space-between}.site-header .header-inner .custom-logo-link{display:block}.site-header .header-inner .site-branding .site-description,.site-header .header-inner .site-branding .site-title{margin:0}.site-header .header-inner .site-branding .site-logo img{display:block}.site-header .header-inner .site-branding.show-logo .site-title,.site-header .header-inner .site-branding.show-title .site-logo{display:none!important}.site-header.header-inverted .header-inner{flex-direction:row-reverse}.site-header.header-inverted .header-inner .site-branding{text-align:end}.site-header.header-stacked .header-inner{align-items:center;flex-direction:column;text-align:center}.site-footer{padding-block-end:1rem;padding-block-start:1rem;position:relative}.site-footer .site-title{font-size:1.5rem;font-weight:500;line-height:1.2}.site-footer .site-branding{display:flex;flex-direction:column;gap:.5rem;justify-content:center}.site-footer .footer-inner{display:flex;flex-wrap:wrap;justify-content:space-between}.site-footer .footer-inner .custom-logo-link{display:block}.site-footer .footer-inner .site-branding .site-description,.site-footer .footer-inner .site-branding .site-title{margin:0}.site-footer .footer-inner .site-branding .site-logo img{display:block}.site-footer .footer-inner .site-branding.show-logo .site-title,.site-footer .footer-inner .site-branding.show-title .site-logo{display:none!important}.site-footer .footer-inner .copyright{align-items:center;display:flex;justify-content:flex-end}.site-footer .footer-inner .copyright p{margin:0}.site-footer.footer-inverted .footer-inner{flex-direction:row-reverse}.site-footer.footer-inverted .footer-inner .site-branding{text-align:end}.site-footer.footer-stacked .footer-inner{align-items:center;flex-direction:column;text-align:center}.site-footer.footer-stacked .footer-inner .site-branding .site-title{text-align:center}.site-footer.footer-stacked .footer-inner .site-navigation .menu{padding:0}@media(max-width:576px){.site-footer:not(.footer-stacked) .footer-inner .copyright,.site-footer:not(.footer-stacked) .footer-inner .site-branding,.site-footer:not(.footer-stacked) .footer-inner .site-navigation{display:block;max-width:none;text-align:center;width:100%}.site-footer .footer-inner .site-navigation ul.menu{justify-content:center}.site-footer .footer-inner .site-navigation ul.menu li{display:inline-block}}.site-header.header-stacked .site-navigation-toggle-holder{justify-content:center;max-width:100%}.site-header.menu-layout-dropdown .site-navigation{display:none}.site-navigation-toggle-holder{align-items:center;display:flex;padding:8px 15px}.site-navigation-toggle-holder .site-navigation-toggle{align-items:center;background-color:rgba(0,0,0,.05);border:0 solid;border-radius:3px;color:#494c4f;cursor:pointer;display:flex;justify-content:center;padding:.5rem}.site-navigation-toggle-holder .site-navigation-toggle-icon{display:block;width:1.25rem}.site-navigation-toggle-holder .site-navigation-toggle-icon:after,.site-navigation-toggle-holder .site-navigation-toggle-icon:before{background-color:currentColor;border-radius:3px;content:"";display:block;height:3px;transition:all .2s ease-in-out}.site-navigation-toggle-holder .site-navigation-toggle-icon:before{box-shadow:0 .35rem 0 currentColor;margin-block-end:.5rem}.site-navigation-toggle-holder .site-navigation-toggle[aria-expanded=true] .site-navigation-toggle-icon:before{box-shadow:none;transform:translateY(.35rem) rotate(45deg)}.site-navigation-toggle-holder .site-navigation-toggle[aria-expanded=true] .site-navigation-toggle-icon:after{transform:translateY(-.35rem) rotate(-45deg)}.site-navigation{align-items:center;display:flex}.site-navigation ul.menu,.site-navigation ul.menu ul{list-style-type:none;padding:0}.site-navigation ul.menu{display:flex;flex-wrap:wrap}.site-navigation ul.menu li{display:flex;position:relative}.site-navigation ul.menu li a{display:block;padding:8px 15px}.site-navigation ul.menu li.menu-item-has-children{padding-inline-end:15px}.site-navigation ul.menu li.menu-item-has-children:after{align-items:center;color:#666;content:"▾";display:flex;font-size:1.5em;justify-content:center;text-decoration:none}.site-navigation ul.menu li.menu-item-has-children:focus-within>ul{display:block}.site-navigation ul.menu li ul{background:#fff;display:none;left:0;min-width:150px;position:absolute;top:100%;z-index:2}.site-navigation ul.menu li ul li{border-block-end:1px solid #eee}.site-navigation ul.menu li ul li:last-child{border-block-end:none}.site-navigation ul.menu li ul li.menu-item-has-children a{flex-grow:1}.site-navigation ul.menu li ul li.menu-item-has-children:after{transform:translateY(-50%) rotate(-90deg)}.site-navigation ul.menu li ul ul{left:100%;top:0}.site-navigation ul.menu li:hover>ul{display:block}footer .site-navigation ul.menu li ul{bottom:100%;top:auto}footer .site-navigation ul.menu li ul ul{bottom:0}footer .site-navigation ul.menu a{padding:5px 15px}.site-navigation-dropdown{bottom:0;left:0;margin-block-start:10px;position:absolute;transform-origin:top;transition:max-height .3s,transform .3s;width:100%;z-index:10000}.site-navigation-toggle-holder:not(.elementor-active)+.site-navigation-dropdown{max-height:0;transform:scaleY(0)}.site-navigation-toggle-holder.elementor-active+.site-navigation-dropdown{max-height:100vh;transform:scaleY(1)}.site-navigation-dropdown ul{padding:0}.site-navigation-dropdown ul.menu{background:#fff;margin:0;padding:0;position:absolute;width:100%}.site-navigation-dropdown ul.menu li{display:block;position:relative;width:100%}.site-navigation-dropdown ul.menu li a{background:#fff;box-shadow:inset 0 -1px 0 rgba(0,0,0,.102);color:#55595c;display:block;padding:20px}.site-navigation-dropdown ul.menu li.current-menu-item a{background:#55595c;color:#fff}.site-navigation-dropdown ul.menu>li li{max-height:0;transform:scaleY(0);transform-origin:top;transition:max-height .3s,transform .3s}.site-navigation-dropdown ul.menu li.elementor-active>ul>li{max-height:100vh;transform:scaleY(1)}@media(max-width:576px){.site-header.menu-dropdown-mobile:not(.menu-layout-dropdown) .site-navigation{display:none!important}}@media(min-width:768px){.site-header.menu-dropdown-mobile:not(.menu-layout-dropdown) .site-navigation-toggle-holder{display:none!important}}@media(min-width:576px)and (max-width:767px){.site-header.menu-dropdown-mobile:not(.menu-layout-dropdown) .site-navigation{display:none!important}}@media(min-width:992px){.site-header.menu-dropdown-tablet:not(.menu-layout-dropdown) .site-navigation-toggle-holder{display:none!important}}@media(max-width:992px){.site-header.menu-dropdown-tablet:not(.menu-layout-dropdown) .site-navigation{display:none!important}}.site-header.menu-dropdown-none:not(.menu-layout-dropdown) .site-navigation-toggle-holder{display:none!important}

body {
  font-family: var(--stw-font-testo);
  font-weight: var(--stw-font-testo-peso);
  color: var(--stw-inchiostro);
  background: var(--stw-carta);
  -webkit-font-smoothing: antialiased;
}

.elementor,
.elementor .e-con {
  --container-max-width: 100%;
}

html,
body {
  overflow-x: clip;
}

.stw-sfondo-carta {
  background-color: var(--stw-carta);
}

.stw-sfondo-carta-alt {
  background-color: var(--stw-carta-alt);
}

.elementor-widget-text-editor p + p {
  margin-block-start: 1em;
}

:root {
  --stw-inchiostro: #3A3238;
  --stw-accento: #8F5450;
  --stw-testo-secondario: #6B6069;
  --stw-carta: #FBF7F5;
  --stw-carta-alt: #F4EBE7;
  --stw-accento-su-scuro: #E7C9C5;
  --stw-accento-decorativo: #C08480;
  --stw-resume-pannello: #F1EDF4;
  --stw-h1: 64px;
  --stw-h2: 48px;
  --stw-h3: 24px;
  --stw-corpo: 17px;
  --stw-etichetta: 12px;
  --stw-etichetta-trasformazione: uppercase;
  --stw-etichetta-spaziatura: 0.18em;
  --stw-margini-laterali: 5%;
  --stw-padding-sezione: 104px;
  --stw-gap-card-min: 14px;
  --stw-gap-card-max: 26px;
  --stw-gap-colonne-min: 24px;
  --stw-gap-colonne-max: 72px;
  --stw-ingresso-durata: 0.72s;
  --stw-ingresso-easing: cubic-bezier(.22,.61,.36,1);
  --stw-hover-durata: 0.45s;
  --stw-soglia-viewport: 88%;
  --stw-font-titoli: 'Cormorant Garamond', system-ui, sans-serif;
  --stw-font-titoli-peso: 300;
  --stw-font-titoli-interlinea: 1.04;
  --stw-font-testo: 'Karla', system-ui, sans-serif;
  --stw-font-testo-peso: 300;
  --stw-font-testo-peso-forte: 500;
  --stw-raggio-card: 25px;
  --stw-raggio-pulsante: 99px;
  --stw-bordo: 1px solid rgba(58,50,56,.1);
}

@media (max-width: 1024px) {
  :root {
    --stw-h1: 40px;
    --stw-h2: 34px;
    --stw-h3: 22px;
    --stw-corpo: 16px;
    --stw-margini-laterali: 24px;
    --stw-padding-sezione: 64px;
  }
}

@media (max-width: 767px) {
  :root {
    --stw-h1: 32px;
    --stw-h2: 27px;
    --stw-h3: 20px;
    --stw-margini-laterali: 16px;
    --stw-padding-sezione: 44px;
  }
}

@font-face {
  font-family: 'Cormorant Garamond';
  font-style: normal;
  font-weight: 300;
  font-display: swap;
  src: url('https://personale.story-time.it/wp-content/themes/stw-personale/assets/fonts/cormorant-garamond-v21-latin-300.woff2') format('woff2');
}

@font-face {
  font-family: 'Cormorant Garamond';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url('https://personale.story-time.it/wp-content/themes/stw-personale/assets/fonts/cormorant-garamond-v21-latin-400.woff2') format('woff2');
}

@font-face {
  font-family: 'Cormorant Garamond';
  font-style: italic;
  font-weight: 300;
  font-display: swap;
  src: url('https://personale.story-time.it/wp-content/themes/stw-personale/assets/fonts/cormorant-garamond-v21-latin-300italic.woff2') format('woff2');
}

@font-face {
  font-family: 'Karla';
  font-style: normal;
  font-weight: 300;
  font-display: swap;
  src: url('https://personale.story-time.it/wp-content/themes/stw-personale/assets/fonts/karla-v33-latin-300.woff2') format('woff2');
}

@font-face {
  font-family: 'Karla';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url('https://personale.story-time.it/wp-content/themes/stw-personale/assets/fonts/karla-v33-latin-400.woff2') format('woff2');
}

@font-face {
  font-family: 'Karla';
  font-style: normal;
  font-weight: 500;
  font-display: swap;
  src: url('https://personale.story-time.it/wp-content/themes/stw-personale/assets/fonts/karla-v33-latin-500.woff2') format('woff2');
}

:root {

  --stw-display-h1: clamp(40px, 7.6vw, 102px);

  --stw-display-h2: clamp(28px, 4.4vw, 58px);
  --stw-display-h2-resume: clamp(26px, 4vw, 50px);
  --stw-display-h2-contact: clamp(30px, 4.8vw, 64px);

  --stw-display-h3-servizio: clamp(22px, 2.6vw, 30px);
  --stw-display-h3-lavoro: clamp(19px, 2.2vw, 25px);
  --stw-display-h3-tappa: 20px;
  --stw-display-segno-faq: 24px;

  --stw-display-corpo-hero: clamp(16px, 1.8vw, 21px);

  --stw-display-corpo-largo: clamp(16px, 1.6vw, 18px);
  --stw-display-corpo-spalla-faq: clamp(16px, 1.6vw, 17px);

  --stw-display-marchio: clamp(19px, 2.2vw, 26px);
  --stw-display-numero-stat: clamp(34px, 4.2vw, 54px);
  --stw-display-badge-numero: 26px;

  --stw-font-titoli-interlinea: 1.12;
  --stw-font-titoli-peso-forte: 400;

  --stw-font-titoli-trasformazione: none;

  --stw-header-h: clamp(66px, 7.4vw, 94px);
  --stw-header-h-ridotto: clamp(58px, 6vw, 74px);
}

h2.elementor-heading-title,
.stw-card-grid__intestazione-titolo,
.stw-timeline-skills__titolo {
  text-wrap: balance;
}

a {
  color: var(--stw-accento);
  text-decoration: none;
}

.page-content a,
.comments-area a {
  text-decoration: none;
}

@media (hover: hover) and (pointer: fine) {
  a:hover {
    color: var(--stw-inchiostro);
  }
}

button {
  font-family: inherit;
  color: inherit;
}

.elementor > .elementor-element {
  padding-inline: var(--stw-margini-laterali);
  padding-block: calc(var(--stw-padding-sezione) / 2);
}

.elementor > .elementor-element.elementor-widget {
  padding: 0;
  margin: 0;
}

.elementor > .elementor-element.elementor-widget > .elementor-widget-container > .stw-widget {
  padding-inline: var(--stw-margini-laterali);
  padding-block: calc(var(--stw-padding-sezione) / 2);
}

.stw-sfondo-inchiostro,
.stw-superficie-inchiostro {
  background-color: var(--stw-inchiostro);
  color: var(--stw-carta);

  --stw-testo-secondario: rgb(from var(--stw-carta) r g b / .72);
  --stw-accento: var(--stw-accento-su-scuro);
  --stw-accento-testo: var(--stw-accento-su-scuro);
}

.stw-sfondo-accento {
  background-color: var(--stw-accento);
  color: var(--stw-carta);
}

.elementor-element:has(> #home) + .elementor-element {
  padding-block-start: clamp(40px, 6vw, 110px);
}

.stw-superficie-carta + .stw-superficie-carta,
.stw-superficie-carta-alt + .stw-superficie-carta-alt {
  padding-block-start: 0;
}

.elementor > .elementor-element.stw-pannello {
  padding: 0;
  margin-inline: var(--stw-margini-laterali);
  margin-block: calc(var(--stw-padding-sezione) / 2);
  max-width: calc(100% - 2 * var(--stw-margini-laterali));
  border-radius: clamp(24px, 3vw, 40px);
  overflow: hidden;
}

.elementor .elementor-element.stw-pannello > .e-con-inner,
.elementor .elementor-element.stw-pannello > .e-con {
  padding: clamp(26px, 4vw, 72px) clamp(20px, 3.4vw, 60px);
}

@media (min-width: 1025px) {
  .elementor .elementor-element.stw-pannello > .e-con > .e-con:has(> .elementor-widget-image) {
    align-self: stretch;
  }

  .elementor .elementor-element.stw-pannello > .e-con > .e-con > .elementor-widget-image {
    position: relative;
    flex: 1 1 auto;
    min-height: 320px;
  }

  .elementor .elementor-element.stw-pannello > .e-con > .e-con > .elementor-widget-image img {
    position: absolute;
    inset: 0;
    width: 100%;
    height: 100%;
    object-fit: cover;
  }
}

.elementor-element:has(> #resume) + .elementor-element {
  margin-inline: var(--stw-margini-laterali);
  margin-block: calc(var(--stw-padding-sezione) / 2);
  max-width: calc(100% - 2 * var(--stw-margini-laterali));
  border-radius: clamp(24px, 3vw, 40px);
  overflow: hidden;
}

.elementor-element:has(> #resume) + .elementor-element > .elementor-widget-container > .stw-widget {
  background: var(--stw-resume-pannello);
  padding: clamp(26px, 4vw, 72px) clamp(20px, 3.4vw, 60px);
}

.elementor-element:has(> #resume) + .elementor-element .stw-timeline-skills__titolo {
  font-size: var(--stw-display-h2-resume);
}

.elementor-heading-title {
  font-family: var(--stw-font-titoli);
  font-weight: var(--stw-font-titoli-peso);
  text-wrap: pretty;
  margin: 0;
}

h1.elementor-heading-title {
  font-size: var(--stw-display-h1);
  line-height: var(--stw-font-titoli-interlinea);
  letter-spacing: -.015em;
  max-width: none;
}

h2.elementor-heading-title {
  font-size: var(--stw-display-h2);
  line-height: 1.12;
  letter-spacing: -.01em;
}

h3.elementor-heading-title {
  font-size: var(--stw-h3);
  line-height: 1.2;
  font-weight: 400;
}

.elementor-element:has(> #contact) + .elementor-element h3.elementor-heading-title {
  font-size: var(--stw-display-h2-contact);
  line-height: 1.06;
  letter-spacing: -.01em;
  font-weight: var(--stw-font-titoli-peso);
}

.site-header__marchio-nome {
  display: inline-block;
  font-family: var(--stw-font-titoli);
  font-weight: 400;
  font-size: var(--stw-display-marchio);
  line-height: 1;
  letter-spacing: .01em;
  color: var(--stw-inchiostro);
  text-decoration: none;
}

.site-header__marchio-nome:focus-visible {
  color: var(--stw-inchiostro);
}

@media (hover: hover) and (pointer: fine) {
  .site-header__marchio-nome:hover {
    color: var(--stw-inchiostro);
  }
}

.stw-occhiello .elementor-heading-title,
.stw-card-grid__intestazione-occhiello {

  line-height: 1.35;
  flex-wrap: wrap;
  font-family: var(--stw-font-testo);
  font-weight: var(--stw-font-testo-peso-forte);
  font-size: var(--stw-etichetta);
  letter-spacing: .24em;
  text-transform: uppercase;
  max-width: none;
  display: inline-flex;
  align-items: center;
  gap: 10px;
}

.stw-occhiello .elementor-heading-title::before,
.stw-card-grid__intestazione-occhiello::before {
  content: "";
  display: block;
  width: 22px;
  height: 1px;
  background: var(--stw-accento-decorativo);
  flex: 0 0 auto;
}

.stw-occhiello-inline {
  display: flex;
  width: fit-content;
  align-items: center;
  gap: 10px;
  line-height: 1.35;
  margin-bottom: 14px;
  font-family: var(--stw-font-testo);
  font-weight: var(--stw-font-testo-peso-forte);
  font-size: var(--stw-etichetta);
  letter-spacing: .24em;
  text-transform: uppercase;
  color: var(--stw-accento);
}

.stw-occhiello-inline::before,
.elementor .stw-timeline-skills__occhiello::before {
  content: "";
  display: block;
  width: 22px;
  height: 1px;
  background: var(--stw-accento-decorativo);
  flex: 0 0 auto;
}

.elementor .stw-timeline-skills__occhiello {
  display: flex;
  align-items: center;
  gap: 10px;
  color: var(--stw-accento);
  letter-spacing: .24em;
}

.stw-evidenzia {
  font-style: italic;
  color: var(--stw-accento);
}

.stw-evidenzia--gradiente {
  background: linear-gradient(100deg, #A85F5A, #6E5C8A, #5F7D69, #A85F5A);
  background-size: 300% 100%;
  -webkit-background-clip: text;
  background-clip: text;
  color: transparent;
  animation: stw-scintillio 9s ease-in-out infinite;
}

@keyframes stw-scintillio {
  0%, 100% { background-position: 0% 50%; }
  50% { background-position: 100% 50%; }
}

.elementor-widget-text-editor {
  font-family: var(--stw-font-testo);
  font-weight: var(--stw-font-testo-peso);
  font-size: var(--stw-corpo);
  line-height: 1.75;
  color: var(--stw-testo-secondario);
}

.elementor-widget-text-editor p {
  margin: 0;
  max-width: 58ch;
}

.elementor-element:has(> #home) + .elementor-element .elementor-widget-text-editor:not(.stw-badge *) {
  font-size: var(--stw-display-corpo-hero);
  max-width: 44ch;
}

.stw-pannello .elementor-widget-text-editor,
.elementor-element:has(> #contact) + .elementor-element .elementor-widget-text-editor {
  font-size: var(--stw-display-corpo-largo);
  max-width: 52ch;
}

.stw-sticky .elementor-widget-text-editor {
  font-size: var(--stw-display-corpo-spalla-faq);
  max-width: 36ch;
}

.elementor-widget-button .elementor-button {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  border-radius: var(--stw-raggio-pulsante);
  font-family: var(--stw-font-testo);
  font-weight: var(--stw-font-testo-peso-forte);
  font-size: 14px;
  line-height: 1;
  letter-spacing: .03em;
  padding: 17px 30px;
  text-decoration: none;
  transition: transform .45s var(--stw-ingresso-easing), box-shadow .45s ease, background-color .3s ease, color .3s ease;
}

.stw-pulsante-riempito .elementor-button {
  background-color: var(--stw-inchiostro) !important;
  color: var(--stw-carta) !important;

  border: 1px solid transparent;
}

.stw-pulsante-riempito .elementor-button:focus-visible {
  transform: translateY(-3px);
  box-shadow: 0 20px 34px rgb(from var(--stw-inchiostro) r g b / .24);
}

@media (hover: hover) and (pointer: fine) {
  .stw-pulsante-riempito .elementor-button:hover {
    transform: translateY(-3px);
    box-shadow: 0 20px 34px rgb(from var(--stw-inchiostro) r g b / .24);
  }
}

.stw-pulsante-in-linea .elementor-button {
  background-color: transparent !important;
  color: var(--stw-accento-testo, var(--stw-accento)) !important;
  border: 0;
  border-radius: 0;
  padding: 0;
  font-size: 15px;
}

.stw-pulsante-in-linea .elementor-button .elementor-button-text {
  transition: transform var(--stw-hover-durata) var(--stw-ingresso-easing);
}

.stw-pulsante-in-linea .elementor-button:focus-visible .elementor-button-text {
  transform: translateX(5px);
}

@media (hover: hover) and (pointer: fine) {
  .stw-pulsante-in-linea .elementor-button:hover .elementor-button-text {
    transform: translateX(5px);
  }
}

.stw-pulsante-contorno .elementor-button {
  background-color: transparent !important;
  border: 1px solid rgb(from var(--stw-inchiostro) r g b / .22);
}

.stw-pulsante-contorno .elementor-button:focus-visible {
  background-color: rgb(from var(--stw-inchiostro) r g b / .05) !important;
  transform: translateY(-3px);
}

@media (hover: hover) and (pointer: fine) {
  .stw-pulsante-contorno .elementor-button:hover {
    background-color: rgb(from var(--stw-inchiostro) r g b / .05) !important;
    transform: translateY(-3px);
  }
}

.stw-pulsante-pillola .elementor-button {
  background-color: transparent !important;
  border: 1px solid rgb(from var(--stw-inchiostro) r g b / .22);
  padding: 10px 16px;
  font-size: 12px;
}

.stw-pulsante-pillola .elementor-button:focus-visible {
  background-color: var(--stw-inchiostro) !important;
  border-color: var(--stw-inchiostro);
  color: var(--stw-carta) !important;
}

@media (hover: hover) and (pointer: fine) {
  .stw-pulsante-pillola .elementor-button:hover {
    background-color: var(--stw-inchiostro) !important;
    border-color: var(--stw-inchiostro);
    color: var(--stw-carta) !important;
  }
}

.elementor .e-con:has(> .stw-badge) {
  position: relative;
  max-width: 480px;
  margin-inline: auto;
}

@media (max-width: 1024px) {
  .elementor .e-con:has(> .stw-badge) {
    margin-inline: 0 auto;
  }
}

.e-con.stw-badge {
  position: absolute;
  left: max(6px, -6%);
  bottom: 10%;
  height: auto;
  width: auto;
  border-radius: 22px;
  background: var(--stw-carta);
  box-shadow: 0 20px 44px rgb(from var(--stw-inchiostro) r g b / .13);
  padding: 0;
  animation:
    stw-badge-arriva 700ms cubic-bezier(0.23, 1, 0.32, 1) 200ms both,
    stw-badge-galleggia 7s ease-in-out 900ms infinite;
}

body:not(.elementor-editor-active) .e-con.stw-badge.stw-badge > .e-con-inner > .elementor-element.elementor-widget {
  animation: none;
}

@keyframes stw-badge-arriva {
  from { opacity: 0; transform: translateY(12px); }
  to { opacity: 1; transform: translateY(0); }
}

.e-con.stw-badge > .e-con-inner {
  padding: 16px 20px;
}

.stw-badge .elementor-heading-title {
  font-family: var(--stw-font-titoli);
  font-weight: 400;
  font-size: var(--stw-display-badge-numero);
  line-height: 1;
  color: var(--stw-accento);
  max-width: none;
}

.stw-badge .elementor-widget-text-editor {
  margin-top: 7px;
  font-size: 13px;
  line-height: 1.5;
  color: var(--stw-testo-secondario);
}

.stw-badge .elementor-widget-text-editor p {
  max-width: 15ch;
}

@keyframes stw-badge-galleggia {
  0%, 100% { transform: translateY(0); }
  50% { transform: translateY(-9px); }
}

.elementor .stw-hero-split__immagine--arco img {
  border-radius: 999px 999px 26px 26px;
  aspect-ratio: 4 / 5;
  object-fit: cover;
}

@media (prefers-reduced-motion: no-preference) {
  body:not(.elementor-editor-active) .elementor-element:has(> #home) + .elementor-element .stw-hero-split__immagine--arco img {
    animation: stw-ritratto-assesta 1200ms cubic-bezier(0.23, 1, 0.32, 1) both;
  }
}

@keyframes stw-ritratto-assesta {
  from { transform: scale(1.03); }
  to { transform: none; }
}

.stw-pannello .elementor-counter-number-wrapper {
  font-family: var(--stw-font-titoli);
  font-weight: var(--stw-font-titoli-peso);
  font-size: var(--stw-display-numero-stat);
  line-height: 1;
  color: var(--stw-inchiostro);
}

.stw-pannello .elementor-counter-number-wrapper {
  justify-content: flex-start;
  text-align: start;
}

.stw-pannello .elementor-counter-number-prefix,
.stw-pannello .elementor-counter-number-suffix {
  flex-grow: 0;
}

@media (min-width: 768px) {
  .stw-pannello .e-con-inner:has(> .e-con > .e-con-inner > .elementor-widget-counter) {
    flex-direction: row;
    flex-wrap: nowrap;
    gap: clamp(24px, 4vw, 56px);
  }

  .stw-pannello .e-con-inner:has(> .e-con > .e-con-inner > .elementor-widget-counter) > .e-con {
    flex: 1 1 0;
    width: auto;
    min-width: 0;
  }
}

.stw-pannello .elementor-counter-title {
  justify-content: flex-start;
  text-align: start;
  margin-top: 10px;
  font-family: var(--stw-font-testo);
  font-weight: 400;
  font-size: 12px;
  line-height: 1.6;
  text-transform: none;
  letter-spacing: 0;
  color: var(--stw-testo-secondario);
  max-width: 18ch;
}

.e-n-accordion-item-title {
  font-family: var(--stw-font-testo);
  font-weight: 400;
  font-size: var(--stw-display-corpo-largo);
  text-transform: none;
  letter-spacing: 0;
  color: var(--stw-inchiostro);
}

.stw-faq-stile-filetto .e-n-accordion-item-title-icon {
  font-family: var(--stw-font-titoli);
  font-size: var(--stw-display-segno-faq);
  line-height: 1;
  color: var(--stw-accento);
}

.stw-faq-stile-filetto .e-n-accordion-item-title-icon svg {
  display: none;
}

.stw-faq-stile-filetto .e-n-accordion-item-title-icon::before {
  content: "+";
}

.stw-faq-stile-filetto .e-n-accordion-item.e-active .e-n-accordion-item-title-icon::before,
.stw-faq-stile-filetto .e-n-accordion-item[open] .e-n-accordion-item-title-icon::before {
  content: "\2212";
}

.e-n-accordion-item {
  border-top: 1px solid rgb(from var(--stw-inchiostro) r g b / .12);
}

.e-n-accordion-item:last-child {
  border-bottom: 1px solid rgb(from var(--stw-inchiostro) r g b / .12);
}

.elementor-widget-n-accordion .e-n-accordion-item-title,
.elementor-widget-n-accordion .e-n-accordion-item > .e-con {
  border: 0;
  border-radius: 0;
}

.e-n-accordion-item > .e-con {
  padding-inline: 10px;
}

.stw-sticky {
  position: sticky;
  top: calc(var(--stw-header-h) + 20px);
}

@media (max-width: 1024px) {
  .stw-sticky {
    position: static;
  }
}

.elementor .stw-project-grid__card {
  display: grid;
  grid-template-columns: 1fr auto;
  grid-template-areas:
    "immagine immagine"
    "titolo anno"
    "tipo tipo";
  column-gap: 12px;
  row-gap: 6px;
}

.elementor .stw-project-grid__immagine {
  grid-area: immagine;
}

.elementor .stw-project-grid__card .stw-project-grid__immagine {
  border: 0;
  border-radius: clamp(18px, 2.2vw, 26px);
  overflow: hidden;
}

.elementor .stw-project-grid__card .stw-project-grid__immagine img {
  border-radius: 0;
}

.elementor .stw-project-grid__titolo {
  grid-area: titolo;
  font-family: var(--stw-font-titoli);
  font-weight: 400;
  font-size: var(--stw-display-h3-lavoro);
  line-height: 1.2;
}

.elementor .stw-project-grid__nota {
  grid-area: anno;
  align-self: baseline;
  justify-self: end;
  font-family: var(--stw-font-testo);
  font-weight: 400;
  font-size: 12px;
  color: var(--stw-testo-secondario);
}

.elementor .stw-project-grid__tipo {
  grid-area: tipo;
  font-family: var(--stw-font-testo);
  font-weight: 400;
  font-size: 12px;
  letter-spacing: 0;
  text-transform: none;
  color: var(--stw-testo-secondario);
}

.elementor .stw-project-grid__filtro {
  border-radius: var(--stw-raggio-pulsante);
  font-family: var(--stw-font-testo);
  font-weight: var(--stw-font-testo-peso-forte);
  font-size: 12px;
  letter-spacing: .04em;
}

.elementor .stw-project-grid__filtro.is-attivo {
  background: var(--stw-inchiostro);
  color: var(--stw-carta);
  border-color: var(--stw-inchiostro);
}

.elementor-widget-image img {
  display: block;
  width: 100%;
  height: auto;
  border-radius: clamp(18px, 2.2vw, 26px);
}

.stw-pannello .elementor-widget-image img {
  border-radius: clamp(20px, 2.4vw, 32px);
}

.elementor .stw-marquee-band__voce {
  font-family: var(--stw-font-titoli);
  font-style: italic;
  font-weight: 300;
  font-size: clamp(28px, 3.6vw, 48px);
  line-height: 1.2;
  letter-spacing: 0;
  text-transform: none;

  color: rgb(from var(--stw-accento) r g b / .75);
}

.elementor .stw-marquee-band--separatore-punto .stw-marquee-band__voce:not(:last-child)::after {
  font-style: normal;
  color: var(--stw-accento-decorativo);
}

.elementor-element:has(> #works) + .elementor-element {
  padding-block-end: clamp(24px, 3vw, 40px);
}

.elementor-element:has(> #works) + .elementor-element + .elementor-element > .elementor-widget-container > .stw-widget,
.elementor-element:has(> #works) + .elementor-element + .elementor-element > .stw-widget {
  padding-block-start: 0;
}

@media (min-width: 700px) and (max-width: 1024px) {
  .elementor .stw-card-grid__griglia {
    grid-template-columns: minmax(0, 1fr);
  }

  .elementor .stw-card-grid__card {
    min-height: 0;
  }

  .elementor .stw-card-grid__testo {
    max-width: 62ch;
  }
}

@media (max-width: 767px) {
  :root {
    --stw-etichetta: 13px;
  }

  .elementor .stw-project-grid__filtri {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 8px;
  }

  .stw-badge .elementor-widget-text-editor,
  .stw-pannello .elementor-counter-title,
  .elementor .stw-project-grid__nota,
  .elementor .stw-project-grid__tipo,
  .elementor .stw-project-grid__filtro,
  .stw-card-grid__meta,
  .stw-timeline-skills__tag-voce,
  .stw-timeline-skills__nome {
    font-size: 14px;
  }

  .stw-timeline-skills__anni,
  .stw-timeline-skills__percentuale {
    font-size: 13px;
  }

  .stw-timeline-skills__luogo {
    font-size: 16px;
  }

  .stw-occhiello .elementor-heading-title,
  .stw-card-grid__intestazione-occhiello,
  .stw-occhiello-inline {
    letter-spacing: .14em;
  }
}

@media (prefers-reduced-motion: reduce) {
  .elementor-widget-button .elementor-button,
  .stw-pulsante-riempito .elementor-button,
  .e-con.stw-badge {
    transition: none;
    animation: none;
  }

  .stw-pulsante-riempito .elementor-button:hover,
  .stw-pulsante-riempito .elementor-button:focus-visible,
  .stw-pulsante-contorno .elementor-button:hover,
  .stw-pulsante-contorno .elementor-button:focus-visible {
    transform: none;
  }

  .stw-evidenzia--gradiente {
    animation: none;
    background-position: 0% 50%;
  }
}

:root {
  --stw-su-accento: var(--stw-carta);
}

.stw-service-message__segno .elementor-icon {
  position: relative;
  width: 64px;
  height: 64px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  font-size: 26px;
}

*:has(+ .stw-service-message__colonna-decorazione) {
  flex: 1 1 min(100%, 360px);
}

.stw-service-message__colonna-decorazione {
  flex: 1 1 min(100%, 280px);
  display: flex;
  align-items: center;
  justify-content: center;
  min-height: clamp(200px, 22vw, 340px);
}

.stw-service-message--centrato {
  margin-inline: auto;
}

.stw-service-message__barra {
  position: relative;
  margin: 26px auto 0;
  max-width: 280px;
  height: 2px;
  background: rgb(from var(--stw-inchiostro) r g b / .12);
  overflow: hidden;
}

.stw-service-message__barra::after {
  content: '';
  position: absolute;
  inset: 0;
  background: var(--stw-accento-decorativo, var(--stw-accento));
  transform-origin: left;
  animation: stw-service-message-traccia 3.2s ease-in-out infinite;
}

@keyframes stw-service-message-traccia {
  0% { transform: scaleX(0); }
  100% { transform: scaleX(1); }
}

.stw-service-message__pannello {
  margin-top: clamp(26px, 3.4vw, 40px);
  text-align: left;
}

.stw-service-message__pannello:has(.stw-service-message__elenco--pillole) {
  padding-top: 20px;
  border-top: var(--stw-bordo);
}

.stw-service-message__pannello:has(.stw-service-message__elenco--righe) {
  padding: 22px;
  border: var(--stw-bordo);
  border-radius: var(--stw-raggio-pannello, var(--stw-raggio-card));
}

.stw-service-message__elenco {
  margin-top: 14px;
  display: flex;
}

.stw-service-message__elenco--righe .elementor-button {
  display: flex;
  width: 100%;
  align-items: center;
  justify-content: space-between;
  gap: 14px;
  padding-bottom: 12px;
  border-bottom: var(--stw-bordo);
  font-size: 14px;
}

.stw-service-message__elenco--righe .elementor-button::after {
  content: '→';
  color: var(--stw-accento-testo, var(--stw-accento-decorativo, var(--stw-accento)));
  transition: transform var(--stw-hover-durata) var(--stw-ingresso-easing);
}

@media (prefers-reduced-motion: reduce) {
.stw-service-message__segno .elementor-icon::after,
  .stw-service-message__barra::after {
    animation: none;
  }
}

@media (prefers-reduced-motion: reduce) {
.stw-service-message__segno .elementor-icon::after {
    opacity: 0;
  }
}

@media (prefers-reduced-motion: reduce) {
.stw-service-message__barra::after {
    transform: scaleX(1);
  }
}

@media (prefers-reduced-motion: reduce) {
.stw-service-message__elenco--righe .elementor-button:hover::after,
  .stw-service-message__elenco--righe .elementor-button:focus-visible::after {
    transform: none;
  }
}

.site-header__mobile[hidden] {
  display: none;
}

.site-header {
  display: block;
  position: sticky;
  top: 0;
  z-index: var(--stw-z-intestazione, 90);
  background: rgb(from var(--stw-carta) r g b / .82);
  backdrop-filter: blur(16px);
  -webkit-backdrop-filter: blur(16px);
}

.site-header__interno {
  display: flex;
  align-items: center;
  gap: 3%;
  padding-inline: var(--stw-margini-laterali);
  height: var(--stw-header-h);
  transition: height .5s var(--stw-ingresso-easing);
}

.site-header {
  transition: background-color .4s ease, backdrop-filter .4s ease;
}

.site-header.stw-testata-viva:not(.is-ridotto):not(:has(.site-header__mobile:not([hidden]))) {
  background: rgb(from var(--stw-carta) r g b / 0);
  backdrop-filter: none;
  -webkit-backdrop-filter: none;
}

.site-header.is-ridotto .site-header__interno {
  height: var(--stw-header-h-ridotto);
}

.site-header__marchio {
  display: flex;
  align-items: center;
  gap: 11px;
  flex: 0 0 auto;
  color: var(--stw-inchiostro);
  text-decoration: none;
}

.site-header__marchio img {
  display: block;
  width: auto;
  height: 30px;
  max-width: 180px;
  object-fit: contain;

  animation: stw-logo-pulsa 6s ease-in-out infinite;
}

@keyframes stw-logo-pulsa {
  0%, 100% { opacity: .8; }
  50% { opacity: 1; }
}

.site-header__nav {
  display: none;
  align-items: center;
  gap: clamp(12px, 1.9vw, 28px);
  flex: 1 1 auto;
  justify-content: flex-end;
}

@media (min-width: 1024px) {
  .site-header__nav {
    display: flex;
  }
}

.site-header__nav-voce {
  position: relative;

  white-space: nowrap;
  padding-bottom: 5px;
  font-family: var(--stw-font-testo);
  font-weight: 400;
  font-size: 13px;
  letter-spacing: .03em;
  color: var(--stw-inchiostro);
  text-decoration: none;
  transition: color .35s ease;
}

.site-header__nav-voce:focus-visible {
  color: var(--stw-accento);
}

@media (hover: hover) and (pointer: fine) {
  .site-header__nav-voce:hover {
    color: var(--stw-accento);
  }
}

.site-header__nav-filo {
  position: absolute;
  left: 0;
  bottom: 0;
  width: 100%;
  height: 1px;
  background: var(--stw-accento-decorativo);
  transform: scaleX(0);
  transform-origin: left;
  transition: transform .45s var(--stw-ingresso-easing);
}

.site-header__nav-voce.is-attivo {
  color: var(--stw-accento);
}

.site-header__nav-voce.is-attivo .site-header__nav-filo {
  transform: scaleX(1);
}

.site-header__cta {
  flex: 0 0 auto;
  background: var(--stw-inchiostro);
  color: var(--stw-carta);
  border-radius: var(--stw-raggio-pulsante);
  padding: 13px 22px;
  font-family: var(--stw-font-testo);
  font-weight: var(--stw-font-testo-peso-forte);
  font-size: 12px;
  letter-spacing: .04em;
  text-decoration: none;
  transition: transform .45s var(--stw-ingresso-easing), box-shadow .45s ease;
}

.site-header__cta:focus-visible {
  color: var(--stw-carta);
  transform: translateY(-2px);
  box-shadow: 0 14px 26px rgb(from var(--stw-inchiostro) r g b / .22);
}

@media (hover: hover) and (pointer: fine) {
  .site-header__cta:hover {
    color: var(--stw-carta);
    transform: translateY(-2px);
    box-shadow: 0 14px 26px rgb(from var(--stw-inchiostro) r g b / .22);
  }
}

.site-header__toggle {
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  gap: 5px;
  width: 44px;
  height: 44px;
  flex: 0 0 auto;
  margin-inline-start: auto;
  border-radius: 50%;
  background: none;
  border: 1px solid rgb(from var(--stw-inchiostro) r g b / .18);
  cursor: pointer;
}

@media (min-width: 1024px) {
  .site-header__toggle {
    display: none;
  }
}

.site-header__toggle span {
  display: block;
  width: 16px;
  height: 1px;
  background: var(--stw-inchiostro);
  transition: transform 260ms cubic-bezier(0.23, 1, 0.32, 1);
}

.site-header__toggle[aria-expanded="true"] span:first-child {
  transform: translateY(3px) rotate(45deg);
}

.site-header__toggle[aria-expanded="true"] span:last-child {
  transform: translateY(-3px) rotate(-45deg);
}

@media (prefers-reduced-motion: reduce) {
  .site-header__toggle span {
    transition: none;
  }
}

.site-header__mobile {
  display: flex;
  flex-direction: column;
  padding: 4px var(--stw-margini-laterali) 22px;
}

@media (min-width: 1024px) {
  .site-header__mobile {
    display: none !important;
  }
}

.site-header__mobile-voce {
  padding: 14px 0;
  border-bottom: 1px solid rgb(from var(--stw-inchiostro) r g b / .08);
  font-family: var(--stw-font-titoli);
  font-weight: 400;
  font-size: 23px;
  color: var(--stw-inchiostro);
  text-decoration: none;
}

.site-header__mobile-voce.is-attivo {
  color: var(--stw-accento);
}

.site-header__mobile-cta {
  display: block;
  margin-top: 14px;
  background: var(--stw-inchiostro);
  color: var(--stw-carta);
  border-radius: var(--stw-raggio-pulsante);
  text-align: center;
  padding: 15px;
  font-family: var(--stw-font-testo);
  font-weight: var(--stw-font-testo-peso-forte);
  font-size: 14px;
  text-decoration: none;
  transition: transform .45s var(--stw-ingresso-easing), box-shadow .45s ease;
}

.site-header__mobile-cta:focus-visible {
  color: var(--stw-carta);
  transform: translateY(-2px);
  box-shadow: 0 14px 26px rgb(from var(--stw-inchiostro) r g b / .22);
}

@media (hover: hover) and (pointer: fine) {
  .site-header__mobile-cta:hover {
    color: var(--stw-carta);
    transform: translateY(-2px);
    box-shadow: 0 14px 26px rgb(from var(--stw-inchiostro) r g b / .22);
  }
}

.elementor-menu-anchor {
  scroll-margin-top: 120px;
}

#colophon {
  background: var(--stw-carta-alt);
  color: var(--stw-testo-secondario);
}

#colophon .elementor > .elementor-element.stw-footer {
  padding: 0;
}

#colophon .stw-footer__colonne {
  padding-inline: var(--stw-margini-laterali);
  padding-block: clamp(26px, 3.4vw, 52px) clamp(18px, 2.4vw, 32px);
}

#colophon .stw-footer__marchio-nome .elementor-heading-title {
  display: flex;
  align-items: center;
  gap: 11px;
  font-family: var(--stw-font-titoli);
  font-weight: 400;
  font-size: 24px;
  line-height: 1;
  max-width: none;
  color: var(--stw-inchiostro);
}

#colophon .stw-footer__marchio-nome .elementor-heading-title::before {
  content: "";
  display: block;
  width: 26px;
  height: 26px;
  border-radius: 50%;
  background: var(--stw-accento-decorativo);
  flex: 0 0 auto;
}

#colophon .stw-footer__payoff.elementor-widget-text-editor p {
  max-width: 34ch;
  font-size: 14px;
  line-height: 1.75;
}

@media (max-width: 767px) {
  #colophon .stw-footer__payoff.elementor-widget-text-editor p {
    font-size: 16px;
  }
}

#colophon .stw-footer__lista.elementor-widget-text-editor {
  margin-block-start: 16px;
}

#colophon .stw-footer__lista.elementor-widget-text-editor p {
  max-width: none;
  font-size: 14px;
  line-height: 1.4;
}

#colophon .stw-footer__lista.elementor-widget-text-editor p + p {
  margin-block-start: 10px;
}

#colophon .stw-footer__lista a {
  color: inherit;
  text-decoration: underline;
  text-decoration-thickness: 1px;
  text-underline-offset: 3px;
  text-decoration-color: rgb(from currentcolor r g b / .4);
}

#colophon .stw-footer__lista a:focus-visible {
  color: var(--stw-accento);
  text-decoration-color: currentcolor;
}

@media (hover: hover) and (pointer: fine) {
  #colophon .stw-footer__lista a:hover {
    color: var(--stw-accento);
    text-decoration-color: currentcolor;
  }
}

#colophon .stw-footer__legale {
  padding-inline: var(--stw-margini-laterali);
  padding-block: 18px;
  border-top: 1px solid rgb(from var(--stw-inchiostro) r g b / .1);
}

#colophon .stw-footer__legale-testo .elementor-heading-title {
  font-family: var(--stw-font-testo);
  font-weight: 400;
  font-size: 13px;
  line-height: 1.6;
  max-width: none;
  text-transform: none;
  color: var(--stw-testo-secondario);
}

.site-footer.stw-footer-ripiego {
  background: var(--stw-carta-alt);
  color: var(--stw-inchiostro);
  padding: 24px var(--stw-margini-laterali);
  font-family: var(--stw-font-testo);
  font-size: 12px;
}

.stw-barra-lettura {
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 2px;
  background: var(--stw-accento-decorativo);
  z-index: var(--stw-z-lettura, 9996);
  transform: scaleX(0);
  transform-origin: left;
  transition: transform .14s linear;
  pointer-events: none;
}

.elementor-element:has(> #home) + .elementor-element,
.elementor-element:has(> #contact) + .elementor-element {
  position: relative;

  overflow-x: clip;
}

.elementor-element:has(> #home) + .elementor-element::before,
.elementor-element:has(> #home) + .elementor-element::after,
.elementor-element:has(> #contact) + .elementor-element::before {
  content: "";
  position: absolute;
  inset: auto;
  height: auto;
  aspect-ratio: 1 / 1;
  border: 0;
  border-radius: 50%;
  opacity: 1;
  mix-blend-mode: normal;
  pointer-events: none;
  z-index: 0;
  transition: none;
  animation: stw-deriva 24s ease-in-out infinite;
}

.elementor-element:has(> #home) + .elementor-element::before {
  top: -90px;
  right: -9%;
  width: clamp(260px, 42vw, 620px);
  background: radial-gradient(circle closest-side, rgb(from var(--stw-accento-su-scuro) r g b / .85), rgb(from var(--stw-accento-su-scuro) r g b / 0));
  animation-duration: 22s;
}

.elementor-element:has(> #home) + .elementor-element::after {
  bottom: -12%;
  left: -10%;
  width: clamp(200px, 30vw, 440px);
  background: radial-gradient(circle closest-side, rgb(from var(--stw-resume-pannello) r g b / .8), rgb(from var(--stw-resume-pannello) r g b / 0));
  animation-duration: 27s;
  animation-direction: reverse;
}

.elementor-element:has(> #contact) + .elementor-element::before {
  bottom: 0;
  right: -10%;
  width: clamp(220px, 32vw, 480px);
  background: radial-gradient(circle closest-side, rgb(from var(--stw-accento-su-scuro) r g b / .7), rgb(from var(--stw-accento-su-scuro) r g b / 0));
}

.elementor-element:has(> #home) + .elementor-element > *,
.elementor-element:has(> #contact) + .elementor-element > * {
  position: relative;
  z-index: 1;
}

@keyframes stw-deriva {
  0% { transform: translate(0, 0) scale(1); }
  33% { transform: translate(14px, -22px) scale(1.05); }
  66% { transform: translate(-12px, 12px) scale(.97); }
  100% { transform: translate(0, 0) scale(1); }
}

@supports (animation-timeline: scroll()) {
  @media (prefers-reduced-motion: no-preference) {

    .elementor-element:has(> #home) + .elementor-element::before,
    .elementor-element:has(> #home) + .elementor-element::after {
      animation-name: stw-deriva, stw-macchia-profondita;
      animation-duration: 22s, auto;
      animation-timing-function: ease-in-out, linear;
      animation-iteration-count: infinite, 1;
      animation-direction: normal, normal;
      animation-fill-mode: none, both;
      animation-timeline: auto, scroll(root);
      animation-range: normal, 0 100vh;
    }

    .elementor-element:has(> #home) + .elementor-element::before {
      --stw-profondita: 110px;
    }

    .elementor-element:has(> #home) + .elementor-element::after {
      --stw-profondita: 40px;
      animation-duration: 27s, auto;
      animation-direction: reverse, normal;
    }
  }
}

@keyframes stw-macchia-profondita {
  from { translate: 0 0; }
  to { translate: 0 var(--stw-profondita, 0); }
}

@supports (view-timeline-name: --x) {
  @media (prefers-reduced-motion: no-preference) {

    .elementor > .elementor-element.stw-pannello:has(.elementor-widget-image) {
      view-timeline-name: --stw-foto-pannello;
    }

    .elementor .stw-pannello .elementor-widget-image {
      overflow: clip;
      border-radius: clamp(20px, 2.4vw, 32px);
    }

    .elementor .stw-pannello .elementor-widget-image img {
      scale: 1.12;
      animation: stw-foto-profondita linear both;
      animation-timeline: --stw-foto-pannello;
      animation-range: cover 0% cover 100%;
    }
  }
}

@keyframes stw-foto-profondita {
  from { translate: 0 -5%; }
  to { translate: 0 5%; }
}

.elementor-element:has(> #contact) + .elementor-element .stw-widget--list-rows .stw-list-rows__riga {
  display: flex;
  align-items: center;
  gap: 14px;
  padding: 0;
  border: 0;

  min-block-size: 44px;
}

.elementor-element:has(> #contact) + .elementor-element .stw-widget--list-rows .stw-list-rows__marcatore {
  width: 34px;
  height: 34px;
  border-radius: 50%;
  flex: 0 0 auto;
  color: transparent;
  font-size: 0;
}

.elementor-element:has(> #contact) + .elementor-element .elementor-widget-stw-list-rows:nth-child(1 of .elementor-widget-stw-list-rows) .stw-list-rows__marcatore {
  background: var(--stw-carta-alt);
}

.elementor-element:has(> #contact) + .elementor-element .elementor-widget-stw-list-rows:nth-child(2 of .elementor-widget-stw-list-rows) .stw-list-rows__marcatore {
  background: var(--stw-resume-pannello);
}

.elementor-element:has(> #contact) + .elementor-element .elementor-widget-stw-list-rows:nth-child(3 of .elementor-widget-stw-list-rows) .stw-list-rows__marcatore {
  background: #E9F0EA;
}

.elementor-element:has(> #contact) + .elementor-element .stw-widget--list-rows .stw-list-rows__titolo {
  margin: 0;
  font-family: var(--stw-font-testo);
  font-weight: 400;
  font-size: 16px;
  line-height: 1.4;
  color: var(--stw-inchiostro);
  overflow-wrap: anywhere;
}

.elementor-element:has(> #contact) + .elementor-element .stw-widget--list-rows,
.elementor-element:has(> #contact) + .elementor-element .stw-widget--list-rows .stw-list-rows__riga {
  background: transparent;
}

@media (prefers-reduced-motion: reduce) {
  .site-header__interno,
  .site-header__nav-filo,
  .site-header__cta,
  .stw-barra-lettura,
  .site-header__marchio img,
  .elementor-element:has(> #home) + .elementor-element::before,
  .elementor-element:has(> #home) + .elementor-element::after,
  .elementor-element:has(> #contact) + .elementor-element::before {
    transition: none;
    animation: none;
  }

  .site-header__cta:hover,
  .site-header__cta:focus-visible {
    transform: none;
  }
}

.stw-pagina-legale {
  padding: var(--stw-padding-sezione) var(--stw-margini-laterali);
}

.stw-service-message__segno .elementor-icon::after {
  content: '';
  position: absolute;
  inset: 0;
  border-radius: 50%;
  border: 1px solid var(--stw-accento-decorativo, var(--stw-accento));
  animation: stw-service-message-pulsa 2.6s ease-out infinite;
}

@keyframes stw-service-message-pulsa {
  0%, 100% { transform: scale(1); opacity: .5; }
  50% { transform: scale(1.35); opacity: 0; }
}

.stw-service-message__cifra .elementor-heading-title {
  font-family: var(--stw-font-titoli);
  font-weight: var(--stw-font-titoli-peso);
  font-size: clamp(120px, 20vw, 320px);
  line-height: .8;
  letter-spacing: -0.06em;
  color: rgb(from var(--stw-inchiostro) r g b / .07);
  text-align: center;
  max-width: none;
}

html body:not(.elementor-editor-active) .elementor .e-con.stw-service-message__barra {
  display: block;
}

.stw-service-message--centrato h1.elementor-heading-title,
.e-con-inner:has(> .stw-service-message__pannello) h1.elementor-heading-title {
  text-wrap: balance;
}

.elementor .stw-service-message--centrato > .e-con-inner:has(> .elementor-widget-button + .elementor-widget-button),
.elementor .e-con-inner:has(> .stw-service-message__pannello):has(> .elementor-widget-button + .elementor-widget-button) {
  flex-direction: row;
  flex-wrap: wrap;
  align-items: center;
  column-gap: 12px;
}

.elementor .stw-service-message--centrato > .e-con-inner:has(> .elementor-widget-button + .elementor-widget-button) {
  justify-content: center;
}

.elementor .stw-service-message--centrato > .e-con-inner:has(> .elementor-widget-button + .elementor-widget-button) > :not(.elementor-widget-button),
.elementor .e-con-inner:has(> .stw-service-message__pannello):has(> .elementor-widget-button + .elementor-widget-button) > :not(.elementor-widget-button) {
  flex: 0 0 100%;
}

.elementor .stw-service-message--centrato > .e-con-inner > .elementor-widget-button,
.elementor .e-con-inner:has(> .stw-service-message__pannello) > .elementor-widget-button {
  flex: 0 0 auto;
  width: auto;
}

.stw-service-message__elenco--pillole.e-con {
  --flex-direction: row;
  --flex-wrap: wrap;
}

.stw-service-message__elenco--pillole,
.stw-service-message__elenco--pillole > .e-con-inner {
  flex-direction: row;
  flex-wrap: wrap;
  gap: 8px;
}

.stw-service-message__elenco--righe {
  flex-direction: column;
  gap: 12px;
}

.stw-service-message__elenco--righe > :last-child > .elementor-element:last-child .elementor-button,
.stw-service-message__elenco--righe > .elementor-element:last-child > .elementor-widget-container .elementor-button {
  border-bottom: 0;
  padding-bottom: 0;
}

.stw-service-message__elenco--righe .elementor-button:focus-visible::after {
  transform: translateX(6px);
}

@media (hover: hover) and (pointer: fine) {
  .stw-service-message__elenco--righe .elementor-button:hover::after {
    transform: translateX(6px);
  }
}

.stw-documento-legale__tabella th,
.stw-documento-legale__tabella td {
  border: 0;
  border-bottom: 1px solid rgb(from var(--stw-inchiostro) r g b / .12);
}

.stw-documento-legale__tabella th {
  border-bottom-color: rgb(from var(--stw-inchiostro) r g b / .24);
  font-weight: var(--stw-font-testo-peso-forte);
}

.stw-documento-legale__tabella tbody > tr:nth-child(n) > td,
.stw-documento-legale__tabella tbody > tr:nth-child(n) > th {
  background: transparent;
}

.stw-documento-legale__occhiello {
  display: flex;
  width: fit-content;
  align-items: center;
  gap: 10px;
  font-family: var(--stw-font-testo);
  font-weight: var(--stw-font-testo-peso-forte);
  letter-spacing: .24em;
  color: var(--stw-accento);
}

.stw-documento-legale__occhiello::before {
  content: "";
  display: block;
  width: 22px;
  height: 1px;
  background: var(--stw-accento-decorativo);
  flex: 0 0 auto;
}

[data-stw-cifre] > .e-con {
  opacity: 0;
  transform: translateY(8px);
}

[data-stw-cifre].is-dentro > .e-con {
  opacity: 1;
  transform: none;
  transition:
    opacity 600ms cubic-bezier(0.23, 1, 0.32, 1),
    transform 600ms cubic-bezier(0.23, 1, 0.32, 1);
}

[data-stw-cifre].is-dentro > .e-con:nth-child(2) { transition-delay: 90ms; }
[data-stw-cifre].is-dentro > .e-con:nth-child(3) { transition-delay: 180ms; }

@media (prefers-reduced-motion: reduce) {
  [data-stw-cifre] > .e-con {
    opacity: 1;
    transform: none;
  }
}

@media (min-width: 1024px) {
  .site-header__interno {
    height: auto;
    min-height: var(--stw-header-h);
    transition: min-height .5s var(--stw-ingresso-easing);
  }

  .site-header.is-ridotto .site-header__interno {
    height: auto;
    min-height: var(--stw-header-h-ridotto);
  }

  .site-header__nav {
    min-width: 0;
    flex-wrap: wrap;
    row-gap: 4px;
  }
}

:root {

  --stw-grana: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='180' height='180'%3E%3Cfilter id='g'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.8' numOctaves='3' stitchTiles='stitch'/%3E%3CfeColorMatrix values='0 0 0 0 .23 0 0 0 0 .2 0 0 0 0 .22 .22 0 0 0 -.1'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23g)'/%3E%3C/svg%3E");

  --stw-ombra-riposo:
    0 1px 2px rgb(from var(--stw-accento) r g b / .05),
    0 10px 28px -16px rgb(from var(--stw-accento) r g b / .22);
  --stw-ombra-sollevata:
    0 2px 6px rgb(from var(--stw-accento) r g b / .06),
    0 28px 56px -24px rgb(from var(--stw-accento) r g b / .34);
  --stw-ombra-primo-piano:
    0 2px 8px rgb(from var(--stw-inchiostro) r g b / .04),
    0 44px 90px -36px rgb(from var(--stw-accento) r g b / .40);
  --stw-luce-bordo: inset 0 1px 0 rgb(from var(--stw-carta) r g b / .9);
  --stw-curva: cubic-bezier(0.23, 1, 0.32, 1);
}

body {
  background-image: var(--stw-grana);
}

.elementor .stw-widget.stw-sfondo-carta {
  background-color: transparent;
}

#colophon {
  background-image: var(--stw-grana);
}

.elementor > .elementor-element.stw-pannello {
  background-image:
    radial-gradient(55% 60% at 0% 100%, rgb(from var(--stw-resume-pannello) r g b / .9), rgb(from var(--stw-resume-pannello) r g b / 0) 70%),
    radial-gradient(45% 55% at 100% 0%, rgb(from var(--stw-carta) r g b / .75), rgb(from var(--stw-carta) r g b / 0) 70%),
    var(--stw-grana);
  box-shadow: var(--stw-luce-bordo), var(--stw-ombra-riposo);
}

.elementor-element:has(> #resume) + .elementor-element {
  overflow: clip;
  box-shadow: var(--stw-luce-bordo), var(--stw-ombra-riposo);
}

.elementor-element:has(> #resume) + .elementor-element > .elementor-widget-container > .stw-widget {
  background-image:
    radial-gradient(50% 60% at 100% 0%, rgb(from var(--stw-accento-su-scuro) r g b / .38), rgb(from var(--stw-accento-su-scuro) r g b / 0) 70%),
    radial-gradient(45% 50% at 0% 100%, rgb(from var(--stw-carta) r g b / .7), rgb(from var(--stw-carta) r g b / 0) 70%),
    var(--stw-grana);
}

.elementor .stw-card-grid__griglia {
  counter-reset: stw-servizio;
}

.elementor .stw-card-grid__card {
  counter-increment: stw-servizio;
  background-color: var(--stw-carta-alt);
  background-image:
    linear-gradient(165deg, rgb(from var(--stw-carta) r g b / .85), rgb(from var(--stw-carta) r g b / 0) 60%),
    var(--stw-grana);
  border-color: rgb(from var(--stw-accento) r g b / .1);
  box-shadow: var(--stw-luce-bordo), var(--stw-ombra-riposo);
}

.elementor .stw-card-grid__card::after {
  content: counter(stw-servizio, decimal-leading-zero) / "";
  position: absolute;
  top: clamp(14px, 1.6vw, 22px);
  right: clamp(20px, 2.2vw, 30px);
  font-family: var(--stw-font-titoli);
  font-style: italic;
  font-weight: 300;
  font-size: clamp(56px, 5.4vw, 84px);
  line-height: 1;
  color: rgb(from var(--stw-accento) r g b / .12);
  pointer-events: none;
  transition: color var(--stw-hover-durata) ease, transform var(--stw-hover-durata) var(--stw-curva);
}

.elementor .stw-card-grid__card::before {
  height: 2px;
  background: linear-gradient(90deg, var(--stw-accento-decorativo), rgb(from var(--stw-accento-decorativo) r g b / 0));
}

.elementor .stw-card-grid__decorazione {
  width: 40px;
  height: 40px;
  border-radius: 58% 42% 55% 45% / 48% 56% 44% 52%;
  box-shadow: 12px 7px 0 -5px var(--stw-card-grid-decorazione);
  transition: transform var(--stw-hover-durata) var(--stw-curva);
}

.elementor .stw-card-grid__decorazione::before {

  display: none;
}

.elementor .stw-card-grid__meta {
  align-self: stretch;
  padding-top: 16px;
  border-top: 1px solid rgb(from var(--stw-accento) r g b / .14);
  font-family: var(--stw-font-titoli);
  font-style: italic;
  font-weight: 400;
  font-size: clamp(20px, 1.7vw, 23px);
  letter-spacing: 0;
  color: var(--stw-accento);
}

.elementor .stw-widget--card-grid.stw-card-grid--hover-sollevamento .stw-card-grid__card:focus-visible {
  box-shadow: var(--stw-luce-bordo), var(--stw-ombra-sollevata);
}

@media (hover: hover) and (pointer: fine) {
  .elementor .stw-widget--card-grid.stw-card-grid--hover-sollevamento .stw-card-grid__card:hover {
    transform: translateY(-6px);
    box-shadow: var(--stw-luce-bordo), var(--stw-ombra-sollevata);
  }

  .elementor .stw-card-grid__card:hover::after {
    color: rgb(from var(--stw-accento) r g b / .2);
    transform: translateY(-3px);
  }

  .elementor .stw-card-grid__card:hover .stw-card-grid__decorazione {
    transform: rotate(-8deg) scale(1.06);
  }
}

.elementor .stw-timeline-skills__tappe {
  position: relative;
  padding-left: 28px;
}

.elementor .stw-timeline-skills__tappa {
  position: relative;
  border-top-color: rgb(from var(--stw-inchiostro) r g b / .07);
}

.elementor .stw-timeline-skills__tappa::before {
  content: "";
  position: absolute;
  left: -28px;
  top: 26px;
  width: 9px;
  height: 9px;
  border-radius: 50%;
  background: var(--stw-resume-pannello);
  border: 1px solid var(--stw-accento-decorativo);
}

.elementor .stw-timeline-skills__tappa:not(:last-child)::after {
  content: "";
  position: absolute;
  left: -24px;
  top: 35px;
  bottom: -26px;
  width: 1px;
  background: linear-gradient(to bottom, var(--stw-accento-decorativo), rgb(from var(--stw-accento-decorativo) r g b / .35));
  transform-origin: top;
}

.elementor .stw-timeline-skills__tappa:first-child::before {
  background: var(--stw-accento-decorativo);
  box-shadow: 0 0 0 5px rgb(from var(--stw-accento-decorativo) r g b / .18);
}

@media (max-width: 1024px) {
  .elementor .stw-timeline-skills__tappa {
    flex-direction: column;
    gap: 6px;
  }

  .elementor .stw-timeline-skills__tappa::before {
    top: 24px;
  }

  .elementor .stw-timeline-skills__tappa:not(:last-child)::after {
    top: 33px;
    bottom: -24px;
  }
}

@supports (animation-timeline: view()) {
  @media (prefers-reduced-motion: no-preference) {
    .elementor .stw-timeline-skills__tappa:not(:last-child)::after {
      animation: stw-filo-percorso linear both;
      animation-timeline: view();
      animation-range: cover 25% cover 55%;
    }
  }
}

@keyframes stw-filo-percorso {
  from { transform: scaleY(0); }
  to { transform: scaleY(1); }
}

.elementor .stw-timeline-skills__percentuale {
  font-family: var(--stw-font-titoli);
  font-style: italic;
  font-size: 17px;
  color: var(--stw-accento);
}

.elementor .stw-timeline-skills__tag-voce {
  background: rgb(from var(--stw-carta) r g b / .65);
  border-color: rgb(from var(--stw-accento) r g b / .12);
  box-shadow: 0 1px 2px rgb(from var(--stw-accento) r g b / .06);
}

.stw-faq-stile-filetto .e-n-accordion-item {
  transition: background-color .35s ease, box-shadow .35s ease;
}

.stw-faq-stile-filetto .e-n-accordion-item-title {
  align-items: center;
  gap: 16px;
  padding: 18px 20px;
}

.stw-faq-stile-filetto .e-n-accordion-item-title-text {
  font-family: var(--stw-font-titoli);
  font-weight: 400;
  font-size: clamp(20px, 1.55vw, 23px);
  line-height: 1.3;
  color: var(--stw-inchiostro);
  transition: color .3s ease;
}

.stw-faq-stile-filetto .e-n-accordion-item-title-icon {
  flex: 0 0 auto;
  align-items: center;
  justify-content: center;
  width: 32px;
  height: 32px;
  border-radius: 50%;
  border: 1px solid rgb(from var(--stw-accento) r g b / .28);
  font-size: 22px;
  transition: background-color .3s ease, color .3s ease, border-color .3s ease;
}

.stw-faq-stile-filetto .e-n-accordion-item[open] {
  border-radius: 22px;
  background-color: var(--stw-carta-alt);
  background-image: var(--stw-grana);
  border-color: transparent;
  box-shadow: var(--stw-luce-bordo), var(--stw-ombra-riposo);
}

.stw-faq-stile-filetto .e-n-accordion-item[open] + .e-n-accordion-item {
  border-top-color: transparent;
}

.stw-faq-stile-filetto .e-n-accordion-item[open] .e-n-accordion-item-title-icon {
  background: var(--stw-accento);
  border-color: var(--stw-accento);
  color: var(--stw-carta);
}

.stw-faq-stile-filetto .e-n-accordion-item > .e-con {
  padding: 0 20px 24px 68px;
}

@media (max-width: 767px) {
  .stw-faq-stile-filetto .e-n-accordion-item-title {
    padding: 16px 14px;
    gap: 14px;
  }

  .stw-faq-stile-filetto .e-n-accordion-item > .e-con {
    padding: 0 14px 22px;
  }
}

@media (hover: hover) and (pointer: fine) {
  .stw-faq-stile-filetto .e-n-accordion-item-title:hover .e-n-accordion-item-title-text {
    color: var(--stw-accento);
  }

  .stw-faq-stile-filetto .e-n-accordion-item:not([open]) .e-n-accordion-item-title:hover .e-n-accordion-item-title-icon {
    border-color: var(--stw-accento);
  }
}

.elementor .stw-project-grid__card .stw-project-grid__immagine {
  position: relative;
  isolation: isolate;
  box-shadow: var(--stw-ombra-riposo);
  transition: box-shadow var(--stw-hover-durata) ease;
}

.elementor .stw-project-grid__card .stw-project-grid__immagine::after {
  content: "";
  position: absolute;
  inset: 0;
  background: linear-gradient(to top, rgb(from var(--stw-accento) r g b / .34), rgb(from var(--stw-accento) r g b / 0) 55%);
  opacity: 0;
  transition: opacity var(--stw-hover-durata) ease;
  pointer-events: none;
}

.elementor .stw-project-grid__titolo {
  justify-self: start;
  background: linear-gradient(var(--stw-accento-decorativo), var(--stw-accento-decorativo)) no-repeat 0 100% / 0 1px;
  transition: background-size .5s var(--stw-curva), color .3s ease;
}

.elementor .stw-project-grid__tipo {
  display: inline-flex;
  align-items: center;
  gap: 8px;
}

.elementor .stw-project-grid__tipo::before {
  content: "";
  width: 5px;
  height: 5px;
  border-radius: 50%;
  background: var(--stw-accento-decorativo);
}

@media (hover: hover) and (pointer: fine) {
  .elementor .stw-project-grid__card:hover .stw-project-grid__immagine {
    box-shadow: var(--stw-ombra-sollevata);
  }

  .elementor .stw-project-grid__card:hover .stw-project-grid__immagine::after {
    opacity: 1;
  }

  .elementor .stw-project-grid__card:hover .stw-project-grid__titolo {
    background-size: 100% 1px;
    color: var(--stw-accento);
  }
}

@media (hover: hover) and (pointer: fine) and (prefers-reduced-motion: no-preference) {
  .elementor .stw-project-grid__card:hover .stw-project-grid__immagine img {
    transform: scale(1.04);
  }
}

@media (prefers-reduced-motion: no-preference) {
  .elementor .stw-widget--project-grid[data-stw-init] .stw-project-grid__card {
    animation: stw-lavoro-appare 520ms var(--stw-curva) both;
  }

  .elementor .stw-project-grid__card:nth-child(3n + 2) { animation-delay: 50ms; }
  .elementor .stw-project-grid__card:nth-child(3n) { animation-delay: 100ms; }
}

@keyframes stw-lavoro-appare {
  from { opacity: 0; transform: translateY(14px); }
  to { opacity: 1; transform: none; }
}

.elementor-element:has(> #contact) + .elementor-element .e-con:has(> .elementor-element .forminator-ui) {
  padding: clamp(22px, 3vw, 44px);
  border-radius: clamp(24px, 3vw, 36px);
  background-color: var(--stw-carta-alt);
  background-image:
    radial-gradient(60% 45% at 100% 0%, rgb(from var(--stw-accento-su-scuro) r g b / .45), rgb(from var(--stw-accento-su-scuro) r g b / 0) 70%),
    var(--stw-grana);
  box-shadow: var(--stw-luce-bordo), var(--stw-ombra-primo-piano);
}

.elementor-element:has(> #contact) + .elementor-element .forminator-ui.forminator-ui.forminator-custom-form {
  --stw-modulo-campo: var(--stw-carta);
}

.elementor-element:has(> #contact) + .elementor-element .forminator-ui.forminator-ui.forminator-custom-form .forminator-response-message {
  background: var(--stw-carta);
  border-radius: 0 14px 14px 0;
}

@media (prefers-reduced-motion: reduce) {
  .elementor .stw-card-grid__card::after,
  .elementor .stw-card-grid__decorazione,
  .elementor .stw-project-grid__titolo {
    transition: none;
  }

  .elementor .stw-card-grid__card:hover::after,
  .elementor .stw-card-grid__card:hover .stw-card-grid__decorazione,
  .elementor .stw-widget--card-grid.stw-card-grid--hover-sollevamento .stw-card-grid__card:hover {
    transform: none;
  }
}

/*
 Theme Name:        Storytime Personale (05)
 Theme URI:         https://story-time.it
 Description:       Sito per illustratori, fotografi, coach e servizi alla persona. Una pagina sola che scorre a capitoli, toni tenui, galleria dei lavori e modulo di contatto guidato.
 Author:            Storytime Websites
 Author URI:        https://story-time.it
 Template:          hello-elementor
 Version:           0.1.0
 Requires PHP:      8.2
 Requires at least: 6.0
 Text Domain:       stw-personale
*/

:where(a[href], button, input, select, textarea, summary, [tabindex]:not([tabindex="-1"])):focus-visible {

	outline: 3px solid var(--stw-inchiostro, #0c1116);
	outline-offset: 3px;
	box-shadow: 0 0 0 3px var(--stw-carta, #f5f4f1);
}

.skip-link:focus,
.skip-link:focus-visible {
	position: fixed !important;
	inset-block-start: 12px;
	inset-inline-start: 12px;
	z-index: var(--stw-z-fuoco, 10000);
	width: auto !important;
	height: auto !important;
	padding: 12px 18px;
	clip: auto !important;
	clip-path: none !important;
	background: var(--stw-inchiostro, #0c1116);
	color: var(--stw-carta, #f5f4f1);
	font-family: var(--stw-font-testo, sans-serif);
	font-size: 14px;
	text-decoration: none;
}

.elementor a:focus-visible,
.elementor button:focus-visible {
	box-shadow: 0 0 0 3px var(--stw-carta, #f5f4f1);
}

.splide .splide__pagination__page:focus-visible {
	outline: 3px solid var(--stw-inchiostro, #0c1116);
	outline-offset: 3px;
	box-shadow: 0 0 0 3px var(--stw-carta, #f5f4f1);
}

:root {
	--stw-mv-esce: cubic-bezier(0.23, 1, 0.32, 1);
	--stw-mv-durata: 720ms;
	--stw-mv-passo: 70ms;
}

@keyframes stw-mv-sale {
	from {
		opacity: 0;
		transform: translate3d(0, 18px, 0);
	}
	to {
		opacity: 1;
		transform: none;
	}
}

@keyframes stw-mv-assesta {
	from {
		transform: scale(1.045);
	}
	to {
		transform: none;
	}
}

@media (prefers-reduced-motion: no-preference) {
	body:not(.elementor-editor-active) [data-elementor-type="wp-page"] > .e-parent:nth-child(1 of .e-parent) :is(
		.elementor-widget-heading,
		.elementor-widget-text-editor,
		.elementor-widget-button,
		.elementor-widget-icon-list
	) {
		animation: stw-mv-sale var(--stw-mv-durata) var(--stw-mv-esce) both;
	}

	body:not(.elementor-editor-active) [data-elementor-type="wp-page"] > .e-parent:nth-child(1 of .e-parent) .elementor-element:nth-child(2 of .elementor-widget) { animation-delay: calc(var(--stw-mv-passo) * 1); }
	body:not(.elementor-editor-active) [data-elementor-type="wp-page"] > .e-parent:nth-child(1 of .e-parent) .elementor-element:nth-child(3 of .elementor-widget) { animation-delay: calc(var(--stw-mv-passo) * 2); }
	body:not(.elementor-editor-active) [data-elementor-type="wp-page"] > .e-parent:nth-child(1 of .e-parent) .elementor-element:nth-child(4 of .elementor-widget) { animation-delay: calc(var(--stw-mv-passo) * 3); }
	body:not(.elementor-editor-active) [data-elementor-type="wp-page"] > .e-parent:nth-child(1 of .e-parent) .elementor-element:nth-child(n + 5 of .elementor-widget) { animation-delay: calc(var(--stw-mv-passo) * 4); }

	body:not(.elementor-editor-active) [data-elementor-type="wp-page"] > .e-parent:nth-child(1 of .e-parent) .elementor-widget-image img {
		animation: stw-mv-assesta 1400ms var(--stw-mv-esce) both;
	}
}

[data-stw-entra] {
	opacity: 0;
	transform: translate3d(0, 22px, 0);
}

[data-stw-entra].is-dentro {
	opacity: 1;
	transform: none;
	transition:
		opacity var(--stw-mv-durata) var(--stw-mv-esce),
		transform var(--stw-mv-durata) var(--stw-mv-esce);
	transition-delay: calc(var(--stw-mv-indice, 0) * var(--stw-mv-passo));
}

@media (prefers-reduced-motion: reduce) {
	[data-stw-entra] {
		transform: none;
	}

	[data-stw-entra].is-dentro {
		transition: opacity 240ms ease;
		transition-delay: 0ms;
	}
}

:is(.elementor-button, .stw-pulsante, .stw-cookie__pulsante, .stw-modulo button[type="submit"], .forminator-button-submit) {
	transition-property: transform, background-color, color, border-color, box-shadow, opacity;
	transition-duration: 160ms;
	transition-timing-function: ease-out;
}

:is(.elementor-button, .stw-pulsante, .stw-cookie__pulsante, .stw-modulo button[type="submit"], .forminator-button-submit):active {
	transform: scale(0.97);
}

#site-header {
	transition: box-shadow 240ms ease;
}

html[data-stw-scorso] #site-header {
	box-shadow: 0 10px 28px -20px color-mix(in srgb, var(--stw-inchiostro, #222) 55%, transparent);
}

@media (prefers-reduced-motion: reduce) {
	:is(.elementor-button, .stw-pulsante, .stw-cookie__pulsante):active {
		transform: none;
	}
}

@media (prefers-reduced-motion: reduce) {
	.elementor-background-video-container {
		display: none;
	}
}

@view-transition {
	navigation: auto;
}

#site-header {
	view-transition-name: stw-testata;
}

::view-transition-old(root),
::view-transition-new(root) {
	animation-duration: 280ms;
	animation-timing-function: cubic-bezier(0.23, 1, 0.32, 1);
}

@media (prefers-reduced-motion: reduce) {
	@view-transition {
		navigation: none;
	}
}

[data-stw-svela] img {
	clip-path: inset(0 0 100% 0);
	transform: scale(1.06);
}

[data-stw-svela].is-dentro img {
	clip-path: inset(0 0 0 0);
	transform: none;
	transition:
		clip-path 1100ms cubic-bezier(0.77, 0, 0.175, 1),
		transform 1400ms cubic-bezier(0.23, 1, 0.32, 1);
}

@media (prefers-reduced-motion: reduce) {
	[data-stw-svela] img,
	[data-stw-svela].is-dentro img {
		clip-path: none;
		transform: none;
		transition: none;
	}
}

:root {
	--stw-z-intestazione: 90;
	--stw-z-lettura: 9996;
	--stw-z-cookie-banner: 9997;
	--stw-z-cookie-velo: 9998;
	--stw-z-cookie-pannello: 9999;
	--stw-z-fuoco: 10000;
}

:where(.e-con .e-con) {
	--container-default-padding-left: 0px;
	--container-default-padding-right: 0px;
}

.site-header:not(.dynamic-header) {
	max-width: none;
	margin-inline: 0;
	padding-inline: 0;
	padding-block: 0;
}

.site-header__interno {
	flex: 1 1 100%;
}

.screen-reader-text {
	position: absolute !important;
	width: 1px;
	height: 1px;
	padding: 0;
	margin: -1px;
	overflow: hidden;
	clip: rect(1px, 1px, 1px, 1px);
	white-space: nowrap;
	border: 0;
}

.screen-reader-text:focus {
	position: static !important;
	width: auto;
	height: auto;
	margin: 0;
	overflow: visible;
	clip: auto;
	white-space: normal;
}

.stw-blocco-vuoto {
	margin: 0;
	padding: 18px 20px;
	border: 1px dashed rgba(127, 127, 127, 0.5);
	border-radius: 6px;
	background: rgba(127, 127, 127, 0.06);
	font-size: 14px;
	line-height: 1.5;
	color: inherit;
	opacity: 0.85;
}

body:not(.elementor-editor-active) .e-con:not(:has(.elementor-widget:not(:empty))):not(.stw-service-message__barra) {
	display: none;
}

details.e-n-accordion-item[open] {
	height: auto !important;
	overflow: visible !important;
}

@media (max-width: 1024px) {
	.elementor .elementor-element.stw-fascia-numeri--quattro.stw-fascia-numeri--quattro > .e-con-inner > .e-con,
	.elementor .elementor-element.stw-fascia-numeri--quattro.stw-fascia-numeri--quattro > .e-con {
		flex: 1 1 40%;
	}
}

@media (max-width: 480px) {
	.elementor .elementor-element.stw-fascia-numeri--quattro .elementor-counter-number-wrapper {
		font-size: clamp(36px, 11vw, 52px);
	}
}

.stw-superficie-inchiostro a:hover,
.stw-superficie-inchiostro a:focus-visible {
	color: inherit;
}

:where(.stw-widget, .splide, .stw-cookie, .stw-credito, .site-header, #colophon, .stw-mappa) :is(button, [type="button"], [type="submit"]) {
	color: inherit;
}

.splide__arrow:hover,
.splide__arrow:focus,
.stw-cookie__personalizza:hover,
.stw-cookie__personalizza:focus,
.stw-cookie__chiudi:hover,
.stw-cookie__chiudi:focus,
.stw-credito__preferenze:hover,
.stw-credito__preferenze:focus,
.site-header__interruttore:hover,
.site-header__interruttore:focus {
	background-color: revert-layer;
	color: inherit;
}

.stw-widget button:not(.elementor-button, .splide__pagination__page, [aria-pressed="true"], [aria-selected="true"], [aria-checked="true"]):hover,
.stw-widget button:not(.elementor-button, .splide__pagination__page, [aria-pressed="true"], [aria-selected="true"], [aria-checked="true"]):focus {
	background-color: transparent;
	color: inherit;
}

.page-content a,
.comments-area a {
	text-decoration: none;
}

.page-content :is(p, li, dd, blockquote) a,
.comments-area :is(p, li, dd) a,
.stw-documento-legale :is(p, li, dd, td) a {
	text-decoration: underline;
	text-underline-offset: 0.18em;
}

.elementor .elementor-element.stw-riga-pulsanti {
	--padding-top: 0px;
	--padding-right: 0px;
	--padding-bottom: 0px;
	--padding-left: 0px;
	--gap: 12px;
	--row-gap: 12px;
	--column-gap: 12px;
	padding: 0;
}

.elementor .elementor-element.stw-riga-pulsanti > .elementor-widget-button {
	width: auto;
	margin: 0;
}

@media (max-width: 480px) {
	.elementor .elementor-element.stw-riga-pulsanti > .elementor-widget-button {
		flex: 1 1 auto;
	}

	.elementor .elementor-element.stw-riga-pulsanti > .elementor-widget-button .elementor-button {
		width: 100%;
		justify-content: center;
	}
}

:where(.elementor-menu-anchor) {
	scroll-margin-top: calc(var(--stw-header-h, 88px) + 16px);
}

.elementor-widget.stw-rotazione {
	position: absolute !important;
	width: 1px;
	height: 1px;
	overflow: hidden;
	clip-path: inset(50%);
	margin: 0 !important;
	padding: 0 !important;
}

@media (max-width: 768px), (pointer: coarse) {

	.site-header__marchio,
	.site-branding {
		gap: 12px;
	}

	.custom-logo-link,
	.site-header__marchio-nome,
	.site-branding .site-title a,
	.site-branding > a,
	a.site-branding {
		display: inline-flex;
		align-items: center;
		min-height: 44px;
	}

	.site-header__fascia a {
		display: inline-flex;
		align-items: center;
		min-height: 44px;
	}

	#colophon .stw-footer__lista a,
	.site-footer .stw-footer__lista a {
		display: flex;
		align-items: center;
		min-height: 44px;
	}

	#colophon .stw-footer__lista p:not(:has(a)),
	.site-footer .stw-footer__lista p:not(:has(a)) {
		display: flex;
		align-items: center;
		min-height: 44px;
	}

	#colophon .stw-footer__lista p + p,
	.site-footer .stw-footer__lista p + p {
		margin-block-start: 0;
	}

	.stw-documento-legale__indice a {
		display: flex;
		align-items: center;
		min-height: 44px;
	}

	.stw-project-grid__filtro,
	.stw-post-list-rows__filtro,
	.stw-news-board__chip,
	.stw-news-board__link-archivio,
	.stw-post-grid__intestazione-link {
		display: inline-flex;
		align-items: center;
		min-height: 44px;
	}

	a.elementor-button-link,
	.stw-pricing-cards__intestazione-link {
		display: inline-flex;
		align-items: center;
		min-height: 44px;
	}

	a[href^="mailto:"]:not(p a),
	a[href^="tel:"]:not(p a) {
		display: inline-flex;
		align-items: center;
		min-height: 44px;
	}

	.stw-cookie__personalizza,
	.stw-credito .stw-credito__preferenze {
		display: inline-flex;
		align-items: center;
		justify-content: center;
		min-height: 44px;
	}

	[class*="__briciole"] a {
		display: inline-block;
		padding-block: 13px;
		margin-block: -13px;
	}
}

.stw-project-grid__immagine,
.stw-post-grid__immagine,
.stw-post-featured__immagine,
.stw-news-board__immagine,
.stw-image-gallery__immagine,
.stw-case-study-list__media,
.stw-people-grid__ritratto {
	background-color: color-mix(in srgb, var(--stw-inchiostro, #0c1116) 7%, transparent);
}

