/* Webinar e area riservata — presentazione.
 *
 * Questo foglio AGGIUNGE soltanto: la cornice viene da article.css (pagina
 * articolo per la landing, indice blog per l'archivio, card .imo-rel-card) e
 * i campi dei moduli da imo-eventi.css (.imo-evt__campo, .imo-evt__invia…).
 *
 * Regole di progetto applicate:
 *   1. selettori a due classi: il kit Elementor colpisce con
 *      `.elementor-kit-6 button/h1/h2/a`, che a una classe vincerebbe
 *      (gotcha 6.32-6.34, 6.37, 6.61);
 *   2. testo in rem; spaziature di struttura in px sotto i 767px (gotcha S9);
 *   3. bottoni piatti: si azzerano background-image e box-shadow che il kit
 *      inietta (gradiente e alone), come in imo-eventi.css;
 *   4. colonne con minmax(0, 1fr), mai 1fr nudo (gotcha S8).
 */

:is(.imo-wb, .imo-mb, .imo-wb-archivio) {
	--imo-wb-blu: #004B87;
	--imo-wb-scuro: #082B3B;
	--imo-wb-testo: #0D1F29;
	--imo-wb-arancio: #D37A21;
	--imo-wb-arancio-hover: #E3912D;
	--imo-wb-campo: #F1F3F5;
	--imo-wb-grigio: #DAD8D2;
	--imo-wb-art: #0C3D4F;
	--imo-wb-ok: #1E6B3A;
	--imo-wb-errore: #B3261E;
}

/* ---- Bottone e link d'azione (stessa forma di .imo-evt__invia) ------- */

:is(.imo-wb, .imo-mb, .imo-wb-archivio) .imo-wb__bottone,
.imo-mb .imo-mb__bottone {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	min-height: 56px;
	padding: 1rem 1.75rem;
	font-family: Poppins, sans-serif;
	font-size: 1.0625rem;
	font-weight: 600;
	line-height: 1.2;
	text-transform: uppercase;
	letter-spacing: 0.03em;
	text-decoration: none;
	color: var(--imo-wb-testo);
	background-color: var(--imo-wb-arancio);
	background-image: none;
	border: 0;
	border-radius: 8px;
	box-shadow: none;
	cursor: pointer;
}

:is(.imo-wb, .imo-mb, .imo-wb-archivio) .imo-wb__bottone:hover,
:is(.imo-wb, .imo-mb, .imo-wb-archivio) .imo-wb__bottone:focus,
.imo-mb .imo-mb__bottone:hover,
.imo-mb .imo-mb__bottone:focus {
	color: var(--imo-wb-testo);
	background-color: var(--imo-wb-arancio-hover);
	background-image: none;
	box-shadow: none;
}

:is(.imo-wb, .imo-mb, .imo-wb-archivio) .imo-wb__bottone:focus-visible,
.imo-mb .imo-mb__bottone:focus-visible {
	outline: 3px solid var(--imo-wb-blu);
	outline-offset: 3px;
}

:is(.imo-wb, .imo-mb, .imo-wb-archivio) .imo-wb__link,
.imo-mb .imo-mb__link {
	font-family: Poppins, sans-serif;
	font-size: 1rem;
	font-weight: 600;
	color: var(--imo-wb-blu);
	text-decoration: underline;
	text-underline-offset: 3px;
}

/* ======================================================================
 * Landing del webinar (dentro .imo-post, cornice di article.css)
 * ==================================================================== */

.imo-wb .imo-wb-hero {
	display: grid;
	grid-template-columns: minmax(0, 1.25fr) minmax(0, 1fr);
	gap: 48px;
	align-items: center;
}

.imo-wb .imo-wb-hero:not(:has(.imo-wb-hero__media)) {
	grid-template-columns: minmax(0, 1fr);
	max-width: 900px;
}

.imo-wb .imo-wb-hero__testo {
	display: flex;
	flex-direction: column;
	align-items: flex-start;
	gap: 24px;
}

/* ---- Scheda del webinar (modello: bozza approvata da Marco, 2026-10-02) ----
   Fondo chiaro come nella bozza: sul grigio #DAD8D2 dell'articolo nessun arancio
   regge 4,5:1 col testo piccolo; qui l'occhiello usa #A85A14 (4,65:1 su #F4F5F6),
   un gradino più scuro dell'arancio di sistema. */

.imo-wb .imo-hero {
	background: #F4F5F6;
}

.imo-wb .imo-wb-pillola {
	display: inline-flex;
	flex-wrap: wrap;
	align-items: center;
	gap: 6px 28px;
	margin: 0;
	padding: 12px 28px;
	border-radius: 999px;
	background: var(--imo-wb-blu);
	color: #FFFFFF;
	font-size: 0.9375rem;
	line-height: 1.3;
	text-transform: uppercase;
}

.imo-wb .imo-wb-pillola--replay,
.imo-wb .imo-wb-pillola--concluso {
	background: #3E4C57;
}

.imo-wb .imo-wb-pillola__tipo {
	font-weight: 700;
	letter-spacing: 0.14em;
}

.imo-wb .imo-wb-pillola__data {
	font-weight: 400;
	letter-spacing: 0.02em;
}

.imo-wb .imo-wb-occhiello {
	margin: 8px 0 -12px;
	font-size: 1rem;
	font-weight: 600;
	color: #A85A14;
}

.imo-post .imo-hero__title.imo-wb-titolo {
	font-family: "Arapey", serif;
	font-size: 2.75rem;
	font-weight: 400;
	line-height: 1.2;
	color: var(--imo-wb-blu);
}

.imo-wb .imo-wb-relatore {
	display: flex;
	align-items: center;
	gap: 16px;
}

.imo-wb .imo-wb-relatore__avatar {
	display: flex;
	align-items: center;
	justify-content: center;
	flex: none;
	width: 56px;
	height: 56px;
	border-radius: 50%;
	background: #E6EEF5;
	color: var(--imo-wb-blu);
	font-size: 1.0625rem;
	font-weight: 700;
	letter-spacing: 0.04em;
}

.imo-wb .imo-wb-relatore__testo {
	display: flex;
	flex-direction: column;
	margin: 0;
}

.imo-wb .imo-wb-relatore__label {
	font-size: 0.9375rem;
	color: #3E4C57;
}

.imo-wb .imo-wb-relatore__nome {
	font-size: 1.1875rem;
	font-weight: 700;
	line-height: 1.35;
	color: var(--imo-wb-testo);
}

.imo-post .imo-hero__intro.imo-wb-descrizione-breve {
	max-width: 46rem;
	font-size: 1.125rem;
	line-height: 1.75;
	color: #3E4C57;
}

.imo-wb .imo-wb-chip {
	display: flex;
	flex-wrap: wrap;
	gap: 12px;
	margin: 0;
	padding: 0;
	list-style: none;
}

.imo-wb .imo-wb-chip__voce {
	display: inline-flex;
	align-items: center;
	gap: 12px;
	min-height: 44px;
	padding: 8px 22px;
	border-radius: 999px;
	background: #E6EEF5;
	color: var(--imo-wb-blu);
	font-size: 1.0625rem;
}

.imo-wb .imo-wb-chip__voce::before {
	content: "";
	flex: none;
	width: 10px;
	height: 10px;
	border-radius: 50%;
	background: var(--imo-wb-blu);
}

.imo-wb .imo-wb-chip__voce--formato::before {
	background: var(--imo-wb-arancio);
}

.imo-wb .imo-wb-chip__voce--live::before {
	background: var(--imo-wb-errore);
	animation: imo-wb-pulsa 1.6s ease-in-out infinite;
}

@keyframes imo-wb-pulsa {
	50% { opacity: 0.35; }
}

@media (prefers-reduced-motion: reduce) {
	.imo-wb .imo-wb-chip__voce--live::before { animation: none; }
}

.imo-wb .imo-wb-nota-admin {
	display: inline-flex;
	flex-wrap: wrap;
	align-items: center;
	gap: 4px 10px;
	margin: 0;
	padding: 10px 16px;
	border-radius: 8px;
	background: #E7F2EA;
	color: var(--imo-wb-ok);
	font-size: 0.9375rem;
	font-weight: 600;
}

.imo-wb .imo-wb-nota-admin::before {
	content: "✓";
	font-size: 1.25rem;
	line-height: 1;
}

.imo-wb .imo-wb-nota-admin--riservata {
	background: #E6EEF5;
	color: var(--imo-wb-blu);
}

.imo-wb .imo-wb-nota-admin--riservata::before {
	content: "•";
}

/* Bottone verso il form dello stand (convegni): solo amministratori, vedi single-imo-convegno.php. */
.imo-wb .imo-wb-nota-admin--stand {
	background: #E6EEF5;
	color: var(--imo-wb-blu);
	padding: 12px 16px;
	gap: 8px 16px;
}

.imo-wb .imo-wb-nota-admin--stand::before {
	content: none;
}

.imo-wb .imo-wb-nota-admin__chi {
	font-weight: 400;
	font-size: 0.8125rem;
}

/* «In programma»: un argomento per scheda, punto arancio decorativo. */
.imo-wb .imo-wb-programma {
	margin-top: 16px;
	padding-top: 32px;
	border-top: 1px solid #D5DBE0;
}

.imo-wb .imo-wb-programma__titolo {
	margin: 0 0 20px;
	font-family: Poppins, sans-serif;
	font-size: 1.375rem;
	font-weight: 700;
	line-height: 1.3;
	color: var(--imo-wb-blu);
}

.imo-wb .imo-wb-programma__lista {
	display: grid;
	grid-template-columns: repeat(auto-fit, minmax(min(100%, 260px), 1fr));
	gap: 20px;
	margin: 0;
	padding: 0;
	list-style: none;
}

.imo-wb .imo-wb-programma__voce {
	position: relative;
	padding: 40px 24px 24px;
	border: 1px solid #D5DBE0;
	border-radius: 12px;
	background: #FFFFFF;
	color: var(--imo-wb-testo);
	font-size: 1.0625rem;
	font-weight: 700;
	line-height: 1.45;
}

.imo-wb .imo-wb-programma__voce::before {
	content: "";
	position: absolute;
	top: 18px;
	left: 24px;
	width: 10px;
	height: 10px;
	border-radius: 50%;
	background: var(--imo-wb-arancio);
}


.imo-post .imo-wb-hero__media {
	margin: 0;
}

.imo-post .imo-wb-hero__media img {
	height: auto;
	aspect-ratio: 4 / 3;
	border-radius: 8px;
}

.imo-wb .imo-wb__cta {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	gap: 16px 24px;
}

.imo-wb .imo-wb__iscrivi {
	margin: 0;
}

.imo-wb .imo-wb__nota {
	font-size: 0.875rem;
	color: #3E4C57;
}

.imo-wb .imo-wb__iscritto {
	display: inline-flex;
	align-items: center;
	gap: 10px;
	margin: 0;
	min-height: 56px;
	padding: 0 20px;
	border: 2px solid var(--imo-wb-ok);
	border-radius: 8px;
	font-weight: 600;
	color: var(--imo-wb-ok);
	background: #FFFFFF;
}

.imo-wb .imo-wb__spunta {
	width: 18px;
	height: 10px;
	border-left: 3px solid currentColor;
	border-bottom: 3px solid currentColor;
	transform: translateY(-3px) rotate(-45deg);
}

.imo-wb .imo-wb__esito {
	margin: 0;
	padding: 14px 18px;
	border-left: 4px solid var(--imo-wb-ok);
	background: #E7F2EA;
	color: var(--imo-wb-ok);
	font-weight: 500;
}

.imo-wb .imo-wb__esito--errore {
	border-left-color: var(--imo-wb-errore);
	background: #FBEAE9;
	color: var(--imo-wb-errore);
}

/* ---- Corpo blu scuro --------------------------------------------------- */

.imo-wb .imo-wb__inner {
	max-width: 1288px;
	margin: 0 auto;
	padding: 0 24px;
	display: flex;
	flex-direction: column;
	gap: 64px;
}

.imo-wb .imo-wb__descrizione {
	max-width: 820px;
	padding: 0;
}

/* ---- Palco: sala d'attesa, diretta, replay ---------------------------- */

.imo-wb .imo-wb-palco {
	scroll-margin-top: 120px;
	color: #FFFFFF;
}

.imo-wb .imo-wb-palco__schermo {
	position: relative;
	aspect-ratio: 16 / 9;
	max-height: calc(100vh - 12rem);
	margin: 0 auto;
	border-radius: 8px;
	overflow: hidden;
	background: var(--imo-wb-scuro);
}

.imo-wb .imo-wb-palco__video {
	position: absolute;
	inset: 0;
	width: 100%;
	height: 100%;
	object-fit: cover;
}

/* Velatura scura in basso: protegge il testo del conto alla rovescia sul video. */
.imo-wb .imo-wb-palco__velo {
	position: absolute;
	inset: auto 0 0 0;
	padding: 120px 40px 36px;
	background: linear-gradient(to top, rgba(8, 43, 59, 0.94) 0%, rgba(8, 43, 59, 0.82) 55%, rgba(8, 43, 59, 0) 100%);
}

.imo-wb .imo-wb-palco__etichetta {
	margin: 0 0 12px;
	font-size: 0.875rem;
	font-weight: 600;
	letter-spacing: 0.06em;
	text-transform: uppercase;
	color: #FFFFFF;
}

.imo-wb .imo-wb-palco__nota,
.imo-wb .imo-wb-palco__data {
	margin: 12px 0 0;
	font-size: 1rem;
	color: #FFFFFF;
}

.imo-wb .imo-wb-palco__data {
	font-family: Arapey, serif;
	font-size: 2.25rem;
	line-height: 1.1;
}

.imo-wb .imo-wb-conto {
	display: flex;
	flex-wrap: wrap;
	gap: 12px;
	margin: 0;
}

.imo-wb .imo-wb-conto span {
	display: flex;
	flex-direction: column;
	align-items: center;
	min-width: 88px;
	padding: 12px 8px;
	border-radius: 8px;
	background: rgba(255, 255, 255, 0.12);
}

.imo-wb .imo-wb-conto b {
	font-family: Poppins, sans-serif;
	font-size: 2.25rem;
	font-weight: 600;
	line-height: 1.1;
	font-variant-numeric: tabular-nums;
}

.imo-wb .imo-wb-conto small {
	font-size: 0.8125rem;
	text-transform: uppercase;
	letter-spacing: 0.05em;
}

.imo-wb .imo-wb-palco__messaggio {
	padding: 48px;
	border-radius: 8px;
	background: var(--imo-wb-scuro);
	text-align: center;
}

.imo-wb .imo-wb-palco__messaggio p {
	margin: 0 0 16px;
	font-size: 1.0625rem;
}

.imo-wb .imo-wb-palco__messaggio .imo-wb-palco__etichetta {
	font-family: Arapey, serif;
	font-size: 2.25rem;
	font-weight: 400;
	line-height: 1.1;
	letter-spacing: 0;
	text-transform: none;
}

.imo-wb .imo-wb-palco__azioni {
	display: flex;
	flex-wrap: wrap;
	justify-content: center;
	align-items: center;
	gap: 16px 24px;
}

.imo-wb .imo-wb__link--chiaro {
	color: #FFFFFF;
}

.imo-wb .imo-wb-palco__admin {
	margin: 16px 0 0;
	padding: 12px 16px;
	border-radius: 8px;
	background: #FFF4E5;
	color: var(--imo-wb-testo);
	font-size: 0.9375rem;
}

/* Il riquadro dell'iframe lo dimensiona imo-diretta.php (gotcha D1/D2): qui solo l'angolo. */
.imo-wb .imo-diretta > div {
	border-radius: 8px;
	overflow: hidden;
}

/* ---- Replay e materiali ------------------------------------------------- */

.imo-wb .imo-wb-replay {
	display: flex;
	flex-direction: column;
	gap: 40px;
}

.imo-wb .imo-wb-replay__video {
	position: relative;
	aspect-ratio: 16 / 9;
	border-radius: 8px;
	overflow: hidden;
	background: #000000;
}

.imo-wb .imo-wb-replay__video :is(iframe, video) {
	position: absolute;
	inset: 0;
	width: 100%;
	height: 100%;
	border: 0;
}

.imo-wb .imo-wb-materiali__titolo {
	margin: 0 0 20px;
	font-family: Poppins, sans-serif;
	font-size: 1.375rem;
	font-weight: 700;
	line-height: 1.5;
	color: #FFFFFF;
}

.imo-wb .imo-wb-materiali__lista {
	display: grid;
	grid-template-columns: repeat(auto-fill, minmax(min(100%, 320px), 1fr));
	gap: 16px;
	margin: 0;
	padding: 0;
	list-style: none;
}

.imo-wb .imo-wb-materiali__file {
	display: flex;
	flex-direction: column;
	gap: 4px;
	padding: 20px 24px 20px 64px;
	border-radius: 8px;
	background: var(--imo-wb-grigio);
	color: var(--imo-wb-testo);
	text-decoration: none;
	position: relative;
}

.imo-wb .imo-wb-materiali__file::before {
	content: "PDF";
	position: absolute;
	left: 16px;
	top: 20px;
	width: 36px;
	height: 44px;
	border-radius: 4px;
	background: var(--imo-wb-blu);
	color: #FFFFFF;
	font-size: 0.6875rem;
	font-weight: 700;
	line-height: 44px;
	text-align: center;
}

.imo-wb .imo-wb-materiali__file:hover .imo-wb-materiali__nome,
.imo-wb .imo-wb-materiali__file:focus-visible .imo-wb-materiali__nome {
	text-decoration: underline;
}

.imo-wb .imo-wb-materiali__file:focus-visible {
	outline: 3px solid var(--imo-wb-arancio);
	outline-offset: 2px;
}

.imo-wb .imo-wb-materiali__nome {
	font-weight: 600;
	color: var(--imo-wb-blu);
}

.imo-wb .imo-wb-materiali__info {
	font-size: 0.875rem;
	color: #3E4C57;
}

/* ======================================================================
 * Card webinar (componente .imo-rel-card del blog) e griglie
 * ==================================================================== */

:is(.imo-post, .imo-blog-index) .imo-wb-card .imo-rel-card__body {
	flex: 1 1 auto;
}

:is(.imo-post, .imo-blog-index) .imo-wb-card .imo-rel-card__link {
	margin-top: auto;
	font-weight: 600;
}

:is(.imo-post, .imo-blog-index) .imo-wb-card--live .imo-wb-card__stato {
	color: var(--imo-wb-errore, #B3261E);
}

:is(.imo-post, .imo-blog-index) :is(.imo-wb-card--replay, .imo-wb-card--concluso) .imo-wb-card__stato {
	color: #3E4C57;
}

:is(.imo-post, .imo-blog-index) .imo-wb-card__relatore {
	margin: 0;
	font-size: 0.875rem;
	color: #3E4C57;
}

:is(.imo-post, .imo-blog-index) .imo-wb-card__riservato {
	padding: 2px 8px;
	border-radius: 4px;
	background: var(--imo-wb-scuro, #082B3B);
	color: #FFFFFF;
	font-size: 0.6875rem;
	font-weight: 600;
	text-transform: uppercase;
}

/* Archivio: la fascia scura senza filtri ospita solo il titolo di sezione. */
.imo-wb-archivio .imo-wb-archivio__fascia {
	padding-bottom: 0;
	gap: 12px;
}

/* Hero senza immagine (es. /convegni/): niente spazio per l'immagine che sborda sulla fascia scura. */
.imo-wb-archivio .imo-blog-hero:not(:has(.imo-blog-hero__media)) + .imo-wb-archivio__fascia {
	padding-top: 56px;
}

.imo-wb-archivio .imo-wb-archivio__fascia--seconda {
	padding-top: 32px;
}

.imo-wb-archivio .imo-wb-archivio__nota {
	margin: 0;
	color: #FFFFFF;
	font-size: 1rem;
}

.imo-wb-archivio .imo-wb-archivio__accesso {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	gap: 16px 24px;
	margin: 0;
}

.imo-wb-archivio .imo-blog-griglia__inner {
	grid-template-columns: repeat(3, minmax(0, 1fr));
	max-width: 1288px;
}

/* Area riservata: griglia di card su fondo bianco. */
.imo-mb .imo-wb-griglia {
	display: grid;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	gap: 24px;
}

/* ======================================================================
 * Area riservata e moduli di accesso (dentro .imo-evt, campi di imo-eventi.css)
 * ==================================================================== */

.imo-mb.imo-mb--stretto {
	max-width: 560px;
	margin-inline: auto;
}

/* Registrazione (due colonne): centrata come l'accesso, larga quanto il modulo. */
.imo-mb:not(.imo-mb--stretto):not(.imo-mb--area) {
	max-width: 860px;
	margin-inline: auto;
}

.imo-mb .imo-mb__form {
	max-width: 860px;
}

.imo-mb .imo-mb__testa {
	margin-bottom: 32px;
}

.imo-mb .imo-mb__titolo {
	margin: 0 0 12px;
	font-family: Arapey, serif;
	font-size: 3rem;
	font-weight: 400;
	line-height: 1.05;
	color: var(--imo-wb-blu);
}

.imo-mb .imo-mb__sotto {
	margin: 0;
	font-size: 1.0625rem;
	color: var(--imo-wb-testo);
}

.imo-mb .imo-mb__h2 {
	margin: 0 0 20px;
	font-family: Poppins, sans-serif;
	font-size: 1.375rem;
	font-weight: 600;
	line-height: 1.3;
	color: var(--imo-wb-blu);
}

.imo-mb .imo-mb__griglia--una {
	grid-template-columns: minmax(0, 1fr);
	margin-bottom: 24px;
}

.imo-mb .imo-mb__aiuto {
	margin: 6px 0 0;
	font-size: 0.875rem;
	color: #3E4C57;
}

.imo-mb .imo-mb__azioni {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	gap: 16px 28px;
	margin-top: 16px;
}

.imo-mb .imo-mb__alternativa {
	margin: 32px 0 0;
	padding-top: 24px;
	border-top: 1px solid #D5DBE0;
}

.imo-mb .imo-mb__alternativa a {
	color: var(--imo-wb-blu);
	font-weight: 600;
	text-decoration: underline;
	text-underline-offset: 3px;
}

.imo-mb .imo-mb__ok {
	margin: 0 0 20px;
	padding: 14px 18px;
	border-left: 4px solid var(--imo-wb-ok);
	background: #E7F2EA;
	color: var(--imo-wb-ok);
	font-weight: 500;
}

.imo-mb .imo-mb__perwebinar {
	display: flex;
	flex-direction: column;
	gap: 4px;
	margin: 0 0 28px;
	padding: 20px 24px;
	border-left: 4px solid var(--imo-wb-blu);
	border-radius: 0 8px 8px 0;
	background: #E6EEF5;
}

.imo-mb .imo-mb__perwebinar-label {
	font-size: 0.8125rem;
	font-weight: 600;
	letter-spacing: 0.06em;
	text-transform: uppercase;
	color: var(--imo-wb-blu);
}

.imo-mb .imo-mb__perwebinar-nota {
	font-size: 0.9375rem;
	color: #3E4C57;
}

/* Interlinea dei consensi (difetto E3 del form eventi: qui corretto alla fonte del componente riusato). */
.imo-mb .imo-evt__check span {
	line-height: 1.45;
}

/* Navigazione dell'area riservata */
.imo-mb .imo-mb__nav {
	margin: 0 0 40px;
	border-bottom: 1px solid #D5DBE0;
}

.imo-mb .imo-mb__nav ul {
	display: flex;
	flex-wrap: wrap;
	gap: 8px;
	margin: 0;
	padding: 0 0 16px;
	list-style: none;
}

.imo-mb .imo-mb__nav a {
	display: inline-flex;
	align-items: center;
	min-height: 44px;
	padding: 8px 18px;
	border-radius: 22px;
	background: var(--imo-wb-campo);
	color: var(--imo-wb-testo);
	font-size: 0.9375rem;
	font-weight: 600;
	text-decoration: none;
}

.imo-mb .imo-mb__nav a:hover {
	background: #E6EEF5;
}

.imo-mb .imo-mb__nav a[aria-current="page"] {
	background: var(--imo-wb-blu);
	color: #FFFFFF;
}

.imo-mb .imo-mb__nav a:focus-visible {
	outline: 3px solid var(--imo-wb-arancio);
	outline-offset: 2px;
}

.imo-mb .imo-mb__nav-esci {
	margin-left: auto;
}

.imo-mb .imo-mb__nav-esci a {
	background: transparent;
	color: var(--imo-wb-blu);
	text-decoration: underline;
	text-underline-offset: 3px;
}

.imo-mb .imo-mb__sezione {
	margin-bottom: 48px;
}

.imo-mb .imo-mb__vuoto {
	margin: 0;
	padding: 24px;
	border-radius: 8px;
	background: var(--imo-wb-campo);
}

.imo-mb .imo-mb__vuoto a {
	color: var(--imo-wb-blu);
	font-weight: 600;
}

.imo-mb .imo-mb__colonne {
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: 32px;
	align-items: start;
}

.imo-mb .imo-mb__riquadro {
	padding: 32px;
	border-radius: 8px;
	border: 1px solid #D5DBE0;
}

.imo-mb .imo-mb__riquadro .imo-evt__invia {
	min-width: 0;
}

.imo-mb .imo-mb__etichetta {
	display: block;
	margin-bottom: 6px;
	font-size: 0.9375rem;
	font-weight: 600;
	letter-spacing: 0.04em;
	text-transform: uppercase;
}

.imo-mb .imo-mb__valore {
	margin: 0;
	font-size: 1.0625rem;
}

/* Invito ad accedere al posto di un blocco riservato */
.imo-mb__invito {
	padding: 32px;
	border-radius: 8px;
	background: #F1F3F5;
	font-family: Poppins, sans-serif;
	color: #0D1F29;
}

.imo-mb__invito .imo-mb__invito-azioni {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	gap: 16px 24px;
	margin: 16px 0 0;
}

/* ======================================================================
 * Tablet e mobile
 * ==================================================================== */

@media (max-width: 1024px) {
	.imo-wb .imo-wb-hero {
		grid-template-columns: minmax(0, 1fr);
		gap: 32px;
	}

	.imo-wb .imo-wb__inner {
		padding: 0 40px;
		gap: 48px;
	}

	.imo-wb-archivio .imo-blog-griglia__inner,
	.imo-mb .imo-wb-griglia {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}

	.imo-mb .imo-mb__colonne {
		grid-template-columns: minmax(0, 1fr);
	}
}

@media (max-width: 767px) {
	.imo-wb .imo-wb__inner {
		padding: 0 16px;
		gap: 40px;
	}

	.imo-post .imo-hero__title {
		font-size: 1.75rem;
	}

	/* Sul telefono il 16:9 è troppo basso per il conto alla rovescia: il video
	   diventa sfondo di un riquadro che cresce col testo. */
	.imo-wb .imo-wb-palco__schermo {
		aspect-ratio: auto;
		min-height: 360px;
		display: flex;
		align-items: flex-end;
	}

	.imo-wb .imo-wb-palco__velo {
		position: relative;
		width: 100%;
		padding: 96px 16px 20px;
	}

	.imo-wb .imo-wb-conto {
		gap: 8px;
	}

	.imo-wb .imo-wb-conto span {
		min-width: 0;
		flex: 1 1 0;
		padding: 10px 4px;
	}

	.imo-wb .imo-wb-conto b {
		font-size: 1.625rem;
	}

	.imo-wb .imo-wb-conto small {
		font-size: 0.6875rem;
	}

	.imo-wb .imo-wb-palco__messaggio {
		padding: 32px 16px;
	}

	.imo-wb-archivio .imo-blog-griglia__inner,
	.imo-mb .imo-wb-griglia {
		grid-template-columns: minmax(0, 1fr);
	}

	.imo-mb .imo-mb__titolo {
		font-size: 2.25rem;
	}

	.imo-mb .imo-mb__riquadro {
		padding: 20px 16px;
	}

	.imo-mb .imo-mb__nav-esci {
		margin-left: 0;
	}

	:is(.imo-wb, .imo-mb, .imo-wb-archivio) .imo-wb__bottone {
		width: 100%;
	}
}

/* Scheda del webinar su telefono. */
@media (max-width: 767px) {
	.imo-post .imo-hero__title.imo-wb-titolo {
		font-size: 2rem;
	}

	.imo-wb .imo-wb-pillola {
		padding: 10px 20px;
		gap: 4px 16px;
		font-size: 0.875rem;
	}

	.imo-wb .imo-wb-relatore__nome {
		font-size: 1.0625rem;
	}

	.imo-post .imo-hero__intro.imo-wb-descrizione-breve {
		font-size: 1rem;
	}

	.imo-wb .imo-wb-chip__voce {
		padding: 6px 16px;
		font-size: 1rem;
	}
}

/* Diretta in alto (2026-10-02): poco respiro attorno alla piattaforma, la misura la fa il JS del plugin. */
.imo-post.imo-wb .imo-wb__corpo--live {
	padding-top: 1rem;
	padding-bottom: 1rem;
}
.imo-post.imo-wb .imo-wb__corpo--live .imo-wb-palco {
	margin: 0;
}

/* Foto del profilo nell'area riservata (2026-10-03, riquadro di foto-profilo.php del plugin PRO). */
.imo-mb .imo-mb__foto-riga { display: flex; align-items: center; gap: 1rem; margin: 0 0 1rem; }
.imo-mb .imo-mb__foto-anteprima { flex: none; width: 6rem; height: 6rem; border-radius: 50%; overflow: hidden; border: 2px solid #004B87; background: #fff; display: flex; align-items: center; justify-content: center; }
.imo-mb .imo-mb__foto-anteprima img { width: 100%; height: 100%; object-fit: cover; display: block; }
.imo-mb .imo-mb__foto-vuota { font-family: Arapey, serif; font-size: 2.25rem; color: #004B87; line-height: 1; }
.imo-mb .imo-mb__foto-riga .imo-mb__aiuto { margin: 0; font-size: .9375rem; }
.imo-mb .imo-mb__foto input[type="file"] { font-size: 1rem; max-width: 100%; }
.imo-mb .imo-mb__foto .imo-evt__invia { margin-top: 1.25rem; }
.imo-mb .imo-mb__foto-togli { margin-top: .75rem; }
.imo-mb .imo-mb__foto-togli .imo-mb__link { background: none; background-image: none; box-shadow: none; border: 0; padding: 0; color: #005A9C; font-size: .9375rem; text-decoration: underline; text-underline-offset: 3px; cursor: pointer; }
.imo-mb .imo-mb__foto-togli .imo-mb__link:hover { color: #8E2A20; background: none; }
.imo-mb .imo-mb__foto-togli .imo-mb__link:focus-visible { outline: 3px solid #004B87; outline-offset: 2px; }

/* Area riservata: Panoramica a widget e menu con il profilo a destra (E27, Marco 2026-10-03).
 * Riquadri come la proposta grafica dell'area riservata: barra colorata in alto, titolo Arapey, righe compatte.
 * Contrasti: l'arancio non regge testo piccolo su bianco (3:1), quindi solo per barre e bordi; sui bottoni
 * arancio il testo è scuro (5,3:1), sul blu bianco (8,9:1). */

/* Menu: Profilo ed Esci a destra */
.imo-mb .imo-mb__nav .imo-mb__nav-profilo {
	margin-left: auto;
}

.imo-mb .imo-mb__nav .imo-mb__nav-esci {
	margin-left: 0;
}

.imo-mb .imo-mb__nav .imo-mb__nav-profilo a {
	gap: 8px;
	padding-left: 6px;
}

.imo-mb .imo-mb__nav .imo-mb__nav-avatar {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 32px;
	height: 32px;
	border-radius: 50%;
	background: var(--imo-wb-blu);
	color: #FFFFFF;
	font-size: 0.75rem;
	font-weight: 700;
	object-fit: cover;
}

.imo-mb .imo-mb__nav a[aria-current="page"] .imo-mb__nav-avatar {
	background: #FFFFFF;
	color: var(--imo-wb-blu);
}

.imo-mb .imo-mb__sotto-sezione {
	margin: -8px 0 20px;
	color: #4A5A66;
	font-size: 0.9375rem;
}

/* Cruscotto: tre colonne di riquadri */
.imo-mb .imo-mb-dash {
	display: grid;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	gap: 24px;
	align-items: start;
}

.imo-mb .imo-mb-dash__col {
	display: grid;
	gap: 24px;
	min-width: 0;
}

.imo-mb .imo-mb-w {
	position: relative;
	padding: 28px 24px 22px;
	border-radius: 10px;
	background: #FFFFFF;
	box-shadow: 0 1px 3px rgba(13, 31, 41, 0.12);
	overflow: hidden;
}

.imo-mb .imo-mb-w::before {
	content: "";
	position: absolute;
	inset: 0 0 auto 0;
	height: 5px;
	background: var(--imo-wb-grigio);
}

.imo-mb .imo-mb-w--arancio::before { background: var(--imo-wb-arancio); }
.imo-mb .imo-mb-w--blu::before { background: var(--imo-wb-blu); }

.imo-mb .imo-mb-w.imo-mb-w--scuro {
	background: var(--imo-wb-blu);
	color: #FFFFFF;
}

.imo-mb .imo-mb-w--scuro::before { background: var(--imo-wb-arancio); }

.imo-mb .imo-mb-w .imo-mb-w__h {
	margin: 0 0 4px;
	color: var(--imo-wb-blu);
	font-family: "Arapey", Georgia, serif;
	font-size: 1.5rem;
	font-weight: 400;
	line-height: 1.2;
}

.imo-mb .imo-mb-w--scuro .imo-mb-w__h {
	color: #FFFFFF;
}

.imo-mb .imo-mb-w .imo-mb-w__sotto {
	margin: 0 0 16px;
	color: #4A5A66;
	font-size: 0.875rem;
}

.imo-mb .imo-mb-w--scuro .imo-mb-w__sotto {
	display: inline-block;
	padding: 2px 10px;
	border-radius: 12px;
	background: var(--imo-wb-scuro);
	color: #FFFFFF;
}

.imo-mb .imo-mb-w .imo-mb-w__lista {
	display: grid;
	gap: 10px;
	margin: 0;
	padding: 0;
	list-style: none;
}

.imo-mb .imo-mb-w .imo-mb-w__riga {
	display: flex;
	align-items: center;
	gap: 12px;
	padding: 10px;
	border-radius: 8px;
	background: var(--imo-wb-campo);
}

.imo-mb .imo-mb-w .imo-mb-w__testo {
	display: flex;
	flex: 1 1 auto;
	flex-direction: column;
	gap: 2px;
	min-width: 0;
}

.imo-mb .imo-mb-w .imo-mb-w__titolo {
	color: var(--imo-wb-testo);
	font-size: 0.875rem;
	font-weight: 600;
	line-height: 1.3;
	text-decoration: none;
}

.imo-mb .imo-mb-w a.imo-mb-w__titolo:hover {
	color: var(--imo-wb-blu);
	text-decoration: underline;
}

.imo-mb .imo-mb-w .imo-mb-w__meta {
	color: #4A5A66;
	font-size: 0.75rem;
}

.imo-mb .imo-mb-w .imo-mb-w__data {
	display: flex;
	flex: 0 0 48px;
	flex-direction: column;
	align-items: center;
	justify-content: center;
	height: 48px;
	border-radius: 6px;
	background: #FFFFFF;
	color: var(--imo-wb-blu);
	font-size: 0.6875rem;
	text-transform: uppercase;
}

.imo-mb .imo-mb-w .imo-mb-w__data b {
	font-size: 1.125rem;
	line-height: 1;
}

.imo-mb .imo-mb-w .imo-mb-w__play {
	position: relative;
	flex: 0 0 72px;
	height: 44px;
	border-radius: 6px;
	background: var(--imo-wb-scuro) center / cover no-repeat;
}

.imo-mb .imo-mb-w .imo-mb-w__play::after {
	content: "";
	position: absolute;
	top: 50%;
	left: 50%;
	width: 26px;
	height: 26px;
	margin: -13px 0 0 -13px;
	border-radius: 50%;
	background: rgba(0, 75, 135, 0.92) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 10 10'%3E%3Cpath d='M3 2l5 3-5 3z' fill='%23fff'/%3E%3C/svg%3E") center / 12px no-repeat;
	box-shadow: 0 0 0 2px #FFFFFF;
}

.imo-mb .imo-mb-w .imo-mb-w__icona {
	display: inline-flex;
	flex: 0 0 40px;
	align-items: center;
	justify-content: center;
	height: 48px;
	border-radius: 4px;
	background: #FBE8D6;
	color: #8A4A10;
	font-size: 0.625rem;
	font-weight: 700;
}

.imo-mb .imo-mb-w .imo-mb-w__azione {
	flex: 0 0 auto;
	padding: 6px 14px;
	border: 2px solid transparent;
	border-radius: 6px;
	background-image: none;
	box-shadow: none;
	font-size: 0.8125rem;
	font-weight: 600;
	line-height: 1.2;
	text-decoration: none;
	white-space: nowrap;
}

.imo-mb .imo-mb-w .imo-mb-w__azione--blu {
	background-color: var(--imo-wb-blu);
	color: #FFFFFF;
}

.imo-mb .imo-mb-w .imo-mb-w__azione--arancio {
	background-color: var(--imo-wb-arancio);
	color: var(--imo-wb-testo);
}

.imo-mb .imo-mb-w .imo-mb-w__azione--contorno {
	border-color: var(--imo-wb-arancio);
	background-color: #FFFFFF;
	color: #8A4A10;
}

.imo-mb .imo-mb-w .imo-mb-w__azione:hover,
.imo-mb .imo-mb-w .imo-mb-w__azione:focus {
	background-color: var(--imo-wb-arancio-hover);
	border-color: var(--imo-wb-arancio-hover);
	color: var(--imo-wb-testo);
}

.imo-mb .imo-mb-w .imo-mb-w__azione:focus-visible,
.imo-mb .imo-mb-w .imo-mb-w__tutti:focus-visible,
.imo-mb .imo-mb-w .imo-mb-w__cta:focus-visible {
	outline: 3px solid var(--imo-wb-arancio);
	outline-offset: 2px;
}

.imo-mb .imo-mb-w .imo-mb-w__tutti {
	display: inline-block;
	margin-top: 16px;
	color: var(--imo-wb-blu);
	font-size: 0.875rem;
	font-weight: 600;
	text-decoration: none;
}

.imo-mb .imo-mb-w .imo-mb-w__tutti::after {
	content: " ▸";
}

.imo-mb .imo-mb-w .imo-mb-w__tutti:hover {
	text-decoration: underline;
}

.imo-mb .imo-mb-w .imo-mb-w__vuoto {
	margin: 0;
	padding: 14px;
	border-radius: 8px;
	background: var(--imo-wb-campo);
	font-size: 0.875rem;
}

/* Materiali */
.imo-mb .imo-mb-w .imo-mb-w__lista--materiali {
	gap: 8px;
}

.imo-mb .imo-mb-w .imo-mb-w__materiale a {
	display: grid;
	grid-template-columns: minmax(0, 1fr) auto;
	gap: 0 10px;
	padding: 10px 12px;
	border-radius: 8px;
	background: var(--imo-wb-campo);
	color: var(--imo-wb-testo);
	text-decoration: none;
}

.imo-mb .imo-mb-w .imo-mb-w__materiale-nome {
	font-size: 0.875rem;
	font-weight: 600;
}

.imo-mb .imo-mb-w .imo-mb-w__materiale-info {
	grid-column: 1;
	color: #4A5A66;
	font-size: 0.75rem;
}

.imo-mb .imo-mb-w .imo-mb-w__scarica-icona {
	grid-row: 1 / span 2;
	grid-column: 2;
	align-self: center;
	color: #8A4A10;
	font-size: 1.125rem;
	font-weight: 700;
}

/* Profilo */
.imo-mb .imo-mb-w .imo-mb-w__profilo {
	display: flex;
	align-items: center;
	gap: 14px;
}

.imo-mb .imo-mb-w .imo-mb-w__avatar {
	display: inline-flex;
	flex: 0 0 56px;
	align-items: center;
	justify-content: center;
	width: 56px;
	height: 56px;
	border-radius: 50%;
	object-fit: cover;
}

.imo-mb .imo-mb-w .imo-mb-w__avatar--sigla {
	background: var(--imo-wb-blu);
	color: #FFFFFF;
	font-size: 1.125rem;
	font-weight: 700;
}

.imo-mb .imo-mb-w .imo-mb-w__avviso {
	margin: 14px 0 0;
	padding: 10px 12px;
	border-left: 4px solid var(--imo-wb-arancio);
	border-radius: 4px;
	background: #FBF3EA;
	font-size: 0.8125rem;
}

/* Widget del tema: IMO Motion (sfondo blu, testo bianco) */
.imo-mb .imo-mb-w .imo-mb-w__app {
	display: flex;
	align-items: flex-start;
	gap: 16px;
	margin: 6px 0 18px;
}

.imo-mb .imo-mb-w .imo-mb-w__app svg {
	flex: 0 0 52px;
}

.imo-mb .imo-mb-w .imo-mb-w__app p {
	margin: 0;
	color: #FFFFFF;
	font-size: 0.875rem;
	line-height: 1.5;
}

.imo-mb .imo-mb-w .imo-mb-w__cta {
	display: inline-block;
	padding: 10px 20px;
	border-radius: 6px;
	background-color: var(--imo-wb-arancio);
	background-image: none;
	box-shadow: none;
	color: var(--imo-wb-testo);
	font-size: 0.875rem;
	font-weight: 600;
	text-decoration: none;
}

.imo-mb .imo-mb-w .imo-mb-w__cta:hover {
	background-color: var(--imo-wb-arancio-hover);
}

@media (max-width: 1100px) {
	.imo-mb .imo-mb-dash {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}
}

@media (max-width: 767px) {
	.imo-mb .imo-mb-dash {
		grid-template-columns: minmax(0, 1fr);
		gap: 16px;
	}

	.imo-mb .imo-mb-dash__col {
		gap: 16px;
	}

	.imo-mb .imo-mb__nav .imo-mb__nav-profilo {
		margin-left: 0;
	}
}

/* Profilo a due colonne indipendenti (E31, Marco 2026-10-03): ogni colonna cresce in verticale per conto suo, così
 * un riquadro basso non lascia un vuoto sotto di sé. Col. 1 I tuoi dati + Dati per gli attestati; col. 2 Foto +
 * Cambia password. Sotto i 1024px una colonna sola, nell'ordine riga per riga (style="order" dal plugin). */
.imo-mb .imo-mb__colonne.imo-mb__colonne--profilo {
	grid-template-columns: repeat(2, minmax(0, 1fr));
	align-items: start;
}

.imo-mb .imo-mb__colonne--profilo .imo-mb__col {
	display: flex;
	flex-direction: column;
	gap: 32px;
	min-width: 0;
}

@media (max-width: 1024px) {
	.imo-mb .imo-mb__colonne.imo-mb__colonne--profilo {
		grid-template-columns: minmax(0, 1fr);
	}

	.imo-mb .imo-mb__colonne--profilo .imo-mb__col {
		display: contents;
	}
}

@media (max-width: 767px) {
	.imo-mb .imo-mb__colonne.imo-mb__colonne--profilo {
		gap: 16px;
	}
}

/* Pagina «I miei attestati» (spostato dal plugin PRO il 2026-10-03: il frontend è del tema).
 * Etichetta del tipo in arancio scuro: l'arancio di sistema su bianco non regge il testo piccolo (3:1). */
.imo-mb .imo-mb-att {
	display: grid;
	gap: 12px;
	margin: 0;
	padding: 0;
	list-style: none;
}

.imo-mb .imo-mb-att .imo-mb-att__voce {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	justify-content: space-between;
	gap: 16px;
	padding: 16px 20px;
	border: 1px solid #D5DBE0;
	border-radius: 10px;
	background: #FFFFFF;
}

.imo-mb .imo-mb-att .imo-mb-att__voce--no {
	background: var(--imo-wb-campo);
}

.imo-mb .imo-mb-att .imo-mb-att__testo {
	display: flex;
	flex-direction: column;
	gap: 4px;
	min-width: 0;
}

.imo-mb .imo-mb-att .imo-mb-att__tipo {
	color: #8A4A10;
	font-size: 0.8125rem;
	font-weight: 600;
	letter-spacing: 0.04em;
	text-transform: uppercase;
}

.imo-mb .imo-mb-att .imo-mb-att__titolo {
	color: var(--imo-wb-blu);
	font-weight: 600;
	text-decoration: none;
}

.imo-mb .imo-mb-att a.imo-mb-att__titolo:hover {
	text-decoration: underline;
}

.imo-mb .imo-mb-att .imo-mb-att__info,
.imo-mb .imo-mb-att .imo-mb-att__motivo {
	color: #4A5A66;
	font-size: 0.9375rem;
}

.imo-mb .imo-mb-att .imo-mb-att__scarica {
	margin: 0;
	white-space: nowrap;
}

/* Archivi: schede e filtri (E34, Marco 2026-10-03) — /webinar/ e /convegni/ con cerca, categoria, date, schede
   Prossimi/Conclusi e card a tornate. Il markup è di pre_archivio_render() (plugin FREE); la fascia scura e i campi
   riusano i componenti del filtro del blog (.imo-blog-filtri, .imo-blog-cerca, .imo-blog-categoria). */

.imo-wb-archivio .pre-arch__filtri {
	padding-bottom: 40px;
	gap: 28px;
}

/* Hero senza immagine (es. /convegni/): niente spazio per l'immagine che sborda sulla fascia scura. */
.imo-wb-archivio .imo-blog-hero:not(:has(.imo-blog-hero__media)) + .pre-arch .pre-arch__filtri {
	padding-top: 56px;
}

/* Il kit Elementor dà ai select width:100%: qui stanno in riga con le date e i bottoni. */
.imo-wb-archivio .pre-arch select.imo-blog-categoria,
.imo-wb-archivio .pre-arch input.pre-arch__data {
	width: auto;
	max-width: 100%;
}

.imo-wb-archivio .pre-arch .pre-arch__date {
	display: flex;
	align-items: center;
	gap: 10px;
	color: #FFFFFF;
	font-size: 0.875rem;
	font-weight: 500;
}

.imo-wb-archivio .pre-arch input.pre-arch__data {
	background-color: transparent;
	box-shadow: none;
	border: 1px solid var(--imo-grigio, #C7CCD1);
	border-radius: 8px;
	padding: 9px 12px;
	color: #FFFFFF;
	font-family: "Poppins", sans-serif;
	font-size: 0.875rem;
	font-weight: 500;
	line-height: 1.5;
	color-scheme: dark;
}

.imo-wb-archivio .pre-arch input.pre-arch__data:focus-visible,
.imo-wb-archivio .pre-arch select.imo-blog-categoria:focus-visible {
	outline: 2px solid #FFFFFF;
	outline-offset: 2px;
}

/* Schede Prossimi / Conclusi: pillole sulla fascia scura. */
.imo-wb-archivio .pre-arch .pre-arch__schede {
	display: flex;
	flex-wrap: wrap;
	justify-content: center;
	gap: 12px;
	padding-top: 8px;
	border-top: 1px solid rgba(255, 255, 255, 0.2);
	width: 100%;
	max-width: 1240px;
}

.imo-wb-archivio .pre-arch .pre-arch__scheda {
	display: inline-flex;
	align-items: center;
	gap: 10px;
	margin-top: 20px;
	padding: 10px 22px;
	border: 1px solid #FFFFFF;
	border-radius: 999px;
	color: #FFFFFF;
	font-family: "Poppins", sans-serif;
	font-size: 1rem;
	font-weight: 600;
	text-decoration: none;
	background: transparent;
}

.imo-wb-archivio .pre-arch .pre-arch__scheda[aria-selected="true"] {
	background: #FFFFFF;
	color: var(--imo-wb-scuro, #082B3B);
}

.imo-wb-archivio .pre-arch .pre-arch__scheda:hover {
	background: rgba(255, 255, 255, 0.12);
}

.imo-wb-archivio .pre-arch .pre-arch__scheda[aria-selected="true"]:hover {
	background: #FFFFFF;
}

.imo-wb-archivio .pre-arch .pre-arch__scheda:focus-visible {
	outline: 2px solid #FFFFFF;
	outline-offset: 3px;
}

.imo-wb-archivio .pre-arch .pre-arch__conta {
	min-width: 1.75em;
	padding: 1px 8px;
	border-radius: 999px;
	background: rgba(255, 255, 255, 0.18);
	font-size: 0.8125rem;
	text-align: center;
}

.imo-wb-archivio .pre-arch .pre-arch__scheda[aria-selected="true"] .pre-arch__conta {
	background: var(--imo-wb-scuro, #082B3B);
	color: #FFFFFF;
}

.imo-wb-archivio .pre-arch .pre-arch__pannello[hidden],
.imo-wb-archivio .pre-arch .pre-arch__vuoto[hidden],
.imo-wb-archivio .pre-arch .pre-arch__altri[hidden] {
	display: none;
}

.imo-wb-archivio .pre-arch .pre-arch__nota {
	max-width: 1288px;
	margin: 0 auto 24px;
	padding: 0 24px;
	color: #FFFFFF;
	font-size: 1rem;
	text-align: center;
}

/* Colonne dall'impostazione del plugin, su schermo largo; tablet e telefono restano 2 e 1. */
@media (min-width: 1025px) {
	.imo-wb-archivio .pre-arch .pre-arch__griglia {
		grid-template-columns: repeat(var(--pre-arch-colonne, 3), minmax(0, 1fr));
	}
}

.imo-wb-archivio .pre-arch .pre-arch__sentinella {
	height: 1px;
}

.imo-wb-archivio .pre-arch .pre-arch__piu {
	margin: 32px 0 0;
	text-align: center;
}

.imo-wb-archivio .pre-arch .pre-arch__altri {
	display: inline-block;
	text-decoration: none;
}

@media (max-width: 767px) {
	.imo-wb-archivio .pre-arch select.imo-blog-categoria {
		width: 100%;
		min-width: 0;
	}

	/* Date: «Dal [ ]» e «al [ ]» su due righe allineate. */
	.imo-wb-archivio .pre-arch .pre-arch__date {
		display: grid;
		grid-template-columns: auto minmax(0, 1fr);
		width: 100%;
	}

	.imo-wb-archivio .pre-arch input.pre-arch__data {
		width: 100%;
	}

	/* Schede affiancate anche sul telefono. */
	.imo-wb-archivio .pre-arch .pre-arch__schede {
		flex-wrap: nowrap;
		gap: 8px;
	}

	.imo-wb-archivio .pre-arch .pre-arch__scheda {
		flex: 1 1 0;
		min-width: 0;
		justify-content: center;
		gap: 6px;
		padding: 10px 10px;
		font-size: 0.8125rem;
		text-align: center;
	}
}

/* Popup «arrivo da email» (Primo Round Eventi PRO): il plugin dà struttura e classi, il visual è qui (Marco,
   2026-10-04: «è il tema che fa il visual, non il plugin»). Il dialogo ha anche .imo-wb, così bottone e link sono
   quelli della landing (.imo-wb__bottone, .imo-wb__link) e valgono le variabili di colore del foglio. */
.pre-da-email.imo-wb {
	box-sizing: border-box;
	width: min(92vw, 560px);
	max-width: 560px;
	padding: 0; /* i rientri sono sul contenitore interno: un clic sul fondo del dialogo = fuori dal riquadro */
	border: 0;
	border-radius: 12px;
	background: #FFFFFF;
	color: var(--imo-wb-testo);
	box-shadow: 0 20px 60px rgba(8, 43, 59, 0.3);
	font-family: Poppins, sans-serif;
}

.pre-da-email.imo-wb::backdrop {
	background: rgba(8, 43, 59, 0.55);
}

.pre-da-email.imo-wb .pre-da-email__contenuto {
	padding: 32px 32px 26px;
}

/* X in alto a destra: bottone piatto (il kit di Elementor dà sfondo e alone a ogni button: si azzerano). */
.pre-da-email.imo-wb .pre-da-email__chiudi {
	position: absolute;
	top: 8px;
	right: 8px;
	width: 44px;
	height: 44px;
	padding: 0;
	border: 0;
	border-radius: 50%;
	background: transparent;
	background-image: none;
	box-shadow: none;
	font-family: Poppins, sans-serif;
	font-size: 1.75rem;
	font-weight: 400;
	line-height: 44px;
	text-align: center;
	color: var(--imo-wb-blu);
	cursor: pointer;
}

.pre-da-email.imo-wb .pre-da-email__chiudi:hover,
.pre-da-email.imo-wb .pre-da-email__chiudi:focus {
	color: var(--imo-wb-testo);
	background: var(--imo-wb-campo);
	background-image: none;
	box-shadow: none;
}

.pre-da-email.imo-wb .pre-da-email__chiudi:focus-visible {
	outline: 3px solid var(--imo-wb-blu);
	outline-offset: 2px;
}

.pre-da-email.imo-wb .pre-da-email__titolo {
	margin: 0 0 14px;
	padding-right: 36px; /* spazio per la X */
	font-family: Arapey, serif;
	font-size: 2.25rem;
	font-weight: 400;
	line-height: 1.15;
	text-transform: none;
	color: var(--imo-wb-blu);
}

.pre-da-email.imo-wb .pre-da-email__evento {
	margin: 0 0 12px;
	font-family: Poppins, sans-serif;
	font-size: 1.0625rem;
	font-weight: 600;
	line-height: 1.35;
	letter-spacing: 0.03em;
	text-transform: uppercase;
	color: var(--imo-wb-blu);
}

.pre-da-email.imo-wb .pre-da-email__testo {
	margin: 0 0 12px;
	font-size: 1rem;
	line-height: 1.55;
}

.pre-da-email.imo-wb .pre-da-email__azioni {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	gap: 16px 28px;
	margin-top: 22px;
}

@media (max-width: 767px) {
	.pre-da-email.imo-wb .pre-da-email__contenuto {
		padding: 24px 20px 20px;
	}

	.pre-da-email.imo-wb .pre-da-email__titolo {
		font-size: 1.75rem;
	}
}
/* Accessibilità (runbook 2026-10-21): il link «pagina dedicata» nella nota della sede dei convegni prendeva
   l'arancio di sistema del kit (#D37A21, 2,92:1 su #F4F5F6): stesso blu dei link della pagina (8,16:1). */
.imo-wb .imo-wb__nota a {
	color: var(--imo-wb-blu);
}
