/* Método SUM · paleta y letras del estilo de las placas (28 oct 2026). */

@font-face {
	font-family: "Inter";
	src: url("/assets/fonts/inter-medium.woff") format("woff");
	font-weight: 500;
	font-style: normal;
	font-display: swap;
}
@font-face {
	font-family: "Inter";
	src: url("/assets/fonts/inter-extrabold.woff") format("woff");
	font-weight: 800;
	font-style: normal;
	font-display: swap;
}
@font-face {
	font-family: "Inter Display";
	src: url("/assets/fonts/inter-display-medium.woff") format("woff");
	font-weight: 500;
	font-style: normal;
	font-display: swap;
}

:root {
	--sum-verde-texto: #1e4e36;
	--sum-verde: #296549;
	--sum-verde-claro: #e9f2ed;
	--sum-verde-borde: #2b5b41;
	--sum-dorado: #f0c26a;
	--sum-dorado-oscuro: #c9962f;
	--sum-texto: #23302a;
	--sum-fondo: #ffffff;

	--letra-titulo: "Inter", system-ui, -apple-system, "Segoe UI", Roboto, sans-serif;
	--letra-display: "Inter Display", "Inter", system-ui, -apple-system, "Segoe UI", Roboto, sans-serif;
	--letra-texto: "Inter", system-ui, -apple-system, "Segoe UI", Roboto, sans-serif;
}

*,
*::before,
*::after {
	box-sizing: border-box;
}

html {
	-webkit-text-size-adjust: 100%;
	text-size-adjust: 100%;
}

body {
	margin: 0;
	min-height: 100vh;
	min-height: 100svh;
	display: flex;
	flex-direction: column;
	background: var(--sum-fondo);
	color: var(--sum-texto);
	font: 500 1rem/1.5 var(--letra-texto);
	-webkit-font-smoothing: antialiased;
}

a {
	color: var(--sum-verde);
	text-decoration-thickness: 1px;
	text-underline-offset: 0.2em;
}
a:hover {
	color: var(--sum-verde-texto);
}
a:focus-visible {
	outline: 2px solid var(--sum-verde);
	outline-offset: 3px;
	border-radius: 2px;
}

/* Portada */

.portada {
	flex: 1;
	display: flex;
	flex-direction: column;
	align-items: center;
	justify-content: center;
	text-align: center;
	padding: 48px 16px 24px;
}

.portada__simbolo {
	width: clamp(150px, 38vw, 230px);
	height: auto;
	display: block;
}

.portada__titulo {
	margin: clamp(28px, 5vh, 44px) 0 0;
	font-family: var(--letra-titulo);
	font-weight: 800;
	font-size: clamp(2rem, 7.5vw, 3.25rem);
	line-height: 1.05;
	letter-spacing: 0.08em;
	text-transform: uppercase;
	color: var(--sum-verde-texto);
}

.portada__bajada {
	margin: 18px 0 0;
	max-width: 24ch;
	font-family: var(--letra-display);
	font-weight: 500;
	font-size: clamp(1.15rem, 4.4vw, 1.5rem);
	line-height: 1.35;
	text-wrap: balance;
	color: var(--sum-texto);
}

/* Pie */

.pie {
	display: flex;
	justify-content: center;
	align-items: center;
	gap: 12px;
	padding: 24px 16px max(28px, env(safe-area-inset-bottom));
	font-size: 0.95rem;
}

.pie a {
	display: inline-block;
	padding: 8px 4px;
}

.pie__punto {
	color: var(--sum-verde-borde);
	opacity: 0.6;
}
