/* =========================================================
   Legal pages (page-legal.php) — single-column editorial prose
   Política de Privacidade, Trocas e Devoluções, Resolução de
   Litígios, e qualquer página de plugin (Cookies, Termos) à qual
   o modelo "Legal" seja atribuído.

   Estiliza o the_content() do editor — sem classes por secção,
   só os elementos da prosa. Reutiliza os tokens da marca
   (--ink, --stone, --line, --paper-tint, --sans, --mono…).
   ========================================================= */

.cos-legal {
	max-width: 760px;
	margin: 0 auto;
	padding: clamp(48px, 7vw, 96px) var(--gutter) clamp(72px, 9vw, 128px);
}

/* ── Hero ─────────────────────────────────────────────── */
.cos-legal__hero {
	margin: 0 0 clamp(36px, 5vw, 56px);
	padding-bottom: clamp(28px, 4vw, 40px);
	border-bottom: var(--hairline) solid var(--line);
}
.cos-legal__eyebrow {
	display: block;
	margin-bottom: 16px;
}
.cos-legal__title {
	font-family: var(--sans);
	font-weight: 400;
	text-transform: uppercase;
	font-size: var(--fs-h1-page);
	line-height: 1.1;
	letter-spacing: 0.02em;
	color: var(--ink);
	margin: 0 0 14px;
}
.cos-legal__updated {
	font-family: var(--mono);
	font-size: 12px;
	letter-spacing: 0.08em;
	color: var(--stone-soft);
	margin: 0;
}

/* ── Prose body ───────────────────────────────────────── */
.cos-legal__content {
	font-size: 15px;
	line-height: 1.75;
	color: var(--ink-soft);
}
.cos-legal__content > *:first-child {
	margin-top: 0;
}
.cos-legal__content > *:last-child {
	margin-bottom: 0;
}

/* Section headings — numbered, set apart from body */
.cos-legal__content h2 {
	font-family: var(--sans);
	font-weight: 500;
	font-size: clamp(16px, 1.6vw, 19px);
	line-height: 1.3;
	letter-spacing: 0.01em;
	color: var(--ink);
	margin: clamp(36px, 4vw, 52px) 0 14px;
	padding-top: clamp(28px, 3.5vw, 40px);
	border-top: var(--hairline) solid var(--line);
}
.cos-legal__content h3 {
	font-family: var(--sans);
	font-weight: 600;
	font-size: 15px;
	color: var(--ink);
	margin: 28px 0 10px;
}

.cos-legal__content p {
	margin: 0 0 16px;
	max-width: 68ch;
}
.cos-legal__content strong {
	font-weight: 600;
	color: var(--ink);
}

/* Lists — quiet dash markers, matching the FAQ answer style */
.cos-legal__content ul,
.cos-legal__content ol {
	margin: 4px 0 20px;
	padding: 0;
	list-style: none;
	display: grid;
	gap: 9px;
	max-width: 68ch;
}
.cos-legal__content li {
	position: relative;
	padding-left: 22px;
}
.cos-legal__content ul li::before {
	content: "";
	position: absolute;
	left: 0;
	top: 0.66em;
	width: 9px;
	height: 1px;
	background: var(--line-strong);
}
.cos-legal__content ol {
	counter-reset: cos-legal-ol;
}
.cos-legal__content ol li {
	counter-increment: cos-legal-ol;
}
.cos-legal__content ol li::before {
	content: counter(cos-legal-ol) ".";
	position: absolute;
	left: 0;
	top: 0;
	font-family: var(--mono);
	font-size: 12px;
	color: var(--stone-soft);
}

.cos-legal__content a {
	color: var(--ink);
	text-decoration: underline;
	text-underline-offset: 3px;
	text-decoration-thickness: 1px;
	word-break: break-word;
}
.cos-legal__content a:hover {
	color: var(--stone);
}

/* Contact callout (a paragraph the editor wraps in a tinted box, optional) */
.cos-legal__content .cos-legal-card {
	background: var(--paper-tint);
	border: var(--hairline) solid var(--line);
	padding: clamp(20px, 3vw, 28px);
	margin: 24px 0;
}
.cos-legal__content .cos-legal-card p {
	margin-bottom: 8px;
}
.cos-legal__content .cos-legal-card p:last-child {
	margin-bottom: 0;
}

/* ── Responsive ───────────────────────────────────────── */
@media (max-width: 600px) {
	.cos-legal {
		padding-left: 24px;
		padding-right: 24px;
	}
	.cos-legal__content {
		font-size: 14.5px;
	}
}
