/* =========================================================
   WinnerTeam - rifiniture. Estetica: FLAT, blocchi QUADRATI
   edge-to-edge, testo centrato. Font: Prata (titoli) + Inclusive Sans.
   ========================================================= */

body { -webkit-font-smoothing: antialiased; -moz-osx-font-smoothing: grayscale; }
h1, h2, h3 { text-wrap: balance; }
p { text-wrap: pretty; }
a { transition: color 0.2s ease; }

/* Scroll one-page con offset per header sticky */
html { scroll-behavior: smooth; }
[id] { scroll-margin-top: 84px; }
@media (prefers-reduced-motion: reduce) {
	html { scroll-behavior: auto; }
	* { transition: none !important; animation: none !important; }
}

/* SQUADRATO + FLAT: niente raggi né ombre sui blocchi colorati/foto */
.wp-block-group.has-background,
.wp-block-column.has-background,
.wt-placeholder,
.wp-block-post-featured-image img,
.wp-block-image img { border-radius: 0 !important; box-shadow: none !important; }

/* Eyebrow / etichette */
.wt-eyebrow {
	font-family: var(--wp--preset--font-family--rounded);
	text-transform: uppercase;
	letter-spacing: 0.13em;
	font-size: 1.05rem;
	font-weight: 700;
	margin-bottom: 0.8rem;
}

/* =========================================================
   MOSAICO: righe a due celle quadrate, attaccate, centrate
   ========================================================= */
.wt-band { gap: 0 !important; }
.wt-band > .wp-block-column.wt-cell {
	min-height: clamp(200px, 24vw, 320px);
	display: flex;
	flex-direction: column;
	align-items: center;
	justify-content: center;
	padding: clamp(1.75rem, 4vw, 3.5rem);
	text-align: center;
}
.wt-band > .wp-block-column.wt-cell > * { max-width: 30rem; }
/* celle-foto del mosaico: la foto riempie in modo responsive l'elemento già
   presente, ritagliata al volo in cover (niente stretch). */
.wt-band > .wp-block-column.wt-cell.wt-cell--photo {
	padding: 0 !important;
	position: relative;
	overflow: hidden;
}
.wt-band > .wp-block-column.wt-cell.wt-cell--photo > .wt-cell-img {
	position: absolute; inset: 0;
	max-width: none; width: 100%; height: 100%;
	object-fit: cover; object-position: center 30%; display: block;
}
/* foto sessione: soggetto (gruppo che alza le braccia) in basso → ritaglio più in basso */
.wt-band > .wp-block-column.wt-cell.wt-cell--photo > .wt-cell-img.wt-cell-img--low { object-position: center 62%; }
/* mobile: celle-foto impilate più alte (altrimenti risultano schiacciate) */
@media (max-width: 781px) {
	.wt-band > .wp-block-column.wt-cell.wt-cell--photo { min-height: clamp(300px, 82vw, 380px); }
	/* foto socie: a tutta larghezza sarebbero enormi → più piccole e centrate */
	.wt-photo--member { max-width: 240px; margin-left: auto; margin-right: auto; }
}

/* foto reali che sostituiscono i placeholder nelle sezioni e nelle schede
   socie: ritaglio al volo in cover, rapporto verticale morbido, volti tenuti */
.wt-photo {
	display: block; width: 100%; height: auto;
	aspect-ratio: 4 / 5;
	object-fit: cover; object-position: center 25%;
}
/* variante panoramica (foto di gruppo): più bassa, non allunga la sezione */
.wt-photo.wt-photo--wide { aspect-ratio: 3 / 2; object-position: center 42%; }
/* foto podcast: soggetti nella metà bassa → ritaglio più in basso */
.wt-photo.wt-photo--podcast { object-position: center 58%; }

/* Team: strisce orizzontali (foto da un lato, nome+bio dall'altro, alternate) */
.wt-strip-img { display: block; width: 100%; height: auto; aspect-ratio: 4 / 5; object-fit: cover; object-position: center 25%; }
@media (min-width: 782px) {
	.wp-block-columns.wt-strip.wt-strip--rev { flex-direction: row-reverse; }
}
@media (max-width: 781px) {
	.wt-strip-img { max-width: 300px; margin-left: auto; margin-right: auto; }
}
/* Collaboratori: elenco a tutta larghezza con divisori */
.wt-collab > h3 { margin-top: 1.6rem; padding-top: 1.6rem; border-top: 1px solid rgba(54, 69, 78, 0.15); }
.wt-collab > h3:first-child { margin-top: 0; padding-top: 0; border-top: none; }

/* =========================================================
   HEADER sticky
   ========================================================= */
.wp-site-blocks > header.wp-block-template-part { position: sticky; top: 0; z-index: 100; }
.wp-site-blocks > header .wp-block-group.has-crema-background-color {
	box-shadow: 0 1px 0 rgba(54, 69, 78, 0.06);
}
.wp-block-site-title a { text-decoration: none; }
/* wordmark "WinnerTeam" più compatto (lettere attaccate) */
.wp-block-site-title, .wp-block-site-title a, .has-brand-font-family { letter-spacing: -0.04em; }

/* Logo brand (immagine reale) */
.wt-header-logo { display: inline-flex; align-items: center; text-decoration: none; }
.wt-header-logo img { height: 48px; width: auto; display: block; }
.wt-footer-logo { display: inline-block; text-decoration: none; }
.wt-footer-logo img { width: 170px; max-width: 100%; height: auto; display: block; }
.wt-hero-logo { margin: 0 0 0.6rem; text-align: center; }
.wt-hero-logo img { display: block; margin: 0 auto; width: min(400px, 74vw); height: auto; }

/* =========================================================
   NAVIGAZIONE
   ========================================================= */
.wp-block-navigation { font-family: var(--wp--preset--font-family--rounded); font-weight: 600; }
.wp-block-navigation a { color: var(--wp--preset--color--slate); text-decoration: none; }
.wp-block-navigation a:hover { color: var(--wp--preset--color--arancio-scuro); }
.wp-block-navigation:not(.is-menu-open) .wp-block-navigation-item > a { position: relative; }
.wp-block-navigation:not(.is-menu-open) .wp-block-navigation-item > a::after {
	content: ""; position: absolute; left: 0; right: 100%; bottom: -4px; height: 2px;
	background: var(--wp--preset--color--arancio-scuro); transition: right 0.25s ease;
}
.wp-block-navigation:not(.is-menu-open) .wp-block-navigation-item > a:hover::after { right: 0; }
.wp-block-navigation__responsive-container-open { color: var(--wp--preset--color--slate); }
.wp-block-navigation__responsive-container-open:hover { color: var(--wp--preset--color--arancio-scuro); }

/* MENU MOBILE overlay slate full-screen, contenuto centrato */
.wp-block-navigation__responsive-container.is-menu-open {
	position: fixed !important; inset: 0 !important;
	width: 100vw !important; height: 100vh !important; height: 100dvh !important;
	background-color: var(--wp--preset--color--slate) !important;
	padding: 0 !important;
	z-index: 9999 !important;
	display: flex !important;
	align-items: center !important; justify-content: center !important;
	overflow-y: auto !important;
}
.wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__responsive-container-content {
	width: 100% !important; max-width: none !important; margin: 0 !important;
	display: flex !important; flex-direction: column !important;
	align-items: center !important; justify-content: center !important;
}
.wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__container {
	display: flex !important; flex-direction: column !important; align-items: center !important;
	text-align: center !important; gap: clamp(0.9rem, 3vh, 1.5rem) !important;
	width: 100% !important; padding: 3rem 1.5rem !important;
}
.wp-block-navigation__responsive-container.is-menu-open a {
	color: var(--wp--preset--color--crema) !important;
	font-family: var(--wp--preset--font-family--display) !important;
	font-size: clamp(1.5rem, 6vw, 2.1rem) !important; line-height: 1.15 !important;
}
.wp-block-navigation__responsive-container.is-menu-open a:hover { color: var(--wp--preset--color--arancio-scuro) !important; }
.wp-block-navigation__responsive-container.is-menu-open a::after { display: none !important; }
.wp-block-navigation__responsive-container-close {
	position: fixed !important; top: 1.1rem; right: 1.1rem; width: 2.6rem; height: 2.6rem;
	z-index: 10000 !important;
	color: var(--wp--preset--color--crema) !important;
}

/* =========================================================
   BOTTONI (flat, raggio minimo da theme.json)
   ========================================================= */
.wp-block-button__link { transition: background-color 0.2s ease, color 0.2s ease; }

/* Immagini in evidenza / griglie archivi (flat) */
.wp-block-post-template.is-layout-grid { gap: 2rem; }

/* =========================================================
   PLACEHOLDER (ingombri foto)
   ========================================================= */
.wt-placeholder {
	display: flex; align-items: center; justify-content: center;
	min-height: 240px;
}

/* Pacchetti metodo (3 link) */
.wt-pacchetto { text-align: center; }
.wt-logo-ph { min-height: 90px; max-width: 170px; margin: 0 auto 0.8rem; }

/* Metodo: "Scopri di più" a fisarmonica (blocco core/details) */
.wt-metodo-details { text-align: center; }
.wt-metodo-details > summary {
	display: inline-flex; align-items: center; gap: 0.55rem;
	list-style: none; cursor: pointer;
	background: var(--wp--preset--color--oliva);
	color: var(--wp--preset--color--slate);
	font-family: var(--wp--preset--font-family--rounded);
	font-weight: 600; text-transform: uppercase; letter-spacing: 0.06em; font-size: 0.78rem;
	padding: 0.8rem 1.5rem; border-radius: 6px;
	transition: background-color 0.2s, color 0.2s;
}
.wt-metodo-details > summary::-webkit-details-marker { display: none; }
.wt-metodo-details > summary::after {
	content: "\203A"; font-size: 1.15rem; line-height: 1;
	transform: rotate(90deg); transition: transform 0.25s;
}
.wt-metodo-details[open] > summary::after { transform: rotate(-90deg); }
.wt-metodo-details > summary:hover {
	background: var(--wp--preset--color--oliva-scuro);
	color: var(--wp--preset--color--crema);
}
.wt-metodo-details[open] > summary { margin-bottom: 0.5rem; }
/* variante missione: bottone centrato ma testo lungo allineato a sinistra */
.wt-mission-details > p { text-align: left; }
/* variante qualifiche (fascia Riconoscimenti): stesso bottone centrato, ma i
   paragrafi delle due colonne tornano a sinistra - sono lunghi e centrati si
   leggerebbero male. I titoli restano centrati dalla classe nel markup. */
.wt-qualif-details .wt-qualif-item p { text-align: left; }
.wt-qualif-details .wt-qualif { margin-top: var(--wp--preset--spacing--20); }

/* Approfondimento nelle schede offerta ("Maggiori dettagli", stile outline) */
.wt-approfondisci { margin: 0.6rem 0 0.2rem; }
.wt-approfondisci > summary {
	display: inline-flex; align-items: center; gap: 0.5rem;
	list-style: none; cursor: pointer;
	background: transparent; color: var(--wp--preset--color--slate);
	border: 1px solid rgba(54, 69, 78, 0.4);
	font-family: var(--wp--preset--font-family--rounded);
	font-weight: 600; text-transform: uppercase; letter-spacing: 0.06em; font-size: 0.72rem;
	padding: 0.55rem 1rem; border-radius: 6px;
	transition: background-color 0.2s, color 0.2s, border-color 0.2s;
}
.wt-approfondisci > summary::-webkit-details-marker { display: none; }
.wt-approfondisci > summary::after {
	content: "\203A"; font-size: 1rem; line-height: 1;
	transform: rotate(90deg); transition: transform 0.25s;
}
.wt-approfondisci[open] > summary::after { transform: rotate(-90deg); }
.wt-approfondisci > summary:hover {
	background: var(--wp--preset--color--slate);
	color: var(--wp--preset--color--crema);
	border-color: var(--wp--preset--color--slate);
}
.wt-approfondisci[open] > summary { margin-bottom: 0.8rem; }
.wt-approf-foto { min-height: 180px; margin: 0.4rem 0 0.2rem; }

/* elenco seminari nei livelli della Scuola */
.wt-seminari { padding-left: 1.15rem; list-style: disc; margin: 0.3rem 0 1rem; }
.wt-seminari li { margin: 0.3rem 0; }
.wt-seminari li::marker { color: var(--wp--preset--color--arancio-scuro); }
/* calendario senza eventi */
.wt-cal__empty { text-align: center; font-size: 0.9rem; opacity: 0.7; margin: 1rem 0 0; }
/* footer: link di navigazione (sostituiscono l'elenco pagine automatico) */
.wt-footer-nav { list-style: none; padding-left: 0; margin: 0; }
.wt-footer-nav a { color: var(--wp--preset--color--menta); text-decoration: none; }
.wt-footer-nav a:hover { color: var(--wp--preset--color--arancio-scuro); }

/* pulsante "Scarica il programma" (blocco dinamico winnerteam/pdf-programma) */
.wt-pdf-btn { margin-top: 1.5rem; justify-content: center; }

/* Aziende: griglia 2×2 di perché/cosa/come/chi (righe allineate) */
.wt-az-qa { display: grid !important; grid-template-columns: 1fr 1fr; gap: clamp(1.4rem, 3.5vw, 2.2rem) clamp(2rem, 5vw, 3rem); }
.wt-az-qa > * { margin-top: 0 !important; }
@media (max-width: 600px) { .wt-az-qa { grid-template-columns: 1fr; } }

/* Corsi per le aziende: griglia dei 5 percorsi cliccabili */
.wt-az-grid { display: grid; grid-template-columns: repeat(auto-fit, minmax(210px, 1fr)); gap: 1rem; margin-top: 2rem; }
.wt-az-card {
	display: flex; flex-direction: column; gap: 0.45rem;
	padding: 1.6rem 1.4rem;
	background: var(--wp--preset--color--crema);
	color: var(--wp--preset--color--slate);
	text-decoration: none;
	transition: background-color 0.2s ease, transform 0.2s ease;
}
.wt-az-card:hover { background: var(--wp--preset--color--sage); transform: translateY(-2px); }
.wt-az-card__title {
	font-family: var(--wp--preset--font-family--display);
	font-size: 1.15rem; line-height: 1.2;
	text-transform: uppercase; letter-spacing: 0.02em;
	color: var(--wp--preset--color--arancio-scuro);
}
.wt-az-card__desc { font-size: 0.9rem; line-height: 1.45; }

/* Lista eventi (shortcode [wt_eventi]) */
.wt-eventi-list { list-style: none; margin: 0 auto; padding: 0; max-width: 780px; text-align: left; }
.wt-evento {
	display: flex; flex-wrap: wrap; align-items: baseline; gap: 0.4rem 1.25rem;
	padding: 1.1rem 0; border-bottom: 1px solid rgba(54, 69, 78, 0.14);
}
.wt-evento-data {
	font-family: var(--wp--preset--font-family--rounded);
	font-size: 0.85rem; letter-spacing: 0.04em; opacity: 0.85; min-width: 9.5rem;
}
.wt-evento-titolo {
	font-family: var(--wp--preset--font-family--display);
	font-size: 1.3rem; color: var(--wp--preset--color--slate); text-decoration: none; flex: 1 1 12rem;
}
.wt-evento-titolo:hover { color: var(--wp--preset--color--arancio-scuro); }
.wt-evento-cat { font-size: 0.78rem; }
.wt-evento-cat a { text-decoration: none; }

/* elenco podcast (ultimi episodi) */
.wt-podcast-list .wt-evento { padding: 0.9rem 0; }
.wt-podcast-list .wt-evento-data { min-width: 8.5rem; }

/* offerta: griglia "a tabella" — 3 colonne × 4 righe (logo / titolo / bullet /
   bottone). Con subgrid ogni riga condivide la stessa altezza tra le colonne,
   così loghi, titoli, bullet e bottoni sono allineati riga per riga.
   Il contenuto di ogni cella è centrato (orizzontale e verticale). */
.wt-offerta-col { text-align: center; }
.wt-offerta-icon-img { height: 58px; width: auto; display: block; margin: 0 auto 0.3rem; }
.wt-offerta-foto { width: 100%; }
.wt-offerta-foto img { display: block; width: 100%; height: auto; aspect-ratio: 3 / 2; object-fit: cover; }
.wt-offerta-col ul.wp-block-list {
	display: inline-block; text-align: left;
	padding-left: 1.15rem; list-style: disc; margin: 0;
}
.wt-offerta-col ul.wp-block-list li { margin: 0.35rem 0; }
.wt-offerta-col ul.wp-block-list li::marker { color: var(--wp--preset--color--arancio-scuro); }

@media (min-width: 782px) {
	.wt-offerta-cols.wp-block-columns {
		display: grid !important;
		grid-template-columns: repeat(3, 1fr);
		grid-template-rows: auto auto auto auto auto;
		row-gap: 0.9rem;
		column-gap: var(--wp--preset--spacing--40);
		align-items: initial;
	}
	.wt-offerta-cols .wt-offerta-col {
		display: grid;
		grid-template-rows: subgrid;
		grid-row: span 5;
		flex-basis: auto; /* annulla il flex-basis delle colonne WP */
	}
	/* ogni figlio = una cella, centrato orizzontalmente e verticalmente */
	.wt-offerta-cols .wt-offerta-col > * {
		justify-self: center;
		align-self: center;
		margin-block: 0 !important;
	}
}
/* mobile: colonne impilate, spaziatura verticale tra gli elementi */
@media (max-width: 781px) {
	.wt-offerta-col > * + * { margin-top: 0.7rem; }
	.wt-offerta-col .wp-block-buttons { margin-top: 1.2rem; }
}

/* Calendario mensile navigabile (blocco winnerteam/calendario) */
.wt-cal { max-width: 580px; margin: 0 auto; }
.wt-cal__head { display: flex; align-items: center; justify-content: space-between; margin-bottom: 1rem; }
.wt-cal__title { font-family: var(--wp--preset--font-family--display); font-size: 1.6rem; color: var(--wp--preset--color--slate); text-transform: capitalize; }
.wt-cal__nav { width: 2.4rem; height: 2.4rem; border-radius: 999px; border: 1px solid rgba(54, 69, 78, 0.25); background: transparent; color: var(--wp--preset--color--slate); font-size: 1.25rem; line-height: 1; cursor: pointer; transition: background-color 0.2s, color 0.2s; }
.wt-cal__nav:hover { background: var(--wp--preset--color--slate); color: var(--wp--preset--color--crema); }
.wt-cal__grid { display: grid; grid-template-columns: repeat(7, 1fr); gap: 5px; }
.wt-cal__wd { text-align: center; font-family: var(--wp--preset--font-family--rounded); font-size: 0.7rem; letter-spacing: 0.08em; text-transform: uppercase; opacity: 0.55; padding-bottom: 0.4rem; }
.wt-cal__cell { aspect-ratio: 1 / 1; border: none; background: transparent; border-radius: 10px; font-family: var(--wp--preset--font-family--rounded); font-size: 0.95rem; color: var(--wp--preset--color--slate); display: flex; align-items: center; justify-content: center; padding: 0; }
.wt-cal__cell.is-empty { visibility: hidden; }
.wt-cal__cell.has-event { background: var(--wp--preset--color--sage); cursor: pointer; font-weight: 600; }
.wt-cal__cell.has-event:hover, .wt-cal__cell.is-selected { background: var(--wp--preset--color--arancio-scuro); color: var(--wp--preset--color--crema); }
.wt-cal__cell.is-today { outline: 2px solid var(--wp--preset--color--arancio-scuro); outline-offset: -2px; }
.wt-cal__panel { margin-top: 1.75rem; }
.wt-cal__panel-date { font-family: var(--wp--preset--font-family--display); font-size: 1.2rem; color: var(--wp--preset--color--slate); margin-bottom: 0.5rem; }

/* =========================================================
   ACCESSIBILITA'
   ========================================================= */
/* Focus visibile su fondo chiaro */
:where(a, button, summary, input, select, textarea,
	.wp-block-button__link, .wp-block-navigation-item a,
	.wt-cal__cell, .wt-cal__nav):focus-visible {
	outline: 3px solid var(--wp--preset--color--arancio-scuro);
	outline-offset: 3px;
	border-radius: 2px;
}
/* Focus visibile su fondi scuri (footer slate, menu overlay slate): outline chiaro */
.has-slate-background-color :where(a, button, .wp-block-navigation-item a):focus-visible,
.wp-block-navigation__responsive-container.is-menu-open a:focus-visible {
	outline-color: var(--wp--preset--color--menta);
}

/* Link "strutturali" (nav, footer nav, bottoni, logo, titoli-link, card): mai sottolineati,
   la sottolineatura di default (theme.json) resta per i link testuali nel corpo del contenuto */
.wp-block-navigation a, .wt-footer-nav a, .wp-block-button__link,
.wt-evento-titolo, .wt-az-card, .wt-header-logo, .wt-footer-logo,
.wp-block-site-title a { text-decoration: none; }

/* Scheda libro: se manca la copertina (immagine in evidenza), collassa la
   colonna vuota così il contenuto occupa tutta la larghezza invece di lasciare
   un vuoto a sinistra. */
.wt-libro-cols > .wp-block-column:first-child:not(:has(img)) { display: none; }

/* Titoli-link dei post (liste/archivi/Risorse): slate come gli altri titoli,
   così il contrasto è sufficiente su ogni sfondo — incl. lilla della sezione
   Risorse dove l'arancio-scuro scendeva sotto 4.5:1. Restano sottolineati. */
.wp-block-post-title a { color: var(--wp--preset--color--slate); }

/* Griglie foto nelle schede dell'offerta (Scuola, BodyMind, Specializzazione,
   Sessioni, galleria Aziende). Immagini gia' ritagliate 3:2. */
.wt-foto-grid { display: grid; gap: 0.9rem; margin: 1.25rem 0; }
.wt-foto-grid.due { grid-template-columns: 1fr 1fr; }
.wt-foto-grid img { display: block; width: 100%; height: auto; }
@media (max-width: 600px) { .wt-foto-grid.due { grid-template-columns: 1fr; } }

/* "Vai al libro/articolo": blocco read-more nelle anteprime Risorse, reso come bottone outline compatto */
.wt-goto-btn {
	display: inline-block; margin-top: 0.6rem;
	font-family: var(--wp--preset--font-family--rounded);
	font-weight: 600; text-transform: uppercase; letter-spacing: 0.05em; font-size: 0.7rem;
	color: var(--wp--preset--color--slate); text-decoration: none;
	border: 1px solid rgba(42, 54, 61, 0.4); border-radius: 6px;
	padding: 0.4rem 0.9rem;
	transition: background-color 0.2s, color 0.2s, border-color 0.2s;
}
.wt-goto-btn:hover, .wt-goto-btn:focus-visible {
	background: var(--wp--preset--color--slate); color: var(--wp--preset--color--crema);
	border-color: var(--wp--preset--color--slate);
}

/* Link contatti nel footer (su fondo slate): chiari e sottolineati per contrasto */
.wt-footer-contact a { color: var(--wp--preset--color--menta); text-decoration: underline; }
.wt-footer-contact a:hover { color: var(--wp--preset--color--crema); }

/* Loghi cliccabili dei pacchetti "Il nostro metodo": card bianca arrotondata ad
   altezza fissa, così i loghi (anche line-art chiari) risaltano sul fondo oliva e
   immagini/titoli/link restano allineati tra le 3 colonne. */
.wt-metodo-logo { display: flex; align-items: center; justify-content: center; height: 132px; max-width: 190px; margin: 0 auto 0.9rem; background: #fff; border-radius: 14px; padding: 18px 24px; box-shadow: 0 4px 14px rgba(42, 54, 61, 0.14); transition: transform 0.16s ease, box-shadow 0.16s ease; }
.wt-metodo-logo img { display: block; width: auto; height: auto; max-width: 100%; max-height: 96px; }
.wt-metodo-logo:hover { transform: translateY(-3px); box-shadow: 0 9px 24px rgba(42, 54, 61, 0.2); }
.wt-metodo-logo:focus-visible { outline: 3px solid var(--wp--preset--color--arancio-scuro); outline-offset: 3px; border-radius: 14px; }

/* Data di pubblicazione degli articoli (anteprime e pagina singola) */
.wt-post-data { font-family: var(--wp--preset--font-family--rounded); font-size: 0.78rem; letter-spacing: 0.04em; margin: 0.1rem 0 0.4rem; color: var(--wp--preset--color--slate); }

/* Griglie anteprime home (Libri, Articoli): celle a colonna flex così immagine,
   titolo, data ed estratto e tasto si allineano riga per riga nella griglia. */
@media (min-width: 782px) {
	.wt-preview-grid.is-layout-grid > .wp-block-post { display: flex; flex-direction: column; height: 100%; }
	.wt-preview-grid .wp-block-post-featured-image { margin: 0 0 0.6rem; }
	.wt-preview-grid .wp-block-post-featured-image img { width: 100%; height: auto; aspect-ratio: 3 / 4; object-fit: contain; }
	.wt-preview-grid .wp-block-post-title { margin-top: 0; min-height: 2.5em; }
	.wt-preview-grid .wt-goto-btn { margin-top: auto; align-self: flex-start; }
}

/* Riconoscimenti: fascia sotto l'hero (pattern home-qualifiche) + sezione
   #riconoscimenti in Chi Siamo. Stesso impianto di .wt-az-qa: il gruppo WP ha
   layout flow e inietta margin-block-start sul secondo figlio, che in un grid
   sfalserebbe la colonna destra di 24px -> azzerato su tutti i figli.
   Titoli centrati dalla classe nel markup, paragrafi a sinistra: 6 righe
   centrate si leggono male. */
.wt-qualif-band p { max-width: 46rem; margin-left: auto; margin-right: auto; }
.wt-qualif { display: grid !important; grid-template-columns: 1fr 1fr; gap: clamp(1.4rem, 3.5vw, 2.2rem) clamp(2rem, 5vw, 3rem); margin-top: var(--wp--preset--spacing--40); }
.wt-qualif > * { margin-top: 0 !important; }
@media (max-width: 600px) { .wt-qualif { grid-template-columns: 1fr; } }

/* =========================================================
   INTERVISTA VIDEO (pattern home-video)
   Facciata "click-to-play": la copertina e' un'immagine del tema e l'iframe
   YouTube viene creato solo al click (assets/js/wt-video.js). Player squadrato
   come gli altri blocchi; badge play tondo in terracotta, come i controlli del
   calendario.
   ========================================================= */
/* Il titolo di questa sezione e' un nome proprio lungo: a 2.8rem su mobile
   andrebbe su 4 righe. Ridotto solo qui, le altre sezioni restano invariate.
   !important perche' WP genera .has-x-large-font-size con !important. */
@media (max-width: 781px) {
	#intervista .wp-block-heading { font-size: 2rem !important; }
}
.wt-video { max-width: 920px; margin: var(--wp--preset--spacing--40) auto 0; }
.wt-video__cover {
	display: block; position: relative; overflow: hidden;
	background: var(--wp--preset--color--slate);
	text-decoration: none;
}
.wt-video__thumb {
	display: block; width: 100%; height: auto;
	aspect-ratio: 16 / 9; object-fit: cover;
	transition: transform 0.4s ease, filter 0.3s ease;
}
.wt-video__cover:hover .wt-video__thumb,
.wt-video__cover:focus-visible .wt-video__thumb { transform: scale(1.025); filter: brightness(0.86); }
.wt-video__badge {
	position: absolute; inset: 0;
	display: flex; align-items: center; justify-content: center;
	pointer-events: none;
}
.wt-video__badge svg {
	width: clamp(62px, 8.5vw, 88px); height: auto;
	filter: drop-shadow(0 4px 16px rgba(42, 54, 61, 0.45));
	transition: transform 0.25s ease;
}
.wt-video__cover:hover .wt-video__badge svg,
.wt-video__cover:focus-visible .wt-video__badge svg { transform: scale(1.07); }
.wt-video__badge-bg { fill: var(--wp--preset--color--arancio-scuro); }
.wt-video__badge-arrow { fill: var(--wp--preset--color--crema); }
/* iframe iniettato al click: stesso ingombro della copertina, nessun salto di layout */
.wt-video__frame {
	display: block; width: 100%; height: auto;
	aspect-ratio: 16 / 9; border: 0;
	background: var(--wp--preset--color--slate);
}
