/*
 * Base comum dos blocos VerdeWeb. Vivia no "css" de topo do theme.json, mas
 * o «CSS adicional» dos Estilos globais substitui essa string por inteiro.
 * As variações de secção redefinem as --vw-*.
 */

/* O cabeçalho fixo não pode tapar o elemento focado (WCAG 2.4.11). A altura
   real vem do JS do cabeçalho; o token vale antes de medir e sem JS. */
:root {
	scroll-padding-top: calc(var(--wp-admin--admin-bar--height, 0px) + var(--vw-altura-cabecalho, var(--wp--custom--cabecalho--altura)) + var(--wp--preset--spacing--10));
}

/* O tema é escuro por omissão: controlos nativos (datas, listas) a condizer. */
body {
	color-scheme: dark;
	-webkit-font-smoothing: antialiased;
	overflow-x: clip;
	--vw-acento: var(--wp--preset--color--destaque-vivo);
	--vw-etiqueta: var(--wp--preset--color--destaque);
	--vw-secundario: var(--wp--preset--color--texto-suave);
	--vw-superficie: var(--wp--preset--color--escuro-2);
	--vw-erro: var(--wp--preset--color--erro);
	--vw-foco: var(--wp--preset--color--destaque-vivo);
}

:where(h1, h2, h3) em {
	color: var(--vw-acento);
	font-family: var(--wp--preset--font-family--realce);
	font-weight: 400;
	letter-spacing: -0.02em;
}

.vw-etiqueta {
	display: inline-flex;
	align-items: center;
	gap: var(--wp--custom--etiqueta--intervalo);
	margin: 0;
	color: var(--vw-etiqueta);
	font-size: var(--wp--preset--font-size--etiqueta);
	letter-spacing: 0.14em;
	line-height: 1.4;
	text-transform: uppercase;
}

.vw-etiqueta::before {
	content: "";
	inline-size: var(--wp--custom--etiqueta--traco);
	block-size: 1px;
	background: currentcolor;
}

.wp-site-blocks > *,
.wp-block-post-content > [class*="wp-block-verdeweb-"],
.wp-block-post-content > [class*="is-style-secao-"] {
	margin-block-start: 0;
}

/* Uma secção a toda a largura no fim já traz o seu espaço; o padding do
   modelo (em linha, daí o !important) faria uma faixa antes do rodapé. */
.wp-block-post-content:has(> .alignfull:last-child) {
	padding-bottom: 0 !important;
}
