/*
 * [STB] Layout dei moduli — full-bleed indipendente dal tema.
 *
 * I temi a container (es. Understrap: .container > .row > #primary) stringono
 * il contenuto con max-width + padding laterali. I moduli impostati su
 * «Full width» (align: full → classe .alignfull) devono invece arrivare a
 * bordo schermo (hero, footer). Qui li facciamo sfondare fino a 100vw,
 * limitandoci ai SOLI blocchi studio-torta per non interferire col tema.
 *
 * Nota: il contenuto interno dei moduli resta centrato/limitato dai rispettivi
 * __inner (max-width), quindi lo sfondo è a tutta larghezza ma il testo no.
 */

/* Full-bleed generico: qualunque modulo impostato su «Full width». */
[class*="wp-block-studio-torta-"].alignfull {
	width: 100vw;
	max-width: 100vw;
	margin-left: calc( 50% - 50vw );
	margin-right: calc( 50% - 50vw );
}

/* Hero e Footer sono sempre a tutto schermo, a prescindere dall'allineamento
   scelto nell'editor: per una testata e un piè di pagina è l'intento corretto
   e il footer supporta comunque solo «full». Il contenuto interno resta
   centrato dai rispettivi __inner (max-width 1280). */
.wp-block-studio-torta-hero,
.wp-block-studio-torta-footer {
	width: 100vw;
	max-width: 100vw;
	margin-left: calc( 50% - 50vw );
	margin-right: calc( 50% - 50vw );
}

/* Larghezza «wide»: sfrutta più spazio del container senza arrivare a bordo. */
[class*="wp-block-studio-torta-"].alignwide {
	max-width: 1280px;
	margin-left: auto;
	margin-right: auto;
}

/* ---- Utility bordi (da applicare via "Classi CSS aggiuntive" del blocco) ---- */
.border-bottom-blu {
	border-bottom: 1px solid #1E50A0;
}

/* Ancore: quando un modulo è il target di un link #ancora, atterra SOTTO
   l'header fisso invece che finirci sotto. */
[class*="wp-block-studio-torta-"] {
	scroll-margin-top: calc( var(--stb-header-h, 72px) + 16px );
}
