/* ============================================================
 * Legal — Smart Catering Child · Fase 9
 *
 * Estilos para templates/page-legal.php (Aviso Legal, Privacidad,
 * Cookies). Foco en LEGIBILIDAD: container 760px, Overpass 16/1.7,
 * headings Merriweather, listas con bullets sutiles.
 *
 * Capa: components (cargada después de section.css).
 * ============================================================ */

@layer components {

	/* Hero cream — versión compacta del patrón sc-section--cream */
	.scc-legal .sc-legal-hero {
		padding-top: 6rem;
		padding-bottom: 2.5rem;
	}

	.sc-legal-hero__title {
		font-family: var(--sc-font-display, "Merriweather", Georgia, serif);
		font-size: clamp(2rem, 4vw + 1rem, 3.25rem);
		line-height: 1.15;
		font-weight: 500;
		margin: 0.5rem 0 0;
		color: var(--sc-color-ink, #1a1a1a);
	}

	/* Body container — lectura cómoda */
	.scc-legal .sc-legal-body {
		padding-top: 2rem;
		padding-bottom: 5rem;
	}

	.sc-legal__body {
		font-family: var(--sc-font-body, "Overpass", system-ui, sans-serif);
		font-size: 1rem;
		line-height: 1.75;
		color: var(--sc-color-ink, #1a1a1a);
	}

	.sc-legal__body > * + * {
		margin-top: 1.1rem;
	}

	.sc-legal__body p {
		margin: 0 0 1.1rem;
	}

	.sc-legal__body h2,
	.sc-legal__body h3,
	.sc-legal__body h4 {
		font-family: var(--sc-font-display, "Merriweather", Georgia, serif);
		font-weight: 500;
		color: var(--sc-color-ink, #1a1a1a);
		line-height: 1.25;
		margin: 2.25rem 0 0.75rem;
	}

	.sc-legal__body h2 {
		font-size: 1.625rem;
	}

	.sc-legal__body h3 {
		font-size: 1.25rem;
	}

	.sc-legal__body h4 {
		font-size: 1.0625rem;
	}

	/* Links dorados subrayados */
	.sc-legal__body a {
		color: var(--sc-color-gold, #b8924c);
		text-decoration: underline;
		text-decoration-thickness: 1px;
		text-underline-offset: 3px;
	}

	.sc-legal__body a:hover {
		color: var(--sc-color-gold-dark, #93732e);
		text-decoration-thickness: 2px;
	}

	/* Listas — override del reset GP que quita bullets dentro de prose */
	.sc-legal__body ul,
	.sc-legal__body ol {
		margin: 1rem 0 1.25rem;
		padding-left: 1.5rem;
	}

	.sc-legal__body ul {
		list-style: disc;
	}

	.sc-legal__body ol {
		list-style: decimal;
	}

	.sc-legal__body li {
		margin: 0.4rem 0;
	}

	.sc-legal__body li::marker {
		color: var(--sc-color-gold, #b8924c);
	}

	.sc-legal__body strong,
	.sc-legal__body b {
		font-weight: 600;
	}

	.sc-legal__body em,
	.sc-legal__body i {
		font-style: italic;
	}

	.sc-legal__body table {
		width: 100%;
		border-collapse: collapse;
		margin: 1.5rem 0;
		font-size: 0.9375rem;
	}

	.sc-legal__body th,
	.sc-legal__body td {
		text-align: left;
		padding: 0.625rem 0.875rem;
		border-bottom: 1px solid rgba(0, 0, 0, 0.08);
		vertical-align: top;
	}

	.sc-legal__body th {
		font-weight: 600;
		background: rgba(184, 146, 76, 0.06);
	}

	/* Meta — fecha actualización + DPO */
	.sc-legal__updated,
	.sc-legal__dpo {
		margin-top: 2.5rem;
		padding-top: 1.25rem;
		border-top: 1px solid rgba(0, 0, 0, 0.08);
		font-size: 0.9375rem;
		color: var(--sc-color-muted, #5a5a5a);
		font-style: italic;
	}

	.sc-legal__dpo {
		margin-top: 0.75rem;
		border-top: none;
		padding-top: 0;
		font-style: normal;
	}

	.sc-legal__dpo a {
		color: var(--sc-color-gold, #b8924c);
		text-decoration: underline;
	}

	@media (max-width: 640px) {
		.scc-legal .sc-legal-hero {
			padding-top: 4.5rem;
			padding-bottom: 1.75rem;
		}

		.sc-legal__body {
			font-size: 0.9375rem;
			line-height: 1.7;
		}

		.sc-legal__body h2 {
			font-size: 1.375rem;
		}
	}
}
