/*
 * VLINZZA — Critical Global Classes
 *
 * Task 3.1 (2026-09-19): a byte-exact subset of global-classes.css's own
 * rule blocks, in original source order, values and media-query nesting
 * unchanged. Not an independently authored file — do NOT hand-edit. If
 * global-classes.css changes, regenerate this file by re-running the live
 * CSSOM above-the-fold evidence check (Element.matches() against every
 * in-viewport element, Mobile 390x844 + Desktop 1440x1000, across every
 * structurally distinct public template) and re-copying the matched blocks.
 * Evidence: _project/docs/performance-analysis/37-global-classes-critical-rule-inventory.csv
 *
 * Scope: only the 10 rules confirmed above-the-fold live on the current
 * public site (page boundary; the Legal-page section/lead/legal-content
 * rules; the 404 page's button base + primary colour). See report 37.
 */

.vlz-page {
	inline-size: 100%;
}

.vlz-main {
	display: block;
	inline-size: 100%;
}

.vlz-content {
	inline-size: 100%;
}

.vlz-content > * {
	box-sizing: border-box;
	max-inline-size: calc(var(--vlz-content-max) + (var(--vlz-container-gutter) * 2));
	margin-inline: auto;
	padding-inline: var(--vlz-container-gutter);
}

.vlz-content > .alignfull {
	max-inline-size: none;
	padding-inline: 0;
}

.vlz-section {
	padding-block: var(--vlz-section-space);
	background-color: var(--vlz-color-surface);
	color: var(--vlz-color-text);
}

.vlz-lead {
	font-size: var(--vlz-text-lead);
	color: var(--vlz-color-text-muted);
}

.vlz-legal-content {
	max-inline-size: var(--vlz-measure);
	margin-inline: auto;
}

.vlz-btn .wp-block-button__link {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	gap: var(--vlz-space-2xs);
	min-block-size: var(--vlz-control-height);
	padding-block: var(--vlz-space-2xs);
	padding-inline: var(--vlz-control-padding-inline);
	border: var(--vlz-border-width-strong) solid transparent;
	border-radius: var(--vlz-radius-pill);
	font-size: var(--vlz-control-font-size);
	font-weight: var(--vlz-weight-semibold);
	line-height: var(--vlz-leading-tight);
	text-decoration: none;
	transition: background-color 150ms ease, border-color 150ms ease, color 150ms ease;
}

.vlz-btn--primary .wp-block-button__link:not(.has-background) {
	background-color: var(--vlz-color-primary);
	border-color: var(--vlz-color-primary);
	color: var(--vlz-color-text-invert);
}
