/* Páginas legales (privadesa, avís legal, cookies)
 * Prosa sobria y legible, ancho contenido. Hero pintado por inner-hero.css.
 * Estructura del body: intro + (H2 + prosa) — texto editable en Elementor,
 * estilado por la tipografía global. Sin componentes decorativos.
 */

.bm-section-legal-body.elementor-section {
	background: var(--bm-color-bg);
	padding-top: 80px !important;
	padding-bottom: 96px !important;
}
.bm-section-legal-body .elementor-container {
	max-width: 880px;
}

/* Cuerpo legal — 3 wrappers de prosa (text-editor de Elementor). */
.bm-w-legal-prose .elementor-widget-container,
.bm-w-legal-intro .elementor-widget-container,
.bm-w-legal-custom .elementor-widget-container {
	font-family: var(--bm-font-body);
	font-size: 17px;
	line-height: 1.75;
	color: var(--bm-color-text);
}
.bm-w-legal-prose p,
.bm-w-legal-intro p,
.bm-w-legal-custom p {
	margin: 0 0 1.2em;
}

/* H2 de secció — heading widget independent. */
.bm-w-legal-h2 .elementor-heading-title {
	font-family: var(--bm-font-heading) !important;
	font-size: 26px !important;
	font-weight: 800 !important;
	line-height: 1.2 !important;
	margin: 2em 0 0.6em !important;
	padding-bottom: 12px !important;
	border-bottom: 2px solid var(--bm-color-text);
	display: block;
}

/* H3 inline dins de text-editor. */
.bm-w-legal-prose h3,
.bm-w-legal-intro h3,
.bm-w-legal-custom h3 {
	font-family: var(--bm-font-heading) !important;
	font-size: 20px !important;
	font-weight: 700 !important;
	margin: 1.6em 0 0.4em !important;
	color: var(--bm-color-text-soft);
}

/* Llistes — estàndard, llegibles. */
.bm-w-legal-prose ul,
.bm-w-legal-intro ul,
.bm-w-legal-custom ul,
.bm-w-legal-prose ol,
.bm-w-legal-intro ol,
.bm-w-legal-custom ol {
	margin: 0 0 1.4em;
	padding-left: 1.5em;
}
.bm-w-legal-prose li,
.bm-w-legal-intro li,
.bm-w-legal-custom li {
	margin-bottom: 0.4em;
}

/* Links — el reset-override deixa els `a` neutres, els estilem explícitament. */
.bm-w-legal-prose a,
.bm-w-legal-intro a,
.bm-w-legal-custom a {
	color: var(--bm-color-accent);
	text-decoration: underline;
	text-underline-offset: 3px;
	transition: color 0.2s ease;
}
.bm-w-legal-prose a:hover,
.bm-w-legal-intro a:hover,
.bm-w-legal-custom a:hover {
	color: var(--bm-color-accent-hover);
}

.bm-w-legal-prose strong,
.bm-w-legal-intro strong,
.bm-w-legal-custom strong {
	font-weight: 700;
}

/* Taules informatives (si el client n'inclou alguna al text). Estil bàsic. */
.bm-w-legal-prose table,
.bm-w-legal-intro table,
.bm-w-legal-custom table {
	width: 100%;
	border-collapse: collapse;
	margin: 24px 0 32px;
	font-size: 15px;
	border: 1px solid var(--bm-color-border);
}
.bm-w-legal-prose td, .bm-w-legal-prose th,
.bm-w-legal-intro td, .bm-w-legal-intro th,
.bm-w-legal-custom td, .bm-w-legal-custom th {
	border: 1px solid var(--bm-color-border);
	padding: 12px 16px;
	vertical-align: top;
	line-height: 1.5;
	text-align: left;
}

/* ── Responsive ──────────────────────────────────────────────────────── */
@media (max-width: 768px) {
	.bm-section-legal-body.elementor-section { padding: 24px 20px 64px !important; }
	.bm-w-legal-prose .elementor-widget-container,
	.bm-w-legal-intro .elementor-widget-container,
	.bm-w-legal-custom .elementor-widget-container { font-size: 16px; }
	.bm-w-legal-h2 .elementor-heading-title { font-size: 22px !important; }
}
