/*
 * AANT — Responsive e tablet (fase uniformazione, ottobre 2026).
 * Tutte le regole sono SOTTO i 1025px: il desktop non cambia.
 * Disposizione e ordine degli elementi invariati: solo dimensioni, allineamenti e difetti.
 */

/* 1. Tablet orizzontale (961–1024px): header uguale al tablet verticale.
 *    Il menu desktop a quella larghezza andava su due righe e usciva dallo schermo.
 *    Regole identiche a quelle del tema per <=960px (solo header). */
@media screen and (min-width: 961px) and (max-width: 1024px) {
	#block-11, #block-12, #block-13, #custom_html-4, #custom_html-3 { display: none; }
	#block-15 { display: block; }
	.main-navigation { display: none; width: 100%; }
	.top-header {
		display: flex;
		justify-content: space-between;
		align-items: center;
		padding: 20px 0 0 25px;
		max-width: 1980px;
		margin: 0 auto;
	}
	#topheader-sidebar .widget { margin: 0; margin-top: 0; }
	#icl_lang_sel_widget-6 { max-width: 65px; margin-top: -5px !important; }
}

/* 2. Nessuno scroll orizzontale su tablet e smartphone.
 *    Le righe WPBakery sporgevano di qualche px a destra (rientro del tema solo a sinistra):
 *    la parte sporgente viene tagliata senza creare barre di scorrimento (clip, non hidden:
 *    l'header fisso e gli elementi sticky continuano a funzionare). */
@media screen and (max-width: 1024px) {
	/* un plugin impone overflow:visible!important a #page/.site/body (per lo sticky): clip è compatibile con lo sticky */
	html body #page.site { overflow-x: clip !important; }
}

/* 3. Header 481–768px: logo e icone (cerca, menu, lingua) sulla stessa linea, come da 769px in su.
 *    Il tema qui metteva l'header "a blocco" con il logo in alto: il logo restava 27px sopra le icone. */
@media screen and (min-width: 481px) and (max-width: 768px) {
	.top-header {
		display: flex;
		justify-content: space-between;
		align-items: center;
	}
}

/* 4. Header: margine destro uguale al sinistro (25px, come il logo) su tutte le larghezze
 *    fino a 1024px. Prima: 20px su smartphone, 50px su tablet verticale, 10px a 1024px.
 *    (la freccia della lingua sta 10px dentro il suo riquadro: 15 + 10 = 25px visibili) */
@media screen and (max-width: 1024px) {
	.topheader-widgets { padding-right: 15px; }
}
@media screen and (max-width: 360px) {
	/* schermi molto stretti: margine originale, altrimenti le icone toccano il logo */
	.topheader-widgets { padding-right: 10px; }
}

/* 5. Titoli H1 uniformi fino a 1024px.
 *    Pagine, archivi (Staff, BIP, geniaLAB), "Offerta didattica"/"Corsi" (title-big) e pagine
 *    dei corsi: stessa dimensione, maiuscolo, interlinea 1, allineati a 25px come il logo.
 *    Dimensioni = quelle che il tema già usa per le pagine normali; sotto 400px si riduce
 *    in proporzione così che parole lunghe (es. INTERNATIONAL) non vengano tagliate.
 *    News e altri articoli restano 26px (titoli lunghi), allineati a 25px. */
@media screen and (max-width: 1024px) {
	.page .entry-header .entry-title,
	.page-header .page-title,
	.title-big .entry-title,
	.single-corsi .entry-header .entry-title {
		text-transform: uppercase;
		line-height: 1;
		overflow-wrap: break-word;
	}
	.page-header .page-title { font-weight: 700; }
}
@media screen and (max-width: 480px) {
	.page .entry-header .entry-title,
	.page-header .page-title,
	.title-big .entry-title,
	.single-corsi .entry-header .entry-title { font-size: clamp(28px, 10.3vw, 40px); }
}
@media screen and (min-width: 481px) and (max-width: 768px) {
	.page .entry-header .entry-title,
	.page-header .page-title,
	.title-big .entry-title,
	.single-corsi .entry-header .entry-title { font-size: 50px; }
}
@media screen and (min-width: 769px) and (max-width: 960px) {
	.page .entry-header .entry-title,
	.page-header .page-title,
	.title-big .entry-title,
	.single-corsi .entry-header .entry-title { font-size: 60px; }
}
@media screen and (min-width: 961px) and (max-width: 1024px) {
	.page .entry-header .entry-title,
	.page-header .page-title,
	.title-big .entry-title,
	.single-corsi .entry-header .entry-title { font-size: 100px; }
}
@media screen and (max-width: 768px) {
	/* titoli allineati a 25px (il tema metteva 17px !important su news e corsi, 0 negli archivi) */
	.entry-header .entry-title,
	.single .entry-header .entry-title,
	.page-header .page-title { padding-left: 25px !important; padding-right: 25px !important; }
}

/* 6. Margini laterali del contenuto: 25px per lato, come il logo e le righe "boxed-snodo".
 *    Prima: righe "boxed" 20px a sinistra e 0 a destra; righe "fullw" 10px sotto i 480px;
 *    colonne con 20px in più solo a destra (testo 25px a sinistra e 45px a destra). */
@media screen and (max-width: 768px) {
	.boxed { margin: 0 25px !important; }
	.vc_column_container > .vc_column-inner { padding-right: 0 !important; }
}
@media screen and (max-width: 480px) {
	.fullw { padding: 0 25px !important; }
}
@media screen and (max-width: 768px) {
	/* righe annidate: margine negativo (-7px) che spostava il testo a 18px */
	.vc_row.vc_inner:not(.boxed):not(.boxed-snodo) { margin-left: 0 !important; margin-right: 0 !important; }
	/* International (IT/EN): rientro sia sulla pagina sia sulla riga annidata (testo a 43px) */
	.page-id-251 .entry-content > .wpb-content-wrapper > .vc_row,
	.page-id-1871 .entry-content > .wpb-content-wrapper > .vc_row { margin-left: 0 !important; margin-right: 0 !important; }
	.page-id-251 .vc_inner.fullw,
	.page-id-1871 .vc_inner.fullw { padding-left: 0 !important; padding-right: 0 !important; }
	/* archivi (geniaLAB, BIP, Staff): righe e descrizione senza rientro (testo a 0/-7px) */
	.post-type-archive .site-main > .vc_row:not(.boxed):not(.boxed-snodo):not(.fullw),
	.post-type-archive .site-main > .wpb-content-wrapper > .vc_row:not(.boxed):not(.boxed-snodo):not(.fullw) { margin-left: 25px !important; margin-right: 25px !important; }
	.post-type-archive .archive-description,
	.post-type-archive .taxonomy-description { padding-left: 25px; padding-right: 25px; }
	/* commenti (Open AANT ecc.) */
	.comments-area { padding-left: 25px; padding-right: 25px; }
	/* geniaLAB (singole e archivio): righe semplici senza rientro (testo a -7px / 38px) */
	.single-genialab .entry-content .vc_row:not(.vc_inner):not(.boxed):not(.boxed-snodo):not(.fullw),
	.post-type-archive-genialab .entry-content .vc_row:not(.vc_inner):not(.boxed):not(.boxed-snodo):not(.fullw) { margin-left: 25px !important; margin-right: 25px !important; }
	/* schede staff e docenti: testo senza rientro */
	.single-staff .entry-content,
	.single-docenti .entry-content { padding-left: 25px; padding-right: 25px; }
}

/* 7. Titoli tagliati */
@media screen and (max-width: 768px) {
	/* "Bando docenti": la riga del titolo animato aveva margine negativo (testo a -7px) */
	.entry-content .vc_row:has(> .wpb_column.title-openc) { margin-left: 25px !important; margin-right: 25px !important; }
	/* geniaLAB: righe con rientro interno di 45px (testo a 70px, titolo da 60px fuori schermo) */
	.single-genialab .entry-content .vc_row.vc_row,
	.post-type-archive-genialab .entry-content .vc_row.vc_row { padding-left: 0 !important; padding-right: 0 !important; }
	.single-genialab .entry-content .vc_custom_heading,
	.post-type-archive-genialab .entry-content .vc_custom_heading { overflow-wrap: break-word; }
}
@media screen and (max-width: 480px) {
	/* titoli personalizzati geniaLAB da 60px: stessa scala degli H1 su smartphone */
	.single-genialab .entry-content .vc_custom_heading,
	.post-type-archive-genialab .entry-content .vc_custom_heading { font-size: clamp(28px, 10.3vw, 40px) !important; line-height: 1 !important; }
}

/* 8. Banner "Facciamo due chiacchiere" su tablet (769–1024px): pannello e caratteri restavano
 *    a misura desktop nel riquadro più stretto, così il testo usciva a sinistra e il pulsante
 *    "Contattaci" finiva tagliato in fondo. Stessa grafica, proporzioni da tablet. */
@media screen and (min-width: 769px) and (max-width: 1024px) {
	.cta-standard.sx.videocta .overlay-content.overlay-content-1,
	.banner-generico-widget .overlay-content.overlay-content-1 { width: 62%; }
	.cta-standard.sx.videocta .overlay-content-desc,
	.banner-generico-widget .overlay-content-desc { margin-left: 30%; margin-top: 4%; max-width: 400px; }
	.cta-standard .grid-title,
	.banner-generico-widget .grid-title { font-size: 28px; }
	.cta-standard .grid-subtitle,
	.banner-generico-widget .grid-subtitle { font-size: 20px; margin: 10px 0; }
	.cta-standard .grid-excerpt,
	.banner-generico-widget .grid-excerpt { font-size: 16px; }
}

/* 9. Immagini deformate */
@media screen and (max-width: 1024px) {
	/* logo bianco del footer: schiacciato del 6% a 1024px (stesso spazio, proporzioni corrette) */
	.vc_single_image-wrapper > img.vc_single_image-img[src*="Marchio-Logo_bianco"] { object-fit: contain; }
	/* BIP: foto verticali forzate in un riquadro orizzontale (deformate del 50%) */
	.post-type-archive-bip figure img,
	.single-bip figure img { object-fit: cover; }
}

/* 10. Banner "Facciamo due chiacchiere" nelle pagine corso su smartphone/tablet:
 *     usciva di 7-8px dai due lati (riga con margine negativo); ora 25px come nelle altre pagine. */
@media screen and (max-width: 768px) {
	.single-corsi .entry-content .vc_row.cta-standard { margin-left: 25px !important; margin-right: 25px !important; }
}
