/**
 * Correzioni layout tablet/mobile (desktop invariato: regole solo max-width 1024px).
 */

@media (max-width: 1024px) {
	html {
		overflow-x: clip;
	}

	body {
		overflow-x: clip;
		max-width: 100%;
		width: 100%;
	}

	/* Evita che marquee/slider allarghino body (Playwright fullPage usa body.scrollWidth) */
	body:not(.elementor-editor-active) :is(.site-main .elementor, .elementor[data-elementor-type="wp-page"]) {
		overflow-x: clip;
		max-width: 100%;
	}

	body:not(.elementor-editor-active) .elementor-location-footer .elementor {
		overflow-x: clip;
		max-width: 100%;
	}

	.elementor-location-header,
	.site-main,
	.elementor-location-footer {
		overflow-x: clip;
		max-width: 100%;
	}

	/*
	 * Shell WP (page.php): .entry__content { display: grid } in main.css.
	 * Il root Elementor (es. .elementor-5741) con min-width:auto diventa ~552px su viewport 390
	 * e .entry__content mostra scrollbar orizzontale (overflow-x: auto implicito).
	 */
	body.elementor-page:not(.elementor-editor-active) .entry__content {
		display: block !important;
		overflow-x: clip;
		max-width: 100%;
		min-width: 0;
	}

	body.elementor-page:not(.elementor-editor-active) .entry__content > .elementor {
		width: 100% !important;
		max-width: 100% !important;
		min-width: 0 !important;
		box-sizing: border-box;
	}

	body.elementor-page:not(.elementor-editor-active) .entry__content > .elementor .e-con {
		max-width: 100%;
		min-width: 0;
		box-sizing: border-box;
	}

	/* Marquee testo/loghi: non allargare il canvas dello screenshot / body */
	.elementor-widget-aiop-text-marquee,
	.elementor-widget-aiop-logos-marquee,
	.elementor-widget-aiop-text-marquee > .elementor-widget-container,
	.elementor-widget-aiop-logos-marquee > .elementor-widget-container,
	.elementor-widget-aiop-text-marquee.aiop-text-marquee--edge-to-edge,
	.elementor-widget-aiop-text-marquee.aiop-text-marquee--edge-to-edge > .elementor-widget-container,
	.aiop-text-marquee--edge-parent,
	.elementor-location-header.aiop-text-marquee--edge-host,
	.aiop-text-marquee,
	.aiop-logos-marquee,
	.aiop-text-marquee__viewport,
	.aiop-logos-marquee__viewport {
		overflow: hidden !important;
		max-width: 100% !important;
	}

	/* Diventa socio / sezioni Chi siamo: righe Elementor → colonna + padding mobile */
	.aiop-ds2-section.e-con,
	.aiop-chi-siamo-section.aiop-ds2-section.e-con {
		flex-direction: column !important;
		--flex-direction: column !important;
		padding-left: clamp(1rem, 4vw, 1.5rem) !important;
		padding-right: clamp(1rem, 4vw, 1.5rem) !important;
	}

	.aiop-ds2-section > .e-con-inner,
	.aiop-chi-siamo-section.aiop-ds2-section > .e-con-inner {
		flex-direction: column !important;
		flex-wrap: nowrap !important;
		width: 100% !important;
	}

	.aiop-ds2-section .e-con.e-child,
	.aiop-chi-siamo-section.aiop-ds2-section .e-con.e-child {
		width: 100% !important;
		max-width: 100% !important;
		flex: 1 1 auto !important;
		--width: 100% !important;
	}

	/* Footer — colonne link impilate */
	.elementor-597.elementor-location-footer .elementor-element-c5af053 > .e-con-inner {
		flex-direction: column !important;
		flex-wrap: nowrap !important;
		align-items: stretch !important;
		gap: 1.5rem !important;
	}

	.elementor-597.elementor-location-footer .elementor-element-c5af053 .e-con.e-child,
	.elementor-597.elementor-location-footer .elementor-element-19923ad {
		width: 100% !important;
		max-width: 100% !important;
		--width: 100% !important;
	}

	/* Contenitori Elementor che mantengono larghezze desktop */
	body:not(.elementor-editor-active) .elementor-location-header .e-con,
	body:not(.elementor-editor-active) .elementor-location-footer .e-con,
	body:not(.elementor-editor-active) .site-main .e-con.e-parent {
		max-width: 100% !important;
	}

	body.single-progetto .entry,
	body.single-progetto .entry__header,
	body.single-progetto .entry__content {
		width: 100% !important;
		max-width: 100% !important;
		min-width: 0 !important;
		box-sizing: border-box;
		overflow-x: clip;
	}

	/* main.css imposta .entry__content { display: grid } — figli Elementor min-width:auto allargano il box */
	body.single-progetto .entry__content {
		display: block !important;
	}

	body.single-progetto .entry__content :is(.elementor, .e-con, .elementor-template) {
		max-width: 100% !important;
		width: 100% !important;
		--width: 100% !important;
	}

	/* Tabelle in editor di testo senza wrapper dedicato */
	.elementor-widget-text-editor:has(.aiop-chi-siamo-table),
	.elementor-widget-text-editor:has(.aiop-ts-table),
	.entry__content:has(.aiop-chi-siamo-table),
	.entry__content:has(.aiop-ts-table) {
		overflow-x: auto;
		-webkit-overflow-scrolling: touch;
		max-width: 100%;
	}

	.aiop-chi-siamo-table-wrap,
	.aiop-diventa-socio-pricing-wrap {
		overflow-x: auto;
		-webkit-overflow-scrolling: touch;
		max-width: 100%;
	}

	.aiop-chi-siamo-table,
	.aiop-ts-table--desktop {
		width: 100%;
		min-width: 520px;
	}

	.aiop-tipologie-socio .aiop-ts-cards {
		min-width: 0;
	}

	/* Elementor Pro — form: campi dentro viewport (Contatti, Glossario, popup) */
	body:not(.elementor-editor-active) :is(.site-main, .entry__content) .elementor-form,
	body:not(.elementor-editor-active) .elementor-popup-modal .elementor-form {
		max-width: 100% !important;
		width: 100% !important;
		box-sizing: border-box;
	}

	body:not(.elementor-editor-active) :is(.site-main, .entry__content) .elementor-form-fields-wrapper,
	body:not(.elementor-editor-active) .elementor-popup-modal .elementor-form-fields-wrapper,
	body:not(.elementor-editor-active) :is(.site-main, .entry__content) .elementor-field-group,
	body:not(.elementor-editor-active) .elementor-popup-modal .elementor-field-group {
		max-width: 100% !important;
		width: 100% !important;
		box-sizing: border-box;
	}

	body:not(.elementor-editor-active) :is(.site-main, .entry__content) .elementor-field-textual,
	body:not(.elementor-editor-active) :is(.site-main, .entry__content) .elementor-form :is(input, textarea, select),
	body:not(.elementor-editor-active) .elementor-popup-modal .elementor-field-textual,
	body:not(.elementor-editor-active) .elementor-popup-modal .elementor-form :is(input, textarea, select) {
		max-width: 100% !important;
		width: 100% !important;
		box-sizing: border-box;
	}

	body:not(.elementor-editor-active) :is(.site-main, .entry__content) .elementor-template,
	body:not(.elementor-editor-active) :is(.site-main, .entry__content) .elementor-template > .elementor,
	body:not(.elementor-editor-active) :is(.site-main, .entry__content) .elementor-template .e-con {
		max-width: 100% !important;
		width: 100% !important;
		--width: 100% !important;
		overflow-x: clip;
	}

	.elementor-popup-modal .dialog-widget-content {
		max-width: min(calc(100vw - 2rem), 640px) !important;
		width: calc(100vw - 2rem) !important;
		box-sizing: border-box;
	}

	.elementor-popup-modal .elementor {
		max-width: 100% !important;
	}

	/* Selettore lingua: evita overflow nella riga header tablet */
	:is(.elementor-location-header, .elementor-50) .aiop-language-selector-2__button {
		padding-inline: 8px;
		gap: 6px;
	}

	:is(.elementor-location-header, .elementor-50) .aiop-language-selector-2__text {
		max-width: 5.5rem;
		overflow: hidden;
		text-overflow: ellipsis;
	}

	/* Hero eventi: SVG decorativi non devono allargare il viewport */
	.single-evento .e-con,
	.single-corso .e-con,
	.post-type-evento .e-con,
	.post-type-corso .e-con {
		overflow-x: clip;
	}

	/* Header tablet/mobile: hamburger al posto della riga orizzontale, ma voci visibili quando aperto */
	:is(.elementor-location-header, .elementor-50) .elementor-element-382af9a {
		--n-menu-toggle-icon-size: var(--aiop-header-mobile-menu-icon-height, 30px);
		--n-menu-toggle-icon-padding: 0;
	}

	:is(.elementor-location-header, .elementor-50) .elementor-element-382af9a .e-n-menu-toggle {
		display: inline-flex !important;
		align-items: center;
		justify-content: center;
		min-width: 44px;
		min-height: 44px;
		visibility: visible !important;
	}

	:is(.elementor-location-header, .elementor-50) .elementor-element-382af9a .e-n-menu-toggle svg {
		width: auto !important;
		height: var(--aiop-header-mobile-menu-icon-height, 30px) !important;
		max-width: calc(var(--aiop-header-mobile-menu-icon-height, 30px) * 1.35);
	}

	:is(.elementor-location-header, .elementor-50) .elementor-element-382af9a .e-n-menu-toggle i {
		font-size: var(--aiop-header-mobile-menu-icon-height, 30px) !important;
		line-height: 1;
	}

	:is(.elementor-location-header, .elementor-50)
		.elementor-element-382af9a
		.e-n-menu-toggle[aria-expanded="false"]
		+ .e-n-menu-wrapper
		.e-n-menu-heading {
		display: none !important;
	}

	/* Home — blocchi Cos'è AIOP / #thinkORANGE / CTA: colonne strette → stack */
	.elementor-element-40220f1 > .e-con-inner {
		flex-direction: column !important;
		flex-wrap: nowrap !important;
	}

	.elementor-element-40220f1 .e-con.e-child {
		width: 100% !important;
		max-width: 100% !important;
		flex: 1 1 auto !important;
		--width: 100% !important;
	}
}

@media (max-width: 1024px) {
	/* Header compatto: menu | logo (centro) | lingua, poi ricerca, poi CTA */
	:is(.elementor-location-header, .elementor-50) .elementor-element-70429c4 {
		--aiop-header-mobile-logo-height: 40px;
		--aiop-header-mobile-menu-icon-height: calc(var(--aiop-header-mobile-logo-height) * 0.75);
		display: grid !important;
		grid-template-columns: minmax(2.75rem, auto) minmax(0, 1fr) auto;
		grid-template-areas:
			"menu logo lang"
			"search search search";
		gap: 0.5rem 0.75rem;
		padding-inline: clamp(0.75rem, 3vw, 1rem) !important;
		align-items: center;
	}

	:is(.elementor-location-header, .elementor-50) .elementor-element-7480b5d {
		grid-area: logo;
		width: auto !important;
		max-width: min(72vw, 280px) !important;
		justify-self: center;
		text-align: center;
	}

	:is(.elementor-location-header, .elementor-50) .elementor-element-7480b5d .elementor-widget-image,
	:is(.elementor-location-header, .elementor-50) .elementor-element-7480b5d .elementor-widget-image img,
	:is(.elementor-location-header, .elementor-50) .elementor-element-7480b5d img {
		max-height: var(--aiop-header-mobile-logo-height, 40px) !important;
		width: auto !important;
		height: auto !important;
		margin-inline: auto;
	}

	:is(.elementor-location-header, .elementor-50) .elementor-element-048bca2 {
		grid-area: menu;
		width: auto !important;
		justify-self: start;
	}

	:is(.elementor-location-header, .elementor-50) .elementor-element-048bca2 .elementor-element-382af9a .e-n-menu-toggle {
		margin-inline: 0;
	}

	:is(.elementor-location-header, .elementor-50) .elementor-element-8f1170d {
		grid-area: lang;
		width: auto !important;
		justify-self: end;
		display: flex !important;
		flex-direction: row !important;
		align-items: center !important;
		justify-content: flex-end !important;
		gap: 0.15rem;
	}

	:is(.elementor-location-header, .elementor-50) .elementor-element-8f1170d > .elementor-widget {
		flex: 0 0 auto;
		width: auto !important;
		max-width: none !important;
		--width: auto !important;
	}

	:is(.elementor-location-header, .elementor-50) .elementor-element-8f1170d .aiop-language-selector-2,
	:is(.elementor-location-header, .elementor-50) .elementor-element-8f1170d .aiop-language-selector {
		width: auto;
	}

	:is(.elementor-location-header, .elementor-50) .elementor-element-8f1170d .aiop-header-search-toggle {
		grid-area: unset !important;
	}

	:is(.elementor-location-header, .elementor-50) .aiop-header-search-toggle {
		flex: 0 0 auto;
		justify-self: end;
		align-self: center;
		display: inline-flex;
		align-items: center;
		justify-content: center;
		width: 2.75rem;
		height: 2.75rem;
		margin: 0;
		padding: 0;
		border: none;
		border-radius: 0;
		background: transparent;
		color: var(--e-global-color-text, #111122);
		cursor: pointer;
		-webkit-tap-highlight-color: transparent;
	}

	:is(.elementor-location-header, .elementor-50) .aiop-header-search-toggle:focus-visible {
		outline: 2px solid var(--e-global-color-fifth, #eb6037);
		outline-offset: 2px;
	}

	body.aiop-header-search-open :is(.elementor-location-header, .elementor-50) .aiop-header-search-toggle {
		color: var(--e-global-color-fifth, #eb6037);
	}

	:is(.elementor-location-header, .elementor-50) .elementor-element-bf006cb {
		grid-area: search;
		width: 100% !important;
		max-width: 100% !important;
		--width: 100% !important;
		flex: none !important;
		display: none !important;
	}

	body.aiop-header-search-open :is(.elementor-location-header, .elementor-50) .elementor-element-bf006cb {
		display: block !important;
	}

	:is(.elementor-location-header, .elementor-50) .elementor-element-bf006cb .e-search-input {
		font-size: 14px !important;
	}

	:is(.elementor-location-header, .elementor-50) .elementor-element-bec4653 {
		display: none !important;
	}
}

@media (max-width: 1024px) {
	body:not(.elementor-editor-active)
		:is(.site-main, .elementor-location-footer, .elementor[data-elementor-type="wp-page"])
		.elementor-widget-heading
		.elementor-heading-title {
		max-width: 100%;
		overflow-wrap: anywhere;
		word-break: break-word;
		white-space: normal !important;
	}

	/* Tablet: titoli Elementor troppo grandi rispetto al desktop */
	body:not(.elementor-editor-active)
		:is(.site-main, .elementor-location-footer, .elementor[data-elementor-type="wp-page"])
		.elementor-widget-heading:not(.elementor-element-068f8fc)
		h1.elementor-heading-title {
		font-size: clamp(1.75rem, 4.8vw, 2.75rem) !important;
		line-height: 1.12 !important;
	}

	body:not(.elementor-editor-active)
		:is(.site-main, .elementor-location-footer, .elementor[data-elementor-type="wp-page"])
		.elementor-widget-heading
		h2.elementor-heading-title {
		font-size: clamp(1.5rem, 3.8vw, 2.125rem) !important;
		line-height: 1.15 !important;
	}

	body:not(.elementor-editor-active)
		:is(.site-main, .elementor-location-footer, .elementor[data-elementor-type="wp-page"])
		.elementor-widget-heading
		h3.elementor-heading-title {
		font-size: clamp(1.35rem, 3.4vw, 1.875rem) !important;
		line-height: 1.2 !important;
	}

	body:not(.elementor-editor-active)
		:is(.site-main, .elementor-location-footer, .elementor[data-elementor-type="wp-page"])
		.elementor-widget-heading
		:is(h4, h5, h6).elementor-heading-title {
		font-size: clamp(1.15rem, 3vw, 1.5rem) !important;
		line-height: 1.25 !important;
	}

	body:not(.elementor-editor-active)
		:is(.site-main, .elementor-location-footer, .elementor[data-elementor-type="wp-page"])
		.elementor-widget-heading
		div.elementor-heading-title {
		font-size: clamp(1.05rem, 3.2vw, 1.35rem) !important;
		/* line-height: lasciato al widget Elementor (override !important bloccava tablet/mobile) */
	}

	/* Home Competition: logo + titolo centrati e affiancati */
	.elementor-22 .elementor-element-b081cfb .elementor-element-068f8fc .elementor-heading-title {
		font-size: clamp(2.25rem, 5.8vw, 4.05rem) !important;
		line-height: 1.05 !important;
		white-space: normal !important;
		overflow-wrap: break-word;
		max-width: 100%;
	}

	.aiop-event-list:not(.aiop-event-list--carousel-focus) .aiop-event-list__date-day,
	.aiop-event-list:not(.aiop-event-list--carousel-focus) .aiop-event-list__date-num {
		font-size: clamp(1.75rem, 5vw, 2.25rem) !important;
	}

	.elementor-widget-aiop-header-slider .aiop-header-slider__title {
		font-size: clamp(1.5rem, 4vw, 1.875rem) !important;
	}

	/* Home Competition — tablet: gruppo centrato, elementi più grandi */
	.elementor-22 .elementor-element-4a27da9 > .e-con-inner {
		display: flex !important;
		flex-direction: row !important;
		flex-wrap: nowrap !important;
		align-items: center !important;
		justify-content: center !important;
		width: 100% !important;
		max-width: 100% !important;
		gap: clamp(0.1rem, 0.65vw, 0.35rem);
	}

	.elementor-22 .elementor-element-9012fa5,
	.elementor-22 .elementor-element-b081cfb {
		flex: 0 0 auto !important;
		width: auto !important;
		max-width: none !important;
		--width: auto !important;
	}

	.elementor-22 .elementor-element-9012fa5 .elementor-widget-image .elementor-widget-container,
	.elementor-22 .elementor-element-b081cfb .elementor-widget-heading .elementor-widget-container {
		margin: 0 !important;
		padding: 0 !important;
	}

	.elementor-22 .elementor-element-3267a51 img {
		width: auto !important;
		max-width: min(200px, 42vw) !important;
		max-height: clamp(88px, 14vw, 132px) !important;
		height: auto !important;
		object-fit: contain;
		margin: 0 !important;
	}

	.elementor-22 .elementor-element-b081cfb .elementor-element-068f8fc .elementor-heading-title {
		width: auto !important;
		text-align: left !important;
	}
}

/* Home — sezione Competition: meno spazio sopra (dopo carousel eventi) */
.elementor-22 .elementor-element-ad35fdf {
	padding-bottom: clamp(0.25rem, 1.5vw, 1rem) !important;
}

.elementor-22 .elementor-element-ddf0773 .aiop-event-list--carousel-focus .aiop-event-list__filters--bottom {
	margin-top: 0.5rem;
	margin-bottom: 0;
}

.elementor-22 .elementor-element-ddf0773 .aiop-event-list--carousel-focus .aiop-event-list__carousel-mobile-detail {
	margin-top: 0.5rem;
}

/* Home — Contest list (widget c79cd68): tablet/mobile — margini, card, titoli una riga */
@media (max-width: 1024px) {
	.elementor-22 .elementor-element-c79cd68 .elementor-widget-container {
		padding-inline: clamp(1rem, 5vw, 3.5rem) !important;
		box-sizing: border-box;
	}

	.elementor-22 .elementor-element-c79cd68 .aiop-contest-list {
		--aiop-cl-side-inset: clamp(0.5rem, 2vw, 1.25rem);
		--aiop-cl-card-width: min(500px, 36vw);
		--aiop-cl-items-gap: clamp(14px, 2.5vw, 40px);
	}

	.elementor-22 .elementor-element-c79cd68 .aiop-contest-list__title {
		font-size: clamp(0.9375rem, 2.65vw, 1.1875rem) !important;
		font-weight: 500 !important;
	}
}

@media (max-width: 767px) {
	.elementor-22 .elementor-element-c79cd68 .elementor-widget-container {
		padding-inline: clamp(1.15rem, 6vw, 2rem) !important;
	}

	.elementor-22 .elementor-element-c79cd68 .aiop-contest-list {
		--aiop-cl-card-width: min(500px, 74vw);
		--aiop-cl-items-gap: min(var(--aiop-cl-items-gap), 24px);
	}
}

.elementor-22 .elementor-element-76953b8 {
	padding-top: clamp(0.25rem, 2vw, 1.25rem) !important;
}

.elementor-22 .elementor-element-1e53cf5 .elementor-spacer-inner {
	--spacer-size: clamp(0px, 2vw, 20px) !important;
	height: clamp(0px, 2vw, 20px) !important;
	min-height: 0 !important;
}

.elementor-22 .elementor-element-4a27da9 > .e-con-inner {
	padding-top: 0 !important;
}

@media (min-width: 1025px) {
	.elementor-22 .elementor-element-4a27da9 > .e-con-inner {
		align-items: center !important;
		justify-content: center !important;
		width: 100% !important;
		gap: clamp(0.15rem, 0.5vw, 0.4rem);
	}

	.elementor-22 .elementor-element-9012fa5,
	.elementor-22 .elementor-element-b081cfb {
		flex: 0 0 auto !important;
		width: auto !important;
		max-width: none !important;
		--width: auto !important;
	}

	.elementor-22 .elementor-element-b081cfb,
	.elementor-22 .elementor-element.elementor-element-b081cfb.e-con {
		--width: max-content !important;
		width: max-content !important;
		min-width: max-content !important;
		flex-basis: auto !important;
	}

	.elementor-22 .elementor-element-068f8fc.elementor-widget-heading,
	.elementor-22 .elementor-element-068f8fc .elementor-widget-heading .elementor-widget-container,
	.elementor-22 .elementor-element-068f8fc .elementor-heading-title {
		flex-shrink: 0 !important;
		min-width: max-content !important;
		width: max-content !important;
		max-width: none !important;
		overflow: visible !important;
	}

	.elementor-22 .elementor-element-9012fa5 .elementor-widget-image .elementor-widget-container,
	.elementor-22 .elementor-element-b081cfb .elementor-widget-heading .elementor-widget-container {
		margin: 0 !important;
		padding: 0 !important;
	}

	.elementor-22 .elementor-element-3267a51 img {
		width: auto !important;
		max-width: min(280px, 24vw) !important;
		max-height: clamp(104px, 10vw, 152px) !important;
		height: auto !important;
		object-fit: contain;
	}

	.elementor-22 .elementor-element-b081cfb .elementor-element-068f8fc .elementor-heading-title {
		font-size: clamp(3.05rem, 5.4vw, 5.5rem) !important;
		width: max-content !important;
		text-align: left !important;
		white-space: nowrap;
	}
}

@media (max-width: 767px) {
	body:not(.elementor-editor-active)
		:is(.site-main, .elementor-location-footer, .elementor[data-elementor-type="wp-page"])
		.elementor-widget-heading:not(.elementor-element-068f8fc)
		h1.elementor-heading-title {
		font-size: clamp(1.5rem, 6.5vw, 2.125rem) !important;
		line-height: 1.12 !important;
	}

	body:not(.elementor-editor-active)
		:is(.site-main, .elementor-location-footer, .elementor[data-elementor-type="wp-page"])
		.elementor-widget-heading
		h2.elementor-heading-title {
		font-size: clamp(1.35rem, 5.2vw, 1.75rem) !important;
		line-height: 1.15 !important;
	}

	body:not(.elementor-editor-active)
		:is(.site-main, .elementor-location-footer, .elementor[data-elementor-type="wp-page"])
		.elementor-widget-heading
		h3.elementor-heading-title {
		font-size: clamp(1.2rem, 4.6vw, 1.5rem) !important;
		line-height: 1.2 !important;
	}

	body:not(.elementor-editor-active)
		:is(.site-main, .elementor-location-footer, .elementor[data-elementor-type="wp-page"])
		.elementor-widget-heading
		:is(h4, h5, h6).elementor-heading-title {
		font-size: clamp(1.05rem, 4vw, 1.3rem) !important;
		line-height: 1.25 !important;
	}

	body:not(.elementor-editor-active)
		:is(.site-main, .elementor-location-footer, .elementor[data-elementor-type="wp-page"])
		.elementor-widget-heading
		div.elementor-heading-title {
		font-size: clamp(1rem, 3.8vw, 1.2rem) !important;
	}

	body:not(.elementor-editor-active)
		:is(.site-main, .elementor-location-footer)
		.elementor-widget-text-editor
		.elementor-widget-container {
		font-size: clamp(0.9375rem, 3.5vw, 1.0625rem);
		line-height: 1.55;
	}

	.aiop-event-list:not(.aiop-event-list--carousel-focus) .aiop-event-list__date-day,
	.aiop-event-list:not(.aiop-event-list--carousel-focus) .aiop-event-list__date-num {
		font-size: clamp(1.5rem, 7vw, 2rem) !important;
	}

	.elementor-widget-aiop-header-slider .aiop-header-slider__title {
		font-size: clamp(1.25rem, 5.5vw, 1.5rem) !important;
	}

	:is(.elementor-location-header, .elementor-50) .aiop-language-selector-2__text {
		display: none;
	}

	/* Header mobile: altezza logo; lingua sigla (ITA/ENG) + freccia (no testo lungo) */
	:is(.elementor-location-header, .elementor-50) .elementor-element-70429c4 {
		--aiop-header-mobile-logo-height: 44px;
	}

	:is(.elementor-location-header, .elementor-50) .elementor-element-8f1170d .aiop-language-selector-2__button {
		border: 0;
		background: transparent;
		padding: 6px 4px;
		min-height: 44px;
		min-width: 44px;
		justify-content: center;
		gap: 4px;
	}

	:is(.elementor-location-header, .elementor-50) .elementor-element-8f1170d .aiop-language-selector-2--has-text .aiop-language-selector-2__code {
		display: inline-flex !important;
		font-size: 0.75rem;
	}

	:is(.elementor-location-header, .elementor-50) .elementor-element-8f1170d .aiop-language-selector-2__code {
		display: inline-flex !important;
	}

	:is(.elementor-location-header, .elementor-50) .elementor-element-8f1170d .aiop-language-selector-2__icon {
		margin-left: 0;
	}

	/* Home — hero intro (pagina 22) */
	.elementor-22 .elementor-element-d448ac9 {
		padding-inline: clamp(0.75rem, 4vw, 1.25rem) !important;
	}

	.elementor-22 .elementor-element-b828d54 .elementor-heading-title {
		font-size: clamp(0.95rem, 4.2vw, 1.2rem) !important;
		line-height: 1.35 !important;
		text-align: center;
	}

	.elementor-22 .elementor-element-f537704 .aiop-logo-sticker__wrap,
	.elementor-22 .elementor-element-f537704 img {
		max-width: min(100%, 280px) !important;
		width: 100% !important;
		height: auto !important;
		margin-inline: auto;
	}

	.elementor-22 .elementor-element-5faab04 .elementor-heading-title {
		font-size: clamp(1.05rem, 5.2vw, 1.45rem) !important;
		line-height: 1.28 !important;
		text-align: center;
	}

	.elementor-22 .elementor-element-2615271 .elementor-spacer-inner {
		--spacer-size: 12px !important;
		height: 12px !important;
	}

	/* Home — riquadro «Cos'è AIOP» (container f3f6e95): altezza da contenuto, non 603px */
	.elementor-22 .elementor-element.elementor-element-f3f6e95 {
		--min-height: 0px !important;
		min-height: 0 !important;
	}

	.elementor-22 .elementor-element.elementor-element-f3f6e95.e-con {
		min-height: 0 !important;
	}

	.elementor-22 .elementor-element.elementor-element-0ceae6a .elementor-spacer-inner {
		--spacer-size: 24px !important;
		height: 24px !important;
		min-height: 24px !important;
	}

	.elementor-22 .elementor-element.elementor-element-93aa7ca .elementor-spacer-inner {
		--spacer-size: 12px !important;
		height: 12px !important;
		min-height: 12px !important;
	}

	/* Home Competition — mobile: logo sopra, titolo a tutta larghezza (evita “Competitio/n”) */
	.elementor-22 .elementor-element-4a27da9 > .e-con-inner {
		display: flex !important;
		flex-direction: row !important;
		flex-wrap: wrap !important;
		align-items: center !important;
		justify-content: center !important;
		width: 100% !important;
		max-width: 100% !important;
		gap: clamp(0.25rem, 2vw, 0.5rem);
	}

	.elementor-22 .elementor-element-9012fa5 {
		flex: 0 0 auto !important;
		width: auto !important;
		max-width: none !important;
		--width: auto !important;
	}

	.elementor-22 .elementor-element-b081cfb,
	.elementor-22 .elementor-element.elementor-element-b081cfb.e-con {
		flex: 1 1 100% !important;
		width: 100% !important;
		max-width: 100% !important;
		--width: 100% !important;
		--flex-grow: 0 !important;
	}

	.elementor-22 .elementor-element-9012fa5 .elementor-widget-image .elementor-widget-container,
	.elementor-22 .elementor-element-b081cfb .elementor-widget-heading .elementor-widget-container {
		margin: 0 !important;
		padding: 0 !important;
	}

	.elementor-22 .elementor-element-3267a51 img {
		display: block !important;
		width: auto !important;
		max-width: min(168px, 44vw) !important;
		max-height: clamp(76px, 18vw, 108px) !important;
		height: auto !important;
		object-fit: contain;
		margin: 0 !important;
	}

	.elementor-22 .elementor-element-b081cfb .elementor-element-068f8fc .elementor-heading-title {
		font-size: clamp(1.7rem, 10vw, 2.85rem) !important;
		line-height: 1.05 !important;
		width: 100% !important;
		max-width: 100%;
		text-align: center !important;
		white-space: normal !important;
		overflow-wrap: break-word;
	}

	.elementor-597.elementor-location-footer .elementor-element-f1ec687 {
		flex-wrap: wrap !important;
		width: 100% !important;
		max-width: 100% !important;
		justify-content: flex-start !important;
	}
}

/*
 * Home Competition — override Elementor post-22:
 * - logo colonna: margin-left 10% e width 15% (gap enorme)
 * - titolo: font-size 100px inline nel CSS Elementor
 */
.elementor-22 .elementor-element.elementor-element-4a27da9 > .e-con-inner {
	gap: 0 !important;
	column-gap: 0 !important;
	row-gap: 0 !important;
	--gap: 0 !important;
	--column-gap: 0 !important;
}

.elementor-22 .elementor-element.elementor-element-9012fa5.e-con {
	--margin-left: 0% !important;
	--margin-right: 0% !important;
	--margin-top: 0% !important;
	--margin-bottom: 0% !important;
	--width: auto !important;
	--flex-grow: 0 !important;
	width: auto !important;
	max-width: none !important;
	flex: 0 0 auto !important;
	margin: 0 !important;
}

.elementor-22 .elementor-element.elementor-element-b081cfb.e-con {
	--width: auto !important;
	--flex-grow: 0 !important;
	width: auto !important;
	max-width: none !important;
	flex: 0 0 auto !important;
	margin: 0 0 0 -0.2rem !important;
}

.elementor-22 .elementor-element.elementor-element-3267a51 {
	text-align: left !important;
}

.elementor-22 .elementor-element.elementor-element-3267a51 img {
	display: block !important;
	margin: 0 !important;
}

body:not(.elementor-editor-active)
	.site-main
	.elementor-22
	.elementor-element.elementor-element-068f8fc
	h1.elementor-heading-title {
	font-size: clamp(1.85rem, 10vw, 3.05rem) !important;
	line-height: 1.05 !important;
	max-width: 100%;
	overflow-wrap: break-word;
}

@media (min-width: 768px) and (max-width: 1024px) {
	body:not(.elementor-editor-active)
		.site-main
		.elementor-22
		.elementor-element.elementor-element-068f8fc
		h1.elementor-heading-title {
		white-space: normal !important;
	}
}

@media (max-width: 767px) {
	body:not(.elementor-editor-active)
		.site-main
		.elementor-22
		.elementor-element.elementor-element-068f8fc
		h1.elementor-heading-title {
		white-space: normal !important;
		text-align: center !important;
		width: 100% !important;
		overflow-wrap: break-word;
	}
}

@media (min-width: 768px) {
	body:not(.elementor-editor-active)
		.site-main
		.elementor-22
		.elementor-element.elementor-element-068f8fc
		h1.elementor-heading-title {
		font-size: clamp(3.05rem, 5.8vw, 5.5rem) !important;
	}
}

@media (min-width: 1025px) {
	body:not(.elementor-editor-active)
		.site-main
		.elementor-22
		.elementor-element.elementor-element-068f8fc
		h1.elementor-heading-title {
		font-size: clamp(5.25rem, 7.2vw, 7.3rem) !important;
		white-space: nowrap !important;
		flex-shrink: 0 !important;
		width: max-content !important;
		max-width: none;
		overflow: visible;
	}
}

@media (max-width: 767px) {
	body.single-iniziativa .site-main .elementor-widget-heading :is(h1, h2).elementor-heading-title,
	body.single-corso .site-main .elementor-widget-heading h1.elementor-heading-title {
		white-space: normal !important;
		overflow-wrap: break-word;
		max-width: 100%;
	}
}

/* Patrocinio hero congresso #90 — titolo sopra, loghi affiancati (sempre visibili) */
body.single-evento.elementor-page-90 .elementor-element-c8f4a21.e-flex,
body.elementor-page-90 .elementor-element-c8f4a21.e-flex {
	flex-direction: row !important;
	flex-wrap: nowrap !important;
	align-items: center !important;
	--flex-direction: row !important;
	--flex-wrap: nowrap !important;
	width: 100% !important;
	max-width: 100% !important;
}

body.single-evento.elementor-page-90 .elementor-element-c8f4a21 > .elementor-widget-image,
body.elementor-page-90 .elementor-element-c8f4a21 > .elementor-widget-image {
	flex: 0 1 calc(50% - 0.5rem) !important;
	min-width: 2.5rem !important;
	width: auto !important;
	max-width: 50% !important;
	--container-widget-width: 100% !important;
	opacity: 1 !important;
	visibility: visible !important;
}

body.single-evento.elementor-page-90 .elementor-element-c8f4a21 > .elementor-widget-image img,
body.elementor-page-90 .elementor-element-c8f4a21 > .elementor-widget-image img {
	display: block !important;
	width: 100% !important;
	height: auto !important;
	max-height: 5.5rem;
	min-height: 1px;
	object-fit: contain;
	object-position: center;
	opacity: 1 !important;
	visibility: visible !important;
}

/* Patrocinio — titolo «Evento patrocinato da:» centrato (mobile/tablet) */
@media (max-width: 1024px) {
	body.single-evento.elementor-page-90 #header .elementor-element-56f3505,
	body.elementor-page-90 #header .elementor-element-56f3505 {
		align-items: center !important;
		--align-items: center !important;
	}

	body.single-evento.elementor-page-90 #header .elementor-element-7adb2c1,
	body.elementor-page-90 #header .elementor-element-7adb2c1 {
		width: 100% !important;
		text-align: center !important;
		--container-widget-width: 100% !important;
	}

	body.single-evento.elementor-page-90 #header .elementor-element-7adb2c1 .elementor-heading-title,
	body.elementor-page-90 #header .elementor-element-7adb2c1 .elementor-heading-title {
		text-align: center !important;
		width: 100% !important;
	}
}

/* ==========================================================================
   Singolo congresso — XLV (Elementor post 90), solo tablet/mobile
   ========================================================================== */
@media (max-width: 1024px) {
	body.single-evento.elementor-page-90 .site-main {
		padding-inline: 0;
		box-sizing: border-box;
	}

	/* Padding desktop (96px) su sezioni full-width → area utile ~159px su 375px */
	body.single-evento.elementor-page-90 .elementor-90 .e-con.e-parent {
		--padding-left: clamp(1rem, 4vw, 1.75rem) !important;
		--padding-right: clamp(1rem, 4vw, 1.75rem) !important;
		--padding-top: clamp(2.5rem, 7vw, 5rem) !important;
		--padding-bottom: clamp(2.5rem, 7vw, 5rem) !important;
		padding-left: clamp(1rem, 4vw, 1.75rem) !important;
		padding-right: clamp(1rem, 4vw, 1.75rem) !important;
		padding-top: clamp(2.5rem, 7vw, 5rem) !important;
		padding-bottom: clamp(2.5rem, 7vw, 5rem) !important;
	}

	/* Flip box in colonne strette → stack full-width (righe e-con annidate, non solo e-con-inner) */
	body.single-evento.elementor-page-90 .site-main .e-con:has(> .e-con.e-child > .elementor-widget-stl-flip-box),
	body.single-evento.elementor-page-90 .site-main .e-con-inner:has(> .e-con.e-child > .elementor-widget-stl-flip-box) {
		flex-direction: column !important;
		flex-wrap: nowrap !important;
		align-items: stretch !important;
		--flex-direction: column !important;
	}

	body.single-evento.elementor-page-90 .site-main .e-con.e-child:has(> .elementor-widget-stl-flip-box) {
		width: 100% !important;
		max-width: 100% !important;
		flex: 1 1 100% !important;
		flex-basis: 100% !important;
		--width: 100% !important;
		--flex-basis: 100% !important;
	}

	body.single-evento.elementor-page-90 .site-main .elementor-widget-stl-flip-box {
		width: 100% !important;
		max-width: 100% !important;
		--container-widget-width: 100% !important;
	}

	body.single-evento.elementor-page-90 .site-main .elementor-widget-stl-flip-box .elementor-flip-box {
		min-height: min(420px, 70vw);
	}

	body.single-evento.elementor-page-90 .site-main .elementor-widget-stl-flip-box .elementor-flip-box__layer__title {
		font-size: clamp(1.125rem, 4vw, 1.75rem) !important;
		line-height: 1.2 !important;
		hyphens: auto;
	}

	/* Sezioni con split asimmetrico (sidebar stretta) */
	body.single-evento.elementor-page-90 .elementor-element-5fc504a.e-con,
	body.single-evento.elementor-page-90 .elementor-element-cbf2ee1.e-con,
	body.single-evento.elementor-page-90 .elementor-element-6a009da.e-con {
		flex-direction: column !important;
		flex-wrap: nowrap !important;
		align-items: stretch !important;
		--flex-direction: column !important;
	}

	body.single-evento.elementor-page-90 .elementor-element-5fc504a > .e-con.e-child,
	body.single-evento.elementor-page-90 .elementor-element-cbf2ee1 > .e-con.e-child,
	body.single-evento.elementor-page-90 .elementor-element-6a009da > .e-con.e-child,
	body.single-evento.elementor-page-90 .elementor-element-5fc504a > .e-con-inner > .e-con.e-child,
	body.single-evento.elementor-page-90 .elementor-element-cbf2ee1 > .e-con-inner > .e-con.e-child,
	body.single-evento.elementor-page-90 .elementor-element-6a009da > .e-con-inner > .e-con.e-child {
		width: 100% !important;
		max-width: 100% !important;
		flex: 1 1 auto !important;
		--width: 100% !important;
	}

	/* Titoli quote / costi nei flip box workshop */
	body.single-evento.elementor-page-90 .site-main .stl-flipbox__text-group .elementor-flip-box__layer__title,
	body.single-evento.elementor-page-90 .site-main .stl-flipbox__text-group .elementor-flip-box__layer__description {
		overflow-wrap: anywhere;
		word-break: normal;
	}

	/* Pagina Contest landing (Elementor 10612) — padding desktop 96px su tablet */
	body.elementor-page-10612 .site-main {
		padding-inline: 0;
		box-sizing: border-box;
	}

	body.elementor-page-10612 .elementor-10612 > .e-con.e-parent {
		--padding-left: clamp(1rem, 4vw, 1.75rem) !important;
		--padding-right: clamp(1rem, 4vw, 1.75rem) !important;
		--padding-top: clamp(2rem, 6vw, 3.5rem) !important;
		--padding-bottom: clamp(2rem, 6vw, 3.5rem) !important;
		padding-left: clamp(1rem, 4vw, 1.75rem) !important;
		padding-right: clamp(1rem, 4vw, 1.75rem) !important;
		padding-top: clamp(2rem, 6vw, 3.5rem) !important;
		padding-bottom: clamp(2rem, 6vw, 3.5rem) !important;
	}

	/* Intro #90 — sede (Bologna · Palazzo): allineato a Elementor in tablet, no spezzatura parole */
	body.single-evento.elementor-page-90 #intro .elementor-element-f86a631,
	body.elementor-page-90 #intro .elementor-element-f86a631 {
		flex-wrap: wrap !important;
		align-items: baseline !important;
		column-gap: 0.35em;
		row-gap: 0.2em;
	}

	body.single-evento.elementor-page-90 #intro .elementor-element-f86a631 > .elementor-widget-heading,
	body.elementor-page-90 #intro .elementor-element-f86a631 > .elementor-widget-heading {
		width: auto !important;
		flex: 0 1 auto !important;
		max-width: 100%;
	}

	body.single-evento.elementor-page-90 #intro .elementor-element-f86a631 .elementor-heading-title,
	body.elementor-page-90 #intro .elementor-element-f86a631 .elementor-heading-title {
		overflow-wrap: normal !important;
		word-break: normal !important;
		hyphens: manual;
		font-size: unset !important;
		line-height: unset !important;
	}
}

/* Pagina Contest (10612) — box «Premio»: testi centrati su tutte le viewport */
body.elementor-page-10612 .aiop-contest-award .aiop-contest-prize-box:not(:has(.elementor-widget-aiop-visible-image)) {
	align-items: center !important;
	--align-items: center !important;
	text-align: center !important;
}

body.elementor-page-10612 .aiop-contest-award .aiop-contest-prize-box:not(:has(.elementor-widget-aiop-visible-image)) .elementor-widget-heading,
body.elementor-page-10612 .aiop-contest-award .aiop-contest-prize-box:not(:has(.elementor-widget-aiop-visible-image)) .elementor-widget-heading .elementor-widget-container,
body.elementor-page-10612 .aiop-contest-award .aiop-contest-prize-box:not(:has(.elementor-widget-aiop-visible-image)) .elementor-heading-title {
	text-align: center !important;
	align-self: stretch !important;
	--align-self: stretch !important;
	width: 100% !important;
	max-width: 100% !important;
}

/* Wrapper premio: banner competizione sopra, box testi «Premio» sotto (Barducci, Vigolo, Martignoni, …) */
body.elementor-page-10612 .aiop-contest-award .aiop-contest-prize-box:has(> .elementor-widget-aiop-visible-image):has(> .aiop-contest-prize-box) {
	display: flex !important;
	flex-direction: column !important;
}

body.elementor-page-10612 .aiop-contest-award .aiop-contest-prize-box:has(> .elementor-widget-aiop-visible-image) > .elementor-widget-aiop-visible-image {
	order: 1 !important;
}

body.elementor-page-10612 .aiop-contest-award .aiop-contest-prize-box:has(> .elementor-widget-aiop-visible-image) > .aiop-contest-prize-box {
	order: 2 !important;
}

/* Wrapper premio noti (Barducci / Vigolo / Martignoni) — banner sopra box testi */
body.elementor-page-10612 .elementor-element-3f4b0e8,
body.elementor-page-10612 .elementor-element-39b204c,
body.elementor-page-10612 .elementor-element-ed5a624 {
	display: flex !important;
	flex-direction: column !important;
}

body.elementor-page-10612 .elementor-element-3f4b0e8 > .elementor-widget-aiop-visible-image,
body.elementor-page-10612 .elementor-element-39b204c > .elementor-widget-aiop-visible-image,
body.elementor-page-10612 .elementor-element-ed5a624 > .elementor-widget-aiop-visible-image {
	order: 1 !important;
}

body.elementor-page-10612 .elementor-element-3f4b0e8 > .aiop-contest-prize-box,
body.elementor-page-10612 .elementor-element-39b204c > .aiop-contest-prize-box,
body.elementor-page-10612 .elementor-element-ed5a624 > .aiop-contest-prize-box {
	order: 2 !important;
}

/* Contest — accordion premio + CTA regolamento (tablet/mobile; evita 33px Elementor in colonna stretta) */
@media (max-width: 1024px) {
	body.elementor-page-10612 .aiop-contest-award .elementor-widget-n-accordion .e-n-accordion-item-title {
		padding-top: clamp(0.35rem, 1.4vw, 0.45rem) !important;
		padding-bottom: clamp(0.35rem, 1.4vw, 0.45rem) !important;
		min-height: 0 !important;
	}

	body.elementor-page-10612 .aiop-contest-award .elementor-widget-n-accordion .e-n-accordion-item-title-text {
		font-size: clamp(0.75rem, 2.85vw, 0.8125rem) !important;
		line-height: 1.35 !important;
		font-weight: 500 !important;
	}

	body.elementor-page-10612 .aiop-contest-award .elementor-widget-n-accordion .e-n-accordion-item-title-icon {
		font-size: clamp(0.6875rem, 2.5vw, 0.75rem) !important;
	}

	body.elementor-page-10612 .aiop-contest-award .elementor-widget-button .elementor-button,
	body.elementor-page-10612 .aiop-contest-award .elementor-widget-button .elementor-button-text {
		font-size: clamp(0.625rem, 2.4vw, 0.6875rem) !important;
		line-height: 1.2 !important;
		font-weight: 600 !important;
	}

	body.elementor-page-10612 .aiop-contest-award .elementor-widget-button .elementor-button {
		padding: clamp(0.35rem, 1.6vw, 0.45rem) clamp(0.65rem, 2.8vw, 0.85rem) !important;
		min-height: 0 !important;
	}
}

@media (max-width: 767px) {
	body.single-evento.elementor-page-90 .site-main,
	body.single-evento.elementor-page-90 .site-main .elementor.elementor-90 {
		overflow-x: clip;
		max-width: 100%;
		width: 100%;
		box-sizing: border-box;
	}

	/*
	 * Gutter laterale: solo sezioni root (.e-parent).
	 * I container annidati azzerano il padding orizzontale (evita 15px+15px+…).
	 */
	body.single-evento.elementor-page-90 .site-main .elementor-90 > .e-con.e-parent {
		--padding-left: clamp(0.625rem, 3.2vw, 0.75rem) !important;
		--padding-right: clamp(0.625rem, 3.2vw, 0.75rem) !important;
		--padding-top: clamp(0.625rem, 2.8vw, 0.875rem) !important;
		--padding-bottom: clamp(0.625rem, 2.8vw, 0.875rem) !important;
		padding-left: clamp(0.625rem, 3.2vw, 0.75rem) !important;
		padding-right: clamp(0.625rem, 3.2vw, 0.75rem) !important;
		padding-top: clamp(0.625rem, 2.8vw, 0.875rem) !important;
		padding-bottom: clamp(0.625rem, 2.8vw, 0.875rem) !important;
	}

	/* Meno “cuscinetto” tra hero e intro (post 90) */
	body.single-evento.elementor-page-90 #header,
	body.elementor-page-90 #header {
		--padding-bottom: clamp(0.375rem, 2vw, 0.625rem) !important;
		padding-bottom: clamp(0.375rem, 2vw, 0.625rem) !important;
	}

	body.single-evento.elementor-page-90 #intro,
	body.elementor-page-90 #intro {
		--padding-top: clamp(0.375rem, 2vw, 0.625rem) !important;
		padding-top: clamp(0.375rem, 2vw, 0.625rem) !important;
	}

	body.single-evento.elementor-page-90 .site-main .elementor-90 .e-con:not(.e-parent) {
		--padding-left: 0px !important;
		--padding-right: 0px !important;
		padding-left: 0 !important;
		padding-right: 0 !important;
	}

	body.single-evento.elementor-page-90 .site-main .elementor-90 .e-con.e-child {
		--padding-top: clamp(0.35rem, 1.5vw, 0.75rem) !important;
		--padding-bottom: clamp(0.35rem, 1.5vw, 0.75rem) !important;
		padding-top: clamp(0.35rem, 1.5vw, 0.75rem) !important;
		padding-bottom: clamp(0.35rem, 1.5vw, 0.75rem) !important;
	}

	/* Sidebar info (Quando / Dove / Contest) — margine esterno e rientro testi */
	body.single-evento.elementor-page-90 .site-main .elementor-90 .elementor-element-35fbdc9.e-con,
	body.elementor-page-90 .site-main .elementor-90 .elementor-element-35fbdc9.e-con {
		margin-top: clamp(0.75rem, 3.5vw, 1.125rem) !important;
		margin-bottom: clamp(1rem, 4vw, 1.5rem) !important;
		margin-left: auto !important;
		margin-right: auto !important;
		--padding-left: clamp(1rem, 4.5vw, 1.375rem) !important;
		--padding-right: clamp(1rem, 4.5vw, 1.375rem) !important;
		--padding-top: clamp(0.875rem, 3.5vw, 1.125rem) !important;
		--padding-bottom: clamp(0.875rem, 3.5vw, 1.125rem) !important;
		padding-left: clamp(1rem, 4.5vw, 1.375rem) !important;
		padding-right: clamp(1rem, 4.5vw, 1.375rem) !important;
		padding-top: clamp(0.875rem, 3.5vw, 1.125rem) !important;
		padding-bottom: clamp(0.875rem, 3.5vw, 1.125rem) !important;
		width: min(100%, 22.5rem) !important;
		max-width: calc(100% - clamp(1.25rem, 6vw, 2rem)) !important;
		box-sizing: border-box !important;
	}

	body.single-evento.elementor-page-90 .site-main .elementor-90 .elementor-element-35fbdc9 .elementor-element-52a7a22.e-con,
	body.elementor-page-90 .site-main .elementor-90 .elementor-element-35fbdc9 .elementor-element-52a7a22.e-con {
		--padding-left: clamp(1.375rem, 6.5vw, 2rem) !important;
		--padding-right: clamp(0.875rem, 4vw, 1.25rem) !important;
		padding-left: clamp(1.375rem, 6.5vw, 2rem) !important;
		padding-right: clamp(0.875rem, 4vw, 1.25rem) !important;
		padding-top: clamp(0.5rem, 2vw, 0.75rem) !important;
		padding-bottom: clamp(0.5rem, 2vw, 0.75rem) !important;
		box-sizing: border-box !important;
	}

	/* Tipografia mobile congresso (dopo post-90.css, specificità body + .elementor-90) */
	body.single-evento.elementor-page-90 .site-main .elementor-90 .elementor-widget-heading h1.elementor-heading-title {
		font-size: clamp(1.375rem, 6.5vw, 1.6875rem) !important;
		line-height: 1.12 !important;
	}

	body.single-evento.elementor-page-90 .site-main .elementor-90 .elementor-widget-heading h2.elementor-heading-title {
		font-size: clamp(1.2rem, 5.4vw, 1.4375rem) !important;
		line-height: 1.15 !important;
	}

	body.single-evento.elementor-page-90 .site-main .elementor-90 .elementor-widget-heading h3.elementor-heading-title {
		font-size: clamp(1.0625rem, 4.6vw, 1.25rem) !important;
		line-height: 1.2 !important;
	}

	body.single-evento.elementor-page-90 #intro .elementor-element-f86a631 .elementor-widget-heading h3.elementor-heading-title,
	body.elementor-page-90 #intro .elementor-element-f86a631 .elementor-widget-heading h3.elementor-heading-title {
		font-size: unset !important;
		line-height: unset !important;
		overflow-wrap: normal !important;
		word-break: normal !important;
	}

	body.single-evento.elementor-page-90 .site-main .elementor-90 .elementor-widget-text-editor,
	body.single-evento.elementor-page-90 .site-main .elementor-90 .elementor-widget-text-editor .elementor-widget-container {
		font-size: clamp(0.9375rem, 3.65vw, 1rem);
		line-height: 1.55;
	}

	body.single-evento.elementor-page-90 .site-main .elementor-90 .elementor-widget-stl-flip-box .elementor-flip-box__layer__title {
		font-size: clamp(1rem, 4.2vw, 1.3125rem) !important;
		line-height: 1.2 !important;
	}

	body.single-evento.elementor-page-90 .site-main .elementor-90 .elementor-widget-stl-flip-box .elementor-flip-box__layer__description {
		font-size: clamp(0.875rem, 3.35vw, 0.9375rem) !important;
		line-height: 1.45;
	}

	/* Colonne Elementor (% / split) → usano tutta la larghezza utile */
	body.single-evento.elementor-page-90 .site-main .elementor-90 .e-con.e-child:not(.stl-faculty__card) {
		width: 100% !important;
		max-width: 100% !important;
		--width: 100% !important;
		flex: 1 1 100% !important;
		flex-basis: 100% !important;
		--flex-basis: 100% !important;
		min-width: 0 !important;
		align-self: stretch !important;
	}

	/* Sidebar info: non forzare full-bleed (resta centrata nella colonna) */
	body.single-evento.elementor-page-90 .site-main .elementor-90 .elementor-element-35fbdc9.e-con.e-child,
	body.elementor-page-90 .site-main .elementor-90 .elementor-element-35fbdc9.e-con.e-child {
		width: min(100%, 22.5rem) !important;
		max-width: calc(100% - clamp(1.25rem, 6vw, 2rem)) !important;
		flex: 0 1 auto !important;
		flex-basis: auto !important;
		--flex-basis: auto !important;
		align-self: center !important;
		margin-left: auto !important;
		margin-right: auto !important;
	}

	body.single-evento.elementor-page-90 .site-main .elementor-90 .stl-faculty__grid.e-con.e-flex,
	body.elementor-page-90 .site-main .elementor-90 .stl-faculty__grid.e-con.e-flex {
		--display: grid !important;
		display: grid !important;
		grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
		align-items: stretch !important;
		justify-items: stretch !important;
		gap: 10px !important;
		--stl-faculty-gap: 10px;
		--flex-direction: row !important;
		flex-direction: unset !important;
		flex-wrap: unset !important;
		width: 100% !important;
		max-width: 100% !important;
		--width: 100% !important;
	}

	body.single-evento.elementor-page-90 .site-main .elementor-90 .stl-faculty__grid > .stl-faculty__card.e-con.e-child,
	body.elementor-page-90 .site-main .elementor-90 .stl-faculty__grid > .stl-faculty__card.e-con.e-child {
		width: 100% !important;
		max-width: 100% !important;
		--width: 100% !important;
		flex: none !important;
		flex-basis: auto !important;
		--flex-basis: auto !important;
		align-self: stretch !important;
		box-sizing: border-box !important;
		min-width: 0 !important;
	}

	body.single-evento.elementor-page-90 #faculty.elementor-element-f429287,
	body.single-evento.elementor-page-90 #faculty .elementor-widget-stl-faculty,
	body.single-evento.elementor-page-90 #faculty .elementor-widget-stl-faculty .elementor-widget-container,
	body.elementor-page-90 #faculty.elementor-element-f429287 {
		width: 100% !important;
		max-width: 100% !important;
		--width: 100% !important;
	}

	body.single-evento.elementor-page-90 .site-main .elementor-90 .e-con.e-flex:has(> .e-con.e-child:nth-child(2)):not(.stl-faculty__grid),
	body.single-evento.elementor-page-90 .site-main .elementor-90 .e-con-inner:has(> .e-con.e-child:nth-child(2)):not(:has(> .stl-faculty__card)) {
		flex-direction: column !important;
		flex-wrap: nowrap !important;
		align-items: stretch !important;
		--flex-direction: column !important;
		width: 100% !important;
		max-width: 100% !important;
		--width: 100% !important;
	}

	/* Carousel sessioni: track orizzontale, slide quasi full-bleed */
	body.single-evento.elementor-page-90 .site-main .elementor-widget-n-carousel .e-con.e-flex:has(> .e-con.e-child:nth-child(2)) {
		flex-direction: row !important;
		--flex-direction: row !important;
	}

	body.single-evento.elementor-page-90 .site-main .elementor-widget-n-carousel,
	body.single-evento.elementor-page-90 .site-main .elementor-widget-n-carousel .elementor-widget-container,
	body.single-evento.elementor-page-90 .site-main .elementor-widget-n-carousel .e-n-carousel,
	body.single-evento.elementor-page-90 .site-main .elementor-widget-n-carousel .swiper {
		width: 100% !important;
		max-width: 100% !important;
		--container-widget-width: 100% !important;
		overflow: hidden !important;
	}

	body.single-evento.elementor-page-90 .site-main .elementor-widget-n-carousel:not(.elementor-element-07a30c9) .swiper-slide {
		width: 100% !important;
		max-width: 100% !important;
		box-sizing: border-box;
	}

	body.single-evento.elementor-page-90 .site-main .elementor-widget-n-carousel .swiper-slide > .e-con {
		width: 100% !important;
		max-width: 100% !important;
		--width: 100% !important;
	}

	/* Widget principali a tutta larghezza contenuto */
	body.single-evento.elementor-page-90 .site-main .elementor-90 .elementor-widget:not(.elementor-widget-button) {
		width: 100% !important;
		max-width: 100% !important;
		--container-widget-width: 100% !important;
	}

	body.single-evento.elementor-page-90 .site-main .elementor-element-c8f4a21 > .elementor-widget-image,
	body.elementor-page-90 .site-main .elementor-element-c8f4a21 > .elementor-widget-image {
		flex: 0 1 calc(50% - 0.5rem) !important;
		width: auto !important;
		max-width: calc(50% - 0.5rem) !important;
		min-width: 2.5rem !important;
		--container-widget-width: 100% !important;
		opacity: 1 !important;
		visibility: visible !important;
	}

	body.single-evento.elementor-page-90 .site-main .elementor-element-c8f4a21 > .elementor-widget-image img,
	body.elementor-page-90 .site-main .elementor-element-c8f4a21 > .elementor-widget-image img {
		display: block !important;
		opacity: 1 !important;
		visibility: visible !important;
		max-height: 5rem !important;
	}

	body.single-evento.elementor-page-90 .site-main .elementor-widget-aiop-event-program,
	body.single-evento.elementor-page-90 .site-main .elementor-widget-aiop-event-program .aiop-event-program,
	body.single-evento.elementor-page-90 .site-main .elementor-widget-aiop-content-slider-2,
	body.single-evento.elementor-page-90 .site-main .elementor-widget-stl-faculty,
	body.single-evento.elementor-page-90 .site-main .elementor-widget-stl-tabella-costi {
		width: 100% !important;
		max-width: 100% !important;
	}

	body.single-evento.elementor-page-90 .site-main .stl-faculty,
	body.single-evento.elementor-page-90 .site-main .stl-faculty .stl-faculty__grid.e-con {
		width: 100% !important;
		max-width: 100% !important;
	}

	/*
	 * Barra Biscotto (5fc504a): su congresso mobile usa quasi tutta la larghezza,
	 * senza centering 50% + translate (overflow a destra).
	 */
	body.single-evento.elementor-page-90 .elementor-90 .aiop-biscotto-bar.e-con {
		left: clamp(0.625rem, 3.2vw, 0.75rem) !important;
		right: clamp(0.625rem, 3.2vw, 0.75rem) !important;
		transform: none !important;
		width: auto !important;
		max-width: none !important;
		--width: auto !important;
		box-sizing: border-box;
	}

	body.rtl.single-evento.elementor-page-90 .elementor-90 .aiop-biscotto-bar.e-con {
		transform: none !important;
	}

	body.single-evento.elementor-page-90 .site-main .elementor-widget-aiop-text-marquee,
	body.single-evento.elementor-page-90 .site-main .elementor-widget-aiop-logos-marquee {
		max-width: 100% !important;
		overflow: hidden !important;
	}

	/* #contest — margini desktop (100px) e slider congress overlay */
	body.single-evento.elementor-page-90 #contest,
	body.elementor-page-90 #contest {
		overflow-x: clip;
		padding-left: clamp(1rem, 4vw, 1.5rem) !important;
		padding-right: clamp(1rem, 4vw, 1.5rem) !important;
		box-sizing: border-box;
	}

	body.single-evento.elementor-page-90 #contest .elementor-element-7450ea7,
	body.single-evento.elementor-page-90 #contest .elementor-element-68e5b43,
	body.elementor-page-90 #contest .elementor-element-7450ea7,
	body.elementor-page-90 #contest .elementor-element-68e5b43 {
		margin-left: 0 !important;
		margin-right: 0 !important;
		width: 100% !important;
		max-width: 100% !important;
	}

	/* Slider contest: annulla offset desktop (margin-left 100px) sul container widget */
	body.single-evento.elementor-page-90 #contest .elementor-element-68e5b43 .elementor-widget-container,
	body.elementor-page-90 #contest .elementor-element-68e5b43 .elementor-widget-container,
	body.single-evento.elementor-page-90 #contest .elementor-widget-aiop-content-slider-2 .elementor-widget-container,
	body.elementor-page-90 #contest .elementor-widget-aiop-content-slider-2 .elementor-widget-container {
		margin-left: 0 !important;
		margin-right: 0 !important;
		width: 100% !important;
		max-width: 100% !important;
		box-sizing: border-box !important;
	}

	body.single-evento.elementor-page-90 #contest .elementor-widget-text-editor .elementor-widget-container,
	body.elementor-page-90 #contest .elementor-widget-text-editor .elementor-widget-container {
		max-width: 100%;
		overflow-wrap: anywhere;
		word-break: break-word;
	}

	body.single-evento.elementor-page-90 #contest .aiop-slider-2--congress-overlay,
	body.elementor-page-90 #contest .aiop-slider-2--congress-overlay {
		width: 100%;
		max-width: 100%;
		--card-gap: min(24px, 4vw);
	}

	body.single-evento.elementor-page-90 #contest .aiop-slider-2--congress-overlay .aiop-slider-2__inner-track,
	body.elementor-page-90 #contest .aiop-slider-2--congress-overlay .aiop-slider-2__inner-track {
		padding-inline: 0;
	}

	body.single-evento.elementor-page-90 #contest .elementor-element-95b3ccb .elementor-heading-title,
	body.elementor-page-90 #contest .elementor-element-95b3ccb .elementor-heading-title {
		font-size: clamp(1.5rem, 6.8vw, 2rem) !important;
		line-height: 1.12 !important;
		font-weight: 700 !important;
		margin-bottom: 0.35rem;
	}

	body.single-evento.elementor-page-90 #contest .elementor-element-7450ea7,
	body.single-evento.elementor-page-90 #contest .elementor-element-7450ea7 .elementor-widget-container,
	body.single-evento.elementor-page-90 #contest .elementor-element-7450ea7 [data-offset-key],
	body.elementor-page-90 #contest .elementor-element-7450ea7,
	body.elementor-page-90 #contest .elementor-element-7450ea7 .elementor-widget-container {
		font-size: clamp(0.8125rem, 3.25vw, 0.9375rem) !important;
		line-height: 1.5 !important;
	}

	body.single-evento.elementor-page-90 #contest .aiop-slider-2--congress-overlay,
	body.elementor-page-90 #contest .aiop-slider-2--congress-overlay {
		--card-height: min(72vw, 360px) !important;
		--card-gap: 0px !important;
		width: 100% !important;
		max-width: 100% !important;
	}

	body.single-evento.elementor-page-90 #contest .aiop-slider-2--congress-overlay .aiop-slider-2__track,
	body.elementor-page-90 #contest .aiop-slider-2--congress-overlay .aiop-slider-2__track {
		overflow: hidden !important;
		width: 100% !important;
		max-width: 100% !important;
	}

	body.single-evento.elementor-page-90 #contest .aiop-slider-2--congress-overlay .aiop-slider-2__inner-track,
	body.elementor-page-90 #contest .aiop-slider-2--congress-overlay .aiop-slider-2__inner-track {
		width: 100% !important;
		max-width: 100% !important;
		scroll-snap-type: x mandatory !important;
	}

	body.single-evento.elementor-page-90 #contest .aiop-slider-2--congress-overlay .aiop-card-2,
	body.elementor-page-90 #contest .aiop-slider-2--congress-overlay .aiop-card-2 {
		flex: 0 0 100% !important;
		min-width: 100% !important;
		width: 100% !important;
		max-width: 100% !important;
		height: min(72vw, 360px) !important;
		max-height: min(72vw, 360px) !important;
		padding: 8px;
		overflow: hidden;
		border: 1px solid rgba(23, 16, 15, 0.14);
		border-radius: 12px;
		box-sizing: border-box;
		justify-content: flex-end;
		align-items: flex-end;
		scroll-snap-align: center !important;
		scroll-snap-stop: always !important;
	}

	body.single-evento.elementor-page-90 #contest .aiop-slider-2--congress-overlay .aiop-card-2__bg,
	body.elementor-page-90 #contest .aiop-slider-2--congress-overlay .aiop-card-2__bg {
		position: absolute;
		inset: 8px;
		width: auto;
		height: auto;
		border-radius: 8px;
		background-size: cover;
		background-position: center center;
	}

	body.single-evento.elementor-page-90 #contest .aiop-slider-2--congress-overlay .aiop-card-2__content,
	body.elementor-page-90 #contest .aiop-slider-2--congress-overlay .aiop-card-2__content {
		position: relative;
		z-index: 2;
		width: 100%;
		height: 100%;
		padding: 0;
		align-items: flex-end;
		justify-content: flex-end;
	}

	body.single-evento.elementor-page-90 #contest .aiop-slider-2--congress-overlay .aiop-card-2__panel,
	body.elementor-page-90 #contest .aiop-slider-2--congress-overlay .aiop-card-2__panel {
		width: min(68%, 240px);
		min-width: 0;
		margin: 10px;
		padding: 10px;
		border: 1px solid rgba(23, 16, 15, 0.1);
		border-radius: 4px;
		box-sizing: border-box;
	}

	body.single-evento.elementor-page-90 #contest .aiop-slider-2--congress-overlay .aiop-card-2__title,
	body.elementor-page-90 #contest .aiop-slider-2--congress-overlay .aiop-card-2__title {
		font-size: clamp(1.05rem, 4.5vw, 1.2rem) !important;
		font-weight: 600 !important;
		line-height: 1.2 !important;
		margin-bottom: 0.35rem !important;
	}

	body.single-evento.elementor-page-90 #contest .aiop-slider-2--congress-overlay .aiop-card-2__subtitle,
	body.elementor-page-90 #contest .aiop-slider-2--congress-overlay .aiop-card-2__subtitle {
		font-size: clamp(0.75rem, 3vw, 0.875rem) !important;
		line-height: 1.35 !important;
		margin-bottom: 0.5rem !important;
		display: -webkit-box;
		-webkit-box-orient: vertical;
		-webkit-line-clamp: 3;
		overflow: hidden;
	}

	/* Pagina Contest landing (10612) — gutter e padding verticali mobile */
	body.elementor-page-10612 .site-main,
	body.elementor-page-10612 .site-main .elementor.elementor-10612 {
		overflow-x: clip;
		max-width: 100%;
		width: 100%;
		box-sizing: border-box;
	}

	body.elementor-page-10612 .site-main .elementor-10612 > .e-con.e-parent {
		--padding-left: clamp(0.625rem, 3.2vw, 0.75rem) !important;
		--padding-right: clamp(0.625rem, 3.2vw, 0.75rem) !important;
		--padding-top: clamp(0.625rem, 2.8vw, 0.875rem) !important;
		--padding-bottom: clamp(0.625rem, 2.8vw, 0.875rem) !important;
		padding-left: clamp(0.625rem, 3.2vw, 0.75rem) !important;
		padding-right: clamp(0.625rem, 3.2vw, 0.75rem) !important;
		padding-top: clamp(0.625rem, 2.8vw, 0.875rem) !important;
		padding-bottom: clamp(0.625rem, 2.8vw, 0.875rem) !important;
	}

	/* Hero Contest — copy centrata in altezza nel box */
	body.elementor-page-10612 #hero.aiop-contest-hero.e-con {
		--justify-content: center !important;
		justify-content: center !important;
		align-items: flex-start !important;
		align-content: center !important;
	}

	/* Vigolo (6888d5f): box premio + banner AVA sopra il blocco testi «Premio tesi di laurea» */
	body.elementor-page-10612 .elementor-element-6888d5f {
		display: flex !important;
		flex-direction: column !important;
	}

	body.elementor-page-10612 .elementor-element-6888d5f > .aiop-contest-prize-box {
		order: 1 !important;
	}

	body.elementor-page-10612 .elementor-element-6888d5f > .aiop-contest-award__text {
		order: 2 !important;
	}

	/* Hall of Fame: widget 700px con footer 20% vuoto su mobile */
	body.elementor-page-10612 .elementor-widget-aiop-contest-winners,
	body.elementor-page-10612 .elementor-widget-aiop-contest-winners > .elementor-widget-container,
	body.elementor-page-10612 .elementor-widget-aiop-contest-winners .aiop-contest-winners {
		height: min(480px, 58vh) !important;
		max-height: min(480px, 58vh) !important;
		min-height: 0 !important;
	}

	body.elementor-page-10612 .aiop-contest-winners main {
		display: flex !important;
		flex-direction: column !important;
		height: 100% !important;
		min-height: 0 !important;
	}

	body.elementor-page-10612 .aiop-contest-winners main > div:first-child {
		flex: 1 1 auto !important;
		height: auto !important;
		min-height: 0 !important;
	}

	body.elementor-page-10612 .aiop-contest-winners main > footer {
		display: none !important;
		height: 0 !important;
		min-height: 0 !important;
		padding: 0 !important;
		margin: 0 !important;
		flex: 0 0 auto !important;
	}

	/* Hall of Fame — frecce più piccole, meno ingombro in alto */
	body.elementor-page-10612 .aiop-contest-winners button[aria-label^="Scorri"] {
		padding: 0.4rem !important;
		top: 0.5rem !important;
	}

	body.elementor-page-10612 .aiop-contest-winners button[aria-label^="Scorri"] svg {
		width: 1.125rem !important;
		height: 1.125rem !important;
	}

	body.elementor-page-10612 .aiop-contest-winners .aiop-cw-icons-fullname {
		font-size: clamp(1.3125rem, 5.8vw, 1.625rem) !important;
		font-weight: 400 !important;
		line-height: 1.15 !important;
	}

	body.elementor-page-10612 .aiop-contest-winners .aiop-cw-icons-description,
	body.elementor-page-10612 .aiop-contest-winners .aiop-cw-icons-description p {
		font-size: clamp(0.875rem, 3.8vw, 1rem) !important;
		line-height: 1.35 !important;
		text-align: center !important;
	}

	body.elementor-page-10612 .site-main .elementor-10612 .e-con:not(.e-parent) {
		--padding-left: 0px !important;
		--padding-right: 0px !important;
		padding-left: 0 !important;
		padding-right: 0 !important;
	}

	/* Barra anchor grigia (biscotto): nascosta su mobile pagina evento */
	body.single-evento .aiop-biscotto-bar.e-con {
		display: none !important;
	}

	body.single-evento:has(.aiop-biscotto-bar) .site-main {
		padding-bottom: 0 !important;
	}

	/* Barra anchor contest (biscotto nav): nascosta su mobile */
	body.elementor-page-10612 .aiop-biscotto-bar.e-con {
		display: none !important;
		visibility: hidden !important;
		pointer-events: none !important;
	}

	body.elementor-page-10612:has(.aiop-biscotto-bar) .site-main {
		padding-bottom: 0 !important;
	}

	/*
	 * Sezione Costi (b5331e7): fallback scroll orizzontale se JS disabilitato.
	 * Con congresso-costi-mobile.js attivo (.aiop-costi-mobile-active) la griglia
	 * desktop è nascosta e si usano le schede in congresso-costi-mobile.css.
	 */
	body.single-evento.elementor-page-90 .site-main .elementor-90 .elementor-element-b5331e7,
	body.elementor-page-90 .site-main .elementor-90 .elementor-element-b5331e7 {
		overflow-x: clip;
		max-width: 100%;
	}

	body.single-evento.elementor-page-90 .site-main .elementor-90 .elementor-element-b5331e7 .elementor-element-eafaeb4,
	body.single-evento.elementor-page-90 .site-main .elementor-90 .elementor-element-b5331e7:not(.aiop-costi-mobile-active) .elementor-element-f350f1d,
	body.elementor-page-90 .site-main .elementor-90 .elementor-element-b5331e7 .elementor-element-eafaeb4,
	body.elementor-page-90 .site-main .elementor-90 .elementor-element-b5331e7:not(.aiop-costi-mobile-active) .elementor-element-f350f1d {
		overflow-x: auto !important;
		-webkit-overflow-scrolling: touch;
		max-width: 100% !important;
		width: 100% !important;
		scrollbar-width: thin;
	}

	body.single-evento.elementor-page-90 .site-main .elementor-90 .elementor-element-b5331e7:not(.aiop-costi-mobile-active) .elementor-element-f350f1d,
	body.elementor-page-90 .site-main .elementor-90 .elementor-element-b5331e7:not(.aiop-costi-mobile-active) .elementor-element-f350f1d {
		flex-direction: row !important;
		flex-wrap: nowrap !important;
		align-items: stretch !important;
		--flex-direction: row !important;
		min-width: 100% !important;
		width: max-content !important;
	}

	body.single-evento.elementor-page-90 .site-main .elementor-90 .elementor-element-b5331e7:not(.aiop-costi-mobile-active) .elementor-element-f350f1d > .e-con.e-child,
	body.elementor-page-90 .site-main .elementor-90 .elementor-element-b5331e7:not(.aiop-costi-mobile-active) .elementor-element-f350f1d > .e-con.e-child {
		flex: 0 0 36rem !important;
		min-width: 36rem !important;
		width: 36rem !important;
		max-width: none !important;
		--width: 36rem !important;
		--flex-basis: 36rem !important;
	}

	body.single-evento.elementor-page-90 .site-main .elementor-90 .elementor-element-b5331e7 .elementor-element-eafaeb4 .e-con.e-child:not(.elementor-element-eaae870),
	body.single-evento.elementor-page-90 .site-main .elementor-90 .elementor-element-b5331e7:not(.aiop-costi-mobile-active) .elementor-element-f350f1d .e-con.e-child,
	body.elementor-page-90 .site-main .elementor-90 .elementor-element-b5331e7 .elementor-element-eafaeb4 .e-con.e-child:not(.elementor-element-eaae870),
	body.elementor-page-90 .site-main .elementor-90 .elementor-element-b5331e7:not(.aiop-costi-mobile-active) .elementor-element-f350f1d .e-con.e-child {
		width: auto !important;
		max-width: none !important;
		flex: 1 1 auto !important;
		flex-basis: auto !important;
		--width: auto !important;
		--flex-basis: auto !important;
		min-width: 0 !important;
		align-self: stretch !important;
	}

	body.single-evento.elementor-page-90 .site-main .elementor-90 .elementor-element-b5331e7 .elementor-element-eafaeb4 > .elementor-element-eaae870,
	body.elementor-page-90 .site-main .elementor-90 .elementor-element-b5331e7 .elementor-element-eafaeb4 > .elementor-element-eaae870 {
		flex: 0 0 auto !important;
		flex-shrink: 0 !important;
		min-width: 36rem !important;
		width: max-content !important;
		max-width: none !important;
		--width: auto !important;
		--flex-basis: auto !important;
		align-self: stretch !important;
	}

	/* Righe tabella: row esplicito (revert non basta con regole globali pagina 90) */
	body.single-evento.elementor-page-90 .site-main .elementor-90 .elementor-element-b5331e7 .e-con.e-flex:has(> .e-con.e-child:nth-child(2)):not(
			.elementor-element-eaae870,
			.elementor-element-f350f1d,
			.elementor-element-801351e,
			.elementor-element-8b80932,
			.elementor-element-ba343cc,
			.elementor-element-96edb03,
			.elementor-element-dc14c43,
			.elementor-element-58203e3,
			.elementor-element-774f789,
			.elementor-element-3d4d270,
			.elementor-element-69cf45a,
			.elementor-element-9cf0271,
			.elementor-element-e98020f,
			.elementor-element-7847a67
		),
	body.elementor-page-90 .site-main .elementor-90 .elementor-element-b5331e7 .e-con.e-flex:has(> .e-con.e-child:nth-child(2)):not(
			.elementor-element-eaae870,
			.elementor-element-f350f1d,
			.elementor-element-801351e,
			.elementor-element-8b80932,
			.elementor-element-ba343cc,
			.elementor-element-96edb03,
			.elementor-element-dc14c43,
			.elementor-element-58203e3,
			.elementor-element-774f789,
			.elementor-element-3d4d270,
			.elementor-element-69cf45a,
			.elementor-element-9cf0271,
			.elementor-element-e98020f,
			.elementor-element-7847a67
		) {
		flex-direction: row !important;
		flex-wrap: nowrap !important;
		align-items: stretch !important;
		--flex-direction: row !important;
	}

	/* Blocco tabella principale: intestazione + corpo in colonna */
	body.single-evento.elementor-page-90 .site-main .elementor-90 .elementor-element-b5331e7 .elementor-element-eaae870,
	body.elementor-page-90 .site-main .elementor-90 .elementor-element-b5331e7 .elementor-element-eaae870 {
		flex-direction: column !important;
		--flex-direction: column !important;
	}

	body.single-evento.elementor-page-90 .site-main .elementor-90 .elementor-element-b5331e7 .elementor-element-eafaeb4 .elementor-widget-heading .elementor-heading-title,
	body.single-evento.elementor-page-90 .site-main .elementor-90 .elementor-element-b5331e7 .elementor-element-f350f1d .elementor-widget-heading .elementor-heading-title,
	body.elementor-page-90 .site-main .elementor-90 .elementor-element-b5331e7 .elementor-element-eafaeb4 .elementor-widget-heading .elementor-heading-title,
	body.elementor-page-90 .site-main .elementor-90 .elementor-element-b5331e7 .elementor-element-f350f1d .elementor-widget-heading .elementor-heading-title {
		font-size: clamp(0.625rem, 2.35vw, 0.8125rem) !important;
		line-height: 1.2 !important;
		hyphens: auto;
		overflow-wrap: anywhere;
	}

	body.single-evento.elementor-page-90 .elementor-element-b5331e7 .elementor-element-c53ed9d .elementor-heading-title,
	body.elementor-page-90 .elementor-element-b5331e7 .elementor-element-c53ed9d .elementor-heading-title {
		text-align: center !important;
	}

	body.single-evento.elementor-page-90 .site-main .elementor-widget-stl-flip-box .elementor-flip-box {
		min-height: min(380px, 95vw);
	}

	/* Header congresso — titolo evento (h1) centrato */
	body.single-evento.elementor-page-90 #header .elementor-element-aec0438,
	body.elementor-page-90 #header .elementor-element-aec0438 {
		width: 100% !important;
		max-width: 100% !important;
		margin-left: 0 !important;
		margin-right: 0 !important;
		text-align: center !important;
		--container-widget-width: 100% !important;
	}

	body.single-evento.elementor-page-90 #header .elementor-element-aec0438 .elementor-heading-title,
	body.elementor-page-90 #header .elementor-element-aec0438 .elementor-heading-title {
		text-align: center !important;
		width: 100% !important;
	}

	/* Header congresso — sottotitolo sessione (colonna Sx) centrato */
	body.single-evento.elementor-page-90 #header #header-columns .elementor-element-5ee41f1,
	body.elementor-page-90 #header #header-columns .elementor-element-5ee41f1 {
		align-items: center !important;
		--align-items: center !important;
	}

	body.single-evento.elementor-page-90 #header .elementor-element-6cdf745,
	body.elementor-page-90 #header .elementor-element-6cdf745 {
		width: 100% !important;
		max-width: 100% !important;
		margin-inline: 0 !important;
		text-align: center !important;
		--container-widget-width: 100% !important;
	}

	body.single-evento.elementor-page-90 #header .elementor-element-6cdf745 .elementor-heading-title,
	body.elementor-page-90 #header .elementor-element-6cdf745 .elementor-heading-title {
		text-align: center !important;
		width: 100% !important;
	}

	/* Intro hero (#intro) — logo B26 ridotto e centrato, titoli centrati */
	body.single-evento.elementor-page-90 #intro.elementor-element-cbf2ee1,
	body.elementor-page-90 #intro.elementor-element-cbf2ee1 {
		align-items: center !important;
	}

	body.single-evento.elementor-page-90 #intro .elementor-element-27a4b73,
	body.elementor-page-90 #intro .elementor-element-27a4b73 {
		justify-content: center !important;
		align-items: center !important;
	}

	body.single-evento.elementor-page-90 #intro .elementor-element-4f5d5fa,
	body.elementor-page-90 #intro .elementor-element-4f5d5fa {
		text-align: center !important;
		width: auto !important;
		max-width: 100% !important;
		margin-inline: auto !important;
		--container-widget-width: auto !important;
		opacity: 1 !important;
		visibility: visible !important;
	}

	body.single-evento.elementor-page-90 #intro .elementor-element-4f5d5fa img,
	body.elementor-page-90 #intro .elementor-element-4f5d5fa img {
		display: block !important;
		width: min(11.25rem, 52vw) !important;
		max-width: 11.25rem !important;
		height: auto !important;
		margin-inline: auto !important;
		opacity: 1 !important;
		visibility: visible !important;
	}

	body.single-evento.elementor-page-90 #intro .elementor-element-041b713 {
		flex-direction: column !important;
		align-items: center !important;
	}

	body.single-evento.elementor-page-90 #intro .elementor-element-6114610 {
		padding-left: 0 !important;
		padding-right: 0 !important;
		align-items: center !important;
		justify-content: center !important;
		--padding-left: 0px !important;
		--padding-right: 0px !important;
	}

	body.single-evento.elementor-page-90 #intro .elementor-element-6114610 .elementor-widget-heading,
	body.single-evento.elementor-page-90 #intro .elementor-element-6114610 .elementor-heading-title {
		text-align: center !important;
		width: 100% !important;
	}

	/* «AIOP incontra SIdP» — più grande del cap h3 mobile generico del congresso */
	body.single-evento.elementor-page-90 #intro .elementor-element-77327a1,
	body.elementor-page-90 #intro .elementor-element-77327a1 {
		margin-left: 0 !important;
	}

	body.single-evento.elementor-page-90 #intro .elementor-element-77327a1 .elementor-heading-title,
	body.elementor-page-90 #intro .elementor-element-77327a1 .elementor-heading-title {
		font-size: clamp(1.4rem, 5.8vw, 1.85rem) !important;
		line-height: 1.12 !important;
		font-weight: 600 !important;
	}

	body.single-evento.elementor-page-90 #intro .elementor-element-f86a631 {
		flex-direction: column !important;
		align-items: center !important;
		justify-content: center !important;
		width: 100% !important;
		--flex-direction: column !important;
	}

	body.single-evento.elementor-page-90 #intro .elementor-element-f86a631 .elementor-widget-spacer {
		display: none !important;
	}

	body.single-evento.elementor-page-90 #intro .elementor-element-f86a631 .elementor-widget-heading,
	body.single-evento.elementor-page-90 #intro .elementor-element-f86a631 .elementor-heading-title {
		text-align: center !important;
		width: 100% !important;
	}

	/* Intro — riga sede (Bologna · Palazzo): tipografia Elementor, niente spezzatura parole */
	body.single-evento.elementor-page-90 #intro .elementor-element-f86a631,
	body.elementor-page-90 #intro .elementor-element-f86a631 {
		flex-wrap: wrap !important;
		justify-content: center !important;
		align-items: baseline !important;
		row-gap: 0.2em;
		column-gap: 0.35em;
	}

	body.single-evento.elementor-page-90 #intro .elementor-element-f86a631 > .elementor-widget-heading,
	body.elementor-page-90 #intro .elementor-element-f86a631 > .elementor-widget-heading {
		width: auto !important;
		max-width: 100%;
		flex: 0 1 auto !important;
	}

	body.single-evento.elementor-page-90 #intro .elementor-element-f86a631 .elementor-heading-title,
	body.elementor-page-90 #intro .elementor-element-f86a631 .elementor-heading-title {
		overflow-wrap: normal !important;
		word-break: normal !important;
		hyphens: manual;
		font-size: unset !important;
		line-height: unset !important;
	}

	/* Riquadri evento (#aiop) — card compatte, testi in alto (anche anteprima Elementor) */
	body.single-evento.elementor-page-90 #aiop .elementor-element-836d35c,
	body.single-evento.elementor-page-90 #aiop .elementor-element-fb5eebb,
	body.elementor-page-90 #aiop .elementor-element-836d35c,
	body.elementor-page-90 #aiop .elementor-element-fb5eebb {
		min-height: 0 !important;
		height: auto !important;
		--min-height: 0px !important;
		justify-content: flex-start !important;
		align-items: flex-start !important;
		align-content: flex-start !important;
		--justify-content: flex-start !important;
		padding-top: 0.625rem !important;
		padding-bottom: 0.875rem !important;
		--padding-top: 0.625rem !important;
		--padding-bottom: 0.875rem !important;
	}

	body.single-evento.elementor-page-90 #aiop .elementor-element-86a6d25,
	body.single-evento.elementor-page-90 #aiop .elementor-element-b4721ba,
	body.elementor-page-90 #aiop .elementor-element-86a6d25,
	body.elementor-page-90 #aiop .elementor-element-b4721ba {
		min-height: 0 !important;
		height: auto !important;
		--min-height: 0px !important;
		justify-content: flex-start !important;
		--justify-content: flex-start !important;
	}

	body.single-evento.elementor-page-90 #aiop .elementor-element-a2560f6,
	body.single-evento.elementor-page-90 #aiop .elementor-element-74f5b4f,
	body.elementor-page-90 #aiop .elementor-element-a2560f6,
	body.elementor-page-90 #aiop .elementor-element-74f5b4f,
	body.single-evento.elementor-page-90 #aiop .elementor-element-836d35c > .elementor-widget-spacer:first-child,
	body.single-evento.elementor-page-90 #aiop .elementor-element-fb5eebb > .elementor-widget-spacer:first-child,
	body.elementor-page-90 #aiop .elementor-element-836d35c > .elementor-widget-spacer:first-child,
	body.elementor-page-90 #aiop .elementor-element-fb5eebb > .elementor-widget-spacer:first-child {
		display: none !important;
		height: 0 !important;
		min-height: 0 !important;
		margin: 0 !important;
		padding: 0 !important;
	}

	body.single-evento.elementor-page-90 #aiop .elementor-element-836d35c > .elementor-widget-spacer:first-child .elementor-spacer-inner,
	body.single-evento.elementor-page-90 #aiop .elementor-element-fb5eebb > .elementor-widget-spacer:first-child .elementor-spacer-inner,
	body.elementor-page-90 #aiop .elementor-element-836d35c > .elementor-widget-spacer:first-child .elementor-spacer-inner,
	body.elementor-page-90 #aiop .elementor-element-fb5eebb > .elementor-widget-spacer:first-child .elementor-spacer-inner {
		height: 0 !important;
	}

	body.single-evento.elementor-page-90 #aiop .elementor-element-836d35c .elementor-widget-heading,
	body.single-evento.elementor-page-90 #aiop .elementor-element-fb5eebb .elementor-widget-heading,
	body.elementor-page-90 #aiop .elementor-element-836d35c .elementor-widget-heading,
	body.elementor-page-90 #aiop .elementor-element-fb5eebb .elementor-widget-heading {
		margin-block: 0.1rem !important;
	}

	body.single-evento.elementor-page-90 #aiop .elementor-element-836d35c > .elementor-widget-heading:first-of-type,
	body.single-evento.elementor-page-90 #aiop .elementor-element-fb5eebb > .elementor-widget-heading:first-of-type,
	body.elementor-page-90 #aiop .elementor-element-836d35c > .elementor-widget-heading:first-of-type,
	body.elementor-page-90 #aiop .elementor-element-fb5eebb > .elementor-widget-heading:first-of-type {
		margin-top: 0 !important;
	}
}

/* —— Pass globale tipografia / padding card (tablet + mobile, desktop invariato) —— */
@media (max-width: 1024px) {
	body:not(.elementor-editor-active)
		:is(.site-main, .elementor-location-footer, .elementor[data-elementor-type="wp-page"])
		.elementor-widget-text-editor
		.elementor-widget-container {
		font-size: clamp(0.9375rem, 2.65vw, 1.0625rem);
		line-height: 1.55;
	}

	body:not(.elementor-editor-active)
		:is(.site-main, .elementor-location-footer, .elementor[data-elementor-type="wp-page"])
		.elementor-widget-text-editor
		.elementor-widget-container
		:is(p, li) {
		font-size: inherit;
		max-width: 65ch;
	}

	body:not(.elementor-editor-active)
		:is(.site-main, .elementor[data-elementor-type="wp-page"])
		.elementor-widget-icon-box
		.elementor-icon-box-content {
		padding-inline: clamp(12px, 3.5vw, 20px);
	}

	body:not(.elementor-editor-active)
		:is(.site-main, .elementor[data-elementor-type="wp-page"])
		.elementor-widget-icon-box
		.elementor-icon-box-title {
		font-size: clamp(1rem, 3.2vw, 1.25rem) !important;
		line-height: 1.25 !important;
	}

	body:not(.elementor-editor-active)
		:is(.site-main, .elementor[data-elementor-type="wp-page"])
		.elementor-widget-icon-box
		.elementor-icon-box-description {
		font-size: clamp(0.875rem, 2.6vw, 1rem) !important;
		line-height: 1.45 !important;
	}

	/* Box testo Elementor: respiro minimo senza toccare sezioni full-bleed */
	body:not(.elementor-editor-active)
		:is(.site-main, .elementor[data-elementor-type="wp-page"])
		.elementor-widget-icon-box
		> .elementor-widget-container,
	body:not(.elementor-editor-active)
		:is(.site-main, .elementor[data-elementor-type="wp-page"])
		.elementor-widget-image-box
		> .elementor-widget-container {
		padding: clamp(10px, 2.5vw, 16px);
		box-sizing: border-box;
	}
}

@media (max-width: 767px) {
	body:not(.elementor-editor-active)
		:is(.site-main, .elementor-location-footer, .elementor[data-elementor-type="wp-page"])
		.elementor-widget-text-editor
		.elementor-widget-container
		:is(p, li) {
		font-size: clamp(0.9375rem, 3.5vw, 1.0625rem) !important;
	}

	body:not(.elementor-editor-active)
		.aiop-card__inner,
		body:not(.elementor-editor-active) .aiop-coll-card,
		body:not(.elementor-editor-active) .elementor-widget-aiop-content-card .aiop-card {
		padding: clamp(14px, 4vw, 20px) !important;
	}
}

/* Congresso XLV (90) — sezioni workshop, ludiche, corsi paralleli, faculty, costi */
@media (max-width: 767px) {
	/*
	 * Workshop — Nested Carousel (07a30c9): padding 50px per frecce desktop
	 * restringe la track; gap 100px resta in Swiper (sync via JS, non margin CSS).
	 */
	body.single-evento.elementor-page-90 #workshop .elementor-element-07a30c9.elementor-widget-n-carousel,
	body.elementor-page-90 #workshop .elementor-element-07a30c9.elementor-widget-n-carousel {
		--padding-left: 0px !important;
		--padding-right: 0px !important;
		padding-left: clamp(0.25rem, 1.5vw, 0.5rem) !important;
		padding-right: clamp(0.25rem, 1.5vw, 0.5rem) !important;
		box-sizing: border-box !important;
	}

	body.single-evento.elementor-page-90 #workshop .elementor-element-07a30c9 .e-n-carousel,
	body.single-evento.elementor-page-90 #workshop .elementor-element-07a30c9 .swiper,
	body.elementor-page-90 #workshop .elementor-element-07a30c9 .e-n-carousel,
	body.elementor-page-90 #workshop .elementor-element-07a30c9 .swiper {
		width: 100% !important;
		max-width: 100% !important;
	}
}

/*
 * Workshop — card carousel STL FlipBox (overlay-expand): tutti i viewport.
 * Metà alta immagine, metà bassa testo; niente espansione hover da stl-flipbox.css.
 */
	body.single-evento.elementor-page-90 #workshop .elementor-widget-stl-flip-box .elementor-flip-box,
	body.elementor-page-90 #workshop .elementor-widget-stl-flip-box .elementor-flip-box,
	body.single-evento.elementor-page-90 #workshop .elementor-widget-stl-flip-box .elementor-flip-box__front,
	body.elementor-page-90 #workshop .elementor-widget-stl-flip-box .elementor-flip-box__front,
	body.single-evento.elementor-page-90 #workshop .elementor-widget-stl-flip-box .elementor-flip-box__layer__overlay,
	body.elementor-page-90 #workshop .elementor-widget-stl-flip-box .elementor-flip-box__layer__overlay,
	body.single-evento.elementor-page-90 #workshop .elementor-widget-stl-flip-box .stl-flipbox__text-group,
	body.elementor-page-90 #workshop .elementor-widget-stl-flip-box .stl-flipbox__text-group {
		border-radius: 0 0 14px 0 !important;
	}

	body.single-evento.elementor-page-90 #workshop .elementor-widget-stl-flip-box .elementor-flip-box__button,
	body.elementor-page-90 #workshop .elementor-widget-stl-flip-box .elementor-flip-box__button {
		border-radius: 0 0 14px 0 !important;
	}

	body.single-evento.elementor-page-90 #workshop .elementor-widget-stl-flip-box .elementor-flip-box.stl-flipbox--no-flip .elementor-flip-box__front.stl-flipbox__front--overlay-expand,
	body.elementor-page-90 #workshop .elementor-widget-stl-flip-box .elementor-flip-box.stl-flipbox--no-flip .elementor-flip-box__front.stl-flipbox__front--overlay-expand {
		display: grid !important;
		grid-template-rows: minmax(0, 2fr) minmax(0, 3fr) !important;
		grid-template-columns: minmax(0, 1fr) !important;
		align-content: stretch !important;
		min-height: min(520px, 96vw) !important;
		height: 100% !important;
		background-size: cover !important;
		background-position: center top !important;
		overflow: hidden !important;
	}

	body.single-evento.elementor-page-90 #workshop .elementor-widget-stl-flip-box .elementor-flip-box.stl-flipbox--no-flip .elementor-flip-box__front.stl-flipbox__front--overlay-expand::before,
	body.elementor-page-90 #workshop .elementor-widget-stl-flip-box .elementor-flip-box.stl-flipbox--no-flip .elementor-flip-box__front.stl-flipbox__front--overlay-expand::before {
		content: '' !important;
		display: block !important;
		grid-row: 1 !important;
		grid-column: 1 !important;
		width: 100% !important;
		min-height: 0 !important;
		pointer-events: none !important;
	}

	body.single-evento.elementor-page-90 #workshop .elementor-widget-stl-flip-box .elementor-flip-box.stl-flipbox--no-flip .elementor-flip-box__layer__overlay,
	body.elementor-page-90 #workshop .elementor-widget-stl-flip-box .elementor-flip-box.stl-flipbox--no-flip .elementor-flip-box__layer__overlay {
		position: relative !important;
		grid-row: 2 !important;
		grid-column: 1 !important;
		width: 100% !important;
		max-width: 100% !important;
		height: 100% !important;
		min-height: 100% !important;
		max-height: none !important;
		margin: 0 !important;
		padding: 0 !important;
		inset: auto !important;
		transform: none !important;
		display: flex !important;
		flex-direction: column !important;
		justify-content: stretch !important;
		align-items: stretch !important;
		align-self: stretch !important;
		overflow: hidden !important;
		box-sizing: border-box !important;
	}

	body.single-evento.elementor-page-90 #workshop .elementor-widget-stl-flip-box .elementor-flip-box.stl-flipbox--no-flip .elementor-flip-box__layer__inner,
	body.elementor-page-90 #workshop .elementor-widget-stl-flip-box .elementor-flip-box.stl-flipbox--no-flip .elementor-flip-box__layer__inner {
		flex: 1 1 auto !important;
		display: flex !important;
		flex-direction: column !important;
		align-items: stretch !important;
		width: 100% !important;
		max-width: 100% !important;
		min-height: 100% !important;
		height: 100% !important;
		padding: 0 !important;
		box-sizing: border-box !important;
	}

	body.single-evento.elementor-page-90 #workshop .elementor-widget-stl-flip-box .elementor-flip-box.stl-flipbox--no-flip .stl-flipbox__overlay-expand,
	body.elementor-page-90 #workshop .elementor-widget-stl-flip-box .elementor-flip-box.stl-flipbox--no-flip .stl-flipbox__overlay-expand {
		padding: clamp(12px, 3.5vw, 16px) !important;
		position: relative !important;
		top: auto !important;
		right: auto !important;
		bottom: auto !important;
		left: auto !important;
		transform: none !important;
		width: 100% !important;
		max-width: 100% !important;
		height: 100% !important;
		min-height: 100% !important;
		max-height: none !important;
		margin: 0 !important;
		align-self: stretch !important;
		flex: 1 1 100% !important;
		overflow-y: visible !important;
		overflow-x: hidden !important;
		box-sizing: border-box !important;
	}

	body.single-evento.elementor-page-90 #workshop .elementor-widget-stl-flip-box .elementor-flip-box.stl-flipbox--no-flip:hover .stl-flipbox__overlay-expand,
	body.single-evento.elementor-page-90 #workshop .elementor-widget-stl-flip-box .elementor-flip-box.stl-flipbox--no-flip:focus-within .stl-flipbox__overlay-expand,
	body.elementor-page-90 #workshop .elementor-widget-stl-flip-box .elementor-flip-box.stl-flipbox--no-flip:hover .stl-flipbox__overlay-expand,
	body.elementor-page-90 #workshop .elementor-widget-stl-flip-box .elementor-flip-box.stl-flipbox--no-flip:focus-within .stl-flipbox__overlay-expand,
	body.single-evento.elementor-page-90 #workshop .elementor-widget-stl-flip-box .elementor-flip-box:hover .elementor-flip-box__front.stl-flipbox__front--overlay-expand .stl-flipbox__overlay-expand,
	body.single-evento.elementor-page-90 #workshop .elementor-widget-stl-flip-box .elementor-flip-box:focus-within .elementor-flip-box__front.stl-flipbox__front--overlay-expand .stl-flipbox__overlay-expand,
	body.elementor-page-90 #workshop .elementor-widget-stl-flip-box .elementor-flip-box:hover .elementor-flip-box__front.stl-flipbox__front--overlay-expand .stl-flipbox__overlay-expand,
	body.elementor-page-90 #workshop .elementor-widget-stl-flip-box .elementor-flip-box:focus-within .elementor-flip-box__front.stl-flipbox__front--overlay-expand .stl-flipbox__overlay-expand {
		top: auto !important;
		right: auto !important;
		bottom: auto !important;
		left: auto !important;
		width: 100% !important;
		height: 100% !important;
		max-height: 100% !important;
		transform: none !important;
		background-image: none !important;
		-webkit-backdrop-filter: none !important;
		backdrop-filter: none !important;
	}

	/* Workshop aziendali — bordo card + CTA distanziata dal testo */
	body.single-evento.elementor-page-90 .elementor-element-8c11c0c .elementor-widget-stl-flip-box .elementor-flip-box,
	body.elementor-page-90 .elementor-element-8c11c0c .elementor-widget-stl-flip-box .elementor-flip-box,
	body.single-evento.elementor-page-90 #workshop .elementor-widget-stl-flip-box .elementor-flip-box,
	body.elementor-page-90 #workshop .elementor-widget-stl-flip-box .elementor-flip-box {
		border: 2px solid rgba(23, 16, 15, 0.42) !important;
		border-radius: 0 0 14px 0 !important;
		box-shadow: 0 2px 10px rgba(23, 16, 15, 0.14) !important;
		overflow: hidden !important;
		box-sizing: border-box !important;
	}

	body.single-evento.elementor-page-90 .elementor-element-8c11c0c .elementor-widget-stl-flip-box .elementor-flip-box__layer__inner,
	body.elementor-page-90 .elementor-element-8c11c0c .elementor-widget-stl-flip-box .elementor-flip-box__layer__inner {
		display: flex;
		flex-direction: column;
		align-items: stretch;
		min-height: 100%;
		box-sizing: border-box;
		padding: clamp(14px, 4vw, 18px) !important;
	}

	body.single-evento.elementor-page-90 #workshop .elementor-widget-stl-flip-box .stl-flipbox__text-group,
	body.elementor-page-90 #workshop .elementor-widget-stl-flip-box .stl-flipbox__text-group,
	body.single-evento.elementor-page-90 .elementor-element-8c11c0c .elementor-widget-stl-flip-box .stl-flipbox__text-group {
		flex: 1 1 auto;
		margin-bottom: 0.75rem;
	}

	body.single-evento.elementor-page-90 #workshop .elementor-widget-stl-flip-box .stl-flipbox__button--corner,
	body.single-evento.elementor-page-90 #workshop .elementor-widget-stl-flip-box .stl-flipbox__button--corner-bottom-left,
	body.single-evento.elementor-page-90 #workshop .elementor-widget-stl-flip-box .stl-flipbox__button--corner-bottom-right,
	body.elementor-page-90 #workshop .elementor-widget-stl-flip-box .stl-flipbox__button--corner,
	body.elementor-page-90 #workshop .elementor-widget-stl-flip-box .stl-flipbox__button--corner-bottom-left,
	body.elementor-page-90 #workshop .elementor-widget-stl-flip-box .stl-flipbox__button--corner-bottom-right,
	body.single-evento.elementor-page-90 .elementor-element-8c11c0c .elementor-widget-stl-flip-box .stl-flipbox__button--corner,
	body.single-evento.elementor-page-90 .elementor-element-8c11c0c .elementor-widget-stl-flip-box .stl-flipbox__button--corner-bottom-left,
	body.single-evento.elementor-page-90 .elementor-element-8c11c0c .elementor-widget-stl-flip-box .stl-flipbox__button--corner-bottom-right {
		position: relative !important;
		left: auto !important;
		right: auto !important;
		top: auto !important;
		bottom: auto !important;
		margin-top: auto !important;
		align-self: center;
		min-height: 44px;
	}

@media (min-width: 768px) {
	body.single-evento.elementor-page-90 #workshop .elementor-element-07a30c9.elementor-widget-n-carousel,
	body.elementor-page-90 #workshop .elementor-element-07a30c9.elementor-widget-n-carousel {
		--padding-left: 0px !important;
		--padding-right: 0px !important;
		padding-left: clamp(2rem, 5vw, 3.5rem) !important;
		padding-right: clamp(2rem, 5vw, 3.5rem) !important;
	}

	/* Larghezza slide: la calcola Swiper (4 per view); il contenuto riempie la cella */
	body.single-evento.elementor-page-90 #workshop .elementor-element-07a30c9 .swiper-slide,
	body.elementor-page-90 #workshop .elementor-element-07a30c9 .swiper-slide {
		box-sizing: border-box !important;
		height: auto !important;
	}

	body.single-evento.elementor-page-90 #workshop .elementor-element-07a30c9 .swiper-slide > .e-con,
	body.elementor-page-90 #workshop .elementor-element-07a30c9 .swiper-slide > .e-con {
		width: 100% !important;
		max-width: 100% !important;
		min-width: 0 !important;
		margin-inline: 0 !important;
		box-sizing: border-box !important;
	}

	body.single-evento.elementor-page-90 #workshop .elementor-widget-stl-flip-box,
	body.elementor-page-90 #workshop .elementor-widget-stl-flip-box {
		width: 100% !important;
		max-width: 100% !important;
	}

	body.single-evento.elementor-page-90 #workshop .elementor-widget-stl-flip-box .elementor-flip-box.stl-flipbox--no-flip .elementor-flip-box__front.stl-flipbox__front--overlay-expand,
	body.elementor-page-90 #workshop .elementor-widget-stl-flip-box .elementor-flip-box.stl-flipbox--no-flip .elementor-flip-box__front.stl-flipbox__front--overlay-expand {
		min-height: min(480px, 52vh) !important;
	}
}

/* Attività ludiche — titolo sulla fascia colorata, senza box grigio Elementor su expand-track */
body.single-evento.elementor-page-90 #attivita-ludiche .elementor-widget-stl-flip-box .stl-flipbox__expand-body .stl-flipbox__expand-viewport,
body.single-evento.elementor-page-90 #attivita-ludiche .elementor-widget-stl-flip-box .stl-flipbox__expand-body .stl-flipbox__expand-track,
body.single-evento.elementor-page-90 #attivita-ludiche .elementor-widget-stl-flip-box .stl-flipbox__expand-body .stl-flipbox__text-group,
body.elementor-page-90 #attivita-ludiche .elementor-widget-stl-flip-box .stl-flipbox__expand-body .stl-flipbox__expand-viewport,
body.elementor-page-90 #attivita-ludiche .elementor-widget-stl-flip-box .stl-flipbox__expand-body .stl-flipbox__expand-track,
body.elementor-page-90 #attivita-ludiche .elementor-widget-stl-flip-box .stl-flipbox__expand-body .stl-flipbox__text-group,
body.single-evento.elementor-page-90 #attivita-ludiche .elementor-widget-stl-flip-box .elementor-flip-box:hover .stl-flipbox__expand-body .stl-flipbox__expand-viewport,
body.single-evento.elementor-page-90 #attivita-ludiche .elementor-widget-stl-flip-box .elementor-flip-box:hover .stl-flipbox__expand-body .stl-flipbox__expand-track,
body.single-evento.elementor-page-90 #attivita-ludiche .elementor-widget-stl-flip-box .elementor-flip-box:hover .stl-flipbox__expand-body .stl-flipbox__text-group,
body.single-evento.elementor-page-90 #attivita-ludiche .elementor-widget-stl-flip-box .elementor-flip-box:focus-within .stl-flipbox__expand-body .stl-flipbox__expand-viewport,
body.single-evento.elementor-page-90 #attivita-ludiche .elementor-widget-stl-flip-box .elementor-flip-box:focus-within .stl-flipbox__expand-body .stl-flipbox__expand-track,
body.single-evento.elementor-page-90 #attivita-ludiche .elementor-widget-stl-flip-box .elementor-flip-box:focus-within .stl-flipbox__expand-body .stl-flipbox__text-group,
body.elementor-page-90 #attivita-ludiche .elementor-widget-stl-flip-box .elementor-flip-box:hover .stl-flipbox__expand-body .stl-flipbox__expand-viewport,
body.elementor-page-90 #attivita-ludiche .elementor-widget-stl-flip-box .elementor-flip-box:hover .stl-flipbox__expand-body .stl-flipbox__expand-track,
body.elementor-page-90 #attivita-ludiche .elementor-widget-stl-flip-box .elementor-flip-box:hover .stl-flipbox__expand-body .stl-flipbox__text-group,
body.elementor-page-90 #attivita-ludiche .elementor-widget-stl-flip-box .elementor-flip-box:focus-within .stl-flipbox__expand-body .stl-flipbox__expand-viewport,
body.elementor-page-90 #attivita-ludiche .elementor-widget-stl-flip-box .elementor-flip-box:focus-within .stl-flipbox__expand-body .stl-flipbox__expand-track,
body.elementor-page-90 #attivita-ludiche .elementor-widget-stl-flip-box .elementor-flip-box:focus-within .stl-flipbox__expand-body .stl-flipbox__text-group {
	background-color: transparent !important;
	background-image: none !important;
	-webkit-backdrop-filter: none !important;
	backdrop-filter: none !important;
}

@media (min-width: 768px) {
	body.single-evento.elementor-page-90 #attivita-ludiche .elementor-element-331dc79,
	body.elementor-page-90 #attivita-ludiche .elementor-element-331dc79 {
		align-items: flex-start !important;
	}

	body.single-evento.elementor-page-90 #attivita-ludiche .elementor-element-331dc79 > .e-con,
	body.elementor-page-90 #attivita-ludiche .elementor-element-331dc79 > .e-con {
		height: auto !important;
		align-self: auto !important;
		padding-bottom: 0 !important;
	}

	body.single-evento.elementor-page-90 #attivita-ludiche .elementor-widget-stl-flip-box .stl-flipbox__expand-track,
	body.elementor-page-90 #attivita-ludiche .elementor-widget-stl-flip-box .stl-flipbox__expand-track {
		min-height: 0 !important;
	}

	body.single-evento.elementor-page-90 #attivita-ludiche .elementor-widget-stl-flip-box .elementor-widget-container,
	body.elementor-page-90 #attivita-ludiche .elementor-widget-stl-flip-box .elementor-widget-container {
		margin-bottom: 0 !important;
	}

	/*
	 * Attività ludiche — split-expand desktop: solo titolo su fascia colorata a riposo;
	 * hover = card intera con vetro + dettaglio (override stl-flipbox-mobile se caricato).
	 */
	body.single-evento.elementor-page-90 #attivita-ludiche .elementor-widget-stl-flip-box .stl-flipbox__expand-reveal,
	body.elementor-page-90 #attivita-ludiche .elementor-widget-stl-flip-box .stl-flipbox__expand-reveal {
		grid-template-rows: 0fr !important;
		overflow: hidden !important;
		transition: grid-template-rows var(--stl-flipbox-reveal-duration, 0.52s) var(--stl-flipbox-expand-ease, cubic-bezier(0.22, 1, 0.36, 1)) !important;
	}

	body.single-evento.elementor-page-90 #attivita-ludiche .elementor-widget-stl-flip-box .stl-flipbox__expand-reveal-inner,
	body.elementor-page-90 #attivita-ludiche .elementor-widget-stl-flip-box .stl-flipbox__expand-reveal-inner {
		opacity: 0 !important;
		transform: translate3d(0, 0.35em, 0) !important;
		transition:
			opacity calc(var(--stl-flipbox-reveal-duration, 0.52s) * 0.85) ease,
			transform calc(var(--stl-flipbox-reveal-duration, 0.52s) * 0.85) var(--stl-flipbox-expand-ease, cubic-bezier(0.22, 1, 0.36, 1)) !important;
	}

	body.single-evento.elementor-page-90 #attivita-ludiche .elementor-widget-stl-flip-box .elementor-flip-box:hover .stl-flipbox__expand-reveal,
	body.single-evento.elementor-page-90 #attivita-ludiche .elementor-widget-stl-flip-box .elementor-flip-box:focus-within .stl-flipbox__expand-reveal,
	body.elementor-page-90 #attivita-ludiche .elementor-widget-stl-flip-box .elementor-flip-box:hover .stl-flipbox__expand-reveal,
	body.elementor-page-90 #attivita-ludiche .elementor-widget-stl-flip-box .elementor-flip-box:focus-within .stl-flipbox__expand-reveal {
		grid-template-rows: 1fr !important;
		transition-delay: var(--stl-flipbox-reveal-delay, 0.14s) !important;
	}

	body.single-evento.elementor-page-90 #attivita-ludiche .elementor-widget-stl-flip-box .elementor-flip-box:hover .stl-flipbox__expand-reveal-inner,
	body.single-evento.elementor-page-90 #attivita-ludiche .elementor-widget-stl-flip-box .elementor-flip-box:focus-within .stl-flipbox__expand-reveal-inner,
	body.elementor-page-90 #attivita-ludiche .elementor-widget-stl-flip-box .elementor-flip-box:hover .stl-flipbox__expand-reveal-inner,
	body.elementor-page-90 #attivita-ludiche .elementor-widget-stl-flip-box .elementor-flip-box:focus-within .stl-flipbox__expand-reveal-inner {
		opacity: 1 !important;
		transform: translate3d(0, 0, 0) !important;
		transition-delay: calc(var(--stl-flipbox-reveal-delay, 0.14s) + 0.06s) !important;
	}

	body.single-evento.elementor-page-90 #attivita-ludiche .elementor-widget-stl-flip-box .elementor-flip-box__front.stl-flipbox__front--expand .stl-flipbox__front-expand,
	body.elementor-page-90 #attivita-ludiche .elementor-widget-stl-flip-box .elementor-flip-box__front.stl-flipbox__front--expand .stl-flipbox__front-expand {
		display: block !important;
		position: absolute !important;
		inset: 0 !important;
		width: 100% !important;
		height: 100% !important;
		flex-direction: unset !important;
	}

	body.single-evento.elementor-page-90 #attivita-ludiche .elementor-widget-stl-flip-box .elementor-flip-box__front.stl-flipbox__front--expand .stl-flipbox__front-media,
	body.elementor-page-90 #attivita-ludiche .elementor-widget-stl-flip-box .elementor-flip-box__front.stl-flipbox__front--expand .stl-flipbox__front-media {
		position: absolute !important;
		top: 0 !important;
		right: 0 !important;
		bottom: auto !important;
		left: 0 !important;
		width: 100% !important;
		height: var(--stl-flipbox-split-media-height, 45%) !important;
		min-height: 0 !important;
		max-height: none !important;
		display: block !important;
		visibility: visible !important;
		opacity: 1 !important;
	}

	body.single-evento.elementor-page-90 #attivita-ludiche .elementor-widget-stl-flip-box .elementor-flip-box__front.stl-flipbox__front--expand .stl-flipbox__expand-body,
	body.single-evento.elementor-page-90 #attivita-ludiche .elementor-widget-stl-flip-box .elementor-flip-box__front.stl-flipbox__front--expand .stl-flipbox__front-body.stl-flipbox__expand-body,
	body.elementor-page-90 #attivita-ludiche .elementor-widget-stl-flip-box .elementor-flip-box__front.stl-flipbox__front--expand .stl-flipbox__expand-body,
	body.elementor-page-90 #attivita-ludiche .elementor-widget-stl-flip-box .elementor-flip-box__front.stl-flipbox__front--expand .stl-flipbox__front-body.stl-flipbox__expand-body {
		position: absolute !important;
		top: var(--stl-flipbox-split-media-height, 45%) !important;
		right: 0 !important;
		bottom: 0 !important;
		left: 0 !important;
		width: 100% !important;
		height: auto !important;
		min-height: 0 !important;
		padding: clamp(12px, 1.2vw, 16px) !important;
		-webkit-backdrop-filter: none !important;
		backdrop-filter: none !important;
		background-image: none !important;
		background-color: var(--stl-flipbox-expand-body-bg, #eb6037) !important;
		justify-content: flex-start !important;
	}

	body.single-evento.elementor-page-90 #attivita-ludiche .elementor-widget-stl-flip-box .elementor-flip-box:hover .elementor-flip-box__front.stl-flipbox__front--expand .stl-flipbox__front-media,
	body.single-evento.elementor-page-90 #attivita-ludiche .elementor-widget-stl-flip-box .elementor-flip-box:focus-within .elementor-flip-box__front.stl-flipbox__front--expand .stl-flipbox__front-media,
	body.elementor-page-90 #attivita-ludiche .elementor-widget-stl-flip-box .elementor-flip-box:hover .elementor-flip-box__front.stl-flipbox__front--expand .stl-flipbox__front-media,
	body.elementor-page-90 #attivita-ludiche .elementor-widget-stl-flip-box .elementor-flip-box:focus-within .elementor-flip-box__front.stl-flipbox__front--expand .stl-flipbox__front-media {
		height: 100% !important;
	}

	body.single-evento.elementor-page-90 #attivita-ludiche .elementor-widget-stl-flip-box .elementor-flip-box:hover .elementor-flip-box__front.stl-flipbox__front--expand .stl-flipbox__expand-body,
	body.single-evento.elementor-page-90 #attivita-ludiche .elementor-widget-stl-flip-box .elementor-flip-box:focus-within .elementor-flip-box__front.stl-flipbox__front--expand .stl-flipbox__expand-body,
	body.elementor-page-90 #attivita-ludiche .elementor-widget-stl-flip-box .elementor-flip-box:hover .elementor-flip-box__front.stl-flipbox__front--expand .stl-flipbox__expand-body,
	body.elementor-page-90 #attivita-ludiche .elementor-widget-stl-flip-box .elementor-flip-box:focus-within .elementor-flip-box__front.stl-flipbox__front--expand .stl-flipbox__expand-body {
		top: 0 !important;
		height: 100% !important;
		-webkit-backdrop-filter: blur(var(--stl-flipbox-expand-glass-blur, 4px)) !important;
		backdrop-filter: blur(var(--stl-flipbox-expand-glass-blur, 4px)) !important;
		background-color: var(--stl-flipbox-expand-glass-bg, rgba(255, 255, 255, 0.72)) !important;
	}
}

@media (max-width: 767px) {
	/* Attività ludiche — bordo solo laterale sulla card; niente riquadro sul blocco testi */
	body.single-evento.elementor-page-90 #attivita-ludiche .elementor-widget-stl-flip-box .stl-flipbox__front-expand,
	body.single-evento.elementor-page-90 #attivita-ludiche .elementor-widget-stl-flip-box .stl-flipbox__expand-body,
	body.single-evento.elementor-page-90 #attivita-ludiche .elementor-widget-stl-flip-box .stl-flipbox__front-body,
	body.elementor-page-90 #attivita-ludiche .elementor-widget-stl-flip-box .stl-flipbox__front-expand,
	body.elementor-page-90 #attivita-ludiche .elementor-widget-stl-flip-box .stl-flipbox__expand-body,
	body.elementor-page-90 #attivita-ludiche .elementor-widget-stl-flip-box .stl-flipbox__front-body {
		border: none !important;
		box-shadow: none !important;
		border-radius: 0 !important;
	}

	body.single-evento.elementor-page-90 #attivita-ludiche .elementor-widget-stl-flip-box .elementor-flip-box,
	body.elementor-page-90 #attivita-ludiche .elementor-widget-stl-flip-box .elementor-flip-box {
		border: none !important;
		border-left: 2px solid rgba(23, 16, 15, 0.38) !important;
		border-right: 2px solid rgba(23, 16, 15, 0.38) !important;
		border-radius: 0 0 14px 0 !important;
		box-shadow: none !important;
		overflow: hidden !important;
		box-sizing: border-box !important;
	}

	body.single-evento.elementor-page-90 #attivita-ludiche .elementor-widget-stl-flip-box .elementor-flip-box.stl-flipbox--no-flip,
	body.elementor-page-90 #attivita-ludiche .elementor-widget-stl-flip-box .elementor-flip-box.stl-flipbox--no-flip {
		min-height: min(320px, 90vw) !important;
		height: auto !important;
	}

	body.single-evento.elementor-page-90 #attivita-ludiche .elementor-element-331dc79,
	body.elementor-page-90 #attivita-ludiche .elementor-element-331dc79 {
		align-items: flex-start !important;
	}

	body.single-evento.elementor-page-90 #attivita-ludiche .elementor-element-331dc79 > .e-con,
	body.elementor-page-90 #attivita-ludiche .elementor-element-331dc79 > .e-con {
		height: auto !important;
		align-self: auto !important;
		padding-bottom: 0 !important;
	}

	body.single-evento.elementor-page-90 #attivita-ludiche .elementor-widget-stl-flip-box .stl-flipbox__expand-track,
	body.elementor-page-90 #attivita-ludiche .elementor-widget-stl-flip-box .stl-flipbox__expand-track {
		min-height: 0 !important;
	}

	body.single-evento.elementor-page-90 #attivita-ludiche .elementor-widget-stl-flip-box .elementor-widget-container,
	body.elementor-page-90 #attivita-ludiche .elementor-widget-stl-flip-box .elementor-widget-container {
		margin-bottom: 0 !important;
	}

	body.single-evento.elementor-page-90 #attivita-ludiche .elementor-widget-stl-flip-box .elementor-flip-box__front,
	body.elementor-page-90 #attivita-ludiche .elementor-widget-stl-flip-box .elementor-flip-box__front,
	body.single-evento.elementor-page-90 #attivita-ludiche .elementor-widget-stl-flip-box .stl-flipbox__text-group,
	body.elementor-page-90 #attivita-ludiche .elementor-widget-stl-flip-box .stl-flipbox__text-group {
		border: none !important;
		box-shadow: none !important;
		border-radius: 0 !important;
	}

	body.single-evento.elementor-page-90 #attivita-ludiche .elementor-widget-stl-flip-box .elementor-flip-box__front.stl-flipbox__front--expand,
	body.elementor-page-90 #attivita-ludiche .elementor-widget-stl-flip-box .elementor-flip-box__front.stl-flipbox__front--expand {
		position: absolute !important;
		inset: 0 !important;
		width: 100% !important;
		height: 100% !important;
		min-height: 0 !important;
	}

	body.single-evento.elementor-page-90 #attivita-ludiche .elementor-widget-stl-flip-box .elementor-flip-box:not(.stl-flipbox--no-flip),
	body.elementor-page-90 #attivita-ludiche .elementor-widget-stl-flip-box .elementor-flip-box:not(.stl-flipbox--no-flip) {
		min-height: min(320px, 90vw) !important;
	}

	body.single-evento.elementor-page-90 #attivita-ludiche .elementor-widget-stl-flip-box .elementor-flip-box__front.stl-flipbox__front--split,
	body.elementor-page-90 #attivita-ludiche .elementor-widget-stl-flip-box .elementor-flip-box__front.stl-flipbox__front--split {
		position: relative !important;
		inset: auto !important;
		height: auto !important;
		min-height: inherit !important;
		transform: none !important;
		opacity: 1 !important;
	}

	/*
	 * Attività ludiche — eccezione a stl-flipbox-mobile.css:
	 * a riposo solo titolo su fascia colorata; hover/focus = expand + vetro (come desktop).
	 */
	body.single-evento.elementor-page-90 #attivita-ludiche .elementor-widget-stl-flip-box .stl-flipbox__expand-reveal,
	body.elementor-page-90 #attivita-ludiche .elementor-widget-stl-flip-box .stl-flipbox__expand-reveal {
		grid-template-rows: 0fr !important;
		overflow: hidden !important;
		transition: grid-template-rows var(--stl-flipbox-reveal-duration, 0.52s) var(--stl-flipbox-expand-ease, cubic-bezier(0.22, 1, 0.36, 1)) !important;
	}

	body.single-evento.elementor-page-90 #attivita-ludiche .elementor-widget-stl-flip-box .stl-flipbox__expand-reveal-inner,
	body.elementor-page-90 #attivita-ludiche .elementor-widget-stl-flip-box .stl-flipbox__expand-reveal-inner {
		opacity: 0 !important;
		transform: translate3d(0, 0.35em, 0) !important;
		transition:
			opacity calc(var(--stl-flipbox-reveal-duration, 0.52s) * 0.85) ease,
			transform calc(var(--stl-flipbox-reveal-duration, 0.52s) * 0.85) var(--stl-flipbox-expand-ease, cubic-bezier(0.22, 1, 0.36, 1)) !important;
	}

	body.single-evento.elementor-page-90 #attivita-ludiche .elementor-widget-stl-flip-box .elementor-flip-box:hover .stl-flipbox__expand-reveal,
	body.single-evento.elementor-page-90 #attivita-ludiche .elementor-widget-stl-flip-box .elementor-flip-box:focus-within .stl-flipbox__expand-reveal,
	body.elementor-page-90 #attivita-ludiche .elementor-widget-stl-flip-box .elementor-flip-box:hover .stl-flipbox__expand-reveal,
	body.elementor-page-90 #attivita-ludiche .elementor-widget-stl-flip-box .elementor-flip-box:focus-within .stl-flipbox__expand-reveal {
		grid-template-rows: 1fr !important;
		transition-delay: var(--stl-flipbox-reveal-delay, 0.14s) !important;
	}

	body.single-evento.elementor-page-90 #attivita-ludiche .elementor-widget-stl-flip-box .elementor-flip-box:hover .stl-flipbox__expand-reveal-inner,
	body.single-evento.elementor-page-90 #attivita-ludiche .elementor-widget-stl-flip-box .elementor-flip-box:focus-within .stl-flipbox__expand-reveal-inner,
	body.elementor-page-90 #attivita-ludiche .elementor-widget-stl-flip-box .elementor-flip-box:hover .stl-flipbox__expand-reveal-inner,
	body.elementor-page-90 #attivita-ludiche .elementor-widget-stl-flip-box .elementor-flip-box:focus-within .stl-flipbox__expand-reveal-inner {
		opacity: 1 !important;
		transform: translate3d(0, 0, 0) !important;
		transition-delay: calc(var(--stl-flipbox-reveal-delay, 0.14s) + 0.06s) !important;
	}

	body.single-evento.elementor-page-90 #attivita-ludiche .elementor-widget-stl-flip-box .elementor-flip-box__front.stl-flipbox__front--expand .stl-flipbox__front-expand,
	body.elementor-page-90 #attivita-ludiche .elementor-widget-stl-flip-box .elementor-flip-box__front.stl-flipbox__front--expand .stl-flipbox__front-expand {
		display: block !important;
		position: absolute !important;
		inset: 0 !important;
		width: 100% !important;
		height: 100% !important;
		flex-direction: unset !important;
	}

	body.single-evento.elementor-page-90 #attivita-ludiche .elementor-widget-stl-flip-box .elementor-flip-box__front.stl-flipbox__front--expand .stl-flipbox__front-media,
	body.elementor-page-90 #attivita-ludiche .elementor-widget-stl-flip-box .elementor-flip-box__front.stl-flipbox__front--expand .stl-flipbox__front-media {
		position: absolute !important;
		top: 0 !important;
		right: 0 !important;
		bottom: auto !important;
		left: 0 !important;
		width: 100% !important;
		height: var(--stl-flipbox-split-media-height, 45%) !important;
		min-height: 0 !important;
		max-height: none !important;
		display: block !important;
		visibility: visible !important;
		opacity: 1 !important;
	}

	body.single-evento.elementor-page-90 #attivita-ludiche .elementor-widget-stl-flip-box .elementor-flip-box__front.stl-flipbox__front--expand .stl-flipbox__expand-body,
	body.single-evento.elementor-page-90 #attivita-ludiche .elementor-widget-stl-flip-box .elementor-flip-box__front.stl-flipbox__front--expand .stl-flipbox__front-body.stl-flipbox__expand-body,
	body.elementor-page-90 #attivita-ludiche .elementor-widget-stl-flip-box .elementor-flip-box__front.stl-flipbox__front--expand .stl-flipbox__expand-body,
	body.elementor-page-90 #attivita-ludiche .elementor-widget-stl-flip-box .elementor-flip-box__front.stl-flipbox__front--expand .stl-flipbox__front-body.stl-flipbox__expand-body {
		position: absolute !important;
		top: var(--stl-flipbox-split-media-height, 45%) !important;
		right: 0 !important;
		bottom: 0 !important;
		left: 0 !important;
		width: 100% !important;
		height: auto !important;
		min-height: 0 !important;
		padding: clamp(12px, 3.5vw, 16px) !important;
		-webkit-backdrop-filter: none !important;
		backdrop-filter: none !important;
		background-image: none !important;
		background-color: var(--stl-flipbox-expand-body-bg, #eb6037) !important;
		justify-content: flex-start !important;
	}

	body.single-evento.elementor-page-90 #attivita-ludiche .elementor-widget-stl-flip-box .elementor-flip-box:hover .elementor-flip-box__front.stl-flipbox__front--expand .stl-flipbox__front-media,
	body.single-evento.elementor-page-90 #attivita-ludiche .elementor-widget-stl-flip-box .elementor-flip-box:focus-within .elementor-flip-box__front.stl-flipbox__front--expand .stl-flipbox__front-media,
	body.elementor-page-90 #attivita-ludiche .elementor-widget-stl-flip-box .elementor-flip-box:hover .elementor-flip-box__front.stl-flipbox__front--expand .stl-flipbox__front-media,
	body.elementor-page-90 #attivita-ludiche .elementor-widget-stl-flip-box .elementor-flip-box:focus-within .elementor-flip-box__front.stl-flipbox__front--expand .stl-flipbox__front-media {
		height: 100% !important;
	}

	body.single-evento.elementor-page-90 #attivita-ludiche .elementor-widget-stl-flip-box .elementor-flip-box:hover .elementor-flip-box__front.stl-flipbox__front--expand .stl-flipbox__expand-body,
	body.single-evento.elementor-page-90 #attivita-ludiche .elementor-widget-stl-flip-box .elementor-flip-box:focus-within .elementor-flip-box__front.stl-flipbox__front--expand .stl-flipbox__expand-body,
	body.elementor-page-90 #attivita-ludiche .elementor-widget-stl-flip-box .elementor-flip-box:hover .elementor-flip-box__front.stl-flipbox__front--expand .stl-flipbox__expand-body,
	body.elementor-page-90 #attivita-ludiche .elementor-widget-stl-flip-box .elementor-flip-box:focus-within .elementor-flip-box__front.stl-flipbox__front--expand .stl-flipbox__expand-body {
		top: 0 !important;
		height: 100% !important;
		-webkit-backdrop-filter: blur(var(--stl-flipbox-expand-glass-blur, 4px)) !important;
		backdrop-filter: blur(var(--stl-flipbox-expand-glass-blur, 4px)) !important;
		background-color: var(--stl-flipbox-expand-glass-bg, rgba(255, 255, 255, 0.72)) !important;
	}

	body.single-evento.elementor-page-90 .elementor-element-7ad3e02 .elementor-widget-stl-flip-box .elementor-flip-box__layer__title {
		font-size: clamp(1.05rem, 4.6vw, 1.25rem) !important;
		font-weight: 700 !important;
		margin-bottom: 0.5rem !important;
	}

	body.single-evento.elementor-page-90 .elementor-element-7ad3e02 .elementor-widget-stl-flip-box .elementor-flip-box__layer__description {
		font-size: clamp(0.8125rem, 3.2vw, 0.9375rem) !important;
		line-height: 1.45 !important;
		margin-bottom: 1rem !important;
	}

	body.single-evento.elementor-page-90 .elementor-element-7ad3e02 .elementor-widget-stl-flip-box .elementor-flip-box__layer__inner {
		padding: clamp(14px, 4vw, 18px) !important;
	}

	body.single-evento.elementor-page-90 .elementor-element-7ad3e02 .elementor-widget-stl-flip-box .elementor-button {
		margin-top: 0.5rem;
		min-height: 44px;
	}

	/* Corsi Igienisti / ASO — riquadri con bordo visibile su sfondo pesca */
	body.single-evento.elementor-page-90 #aiop .elementor-element-836d35c.e-con,
	body.single-evento.elementor-page-90 #aiop .elementor-element-fb5eebb.e-con,
	body.elementor-page-90 #aiop .elementor-element-836d35c.e-con,
	body.elementor-page-90 #aiop .elementor-element-fb5eebb.e-con {
		border: 2px solid rgba(23, 16, 15, 0.45) !important;
		box-shadow:
			0 0 0 1px rgba(255, 255, 255, 0.35) inset,
			0 3px 12px rgba(23, 16, 15, 0.12) !important;
		padding: clamp(14px, 4vw, 20px) !important;
		box-sizing: border-box !important;
		overflow: hidden !important;
		margin-bottom: 0.85rem !important;
		isolation: isolate;
	}

	/* Corsi Igienisti / ASO — solo angolo basso-destra arrotondato (come faculty / card evento) */
	body.single-evento.elementor-page-90 #aiop .elementor-element-836d35c.e-con,
	body.single-evento.elementor-page-90 #aiop .elementor-element-fb5eebb.e-con,
	body.elementor-page-90 #aiop .elementor-element-836d35c.e-con,
	body.elementor-page-90 #aiop .elementor-element-fb5eebb.e-con {
		border-radius: 0 0 14px 0 !important;
	}

	body.single-evento.elementor-page-90 .elementor-element-836d35c .elementor-button,
	body.single-evento.elementor-page-90 .elementor-element-fb5eebb .elementor-button {
		margin-top: 0.75rem;
		min-height: 44px;
		width: 100%;
		max-width: 100%;
		justify-content: center;
	}

	/* Faculty solo nomi — tipografia (colonne: widget Elementor) */
	body.single-evento.elementor-page-90 .site-main .stl-faculty--layout-names-only .stl-faculty__card--names-only .elementor-heading-title {
		white-space: normal !important;
		overflow: visible !important;
		text-overflow: unset !important;
		word-break: normal;
		overflow-wrap: anywhere;
		hyphens: auto;
		line-height: 1.3 !important;
		font-size: clamp(0.8125rem, 3.4vw, 0.9375rem) !important;
	}

	body.single-evento.elementor-page-90 .site-main .stl-faculty--layout-names-only .stl-faculty__card--names-only.e-con {
		min-height: 56px;
		padding: 8px 6px !important;
	}
}

/* Progetto AIOPyoung (13217) — hero #cosae: una colonna su tablet/mobile */
@media (max-width: 1024px) {
	body.elementor-page-13217 .elementor-element-2f14f341.e-con {
		flex-direction: column !important;
		flex-wrap: wrap !important;
		align-items: stretch !important;
	}

	body.elementor-page-13217 .elementor-element-2f14f341 > .e-con.e-child {
		flex: 1 1 100% !important;
		width: 100% !important;
		max-width: 100% !important;
		--width: 100% !important;
	}
}

/* Progetto AIOPyoung (13217) — tipografia mobile (wp-post non coperto dal pass globale wp-page) */
@media (max-width: 767px) {
	body.elementor-page-13217 .site-main,
	body.elementor-page-13217 .site-main .elementor.elementor-13217 {
		overflow-x: clip;
		max-width: 100%;
	}

	body.elementor-page-13217 .elementor-13217 > .e-con.e-parent {
		--padding-left: clamp(0.75rem, 3.2vw, 1rem) !important;
		--padding-right: clamp(0.75rem, 3.2vw, 1rem) !important;
		padding-left: clamp(0.75rem, 3.2vw, 1rem) !important;
		padding-right: clamp(0.75rem, 3.2vw, 1rem) !important;
	}

	body.elementor-page-13217 .elementor-13217 .elementor-widget-heading .elementor-heading-title {
		max-width: 100%;
		overflow-wrap: anywhere;
		word-break: break-word;
		white-space: normal !important;
	}

	body.elementor-page-13217 .elementor-13217 .elementor-widget-heading h1.elementor-heading-title {
		font-size: clamp(1.5rem, 6.2vw, 1.75rem) !important;
		line-height: 1.15 !important;
	}

	body.elementor-page-13217 .elementor-13217 .elementor-widget-heading h2.elementor-heading-title {
		font-size: clamp(1.25rem, 5.2vw, 1.625rem) !important;
		line-height: 1.22 !important;
	}

	body.elementor-page-13217 .elementor-13217 .elementor-widget-heading h3.elementor-heading-title {
		font-size: clamp(1.125rem, 4.6vw, 1.375rem) !important;
		line-height: 1.25 !important;
	}

	body.elementor-page-13217 .elementor-13217 .elementor-widget-heading :is(h4, h5, h6).elementor-heading-title {
		font-size: clamp(0.8125rem, 3.5vw, 0.9375rem) !important;
		line-height: 1.35 !important;
	}

	body.elementor-page-13217 .elementor-13217 .elementor-widget-heading div.elementor-heading-title {
		font-size: clamp(1rem, 4.2vw, 1.125rem) !important;
		line-height: 1.35 !important;
	}

	body.elementor-page-13217 .elementor-element-2f14f341 .aiop-about-us-hero__intro > .elementor-widget-heading:first-child :is(h6, .elementor-heading-title) {
		font-size: clamp(0.875rem, 3.8vw, 1rem) !important;
		line-height: 1.3 !important;
	}

	body.elementor-page-13217 .elementor-13217 .elementor-widget-text-editor,
	body.elementor-page-13217 .elementor-13217 .elementor-widget-text-editor :is(p, li) {
		font-size: clamp(0.875rem, 3.6vw, 0.9375rem) !important;
		line-height: 1.5 !important;
	}

	body.elementor-page-13217 .elementor-13217 .elementor-widget-button .elementor-button,
	body.elementor-page-13217 .elementor-13217 .elementor-widget-button .elementor-button-text {
		font-size: clamp(0.6875rem, 2.9vw, 0.75rem) !important;
		line-height: 1.2 !important;
	}

	/* #cosae stats (Under 40 / 2 percorsi / …) — griglia 2 colonne + testi compatti */
	body.elementor-page-13217 .elementor-element-5fbaff4a .elementor-element-0d4a329 {
		display: grid !important;
		grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
		gap: clamp(0.5rem, 2.5vw, 0.75rem) !important;
		align-items: stretch !important;
		width: 100% !important;
	}

	body.elementor-page-13217 .elementor-element-5fbaff4a .elementor-element-0d4a329 > .e-con.e-child {
		width: 100% !important;
		max-width: 100% !important;
		flex: unset !important;
		--width: 100% !important;
		min-width: 0 !important;
	}

	body.elementor-page-13217 .elementor-element-5fbaff4a .elementor-element-0d4a329 > .e-con.e-child > .elementor-widget-heading:first-child .elementor-heading-title {
		font-size: clamp(0.9375rem, 4vw, 1.0625rem) !important;
		line-height: 1.15 !important;
		font-weight: 600 !important;
	}

	body.elementor-page-13217 .elementor-element-5fbaff4a .elementor-element-0d4a329 > .e-con.e-child > .elementor-widget-heading:last-child .elementor-heading-title {
		font-size: clamp(0.6875rem, 2.85vw, 0.75rem) !important;
		line-height: 1.35 !important;
		font-weight: 300 !important;
	}

	/* Sezione #perchè — tipografia compatta (liste + blocchi editoriali) */
	body.elementor-page-13217 #perchè .elementor-element-d419936 .elementor-widget-text-editor :is(h2, h3) {
		font-size: clamp(1rem, 4.2vw, 1.125rem) !important;
		line-height: 1.25 !important;
		font-weight: 600 !important;
	}

	body.elementor-page-13217 #perchè .elementor-element-d419936 .elementor-widget-heading h2.elementor-heading-title {
		font-size: clamp(0.75rem, 3.2vw, 0.8125rem) !important;
		line-height: 1.45 !important;
		font-weight: 300 !important;
	}

	body.elementor-page-13217 #perchè .elementor-element-d419936 .elementor-widget-heading h2 :is(b, strong) {
		font-size: clamp(0.875rem, 3.8vw, 0.9375rem) !important;
		font-weight: 600 !important;
	}

	body.elementor-page-13217 #perchè .elementor-widget-heading h2.elementor-heading-title {
		font-size: clamp(0.8125rem, 3.5vw, 0.875rem) !important;
		line-height: 1.4 !important;
		font-weight: 300 !important;
	}

	body.elementor-page-13217 #perchè > .e-con .e-con > .e-con.e-child:not(.elementor-element-d419936) > .elementor-widget-heading:first-child h2.elementor-heading-title {
		font-size: clamp(1.0625rem, 4.5vw, 1.1875rem) !important;
		line-height: 1.2 !important;
		font-weight: 600 !important;
	}

	/* FAQ #faq — accordion domande compatto */
	body.elementor-page-13217 #faq .elementor-widget-n-accordion .e-n-accordion-item-title {
		padding-top: clamp(0.35rem, 1.4vw, 0.5rem) !important;
		padding-bottom: clamp(0.35rem, 1.4vw, 0.5rem) !important;
		min-height: 0 !important;
	}

	body.elementor-page-13217 #faq .elementor-widget-n-accordion .e-n-accordion-item-title-text {
		font-size: clamp(0.8125rem, 3.5vw, 0.875rem) !important;
		line-height: 1.35 !important;
		font-weight: 500 !important;
	}

	body.elementor-page-13217 #faq .elementor-widget-n-accordion .e-n-accordion-item-title-icon {
		font-size: clamp(0.6875rem, 2.5vw, 0.75rem) !important;
	}

	body.elementor-page-13217 #faq .elementor-widget-n-accordion .e-n-accordion-item-content,
	body.elementor-page-13217 #faq .elementor-widget-n-accordion .e-n-accordion-item-content p {
		font-size: clamp(0.8125rem, 3.4vw, 0.875rem) !important;
		line-height: 1.45 !important;
	}

	/* Sezione #networking — gerarchia tipografica (tutto markup h2) */
	body.elementor-page-13217 #networking .elementor-widget-heading h2.elementor-heading-title {
		font-size: clamp(0.8125rem, 3.5vw, 0.875rem) !important;
		line-height: 1.4 !important;
		font-weight: 300 !important;
	}

	body.elementor-page-13217 #networking .elementor-element-ae944c3 h2.elementor-heading-title {
		font-size: clamp(1.0625rem, 4.6vw, 1.25rem) !important;
		line-height: 1.2 !important;
		font-weight: 600 !important;
	}

	body.elementor-page-13217 #networking .elementor-element-dc31fc6 h2.elementor-heading-title {
		font-size: clamp(0.9375rem, 4vw, 1.0625rem) !important;
		line-height: 1.25 !important;
		font-weight: 600 !important;
	}

	body.elementor-page-13217 #networking .elementor-element-3dab157 h2.elementor-heading-title {
		font-size: clamp(0.8125rem, 3.4vw, 0.875rem) !important;
		line-height: 1.45 !important;
		font-weight: 300 !important;
	}

	body.elementor-page-13217 #networking .elementor-element-442b0ee h2.elementor-heading-title {
		font-size: clamp(1rem, 4.2vw, 1.125rem) !important;
		line-height: 1.2 !important;
		font-weight: 600 !important;
	}

	body.elementor-page-13217 #networking .elementor-element-9791bbd .e-con.e-child > .elementor-widget-heading:first-child h2.elementor-heading-title {
		font-size: clamp(0.9375rem, 4vw, 1rem) !important;
		line-height: 1.2 !important;
		font-weight: 600 !important;
	}

	body.elementor-page-13217 #networking .elementor-element-9791bbd .e-con.e-child > .elementor-widget-heading:last-child h2.elementor-heading-title {
		font-size: clamp(0.75rem, 3.2vw, 0.8125rem) !important;
		line-height: 1.4 !important;
		font-weight: 300 !important;
	}
}

/* Progetto AIOPeducation (12768) — hero #cosae: tipografia mobile compatta */
@media (max-width: 767px) {
	body.elementor-page-12768 #cosae.elementor-element-19b8d3c .elementor-widget-heading .elementor-heading-title {
		max-width: 100%;
		overflow-wrap: anywhere;
		word-break: break-word;
		white-space: normal !important;
	}

	body.elementor-page-12768 #cosae.elementor-element-19b8d3c .elementor-element-66816b1 h1.elementor-heading-title {
		font-size: clamp(1.375rem, 5.8vw, 1.625rem) !important;
		line-height: 1.12 !important;
		font-weight: 300 !important;
	}

	body.elementor-page-12768 #cosae.elementor-element-19b8d3c .elementor-element-d049b62 h2.elementor-heading-title {
		font-size: clamp(1.0625rem, 4.6vw, 1.25rem) !important;
		line-height: 1.28 !important;
		font-weight: 300 !important;
	}

	body.elementor-page-12768 #cosae.elementor-element-19b8d3c .elementor-element-6e4cb4d h2.elementor-heading-title {
		font-size: clamp(0.875rem, 3.6vw, 0.9375rem) !important;
		line-height: 1.5 !important;
		font-weight: 300 !important;
	}

	/* Sezione #education / #problema — titolo sezione + corpo */
	body.elementor-page-12768 #problema .elementor-widget-heading .elementor-heading-title {
		max-width: 100%;
		overflow-wrap: anywhere;
		word-break: break-word;
		white-space: normal !important;
	}

	body.elementor-page-12768 #problema .elementor-element-85d2350 {
		margin-top: clamp(2rem, 8vw, 3rem) !important;
	}

	body.elementor-page-12768 #problema .elementor-element-85d2350 h2.elementor-heading-title {
		font-size: clamp(1.0625rem, 4.6vw, 1.25rem) !important;
		line-height: 1.28 !important;
		font-weight: 300 !important;
	}

	body.elementor-page-12768 #problema .elementor-element-64f8394 h2.elementor-heading-title {
		font-size: clamp(0.75rem, 3.15vw, 0.8125rem) !important;
		line-height: 1.45 !important;
		font-weight: 300 !important;
	}

	/* Blocco percorso / valore (409a710) — gerarchia tipografica (tutto markup h2) */
	body.elementor-page-12768 .elementor-element-409a710 .elementor-widget-heading .elementor-heading-title {
		max-width: 100%;
		overflow-wrap: anywhere;
		word-break: break-word;
		white-space: normal !important;
	}

	body.elementor-page-12768 .elementor-element-409a710 .elementor-widget-heading h2.elementor-heading-title {
		font-size: clamp(0.75rem, 3.15vw, 0.8125rem) !important;
		line-height: 1.45 !important;
		font-weight: 300 !important;
	}

	body.elementor-page-12768 .elementor-element-409a710 :is(.elementor-element-a448550, .elementor-element-94ef8aa) h2.elementor-heading-title {
		font-size: clamp(1.0625rem, 4.6vw, 1.25rem) !important;
		line-height: 1.28 !important;
		font-weight: 300 !important;
	}

	body.elementor-page-12768 .elementor-element-409a710 .elementor-element-65135b0 h2.elementor-heading-title {
		font-size: clamp(1.0625rem, 4.6vw, 1.25rem) !important;
		line-height: 1.2 !important;
		font-weight: 600 !important;
	}

	body.elementor-page-12768 .elementor-element-409a710 .elementor-element-b5088e2 h2.elementor-heading-title {
		font-size: clamp(0.9375rem, 4vw, 1.0625rem) !important;
		line-height: 1.25 !important;
		font-weight: 600 !important;
	}

	body.elementor-page-12768 .elementor-element-409a710 .elementor-widget-text-editor,
	body.elementor-page-12768 .elementor-element-409a710 .elementor-widget-text-editor :is(p, li) {
		font-size: clamp(0.75rem, 3.15vw, 0.8125rem) !important;
		line-height: 1.45 !important;
	}
}

/* Landing progetto (CPT) — canvas #eb-bg nel widget HTML di #top, non fullscreen in scroll */
body.single-progetto:not(.elementor-editor-active) .elementor[data-elementor-type="wp-post"] {
	position: relative;
	z-index: 1;
	isolation: isolate;
}

body.single-progetto:not(.elementor-editor-active) #top.e-con,
body.single-progetto:not(.elementor-editor-active) #cosae.e-con,
body.single-progetto:not(.elementor-editor-active) .e-con:has(#eb-bg) {
	position: relative;
	overflow: hidden;
}

body.single-progetto:not(.elementor-editor-active) .e-con:has(#eb-bg) > .elementor-widget-html,
body.single-progetto:not(.elementor-editor-active) #top > .elementor-widget-html,
body.single-progetto:not(.elementor-editor-active) #top > .elementor-element-9606e04,
body.single-progetto:not(.elementor-editor-active) #cosae > .elementor-widget-html {
	position: absolute !important;
	width: 1px !important;
	height: 1px !important;
	overflow: hidden !important;
	pointer-events: none !important;
	margin: 0 !important;
	padding: 0 !important;
	flex: 0 0 auto !important;
}

body.single-progetto:not(.elementor-editor-active) #top .elementor-element-dd84c8d,
body.single-progetto:not(.elementor-editor-active) #top > .elementor-element-b88ca4d,
body.single-progetto:not(.elementor-editor-active) #top > .aiop-about-us-hero__intro,
body.single-progetto:not(.elementor-editor-active) #top > .aiop-about-us-hero__media-wrap {
	position: relative;
	z-index: 2;
}

body.single-progetto:not(.elementor-editor-active) #eb-bg {
	position: absolute !important;
	top: 0 !important;
	left: 0 !important;
	width: 100% !important;
	height: 100% !important;
	pointer-events: none;
	z-index: 0;
}

/* Landing progetto: meno fascia vuota sopra il footer (main.css .entry { margin-bottom: var(--space-12) }) */
body.single-progetto:not(.elementor-editor-active) article.entry.type-progetto {
	margin-bottom: 0;
}

/* Biscotto fixed: non riservare striscia nel flusso prima del footer (landing progetto) */
body.single-progetto:not(.elementor-editor-active) .elementor[data-elementor-type="wp-post"] > .e-con.e-parent.aiop-biscotto-bar {
	margin-bottom: -120px;
}

@media (max-width: 1024px) {
	body.single-progetto:not(.elementor-editor-active) .elementor[data-elementor-type="wp-post"] > .e-con.e-parent.aiop-biscotto-bar {
		margin-bottom: -56px;
	}
}

/* single.php aggiunge prev/next articoli — non usare su CPT progetto (vedi single-progetto.php) */
body.single-progetto:not(.elementor-editor-active) .entry__footer,
body.single-progetto:not(.elementor-editor-active) .post-navigation {
	display: none !important;
}

/* Fallback se la document cache servisse markup ospite a utenti loggati */
body.logged-in.single-progetto:not(.elementor-editor-active) #form.e-con.e-parent {
	display: none !important;
}

/* Protesi 13148: sezioni FORM nascoste su tutti i breakpoint — non devono riservare altezza (fascia bianca/rosa + #eb-bg) */
body.elementor-page-13148:not(.elementor-editor-active) :is(
	.elementor-element-58cc00a,
	.elementor-element-7b9aada
).e-con.e-parent.elementor-hidden-desktop.elementor-hidden-tablet.elementor-hidden-mobile {
	display: none !important;
	min-height: 0 !important;
	margin: 0 !important;
	padding: 0 !important;
	border: none !important;
}

/* Progetto «Di cosa è fatta la mia protesi» (13148) — #top: colonna unica + tipografia mobile */
@media (max-width: 1024px) {
	body.elementor-page-13148 #top > .elementor-element-9606e04 {
		opacity: 0 !important;
	}

	body.elementor-page-13148 #top .elementor-element-8120840,
	body.elementor-page-13148 #top .elementor-element-93bf480,
	body.elementor-page-13148 #top .elementor-element-4789b7f4,
	body.elementor-page-13148 #top .aiop-about-us-hero__intro,
	body.elementor-page-13148 #top > .elementor-element-b88ca4d {
		position: relative;
		z-index: 2;
	}

	body.elementor-page-13148 #top .elementor-element-93bf480:not(:has(.elementor-widget-button)) {
		display: none !important;
	}

	body.elementor-page-13148 #top.elementor-element-19b8d3c {
		flex-direction: column !important;
		flex-wrap: wrap !important;
		align-items: stretch !important;
		--padding-left: clamp(0.75rem, 3.2vw, 1rem) !important;
		--padding-right: clamp(0.75rem, 3.2vw, 1rem) !important;
		padding-left: clamp(0.75rem, 3.2vw, 1rem) !important;
		padding-right: clamp(0.75rem, 3.2vw, 1rem) !important;
	}

	body.elementor-page-13148 #top > .aiop-about-us-hero__intro,
	body.elementor-page-13148 #top > .elementor-element-b88ca4d {
		flex: 1 1 100% !important;
		width: 100% !important;
		max-width: 100% !important;
		--width: 100% !important;
		min-width: 0 !important;
	}
}

@media (max-width: 767px) {
	body.elementor-page-13148 #top .elementor-widget-heading .elementor-heading-title {
		max-width: 100%;
		overflow-wrap: anywhere;
		word-break: break-word;
		white-space: normal !important;
	}

	body.elementor-page-13148 #top .elementor-element-5f5ef13 :is(h6, .elementor-heading-title) {
		font-size: clamp(0.875rem, 3.8vw, 1rem) !important;
		line-height: 1.3 !important;
		font-weight: 500 !important;
	}

	body.elementor-page-13148 #top .elementor-element-d5cadd7 h1.elementor-heading-title {
		font-size: clamp(1.375rem, 5.8vw, 1.625rem) !important;
		line-height: 1.12 !important;
		font-weight: 300 !important;
	}

	body.elementor-page-13148 #top .elementor-element-efa8c41 div.elementor-heading-title {
		font-size: clamp(0.875rem, 3.6vw, 0.9375rem) !important;
		line-height: 1.45 !important;
		font-weight: 300 !important;
	}

	body.elementor-page-13148 #top .aiop-about-us-hero__intro .elementor-widget-heading h2.elementor-heading-title {
		font-size: clamp(0.8125rem, 3.4vw, 0.875rem) !important;
		line-height: 1.4 !important;
		font-weight: 400 !important;
	}

	body.elementor-page-13148 #top .elementor-element-b88ca4d .elementor-element-255da56 h2.elementor-heading-title {
		font-size: clamp(1rem, 4.2vw, 1.125rem) !important;
		line-height: 1.25 !important;
		font-weight: 600 !important;
	}

	body.elementor-page-13148 #top .elementor-element-b88ca4d .elementor-widget-heading h2.elementor-heading-title {
		font-size: clamp(0.75rem, 3.15vw, 0.8125rem) !important;
		line-height: 1.45 !important;
		font-weight: 300 !important;
	}

	body.elementor-page-13148 #top .elementor-element-b88ca4d .elementor-widget-text-editor,
	body.elementor-page-13148 #top .elementor-element-b88ca4d .elementor-widget-text-editor :is(p, li) {
		font-size: clamp(0.75rem, 3.15vw, 0.8125rem) !important;
		line-height: 1.45 !important;
	}

	body.elementor-page-13148 #top .elementor-element-4789b7f4 .elementor-widget-heading h2.elementor-heading-title {
		font-size: clamp(0.8125rem, 3.4vw, 0.875rem) !important;
		line-height: 1.4 !important;
		font-weight: 400 !important;
		color: rgb(33, 33, 33) !important;
	}

	body.elementor-page-13148 #top .elementor-widget-button .elementor-button,
	body.elementor-page-13148 #top .elementor-widget-button .elementor-button-text {
		font-size: clamp(0.6875rem, 2.9vw, 0.75rem) !important;
		line-height: 1.2 !important;
	}

	body.elementor-page-13148 #top .elementor-widget-text-editor,
	body.elementor-page-13148 #top .elementor-widget-text-editor :is(p, li) {
		font-size: clamp(0.75rem, 3.15vw, 0.8125rem) !important;
		line-height: 1.45 !important;
	}

	/* Sezione #cosae — gerarchia tipografica (markup h2) */
	body.elementor-page-13148 #cosae.elementor-element-6f626d7 .elementor-widget-heading .elementor-heading-title {
		max-width: 100%;
		overflow-wrap: anywhere;
		word-break: break-word;
		white-space: normal !important;
	}

	body.elementor-page-13148 #cosae.elementor-element-6f626d7 .elementor-widget-heading h2.elementor-heading-title {
		font-size: clamp(0.75rem, 3.15vw, 0.8125rem) !important;
		line-height: 1.45 !important;
		font-weight: 300 !important;
	}

	body.elementor-page-13148 #cosae.elementor-element-6f626d7 .elementor-element-85d2350 h2.elementor-heading-title {
		font-size: clamp(1.0625rem, 4.6vw, 1.25rem) !important;
		line-height: 1.28 !important;
		font-weight: 300 !important;
	}

	body.elementor-page-13148 #cosae.elementor-element-6f626d7 :is(.elementor-element-e68ec6d, .elementor-element-e50bec2) h2.elementor-heading-title {
		font-size: clamp(1.0625rem, 4.6vw, 1.25rem) !important;
		line-height: 1.22 !important;
		font-weight: 600 !important;
	}

	body.elementor-page-13148 #cosae.elementor-element-6f626d7 :is(.elementor-element-f5e8d76, .elementor-element-ebfd9c1) h2.elementor-heading-title {
		font-size: clamp(0.9375rem, 4vw, 1.0625rem) !important;
		line-height: 1.25 !important;
		font-weight: 600 !important;
	}

	/* Sezione #importanza — titolo, intro e card (markup h2) */
	body.elementor-page-13148 #importanza.elementor-element-09e2291 .elementor-widget-heading .elementor-heading-title {
		max-width: 100%;
		overflow-wrap: anywhere;
		word-break: break-word;
		white-space: normal !important;
	}

	body.elementor-page-13148 #importanza.elementor-element-09e2291 .elementor-widget-heading h2.elementor-heading-title {
		font-size: clamp(0.75rem, 3.15vw, 0.8125rem) !important;
		line-height: 1.45 !important;
		font-weight: 300 !important;
	}

	body.elementor-page-13148 #importanza.elementor-element-09e2291 .elementor-element-0462235 h2.elementor-heading-title {
		font-size: clamp(1.0625rem, 4.6vw, 1.25rem) !important;
		line-height: 1.22 !important;
		font-weight: 600 !important;
	}

	body.elementor-page-13148 #importanza.elementor-element-09e2291 .elementor-element-7ba3120 h2.elementor-heading-title {
		font-size: clamp(0.8125rem, 3.4vw, 0.875rem) !important;
		line-height: 1.5 !important;
		font-weight: 300 !important;
	}

	body.elementor-page-13148 #importanza.elementor-element-09e2291 :is(
			.elementor-element-337a000,
			.elementor-element-3879984,
			.elementor-element-28bdfa8,
			.elementor-element-69f2b4b,
			.elementor-element-1762a6d
		)
		h2.elementor-heading-title {
		font-size: clamp(0.875rem, 3.6vw, 0.9375rem) !important;
		line-height: 1.2 !important;
		font-weight: 600 !important;
	}

	/* Sezione #cosacontiene — titolo, intro e card (markup h2) */
	body.elementor-page-13148 #cosacontiene.elementor-element-a3e7143 .elementor-widget-heading .elementor-heading-title {
		max-width: 100%;
		overflow-wrap: anywhere;
		word-break: break-word;
		white-space: normal !important;
	}

	body.elementor-page-13148 #cosacontiene.elementor-element-a3e7143 .elementor-widget-heading h2.elementor-heading-title {
		font-size: clamp(0.75rem, 3.15vw, 0.8125rem) !important;
		line-height: 1.45 !important;
		font-weight: 300 !important;
	}

	body.elementor-page-13148 #cosacontiene.elementor-element-a3e7143 .elementor-element-7d4ec0f4 h2.elementor-heading-title {
		font-size: clamp(1.0625rem, 4.6vw, 1.25rem) !important;
		line-height: 1.28 !important;
		font-weight: 300 !important;
	}

	body.elementor-page-13148 #cosacontiene.elementor-element-a3e7143 .elementor-element-f471dfc h2.elementor-heading-title {
		font-size: clamp(0.8125rem, 3.4vw, 0.875rem) !important;
		line-height: 1.5 !important;
		font-weight: 300 !important;
	}

	body.elementor-page-13148 #cosacontiene.elementor-element-a3e7143 :is(.elementor-element-200ff64, .elementor-element-f01370c) h2.elementor-heading-title {
		font-size: clamp(0.9375rem, 4vw, 1.0625rem) !important;
		line-height: 1.25 !important;
		font-weight: 600 !important;
	}

	body.elementor-page-13148 #cosacontiene.elementor-element-a3e7143 :is(.elementor-element-8b212f9, .elementor-element-ed1d51b) h2.elementor-heading-title {
		font-size: clamp(1.0625rem, 4.6vw, 1.25rem) !important;
		line-height: 1.22 !important;
		font-weight: 600 !important;
	}

	body.elementor-page-13148 #cosacontiene.elementor-element-a3e7143 .elementor-widget-text-editor,
	body.elementor-page-13148 #cosacontiene.elementor-element-a3e7143 .elementor-widget-text-editor :is(p, li) {
		font-size: clamp(0.75rem, 3.15vw, 0.8125rem) !important;
		line-height: 1.45 !important;
	}

	/* Sezione #download — percorsi, CTA e form (markup h2/h3/p) */
	body.elementor-page-13148 #download.elementor-element-c61a3b9 .elementor-widget-heading .elementor-heading-title {
		max-width: 100%;
		overflow-wrap: anywhere;
		word-break: break-word;
		white-space: normal !important;
	}

	body.elementor-page-13148 #download.elementor-element-c61a3b9 .elementor-widget-heading :is(h2, h3, p).elementor-heading-title {
		font-size: clamp(0.75rem, 3.15vw, 0.8125rem) !important;
		line-height: 1.45 !important;
		font-weight: 300 !important;
	}

	body.elementor-page-13148 #download.elementor-element-c61a3b9 :is(.elementor-element-79046f8, .elementor-element-8c1dc6c) h2.elementor-heading-title {
		font-size: clamp(1.0625rem, 4.6vw, 1.25rem) !important;
		line-height: 1.28 !important;
		font-weight: 300 !important;
	}

	body.elementor-page-13148 #download.elementor-element-c61a3b9 .elementor-element-76e2a1a h2.elementor-heading-title {
		font-size: clamp(0.8125rem, 3.4vw, 0.875rem) !important;
		line-height: 1.5 !important;
		font-weight: 300 !important;
	}

	body.elementor-page-13148 #download.elementor-element-c61a3b9 :is(.elementor-element-710f6a9, .elementor-element-e4a85f0) h2.elementor-heading-title {
		font-size: clamp(0.9375rem, 4vw, 1.0625rem) !important;
		line-height: 1.25 !important;
		font-weight: 600 !important;
	}

	body.elementor-page-13148 #download.elementor-element-c61a3b9 :is(.elementor-element-b85d6fb, .elementor-element-7625b01) h2.elementor-heading-title {
		font-size: clamp(0.9375rem, 4vw, 1.0625rem) !important;
		line-height: 1.3 !important;
		font-weight: 600 !important;
	}

	body.elementor-page-13148 #download.elementor-element-c61a3b9 .elementor-element-025dcfe p.elementor-heading-title {
		font-size: clamp(0.9375rem, 4vw, 1.0625rem) !important;
		line-height: 1.35 !important;
		font-weight: 300 !important;
	}

	body.elementor-page-13148 #download.elementor-element-c61a3b9 .elementor-element-5533368 h3.elementor-heading-title {
		font-size: clamp(1rem, 4.2vw, 1.125rem) !important;
		line-height: 1.28 !important;
		font-weight: 600 !important;
	}

	/* Sezione #form (58cc00a) — promossa a e-parent dopo #download */
	body.elementor-page-13148 #form.elementor-element-58cc00a .elementor-widget-heading .elementor-heading-title {
		max-width: 100%;
		overflow-wrap: anywhere;
		word-break: break-word;
		white-space: normal !important;
	}

	body.elementor-page-13148 #form.elementor-element-58cc00a :is(.elementor-element-8c1dc6c) h2.elementor-heading-title {
		font-size: clamp(1.0625rem, 4.6vw, 1.25rem) !important;
		line-height: 1.28 !important;
		font-weight: 300 !important;
	}

	body.elementor-page-13148 #form.elementor-element-58cc00a .elementor-element-025dcfe p.elementor-heading-title {
		font-size: clamp(0.9375rem, 4vw, 1.0625rem) !important;
		line-height: 1.35 !important;
		font-weight: 300 !important;
	}

	body.elementor-page-13148 #form.elementor-element-58cc00a .elementor-element-5533368 h3.elementor-heading-title {
		font-size: clamp(1rem, 4.2vw, 1.125rem) !important;
		line-height: 1.28 !important;
		font-weight: 600 !important;
	}
}

/* Progetto CAO / masticazione (12629) — hero #top: layout + tipografia mobile */
body.elementor-page-12629:not(.elementor-editor-active) .elementor.elementor-12629 {
	position: relative;
	z-index: 1;
	isolation: isolate;
}

@media (max-width: 1024px) {
	body.elementor-page-12629 #top.elementor-element-19b8d3c {
		flex-direction: column !important;
		flex-wrap: wrap !important;
		align-items: stretch !important;
		--padding-left: clamp(0.75rem, 3.2vw, 1rem) !important;
		--padding-right: clamp(0.75rem, 3.2vw, 1rem) !important;
		padding-left: clamp(0.75rem, 3.2vw, 1rem) !important;
		padding-right: clamp(0.75rem, 3.2vw, 1rem) !important;
	}

	body.elementor-page-12629 #top > .elementor-element-9606e04 {
		position: absolute !important;
		width: 1px !important;
		height: 1px !important;
		overflow: hidden !important;
		opacity: 0 !important;
		pointer-events: none !important;
		margin: 0 !important;
		padding: 0 !important;
		flex: 0 0 auto !important;
	}

	body.elementor-page-12629 #top > .aiop-about-us-hero__intro,
	body.elementor-page-12629 #top > .aiop-about-us-hero__media-wrap {
		flex: 1 1 100% !important;
		width: 100% !important;
		max-width: 100% !important;
		--width: 100% !important;
		min-width: 0 !important;
		position: relative;
		z-index: 2;
	}

	body.elementor-page-12629 #top .elementor-element-8120840 {
		position: relative;
		z-index: 2;
		width: 100% !important;
	}
}

@media (max-width: 767px) {
	body.elementor-page-12629 #top .elementor-widget-heading .elementor-heading-title {
		max-width: 100%;
		overflow-wrap: anywhere;
		word-break: break-word;
		white-space: normal !important;
	}

	body.elementor-page-12629 #top .elementor-element-5f5ef13 :is(h6, .elementor-heading-title) {
		font-size: clamp(0.875rem, 3.8vw, 1rem) !important;
		line-height: 1.3 !important;
		font-weight: 500 !important;
	}

	body.elementor-page-12629 #top .elementor-element-d5cadd7 h1.elementor-heading-title {
		font-size: clamp(1.375rem, 5.8vw, 1.625rem) !important;
		line-height: 1.12 !important;
		font-weight: 300 !important;
	}

	body.elementor-page-12629 #top .elementor-element-efa8c41 div.elementor-heading-title {
		font-size: clamp(0.875rem, 3.6vw, 0.9375rem) !important;
		line-height: 1.45 !important;
		font-weight: 300 !important;
	}

	body.elementor-page-12629 #top .elementor-widget-text-editor,
	body.elementor-page-12629 #top .elementor-widget-text-editor :is(p, li) {
		font-size: clamp(0.75rem, 3.15vw, 0.8125rem) !important;
		line-height: 1.45 !important;
	}

	body.elementor-page-12629 #top .elementor-widget-button .elementor-button,
	body.elementor-page-12629 #top .elementor-widget-button .elementor-button-text {
		font-size: clamp(0.6875rem, 2.9vw, 0.75rem) !important;
		line-height: 1.2 !important;
	}

	body.elementor-page-12629 #top .elementor-element-3ad5489 .aiop-pd__card .aiop-pd__text {
		max-width: 100%;
		overflow-wrap: anywhere;
		word-break: break-word;
	}

	body.elementor-page-12629 #top .elementor-element-3ad5489 .aiop-pd__text--1 {
		font-size: clamp(1.0625rem, 4.6vw, 1.25rem) !important;
		line-height: 1.22 !important;
		font-weight: 500 !important;
		letter-spacing: -0.01em !important;
	}

	body.elementor-page-12629 #top .elementor-element-3ad5489 .aiop-pd__text--2 {
		font-size: clamp(1rem, 4.2vw, 1.125rem) !important;
		line-height: 1.22 !important;
		font-weight: 300 !important;
	}

	body.elementor-page-12629 #top .elementor-element-3ad5489 .aiop-pd__text--3 {
		font-size: clamp(0.75rem, 3.15vw, 0.8125rem) !important;
		line-height: 1.45 !important;
		font-weight: 400 !important;
	}

	body.elementor-page-12629 #top .elementor-element-3ad5489 .aiop-pd__button,
	body.elementor-page-12629 #top .elementor-element-3ad5489 .aiop-pd__button-text {
		font-size: clamp(0.6875rem, 2.9vw, 0.75rem) !important;
		line-height: 1.2 !important;
	}

	/* Sezione #cosae — gerarchia tipografica (markup h2) */
	body.elementor-page-12629 #cosae.elementor-element-6f626d7 .elementor-widget-heading .elementor-heading-title {
		max-width: 100%;
		overflow-wrap: anywhere;
		word-break: break-word;
		white-space: normal !important;
	}

	body.elementor-page-12629 #cosae.elementor-element-6f626d7 .elementor-widget-heading h2.elementor-heading-title {
		font-size: clamp(0.75rem, 3.15vw, 0.8125rem) !important;
		line-height: 1.45 !important;
		font-weight: 300 !important;
	}

	body.elementor-page-12629 #cosae.elementor-element-6f626d7 .elementor-element-85d2350 h2.elementor-heading-title {
		font-size: clamp(1.0625rem, 4.6vw, 1.25rem) !important;
		line-height: 1.28 !important;
		font-weight: 300 !important;
	}

	body.elementor-page-12629 #cosae.elementor-element-6f626d7 .elementor-element-592b028 h2.elementor-heading-title {
		font-size: clamp(0.8125rem, 3.4vw, 0.875rem) !important;
		line-height: 1.5 !important;
		font-weight: 300 !important;
	}

	body.elementor-page-12629 #cosae.elementor-element-6f626d7 .elementor-element-e68ec6d h2.elementor-heading-title {
		font-size: clamp(1.0625rem, 4.6vw, 1.25rem) !important;
		line-height: 1.22 !important;
		font-weight: 600 !important;
	}

	body.elementor-page-12629 #cosae.elementor-element-6f626d7 .elementor-element-2badec7 h2.elementor-heading-title {
		font-size: clamp(0.8125rem, 3.4vw, 0.875rem) !important;
		line-height: 1.5 !important;
		font-weight: 300 !important;
	}

	body.elementor-page-12629 #cosae.elementor-element-6f626d7 .elementor-element-ebfd9c1 h2.elementor-heading-title {
		font-size: clamp(0.9375rem, 4vw, 1.0625rem) !important;
		line-height: 1.25 !important;
		font-weight: 600 !important;
	}

	body.elementor-page-12629 #cosae.elementor-element-6f626d7 :is(
			.elementor-element-154c247,
			.elementor-element-0486181,
			.elementor-element-b040cce,
			.elementor-element-beb7e07,
			.elementor-element-510eee5
		)
		h2.elementor-heading-title {
		font-size: clamp(0.75rem, 3.15vw, 0.8125rem) !important;
		line-height: 1.45 !important;
		font-weight: 300 !important;
	}

	body.elementor-page-12629 #cosae.elementor-element-6f626d7 .elementor-element-c183abe h2.elementor-heading-title {
		font-size: clamp(0.875rem, 3.6vw, 0.9375rem) !important;
		line-height: 1.4 !important;
		font-weight: 300 !important;
	}

	body.elementor-page-12629 #cosae.elementor-element-6f626d7 .elementor-widget-text-editor,
	body.elementor-page-12629 #cosae.elementor-element-6f626d7 .elementor-widget-text-editor :is(p, li) {
		font-size: clamp(0.75rem, 3.15vw, 0.8125rem) !important;
		line-height: 1.45 !important;
	}

	/* Sezione #cosatrovi — titolo, intro e card (markup h2) */
	body.elementor-page-12629 #cosatrovi.elementor-element-09e2291 .elementor-widget-heading .elementor-heading-title {
		max-width: 100%;
		overflow-wrap: anywhere;
		word-break: break-word;
		white-space: normal !important;
	}

	body.elementor-page-12629 #cosatrovi.elementor-element-09e2291 .elementor-widget-heading h2.elementor-heading-title {
		font-size: clamp(0.75rem, 3.15vw, 0.8125rem) !important;
		line-height: 1.45 !important;
		font-weight: 300 !important;
	}

	body.elementor-page-12629 #cosatrovi.elementor-element-09e2291 .elementor-element-0462235 h2.elementor-heading-title {
		font-size: clamp(1.0625rem, 4.6vw, 1.25rem) !important;
		line-height: 1.22 !important;
		font-weight: 600 !important;
	}

	body.elementor-page-12629 #cosatrovi.elementor-element-09e2291 .elementor-element-7ba3120 h2.elementor-heading-title,
	body.elementor-page-12629 #cosatrovi.elementor-element-09e2291 .elementor-element-8a850cc h2.elementor-heading-title {
		font-size: clamp(0.8125rem, 3.4vw, 0.875rem) !important;
		line-height: 1.5 !important;
		font-weight: 300 !important;
	}

	body.elementor-page-12629 #cosatrovi.elementor-element-09e2291 :is(
			.elementor-element-337a000,
			.elementor-element-852be4b,
			.elementor-element-c4ab167
		)
		h2.elementor-heading-title {
		font-size: clamp(1.0625rem, 4.6vw, 1.25rem) !important;
		line-height: 1.2 !important;
		font-weight: 600 !important;
	}

	body.elementor-page-12629 #cosatrovi.elementor-element-09e2291 :is(
			.elementor-element-42fefe6,
			.elementor-element-f65b0f0,
			.elementor-element-a862c2b
		)
		h2.elementor-heading-title {
		font-size: clamp(0.75rem, 3.15vw, 0.8125rem) !important;
		line-height: 1.45 !important;
		font-weight: 300 !important;
	}

	body.elementor-page-12629 #cosatrovi.elementor-element-09e2291 .elementor-widget-text-editor,
	body.elementor-page-12629 #cosatrovi.elementor-element-09e2291 .elementor-widget-text-editor :is(p, li) {
		font-size: clamp(0.75rem, 3.15vw, 0.8125rem) !important;
		line-height: 1.45 !important;
	}

	/* Sezione #form — titoli + campi Elementor */
	body.elementor-page-12629 #form.elementor-element-0471331 .elementor-widget-heading .elementor-heading-title {
		max-width: 100%;
		overflow-wrap: anywhere;
		word-break: break-word;
		white-space: normal !important;
	}

	body.elementor-page-12629 #form.elementor-element-0471331 .elementor-widget-heading :is(h2, h3, p).elementor-heading-title {
		font-size: clamp(0.75rem, 3.15vw, 0.8125rem) !important;
		line-height: 1.45 !important;
		font-weight: 300 !important;
	}

	body.elementor-page-12629 #form.elementor-element-0471331 .elementor-element-c2268c7 h2.elementor-heading-title {
		font-size: clamp(1.0625rem, 4.6vw, 1.25rem) !important;
		line-height: 1.28 !important;
		font-weight: 300 !important;
	}

	body.elementor-page-12629 #form.elementor-element-0471331 .elementor-element-c27fa15 p.elementor-heading-title {
		font-size: clamp(0.8125rem, 3.4vw, 0.875rem) !important;
		line-height: 1.5 !important;
		font-weight: 300 !important;
	}

	body.elementor-page-12629 #form.elementor-element-0471331 .elementor-element-5533368 h3.elementor-heading-title {
		font-size: clamp(1rem, 4.2vw, 1.125rem) !important;
		line-height: 1.28 !important;
		font-weight: 600 !important;
	}

	body.elementor-page-12629 #form.elementor-element-0471331 .elementor-form .elementor-field-label,
	body.elementor-page-12629 #form.elementor-element-0471331 .elementor-form .elementor-field-textual,
	body.elementor-page-12629 #form.elementor-element-0471331 .elementor-form .elementor-select-fields,
	body.elementor-page-12629 #form.elementor-element-0471331 .elementor-form .elementor-button-text {
		font-size: clamp(0.8125rem, 3.4vw, 0.875rem) !important;
		line-height: 1.35 !important;
	}
}

/* Progetto Glossario JPD (12997) — hero #cosae: layout + tipografia mobile */
body.elementor-page-12997:not(.elementor-editor-active) .elementor.elementor-12997 {
	position: relative;
	z-index: 1;
	isolation: isolate;
}

@media (max-width: 1024px) {
	body.elementor-page-12997 #cosae.elementor-element-19b8d3c {
		flex-direction: column !important;
		flex-wrap: wrap !important;
		align-items: stretch !important;
		--padding-left: clamp(0.75rem, 3.2vw, 1rem) !important;
		--padding-right: clamp(0.75rem, 3.2vw, 1rem) !important;
		padding-left: clamp(0.75rem, 3.2vw, 1rem) !important;
		padding-right: clamp(0.75rem, 3.2vw, 1rem) !important;
	}

	body.elementor-page-12997 #cosae > .elementor-element-9606e04 {
		position: absolute !important;
		width: 1px !important;
		height: 1px !important;
		overflow: hidden !important;
		opacity: 0 !important;
		pointer-events: none !important;
		margin: 0 !important;
		padding: 0 !important;
		flex: 0 0 auto !important;
	}

	body.elementor-page-12997 #cosae > .aiop-about-us-hero__intro,
	body.elementor-page-12997 #cosae > .aiop-about-us-hero__media-wrap {
		flex: 1 1 100% !important;
		width: 100% !important;
		max-width: 100% !important;
		--width: 100% !important;
		min-width: 0 !important;
		position: relative;
		z-index: 2;
	}

	body.elementor-page-12997 #cosae .elementor-element-8120840 {
		position: relative;
		z-index: 2;
		width: 100% !important;
	}
}

@media (max-width: 767px) {
	body.elementor-page-12997 #cosae .elementor-widget-heading .elementor-heading-title {
		max-width: 100%;
		overflow-wrap: anywhere;
		word-break: break-word;
		white-space: normal !important;
	}

	body.elementor-page-12997 #cosae .elementor-element-5f5ef13 :is(h6, .elementor-heading-title) {
		font-size: clamp(0.875rem, 3.8vw, 1rem) !important;
		line-height: 1.3 !important;
		font-weight: 500 !important;
	}

	body.elementor-page-12997 #cosae .elementor-element-d5cadd7 h1.elementor-heading-title {
		font-size: clamp(1.375rem, 5.8vw, 1.625rem) !important;
		line-height: 1.12 !important;
		font-weight: 300 !important;
	}

	body.elementor-page-12997 #cosae .elementor-element-efa8c41 div.elementor-heading-title {
		font-size: clamp(0.875rem, 3.6vw, 0.9375rem) !important;
		line-height: 1.45 !important;
		font-weight: 300 !important;
	}

	body.elementor-page-12997 #cosae .elementor-widget-text-editor,
	body.elementor-page-12997 #cosae .elementor-widget-text-editor :is(p, li) {
		font-size: clamp(0.75rem, 3.15vw, 0.8125rem) !important;
		line-height: 1.45 !important;
	}

	body.elementor-page-12997 #cosae .elementor-widget-button .elementor-button,
	body.elementor-page-12997 #cosae .elementor-widget-button .elementor-button-text {
		font-size: clamp(0.6875rem, 2.9vw, 0.75rem) !important;
		line-height: 1.2 !important;
	}

	/* Hero media — card download PDF (widget Partecipanti+Docenti) */
	body.elementor-page-12997 #cosae .elementor-element-3ad5489 .aiop-pd__card .aiop-pd__text {
		max-width: 100%;
		overflow-wrap: anywhere;
		word-break: break-word;
	}

	body.elementor-page-12997 #cosae .elementor-element-3ad5489 .aiop-pd__text--1 {
		font-size: clamp(1.0625rem, 4.6vw, 1.25rem) !important;
		line-height: 1.22 !important;
		font-weight: 500 !important;
		letter-spacing: -0.01em !important;
	}

	body.elementor-page-12997 #cosae .elementor-element-3ad5489 .aiop-pd__text--2 {
		font-size: clamp(1rem, 4.2vw, 1.125rem) !important;
		line-height: 1.22 !important;
		font-weight: 300 !important;
	}

	body.elementor-page-12997 #cosae .elementor-element-3ad5489 .aiop-pd__text--3 {
		font-size: clamp(0.75rem, 3.15vw, 0.8125rem) !important;
		line-height: 1.45 !important;
		font-weight: 400 !important;
	}

	body.elementor-page-12997 #cosae .elementor-element-3ad5489 .aiop-pd__button,
	body.elementor-page-12997 #cosae .elementor-element-3ad5489 .aiop-pd__button-text {
		font-size: clamp(0.6875rem, 2.9vw, 0.75rem) !important;
		line-height: 1.2 !important;
	}

	/* Sezione #ilproblema — gerarchia tipografica (markup h2) */
	body.elementor-page-12997 #ilproblema.elementor-element-6f626d7 .elementor-widget-heading .elementor-heading-title {
		max-width: 100%;
		overflow-wrap: anywhere;
		word-break: break-word;
		white-space: normal !important;
	}

	body.elementor-page-12997 #ilproblema.elementor-element-6f626d7 .elementor-widget-heading h2.elementor-heading-title {
		font-size: clamp(0.75rem, 3.15vw, 0.8125rem) !important;
		line-height: 1.45 !important;
		font-weight: 300 !important;
	}

	body.elementor-page-12997 #ilproblema.elementor-element-6f626d7 .elementor-element-85d2350 h2.elementor-heading-title {
		font-size: clamp(1.0625rem, 4.6vw, 1.25rem) !important;
		line-height: 1.28 !important;
		font-weight: 300 !important;
	}

	body.elementor-page-12997 #ilproblema.elementor-element-6f626d7 .elementor-element-592b028 h2.elementor-heading-title {
		font-size: clamp(0.8125rem, 3.4vw, 0.875rem) !important;
		line-height: 1.5 !important;
		font-weight: 300 !important;
	}

	body.elementor-page-12997 #ilproblema.elementor-element-6f626d7 .elementor-element-e68ec6d h2.elementor-heading-title {
		font-size: clamp(1.0625rem, 4.6vw, 1.25rem) !important;
		line-height: 1.22 !important;
		font-weight: 600 !important;
	}

	body.elementor-page-12997 #ilproblema.elementor-element-6f626d7 .elementor-element-ebfd9c1 h2.elementor-heading-title {
		font-size: clamp(0.9375rem, 4vw, 1.0625rem) !important;
		line-height: 1.25 !important;
		font-weight: 600 !important;
	}

	body.elementor-page-12997 #ilproblema.elementor-element-6f626d7 .elementor-widget-text-editor,
	body.elementor-page-12997 #ilproblema.elementor-element-6f626d7 .elementor-widget-text-editor :is(p, li) {
		font-size: clamp(0.75rem, 3.15vw, 0.8125rem) !important;
		line-height: 1.45 !important;
	}

	/* Sezione #cosatrovi — titolo, intro e card statistiche (markup h2) */
	body.elementor-page-12997 #cosatrovi.elementor-element-09e2291 .elementor-widget-heading .elementor-heading-title {
		max-width: 100%;
		overflow-wrap: anywhere;
		word-break: break-word;
		white-space: normal !important;
	}

	body.elementor-page-12997 #cosatrovi.elementor-element-09e2291 .elementor-widget-heading h2.elementor-heading-title {
		font-size: clamp(0.75rem, 3.15vw, 0.8125rem) !important;
		line-height: 1.45 !important;
		font-weight: 300 !important;
	}

	body.elementor-page-12997 #cosatrovi.elementor-element-09e2291 .elementor-element-0462235 h2.elementor-heading-title {
		font-size: clamp(1.0625rem, 4.6vw, 1.25rem) !important;
		line-height: 1.22 !important;
		font-weight: 600 !important;
	}

	body.elementor-page-12997 #cosatrovi.elementor-element-09e2291 .elementor-element-7ba3120 h2.elementor-heading-title {
		font-size: clamp(0.8125rem, 3.4vw, 0.875rem) !important;
		line-height: 1.5 !important;
		font-weight: 300 !important;
	}

	body.elementor-page-12997 #cosatrovi.elementor-element-09e2291 :is(
			.elementor-element-337a000,
			.elementor-element-852be4b,
			.elementor-element-9c6d17f,
			.elementor-element-918b077
		)
		h2.elementor-heading-title {
		font-size: clamp(1.0625rem, 4.6vw, 1.25rem) !important;
		line-height: 1.2 !important;
		font-weight: 600 !important;
	}

	body.elementor-page-12997 #cosatrovi.elementor-element-09e2291 .elementor-widget-text-editor,
	body.elementor-page-12997 #cosatrovi.elementor-element-09e2291 .elementor-widget-text-editor :is(p, li) {
		font-size: clamp(0.75rem, 3.15vw, 0.8125rem) !important;
		line-height: 1.45 !important;
	}

	/* Sezione #form — titoli + campi Elementor */
	body.elementor-page-12997 #form.elementor-element-0471331 .elementor-widget-heading .elementor-heading-title {
		max-width: 100%;
		overflow-wrap: anywhere;
		word-break: break-word;
		white-space: normal !important;
	}

	body.elementor-page-12997 #form.elementor-element-0471331 .elementor-widget-heading :is(h2, h3, p).elementor-heading-title {
		font-size: clamp(0.75rem, 3.15vw, 0.8125rem) !important;
		line-height: 1.45 !important;
		font-weight: 300 !important;
	}

	body.elementor-page-12997 #form.elementor-element-0471331 .elementor-element-c2268c7 h2.elementor-heading-title {
		font-size: clamp(1.0625rem, 4.6vw, 1.25rem) !important;
		line-height: 1.28 !important;
		font-weight: 300 !important;
	}

	body.elementor-page-12997 #form.elementor-element-0471331 .elementor-element-5533368 h3.elementor-heading-title {
		font-size: clamp(1rem, 4.2vw, 1.125rem) !important;
		line-height: 1.28 !important;
		font-weight: 600 !important;
	}

	body.elementor-page-12997 #form.elementor-element-0471331 .elementor-form .elementor-field-label,
	body.elementor-page-12997 #form.elementor-element-0471331 .elementor-form .elementor-field-textual,
	body.elementor-page-12997 #form.elementor-element-0471331 .elementor-form .elementor-select-fields,
	body.elementor-page-12997 #form.elementor-element-0471331 .elementor-form .elementor-button-text {
		font-size: clamp(0.8125rem, 3.4vw, 0.875rem) !important;
		line-height: 1.35 !important;
	}
}
