/*
 * Restyle — rifiniture grafiche pagine prodotto (build-independent).
 *
 * File standalone servito da templates-custom/assets/ (cartella deployata via
 * git-ftp, a differenza di assets/* esclusa dal deploy). Il core.css compilato
 * e' FUORI dalla build Encore/SASS (build rotta su Node 22), quindi gli
 * aggiustamenti grafici vivono qui e vengono caricati DOPO core.css/app.css
 * (enqueue in private.php, priority 110) -> vincono nella cascata. Solo front-end.
 */

/* === 1) Card bianca SOPRA la foto — .materials-block (Materiali/Blocchi/...) ==
 * Le due colonne (col-lg-7) si sovrappongono via .mr-lg-n7. In flexbox l'ordine
 * di disegno segue l'order-modified document order: l'immagine e' order-lg-last
 * (disegnata per ultima) e finiva SOPRA la card. Diamo alla colonna-card un
 * contesto di impilamento piu' alto: la card bianca torna sopra la foto.
 */
@media (min-width: 992px) {
	.materials-block .mr-lg-n7 {
		position: relative;
		z-index: 2;
	}
}

/* === 2) Meno spazio tra hero ("slide") e titolo sottostante ==================
 * L'hero .title_up_thumb usa .mb-lg-6 (margin-bottom:6rem!important su desktop).
 * Lo riduciamo. Specificita' (0,2,0) + !important per battere l'utility BS4.
 */
@media (min-width: 992px) {
	.title_up_thumb.mb-lg-6 {
		margin-bottom: 1.5rem !important;
	}
}

/* === 3) Titoli: spaziatura tra le lettere piu' stretta =======================
 * core.css: .h1,.h2,h1,h2{letter-spacing:.2rem}. La riduciamo. Prefisso body
 * per vincere sulla regola di core (stessa specificita') senza usare !important.
 */
body h1,
body h2,
body .h1,
body .h2 {
	letter-spacing: .05rem;
}

/* === 4) Verde di sezione: dalla griglia collezioni alla sezione catalogo ====
 * Nelle tavole XD (Home e Cuscini a Stampo) la griglia "Le nostre collezioni"
 * sta su BIANCO; il verde #e6f0e1 ($background_green) col taglio diagonale e'
 * lo sfondo della sezione catalogo. Il CSS compilato invece lo metteva su
 * #box-collections (clip-path + height fissa 1000px) e il banner Home ci
 * saliva dentro con margin-top:-250px. */
#box-collections {
	/* trasparente (non bianco): il wedge verde del form sottostante risale
	 * fin sotto la griglia (z-index:-1) e deve restare visibile. */
	background-color: transparent !important; /* batte $background_green!important e .bg-light */
	clip-path: none;
	height: auto;
}
@media screen and (min-width: 992px) {
	.catalog {
		margin-top: 0; /* saliva nel wedge verde della griglia, che non c'e' piu' */
	}
}
/* Banner catalogo della Home: verde pieno con tagli diagonali sopra e sotto. */
.catalog {
	background-color: #e6f0e1;
	clip-path: polygon(0 12%, 100% 0, 100% 88%, 0 100%);
	padding: 5.5rem 0;
}
/* Form catalogo compatto (pagine prodotto e collezioni): verde full-bleed con
 * taglio diagonale in alto. Pseudo-elemento perche' il blocco e' un .container
 * (non full-width); NON tocca il form esteso (.container.catalogo senza mt-4)
 * della pagina Catalogo. bottom negativo: si aggancia alla striscia newsletter. */
.container.mt-4.catalogo {
	position: relative;
	padding-top: 3rem;
	padding-bottom: 2rem;
}
.container.mt-4.catalogo::before {
	content: '';
	position: absolute;
	z-index: -1;
	top: -130px; /* il lato destro della diagonale sale oltre la sezione, sotto la griglia */
	bottom: -1.5rem;
	left: 50%;
	width: 100vw;
	transform: translateX(-50%);
	background-color: #e6f0e1;
	clip-path: polygon(0 45%, 100% 0, 100% 100%, 0 100%);
}

/* === 6) Hero grandi: altezza fissa + parallasse =============================
 * Gli hero a tutta pagina (collezioni, Azienda, Tecnologia, Materiali, ...)
 * scendono da 100vh a una fascia fissa; la foto ha una parallasse leggera
 * allo scroll (parallax.js). La custom property --wbg-hero e' il contratto
 * col JS: 'parallax' = attiva; le testate basse la azzerano (sezione 5).
 * Stessa specificita' (0,5,0) del 100vh di core.css ma caricato dopo -> vince.
 */
.position-relative.img-fluid.d-block.mx-auto.w-100 {
	height: clamp(500px, 82vh, 960px);
	--wbg-hero: parallax;
}

/* === 7) Griglia Federe (XD tavola FEDERE) ===================================
 * Card statiche non cliccabili: 4 per riga da lg (come la tavola XD, 4x2),
 * nome maiuscolo + breve testo sotto. Markup in blocks/block-page/federe-grid.php.
 */
@media (min-width: 992px) {
	.wbg-federa-card {
		flex: 0 0 25%;
		max-width: 25%;
	}
}
/* Su mobile una federa per riga (doc Federica: "su mobile un prodotto per riga,
 * ora ce ne sono 2"). Il markup e' .col-6 col-md-4: da 0 a 767px sono 2 per riga
 * (.col-6) -> e' proprio il range che il cliente vede sul telefono. Sotto i 768px
 * le portiamo a piena larghezza; 768-991 restano 3 (col-md-4), desktop 4 (sopra). */
@media (max-width: 767.98px) {
	.wbg-federa-card {
		flex: 0 0 100%;
		max-width: 100%;
	}
	.wbg-federa-card img {
		height: auto;
		max-height: 260px;
	}
}
/* Box foto ad altezza fissa + foto allineate in basso: i nomi delle card
 * sulla stessa riga partono tutti dalla stessa quota ("aggiusta le allineate"). */
.wbg-federa-card img {
	height: 210px;
	object-fit: contain;
	object-position: center bottom;
	width: 100%;
}
@media (max-width: 991.98px) {
	.wbg-federa-card img { height: 170px; }
}
.wbg-federa-card h5 {
	letter-spacing: .08em;
}
.wbg-federa-card .wbg-federa-testo {
	font-size: 90%;
	color: #555;
}

/* === 8) Sezioni brand Materiali (XD tavola "Materiali") =====================
 * Foto + marchietto + testo + scheda tecnica in tabella + Scarica scheda.
 * Markup in blocks/block-page/materiali-brand.php (righe pari speculari).
 */
.wbg-materiali-brand {
	margin-top: 3rem;
	margin-bottom: 3rem;
}
.wbg-mb-row {
	margin-bottom: 0; /* la spaziatura tra le fasce la dà la lineetta .wbg-mb-divider */
}
/* Lineetta divisoria tra una fascia brand e la successiva (tavola XD).
 * Margine ridotto (Federica 14 lug: "compattiamo, meno spazio bianco"). */
/* Lineetta "leggermente piu' scura, come la home" (doc Federica): la home usa
 * grey (#808080). Qui adottiamo lo stesso grigio ma tenendo 1px (la home e' 2px)
 * -> piu' scura ma non pesante. */
.wbg-mb-divider {
	border: 0;
	border-top: 1px solid #808080;
	margin: 3rem 0;
}
.wbg-mb-logo {
	max-height: 70px;
	width: auto;
	margin-bottom: 1.25rem;
}
/* Foto delle fasce piu' piccole (Federica 14 lug: "sono troppo grandi"):
 * cap alla larghezza; resta responsive (min con 100% -> su mobile riempie). */
.wbg-mb-row img.img-fluid {
	max-width: min(100%, 520px);
}
.wbg-mb-scheda {
	width: 100%;
	margin: 1.5rem 0 1rem;
	border-collapse: collapse;
	font-size: .95rem;
}
.wbg-mb-scheda th,
.wbg-mb-scheda td {
	border: 1px solid #d8d8d8;
	padding: .45rem .75rem;
	text-align: left;
}
.wbg-mb-scheda th {
	font-weight: 600;
	width: 40%;
	background: #f4f8f2;
}
a.wbg-mb-scarica,
a.wbg-mb-scarica:link,
a.wbg-mb-scarica:visited {
	display: inline-block;
	margin-top: 1rem;
	padding: 14px 30px;
	background-color: #e4f0e3;
	color: #1a1a1a;
	font-weight: 700;
	font-size: .95rem;
	letter-spacing: .06em;
	text-transform: uppercase;
	text-decoration: none;
	border: 0;
	border-radius: 0;
	box-shadow: 6px 8px 16px rgba(0, 0, 0, .12);
	transition: background-color .2s ease, box-shadow .2s ease;
}
a.wbg-mb-scarica:hover,
a.wbg-mb-scarica:focus {
	background-color: #d6e8d4;
	color: #1a1a1a;
	text-decoration: none;
	box-shadow: 6px 10px 20px rgba(0, 0, 0, .16);
}
/* Riga bottoni: "Scarica la scheda" + "Approfondisci" affiancati */
.wbg-mb-actions {
	display: flex;
	flex-wrap: wrap;
	gap: 1rem;
	margin-top: 1.25rem;
}
.wbg-mb-actions a.wbg-mb-scarica {
	margin-top: 0; /* il margine sopra lo dà .wbg-mb-actions */
}
/* Desktop: sulle fasce speculari (foto a destra) i bottoni vanno a destra */
@media (min-width: 992px) {
	.text-lg-right .wbg-mb-actions {
		justify-content: flex-end;
	}
}
/* Mobile/tablet: allineamento bottoni SEMPRE uguale su tutte le fasce
 * (niente alternanza destra/sinistra come sul desktop) */
@media (max-width: 991.98px) {
	.wbg-materiali-brand .wbg-mb-actions {
		justify-content: flex-start;
	}
}
/* Telefoni: i due bottoni più piccoli e affiancati (metà e metà) */
@media (max-width: 767.98px) {
	.wbg-mb-actions {
		flex-wrap: nowrap;
		gap: .5rem;
	}
	.wbg-mb-actions a.wbg-mb-scarica,
	.wbg-mb-actions a.wbg-mb-approfondisci {
		flex: 1 1 0;
		min-width: 0;
		display: flex;
		align-items: center;
		justify-content: center;
		text-align: center;
		padding: 10px 8px;
		font-size: .72rem;
		letter-spacing: .02em;
		line-height: 1.15;
	}
}
/* "Approfondisci": CTA primaria verde piena, accanto alla scheda */
a.wbg-mb-approfondisci,
a.wbg-mb-approfondisci:link,
a.wbg-mb-approfondisci:visited {
	display: inline-block;
	padding: 14px 30px;
	background-color: #227c26;
	color: #fff;
	font-weight: 700;
	font-size: .95rem;
	letter-spacing: .06em;
	text-transform: uppercase;
	text-decoration: none;
	border: 0;
	border-radius: 0;
	box-shadow: 6px 8px 16px rgba(0, 0, 0, .12);
	transition: background-color .2s ease, box-shadow .2s ease;
}
a.wbg-mb-approfondisci:hover,
a.wbg-mb-approfondisci:focus {
	background-color: #1b641e;
	color: #fff;
	text-decoration: none;
	box-shadow: 6px 10px 20px rgba(0, 0, 0, .16);
}
/* Bottone "Scarica la scheda" (PDF) sotto il contenuto delle pagine materiale */
.wbg-scheda-pdf {
	margin: 1rem auto 2.5rem;
	text-align: left;
}
/* Foto e marchietto/nome cliccabili verso la pagina di approfondimento.
 * Hover uguale a quello della Home "I nostri prodotti" (doc Federica: "dare
 * un effetto alle immagini all'hover dei materiali, come i blocchi della home"):
 * la figura si solleva di 4px (transform), niente piu' schiarimento. */
a.wbg-mb-fotolink,
a.wbg-mb-namelink {
	display: inline-block;
	text-decoration: none;
	color: inherit;
}
a.wbg-mb-fotolink img,
a.wbg-mb-namelink .wbg-mb-logo,
a.wbg-mb-namelink {
	transition: transform .25s ease, opacity .2s ease;
}
a.wbg-mb-fotolink:hover img,
a.wbg-mb-fotolink:focus img,
a.wbg-mb-namelink:hover .wbg-mb-logo,
a.wbg-mb-namelink:hover {
	transform: translateY(-4px);
	text-decoration: none;
}

/* Marchietto (loghetto) nell'hero delle singole pagine materiale, al posto del
 * nome testuale: il valore di title_up_h2 e' un <img class="wbg-hero-marchietto">.
 * Marchietti PNG a fondo trasparente -> si posano puliti sul box chiaro
 * (#info-card = rgba(255,255,255,.7)) senza riquadro bianco. */
.wbg-hero-marchietto {
	display: block;
	width: auto;
	height: auto;
	max-width: 100%;
	max-height: 74px;
	margin: 0 0 .75rem;
}
@media (max-width: 767.98px) {
	.wbg-hero-marchietto {
		max-height: 56px;
	}
}

/* === 8b) Font dei nomi sotto le figure (doc Federica) ========================
 * Montserrat per tutti i nomi sotto le figure.
 * - Pagina Cuscini a Stampo (griglia collezioni #box-collections): Semi bold +
 *   Medium. I nomi composti hanno la prima parte in <b> (es. <b>memory</b>care,
 *   <b>clean</b>memory) -> prima parte Semi bold 600, resto Medium 500.
 * - Pagina Federe: titoli Semi bold 600 uniforme.
 * (I 4 nomi della Home sono in home.css: .wbg-hp-title -> 600.) */
#box-collections .card-body h5 {
	font-family: 'Montserrat', sans-serif;
	font-weight: 500; /* Medium (seconda parte dei nomi composti) */
	font-size: 1.4rem; /* era 1.25rem (h5 core): "aumentare un po' la dimensione" (doc) */
}
#box-collections .card-body h5 b,
#box-collections .card-body h5 strong {
	font-weight: 600; /* Semi bold (prima parte) */
}
.wbg-federa-card h5 {
	font-family: 'Montserrat', sans-serif;
	font-weight: 600; /* Semi bold, uniforme */
}
.wbg-federa-card h5 b,
.wbg-federa-card h5 strong {
	font-weight: 600;
}

/* === 9) Rifiniture doc Federica ==============================================
 * (a) Centrature/dimensioni uniformi dei titoli intro dei contenuti: il
 *     riferimento "giusto" e' Chi siamo, che usa un H3 (via Kadence, il cui
 *     CSS e' solo text-align:center); le altre pagine hanno H2 core piu'
 *     grandi -> qui si uniforma tutto alla misura H3 (doc, punto 8).
 * (b) Titoli dentro ai box (info-card) a misura H3 (doc, punto 6).
 * (c) "R di registrato" piccola: i caratteri (r) nel testo vengono avvolti in
 *     <sup class="wbg-reg"> da reg.js (doc, punto 5).
 * (d) Voci non-bold del menu mobile piu' leggibili (doc, punto 9).
 */
.entry-content h2.wp-block-heading.has-text-align-center,
.entry-content h3.wp-block-heading.has-text-align-center,
.entry-content .wp-block-kadence-advancedheading {
	font-size: 1.75rem; /* = h3 Bootstrap, come Chi siamo */
}
.discontinuous-blocks .info-card h2,
.materials-block .card-body h3 {
	font-size: 1.75rem;
}
sup.wbg-reg {
	font-size: .55em;
	top: -.6em;
	letter-spacing: 0;
}
@media (max-width: 991.98px) {
	#navigator .nav-link,
	#navigator .dropdown-item {
		font-weight: 500;
	}
}

/* === 5) Testata bassa (XD/doc Federica) ======================================
 * Nel progetto XD le pagine "di servizio" hanno l'hero ridotto a una fascia
 * (tavole FEDERE/CUSCINI STAMPO: immagine 1920x425 di design ~ 22vw) invece del
 * 100vh di core.css (.position-relative.img-fluid...{height:100vh}). Il doc la
 * chiede per: Contatti, Catalogo, News, Federe. NIENTE offset verticali fissi:
 * il titolo e' centrato dal flex parent (align-items:center) a ogni larghezza.
 * Pagine attive: Contatti (template IT+EN), Catalogo (page-id 681 IT/1203 EN),
 * News elenco (body.blog) e articolo (body.single-post). Per estendere a
 * un'altra pagina basta aggiungere la sua body class ai TRE selettori sotto.
 * Il selettore-immagine replica quello di core.css (0,6,0 > 0,5,0) per vincere
 * senza !important.
 */
.page-template-tpl-contacts .title_up_thumb .position-relative.img-fluid.d-block.mx-auto.w-100,
.page-id-681 .title_up_thumb .position-relative.img-fluid.d-block.mx-auto.w-100,
.page-id-1203 .title_up_thumb .position-relative.img-fluid.d-block.mx-auto.w-100,
body.blog .title_up_thumb .position-relative.img-fluid.d-block.mx-auto.w-100,
body.single-post .title_up_thumb .position-relative.img-fluid.d-block.mx-auto.w-100,
.page-id-2493 .title_up_thumb .position-relative.img-fluid.d-block.mx-auto.w-100,
.page-id-2494 .title_up_thumb .position-relative.img-fluid.d-block.mx-auto.w-100,
.page-id-2495 .title_up_thumb .position-relative.img-fluid.d-block.mx-auto.w-100,
.page-id-2496 .title_up_thumb .position-relative.img-fluid.d-block.mx-auto.w-100,
.page-id-93 .title_up_thumb .position-relative.img-fluid.d-block.mx-auto.w-100,
.page-id-1206 .title_up_thumb .position-relative.img-fluid.d-block.mx-auto.w-100 {
	height: clamp(230px, 22vw, 430px);
	--wbg-hero: none; /* niente parallasse sulle testate basse */
}

/* Titolo centrato sulla fascia (in XD non e' piu' spostato a destra). */
.page-template-tpl-contacts .title_up_thumb .col-md-6.offset-md-6,
.page-id-681 .title_up_thumb .col-md-6.offset-md-6,
.page-id-1203 .title_up_thumb .col-md-6.offset-md-6,
body.blog .title_up_thumb .col-md-6.offset-md-6,
body.single-post .title_up_thumb .col-md-6.offset-md-6,
.page-id-2493 .title_up_thumb .col-md-6.offset-md-6,
.page-id-2494 .title_up_thumb .col-md-6.offset-md-6,
.page-id-2495 .title_up_thumb .col-md-6.offset-md-6,
.page-id-2496 .title_up_thumb .col-md-6.offset-md-6,
.page-id-93 .title_up_thumb .col-md-6.offset-md-6,
.page-id-1206 .title_up_thumb .col-md-6.offset-md-6 {
	margin-left: 0;
	flex: 0 0 100%;
	max-width: 100%;
	text-align: center;
}

/* Titolo come nelle tavole XD: Montserrat 57px su 1920 (~3vw) con tracking
 * largo 0.223em (il margin-right negativo compensa lo spazio dopo l'ultima
 * lettera, che altrimenti scentra il testo centrato). */
.page-template-tpl-contacts .title_up_thumb h1,
.page-template-tpl-contacts .title_up_thumb .h1,
.page-id-681 .title_up_thumb h1,
.page-id-681 .title_up_thumb .h1,
.page-id-1203 .title_up_thumb h1,
.page-id-1203 .title_up_thumb .h1,
body.blog .title_up_thumb h1,
body.blog .title_up_thumb .h1,
body.single-post .title_up_thumb h1,
body.single-post .title_up_thumb .h1,
.page-id-2493 .title_up_thumb h1,
.page-id-2493 .title_up_thumb .h1,
.page-id-2494 .title_up_thumb h1,
.page-id-2494 .title_up_thumb .h1,
.page-id-2495 .title_up_thumb h1,
.page-id-2495 .title_up_thumb .h1,
.page-id-2496 .title_up_thumb h1,
.page-id-2496 .title_up_thumb .h1,
.page-id-93 .title_up_thumb h1,
.page-id-93 .title_up_thumb .h1,
.page-id-1206 .title_up_thumb h1,
.page-id-1206 .title_up_thumb .h1,
/* Contatti IT/EN: il titolo della testata è scritto a mano nel contenuto come
 * <h1 id="titolo-contatti"> (il parser lo tira fuori dall'<h2 class="h1"> che
 * lo avvolge: sono fratelli, non annidati). core.css lo dimensiona per ID —
 * @media(min-width:992px){#titolo-contatti{font-size:6rem}} e
 * @media(max-width:1199.98px){...2.5rem} — e un ID (1-0-0) batte i selettori
 * qui sopra (0-2-1): la scritta rendeva 96px invece di 40px. Il selettore con
 * l'ID (1-1-0) rimette Contatti sulla stessa scala di Catalogo/Federe/News. */
.title_up_thumb #titolo-contatti {
	font-size: clamp(1.6rem, 3vw, 3.6rem);
	letter-spacing: .22em;
	margin-right: -.22em;
	font-weight: 400;
	/* Stessa ombra che Contatti ha inline nel contenuto (h1#titolo-contatti):
	 * senza, la scritta bianca si perde sulle foto chiare (vedi News). */
	text-shadow: 2px 2px grey;
}

/* Centratura verticale del titolo sulla fascia. ATTENZIONE: core.css ha gia'
 * ".position-absolute.w-100.my-auto.text-light{top:45%}" (0,4,0) -> i selettori
 * qui DEVONO includere .w-100.my-auto (0,5,0) per vincere, altrimenti il top
 * non si applica mai (gotcha scoperto sul campo). */
.page-template-tpl-contacts .title_up_thumb .position-absolute.w-100.my-auto,
.page-id-681 .title_up_thumb .position-absolute.w-100.my-auto,
.page-id-1203 .title_up_thumb .position-absolute.w-100.my-auto,
body.blog .title_up_thumb .position-absolute.w-100.my-auto,
body.single-post .title_up_thumb .position-absolute.w-100.my-auto,
.page-id-2493 .title_up_thumb .position-absolute.w-100.my-auto,
.page-id-2494 .title_up_thumb .position-absolute.w-100.my-auto,
.page-id-2495 .title_up_thumb .position-absolute.w-100.my-auto,
.page-id-2496 .title_up_thumb .position-absolute.w-100.my-auto,
.page-id-93 .title_up_thumb .position-absolute.w-100.my-auto,
.page-id-1206 .title_up_thumb .position-absolute.w-100.my-auto {
	top: 50%;
	transform: translateY(-50%);
}

/* Da lg in su l'header e' fisso (fixed-lg-top) e copre la parte alta della
 * fascia: il centro va calcolato sulla parte VISIBILE. Valore scelto a occhio
 * dal cliente in devtools: top 60% (in percentuale scala con la fascia).
 * Sotto lg l'header e' in flusso, non copre nulla -> resta il 50% base. */
@media (min-width: 992px) {
	.page-template-tpl-contacts .title_up_thumb .position-absolute.w-100.my-auto,
	.page-id-681 .title_up_thumb .position-absolute.w-100.my-auto,
	.page-id-1203 .title_up_thumb .position-absolute.w-100.my-auto,
	body.blog .title_up_thumb .position-absolute.w-100.my-auto,
	body.single-post .title_up_thumb .position-absolute.w-100.my-auto,
.page-id-2493 .title_up_thumb .position-absolute.w-100.my-auto,
.page-id-2494 .title_up_thumb .position-absolute.w-100.my-auto,
.page-id-2495 .title_up_thumb .position-absolute.w-100.my-auto,
.page-id-2496 .title_up_thumb .position-absolute.w-100.my-auto,
.page-id-93 .title_up_thumb .position-absolute.w-100.my-auto,
.page-id-1206 .title_up_thumb .position-absolute.w-100.my-auto {
		top: 60%;
	}
}

/* === 10) Fascia footer "Contattaci tramite il FORM" (doc Federica, punto 5) ==
 * Tutta la frase e' diventata un link (prima era testo + bottone separato).
 * Il testo deve restare bianco e in grassetto medio come il vecchio paragrafo
 * (.background_footer_top .container .row usa color:white); un <a> altrimenti
 * prenderebbe il colore-link del tema. Sottolineatura solo in hover. */
.background_footer_top .container .row a {
	color: #fff;
	font-weight: 500;
	text-decoration: none;
}
.background_footer_top .container .row a:hover,
.background_footer_top .container .row a:focus {
	color: #fff;
	text-decoration: underline;
}

/* === 11) CTA WhatsApp (fascia ex-newsletter) ================================
 * Testo piu' grande (base ~1rem -> 1.2rem, come la fascia FORM sotto) e in bold;
 * icona in verde WhatsApp. Il link e' inline-flex + align-items:center cosi'
 * l'icona (piu' grande del testo) resta centrata verticalmente col testo, invece
 * di sedersi sulla baseline. core.css ha .newsletter a i{font-size:1.25rem}
 * (0,1,2): il selettore con .fa-whatsapp (0,2,2) + caricato dopo -> vince. */
/* Federica (doc, punto 4): "CONTATTACI SUBITO SU WHATSAPP leggermente piu'
 * piccolo e carattere semibold (NO BOLD)" -> 1.2rem/700 diventa 1.05rem/600. */
.newsletter a {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	font-size: 1.05rem;
	font-weight: 600;
}
.newsletter a i.fa-whatsapp {
	color: #25d366;
	font-size: 1.55rem;
}

/* === 12) Marchio Green Foam header: più piccolo su mobile (doc Federica) =====
 * Nuovo marchio (459x87) servito da menu-logo.php come file del tema, versione
 * per lingua (.wbg-brand). core.css dimensiona .navbar-brand>img via max-height:
 * 50px!important sotto lg, 70px!important da lg in su. Il doc chiede il logo "un
 * po' più piccolo" su mobile: sotto lg (dove c'è l'hamburger) scende a 40px.
 * Selettore .navbar-brand.wbg-brand>img (0,2,1) + !important -> batte la regola
 * di core (0,1,1 !important). Desktop invariato (resta 70px di core).
 * width:auto OBBLIGATORIO accanto a max-height: img-fluid è max-width:100% (NON
 * width:auto), quindi con la sola max-height la larghezza non si adeguava e il
 * logo si schiacciava. Con width:auto la larghezza segue il ratio. */
@media (max-width: 991.98px) {
	.navbar-brand.wbg-brand > img {
		max-height: 45px !important; /* core: 50px; ridotto "un po'" come da doc */
		width: auto !important;
	}
}

/* === 12b) Marchio nel piede piu' piccolo (doc Federica) =====================
 * Il footer usa lo stesso markup .navbar-brand>img dell'header, quindi eredita
 * i max-height di core.css (70px da lg, 50px sotto). Qui scende a 50/38px.
 * width:auto obbligatorio accanto a max-height: .img-fluid e' max-width:100%,
 * senza width:auto il marchio si schiaccia (stesso gotcha dell'header). */
.page-footer .navbar-brand > img {
	max-height: 50px !important;
	width: auto !important;
}
@media (max-width: 991.98px) {
	.page-footer .navbar-brand > img {
		max-height: 38px !important;
	}
}

/* === 13) Testata mobile semplificata (doc Federica) =========================
 * "MOBILE: semplificare testata: solo logo e menu (togliere elementi top)".
 * La barra superiore (#navigator-top, template menu/menu_top_transp) porta
 * telefono, email, area riservata, social e switch lingua: sotto lg spariscono
 * tutti, restano marchio + hamburger. Nessuna perdita di funzioni: telefono ed
 * email sono in fondo al drawer (.wbg-dw-contacts) insieme ad area riservata,
 * social e lingue (.wbg-dw-top). */
@media (max-width: 991.98px) {
	#navigator-top {
		display: none !important;
	}
}

/* === 14) Titoli delle testate basse: piu' piccoli su desktop (doc, punto 9) ==
 * "i titoli sulle testate (CONTATTI, CATALOGO, NEWS) su desktop piu' piccoli;
 * su mobile vanno bene". Il corpo base e' clamp(1.6rem,3vw,3.6rem) (sez. 5):
 * su mobile resta 1.6rem (ok), su desktop arrivava a 3.6rem (~58px a 1920).
 * L'override, SOLO >=992px, non tocca il mobile. Riduzione ~20%.
 * Stessa lista di selettori della sez. 5 (testate basse): la riduzione vale
 * anche per Materiali/Cuscini/Federe e per il titolo degli articoli News. */
@media (min-width: 992px) {
	.page-template-tpl-contacts .title_up_thumb h1,
	.page-template-tpl-contacts .title_up_thumb .h1,
	.page-id-681 .title_up_thumb h1,   .page-id-681 .title_up_thumb .h1,
	.page-id-1203 .title_up_thumb h1,  .page-id-1203 .title_up_thumb .h1,
	body.blog .title_up_thumb h1,      body.blog .title_up_thumb .h1,
	body.single-post .title_up_thumb h1, body.single-post .title_up_thumb .h1,
	.page-id-2493 .title_up_thumb h1,  .page-id-2493 .title_up_thumb .h1,
	.page-id-2494 .title_up_thumb h1,  .page-id-2494 .title_up_thumb .h1,
	.page-id-2495 .title_up_thumb h1,  .page-id-2495 .title_up_thumb .h1,
	.page-id-2496 .title_up_thumb h1,  .page-id-2496 .title_up_thumb .h1,
	.page-id-93 .title_up_thumb h1,    .page-id-93 .title_up_thumb .h1,
	.page-id-1206 .title_up_thumb h1,  .page-id-1206 .title_up_thumb .h1,
	.title_up_thumb #titolo-contatti { /* Contatti IT/EN, vedi nota in sez. 5 */
		font-size: 2.5rem; /* Federica: "su desktop devono essere 2.5em"; mobile invariato */
	}
}

/* === 15) Form catalogo: via la sottolineatura dei campi (doc, punto 8) =======
 * core.css (da _custom.scss) rende .form-control{border:none;border-bottom:1px}
 * -> resta solo una riga sotto. Federica: "lasciare solo il quadrato bianco".
 * Scopato al form compatto delle collezioni (.container.mt-4.catalogo), che sta
 * sul cuneo verde -> i campi bianchi restano ben visibili. NON tocca il form
 * esteso di /catalogo/ (fondo bianco: li' i campi sparirebbero) ne' il form
 * contatti o la ricerca in testata. */
.container.mt-4.catalogo .webag-form .form-control {
	border-bottom: 0;
}
.container.mt-4.catalogo .webag-form .form-control.textarea_long {
	border: 0;
}

/* === 16) Mobile: spazio contenuto↔bordo UGUALE su tutto il sito (doc) =========
 * Federica: "controllo generale, lo spazio tra il contenuto e il bordo della
 * pagina deve essere uguale". I .container Bootstrap hanno 15px; alcune sezioni
 * ne hanno di più/meno. Sotto 768px uniformiamo tutti i .container a 20px.
 * L'hero (.container con padding:0!important) e la testata (.container.p-0/.px-0,
 * padding !important) NON sono toccati (il loro !important vince); il form
 * catalogo usa un ::before a 100vw, non risente del padding. */
@media (max-width: 767.98px) {
	.container {
		padding-left: 20px;
		padding-right: 20px;
	}
}

/* === 17) Cuscini a Stampo: testo intro allineato a DESTRA su desktop (doc) ====
 * Federica (devtools su .entry-content .has-text-align-center -> text-align:right):
 * "il testo iniziale su desktop deve essere allineato a destra, su mobile
 * centrato". L'immagine dei cuscini sta a destra (float-lg-right): il testo le
 * si allinea sotto/accanto. Scopato per page-id (IT 2493 / EN 2494). Mobile:
 * resta centrato (core .has-text-align-center). !important per battere il
 * text-align:center!important di core. */
@media (min-width: 992px) {
	.page-id-2493 .entry-content,
	.page-id-2494 .entry-content,
	.page-id-2493 .entry-content .has-text-align-center,
	.page-id-2494 .entry-content .has-text-align-center {
		text-align: right !important;
	}
	/* Immagine cuscini spostata un po' più in basso, così copre la lineetta
	 * separatrice sotto (doc Federica 24/07). transform: non spinge il layout,
	 * l'immagine scende visivamente sopra la riga "LE NOSTRE COLLEZIONI". */
	.page-id-2493 .col-lg-6.float-lg-right img,
	.page-id-2494 .col-lg-6.float-lg-right img {
		transform: translateY(60px);
	}
}

/* === 18) Testata desktop 992-1599px: logo GRANDE, voci più piccole (doc) ======
 * Federica: "a risoluzioni intermedie il logo diventa piccolissimo; deve restare
 * grande, le voci di menu invece si devono un po' rimpicciolire."
 * Causa: la <ul> del menu è larga ~995px incomprimibile (letter-spacing .2rem +
 * padding), il container scende a 960/1140, e il logo — essendo .img-fluid
 * (max-width:100%) dentro una colonna che si comprime — si rimpiccioliva fino a
 * sparire. Qui: (1) la colonna del marchio non si comprime; (2) il logo prende
 * un'ALTEZZA fissa grande (larghezza dal ratio, niente max-width); (3) il menu
 * recupera spazio riducendo tracking, padding e corpo. Sopra i 1600 nulla
 * cambia (misure XD originali). NB: flex:0 0 auto SOLO su div.navbar (la colonna
 * marchio): anche il <nav> del menu ha classe .navbar e altrimenti sborderebbe. */
@media (min-width: 992px) and (max-width: 1599.98px) {
	#navigator > .container > div.navbar.navbar-expand-lg { flex: 0 0 auto; }
	#navigator .navbar-brand.wbg-brand { margin-right: 1.25rem !important; }
	#navigator .navbar-brand.wbg-brand > img {
		height: 58px;              /* grande: vicino ai 62px dei monitor grandi */
		width: auto;
		max-width: none;
		max-height: none !important;
	}
	#menu-primary-navigation.navbar-nav .nav-link:not(.dropdown-item) {
		letter-spacing: .02em;     /* core: .2rem = 3.2px per carattere */
		padding-left: .4rem;
		padding-right: .4rem;
		font-size: .9rem;
		white-space: nowrap;
	}
	#navbarprimary_nav_transparent .navbar-nav { align-items: center; }
}
@media (min-width: 992px) and (max-width: 1199.98px) {
	#navigator .navbar-brand.wbg-brand { margin-right: .75rem !important; }
	#navigator .navbar-brand.wbg-brand > img { height: 50px; } /* resta grande anche a 992-1199 */
	#menu-primary-navigation.navbar-nav .nav-link:not(.dropdown-item) {
		font-size: .8rem;
		padding-left: .3rem;
		padding-right: .3rem;
	}
}

/* === 19) Mobile: altezza uniforme fra slide Home e hero pagine interne (doc) ==
 * "HOME MOBILE: fare prima parte più grande; pagine interne: ridurre altezza
 * hero, farla come la slide home." Le foto mobile sono tutte 1000x1000: la Home
 * (height:auto) veniva ~100vw (~390px su iPhone), le pagine interne erano
 * bloccate a clamp(500px,82vh,960px) (~690px). Le portiamo entrambe a ~62vh.
 * Le testate basse (§5, selettori page-id 0,6,0) NON sono toccate: restano corte. */
@media (max-width: 991.98px) {
	.position-relative.img-fluid.d-block.mx-auto.w-100 {
		height: clamp(420px, 62vh, 620px);
	}
	.slideshow-frontpage .main-image-home picture,
	.slideshow-frontpage .main-image-home picture img {
		height: clamp(420px, 62vh, 620px);
		object-fit: cover;
		object-position: center;
	}
}

/* === 20) Spazio uniforme fra testata (hero) e primo titolo del contenuto ======
 * doc: "aumentare lo spazio tra testata e titolo" (Storia, Certificazioni,
 * Sociale, Blocchi...) e punto 5 "in tutte le pagine la distanza dei titoli
 * dalla slide è diversa". Il tema stampava un H1 comunque nascosto da core.css
 * (h1.text-uppercase.font-weight-bold.py-3{display:none}); dal 28/07/2026 non
 * viene più stampato affatto (blocks/views/title.php). Il "titolo" sotto la
 * testata è quindi il primo heading del contenuto, che non ha margin-top. Prima lo
 * stacco lo dava (a caso) un <br> lasciato in alcune pagine (ora rimosso, §doc):
 * qui lo mette il CSS, UGUALE ovunque. Contatti escluso (là .entry-content è una
 * colonna laterale). */
body:not(.page-template-tpl-contacts) .entry-content > h1:first-child,
body:not(.page-template-tpl-contacts) .entry-content > h2:first-child,
body:not(.page-template-tpl-contacts) .entry-content > h3:first-child,
body:not(.page-template-tpl-contacts) .entry-content > .wp-block-kadence-advancedheading:first-child {
	margin-top: 2.5rem;
}
@media (max-width: 991.98px) {
	body:not(.page-template-tpl-contacts) .entry-content > h1:first-child,
	body:not(.page-template-tpl-contacts) .entry-content > h2:first-child,
	body:not(.page-template-tpl-contacts) .entry-content > h3:first-child,
	body:not(.page-template-tpl-contacts) .entry-content > .wp-block-kadence-advancedheading:first-child {
		margin-top: 1.5rem;
	}
}

/* === 21) Liniette verticali nere dei box: più fini e più staccate (doc) =======
 * Federica: "più staccate dal margine sinistro del box bianco — su desktop 5px
 * in più, su mobile una decina di px". Il div (#vertical-rule nell'hero delle
 * collezioni, .vertical-rule nei box discontinuous) è a left:25px, spessore 2px
 * (border 1px + bg + border). Qui: 1px netto (più fine) + spostato a destra
 * (più staccato dal bordo sx del box): +5px desktop, +10px mobile. */
#vertical-rule,
.discontinuous-blocks .row .col-12 .info-card .vertical-rule {
	border: 0;
	width: 1px;
	background-color: #000;
	left: 30px; /* era 25px: +5px (desktop) */
}
@media (max-width: 767.98px) {
	#vertical-rule,
	.discontinuous-blocks .row .col-12 .info-card .vertical-rule {
		left: 35px; /* +10px su mobile */
	}
}

/* === 22) Testata mobile: marchio centrato in assoluto + icona menu a sinistra =
 * Federica: "il logo va centrato in assoluto rispetto alla pagina; icona del
 * menu più a sinistra; un po' di padding sopra e sotto (~5px)". Il marchio è
 * posizionato in ASSOLUTO al centro del container (che è full-width, .px-0),
 * così è centrato rispetto alla pagina indipendentemente dall'hamburger; l'icona
 * hamburger resta nel flusso a filo sinistro. min-height per compensare il
 * marchio assoluto (che non fa altezza). Solo sotto lg. */
@media (max-width: 991.98px) {
	#navigator .navbar-expand-lg > .container.px-0 {
		position: relative;
		justify-content: flex-start !important;
		align-items: center;
		min-height: 56px;
		padding-top: 5px;
		padding-bottom: 5px;
	}
	#navigator #wbg-drawer-toggle {
		margin: 0;               /* icona menu tutta a sinistra (doc Federica 24/07) */
		padding-left: .35rem;    /* il .navbar-toggler ha .75rem: il glifo va a filo sinistro */
		padding-right: .35rem;
		z-index: 2;
	}
	#navigator .navbar-brand.wbg-brand {
		position: absolute;
		left: 50%;
		top: 50%;
		transform: translate(-50%, -50%);
		margin: 0 !important;
	}
}

/* === 23) Pagina Blocchi: fascia verde (materials-block) — taglio + altezza ======
 * Doc Federica 24/07 + cliente: "sfondo come su /lastre/: taglio trasversale in
 * alto, sotto dritto" e poi "spostare in alto la fine dello sfondo verde, se no si
 * attacca con l'altro" (la fascia verde del catalogo qui sotto).
 *
 * (a) TAGLIO. Il default core.css è l'opposto — polygon(0 0, 100% 0, 100% 75%,
 *     0% 100%) = top dritto, base diagonale. Lo portiamo allo stesso taglio di
 *     .discontinuous-blocks (lastre/agglomerati): diagonale in alto (0 120px →
 *     100% 0), base dritta — stesso valore di quelle pagine, così "è come lastre".
 * (b) ALTEZZA. Il default accoppia padding-bottom:450px (fascia molto alta) con
 *     .margin_top{margin-top:-370px}, che tira il testo "DIAMO FORMA" DENTRO il
 *     verde. Così però la fascia scende fin sotto il testo e si salda col verde del
 *     catalogo. Le disaccoppiamo (come già fa il mobile <992px): la fascia finisce
 *     ~50px sotto la card FORMULAZIONI e "DIAMO FORMA" scende sotto, su bianco.
 *
 * Solo desktop (≥992px): sotto quella soglia core.css fa già clip-path:none +
 * padding-bottom:50px + margin_top:0, da non reintrodurre (regola non-media,
 * caricata dopo core, ribatterebbe il mobile → il min-width). materials-block e
 * .margin_top sono usati SOLO dalla pagina Blocchi → override globale sicuro. */
@media (min-width: 992px) {
	.materials-block {
		clip-path: polygon(0 120px, 100% 0, 100% 100%, 0% 100%);
		padding-bottom: 50px;
	}
	.margin_top {
		margin-top: 3rem;
	}
}

/* === 24) H1: stile UNICO in tutto il sito, modello /tecnologia/ ===============
 * Richiesta cliente: "uniformare lo stile degli H1 prendendo come modello
 * /tecnologia/". Quell'H1 è un blocco Kadence "advanced heading" e rende
 * (misurato in Chrome, sia a 1920px sia a 390px):
 *     font-size 28px (1.75rem) · weight 500 · letter-spacing .8px (.05rem)
 *     line-height 1.2 · margin 0 0 1rem · padding 0
 * Gli altri H1 sono blocchi "titolo" WP standard e prendevano invece
 * core.css `.h1,h1{font-size:2.3rem}` (36.8px) e `1.5rem` sotto i 576px: era
 * QUESTA la differenza che si vedeva pagina per pagina (tutto il resto —
 * peso, spaziatura, margini, padding — era già identico al modello).
 *
 * Cosa NON tocchiamo, di proposito:
 * - i <strong> dentro il titolo (es. <strong>MEMORY</strong>CARE, CATALOGO,
 *   pagine prodotto): restano in grassetto, come chiesto;
 * - l'allineamento: resta quello scelto in pagina (prodotti a sinistra, pagine
 *   istituzionali centrate). Il cliente ha chiesto dimensione, spaziatura,
 *   margini e padding, non l'allineamento;
 * - i titoli delle TESTATE (hero .title_up/.title_up_thumb, Contatti): sono
 *   l'elemento grafico da XD, con la loro scala (§5, §14).
 *
 * Il secondo selettore vince sul CSS per-blocco che Kadence stampa inline
 * (`.wp-block-kadence-advancedheading.kt-adv-heading<id>[data-kb-block]`,
 * specificità 0-3-0), così un futuro ritocco fatto dall'editor non riapre la
 * differenza. `article div header h1` è il titolo degli articoli News, che
 * core.css forzava a 600 e senza spaziatura (serve !important per batterlo). */
.entry-content h1,
.entry-content h1.wp-block-kadence-advancedheading[data-kb-block] {
	font-size: 1.75rem;
	font-weight: 500;
	letter-spacing: .05rem;
	line-height: 1.2;
	margin-bottom: 1rem;
	padding: 0;
}

article div header h1 {
	font-size: 1.75rem;
	font-weight: 500 !important;
	letter-spacing: .05rem !important;
	line-height: 1.2;
	margin-bottom: 1rem;
	padding: 0;
}

/* Tag inline dentro al titolo: NON devono cambiarne la scala (il cliente ha
 * chiesto di uniformare anche i "sotto tag che modificano gli stili"). Oggi in
 * pagina ci sono solo <strong> e <br>, ma un <span> con font-size/spaziatura
 * incollato dall'editor tornerebbe a sfasare il titolo: qui eredita e basta.
 * Il grassetto passa da b/strong, che non tocchiamo. */
.entry-content h1 span,
.entry-content h1 em,
.entry-content h1 mark,
.entry-content h1 strong,
.entry-content h1 b,
article div header h1 span,
article div header h1 strong,
article div header h1 b {
	font-size: inherit !important;
	letter-spacing: inherit !important;
	line-height: inherit !important;
}

/* NB (non è una regola, è un promemoria): lo stesso id "titolo-contatti" è
 * finito, per un copia-incolla nel contenuto EN, dentro una card della griglia
 * collezioni di /en/molded-pillows/ — un <h1> con id duplicato al posto del
 * testo dell'<h5>. Lì core.css lo dimensiona a 6rem (96px). Va tolto dal
 * CONTENUTO della pagina: non lo tamponiamo qui, altrimenti si nasconde un
 * markup non valido (H1 di troppo + id duplicato) invece di correggerlo. */
