/* ============================================================
   LEGAL PAGES — Política de Privacidad y similares
   Extiende el tema "Sacred Light" para documentos de texto largo
   ============================================================ */

.legal-topbar {
    background: var(--color-white);
    border-bottom: 1px solid rgba(30, 61, 143, .10);
    position: sticky;
    top: 0;
    z-index: var(--z-navbar);
}
.legal-topbar__inner {
    max-width: var(--container-max);
    margin: 0 auto;
    padding: var(--space-4) var(--space-6);
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: var(--space-4);
}
.legal-topbar__brand {
    display: flex;
    align-items: center;
    gap: var(--space-3);
    text-decoration: none;
    color: var(--color-text);
}
.legal-topbar__brand img { border-radius: var(--radius-full); }
.legal-topbar__brand span {
    font-family: var(--font-display);
    font-size: var(--text-base);
    font-weight: 600;
    letter-spacing: .01em;
}
.legal-topbar__back {
    font-family: var(--font-body);
    font-size: var(--text-sm);
    font-weight: 700;
    color: var(--color-primary);
    text-decoration: none;
    white-space: nowrap;
}
.legal-topbar__back:hover { color: var(--color-gold-dim); }

.legal-hero {
    background: var(--gradient-primary);
    padding: var(--space-16) var(--space-6) var(--space-12);
    text-align: center;
}
.legal-hero__eyebrow {
    display: inline-block;
    font-family: var(--font-body);
    font-size: var(--text-xs);
    font-weight: 700;
    letter-spacing: .12em;
    text-transform: uppercase;
    color: var(--color-gold-light);
    margin-bottom: var(--space-3);
}
.legal-hero h1 {
    font-family: var(--font-display);
    color: var(--color-white);
    font-size: clamp(2rem, 4vw, var(--text-5xl));
    margin: 0 0 var(--space-3);
}
.legal-hero p {
    font-family: var(--font-body);
    color: var(--color-text-light);
    max-width: 56ch;
    margin: 0 auto;
    font-size: var(--text-lg);
}
.legal-hero__meta {
    margin-top: var(--space-6);
    font-family: var(--font-body);
    font-size: var(--text-sm);
    color: rgba(255,255,255,.65);
}

.legal-body {
    max-width: 720px;
    margin: 0 auto;
    padding: var(--space-16) var(--space-6) var(--space-24);
}
.legal-summary {
    background: var(--color-off-white);
    border: 1px solid rgba(30, 61, 143, .10);
    border-radius: var(--radius-lg);
    padding: var(--space-6) var(--space-8);
    margin-bottom: var(--space-16);
    display: flex;
    flex-direction: column;
    gap: var(--space-3);
}
.legal-summary__item {
    display: flex;
    gap: var(--space-3);
    align-items: baseline;
    font-family: var(--font-body);
    font-size: var(--text-base);
    color: var(--color-text);
}
.legal-summary__item svg {
    flex: none;
    width: 18px;
    height: 18px;
    color: var(--color-gold-dim);
    transform: translateY(2px);
}

.legal-section {
    padding: var(--space-10) 0;
    border-bottom: 1px solid rgba(30, 61, 143, .08);
}
.legal-section:last-of-type { border-bottom: none; }
.legal-section__head {
    display: flex;
    align-items: baseline;
    gap: var(--space-4);
    margin-bottom: var(--space-4);
}
.legal-section__num {
    font-family: var(--font-display);
    font-size: var(--text-2xl);
    color: var(--color-gold);
    flex: none;
    min-width: 2.2ch;
}
.legal-section h2 {
    font-family: var(--font-display);
    font-size: var(--text-2xl);
    color: var(--color-primary);
    margin: 0;
}
.legal-section p {
    font-family: var(--font-body);
    font-size: var(--text-base);
    line-height: 1.75;
    color: var(--color-text);
    margin: 0 0 var(--space-4);
    max-width: 68ch;
}
.legal-section ul {
    margin: 0 0 var(--space-4);
    padding-left: var(--space-6);
    font-family: var(--font-body);
    line-height: 1.75;
    color: var(--color-text);
    max-width: 68ch;
}
.legal-section li { margin-bottom: var(--space-2); }
.legal-section strong { color: var(--color-primary-dark); }
.legal-section a { color: var(--color-primary); font-weight: 700; }
.legal-section a:hover { color: var(--color-gold-dim); }

.legal-contact-box {
    background: var(--color-dark-soft);
    border-radius: var(--radius-lg);
    padding: var(--space-8);
    display: flex;
    flex-direction: column;
    gap: var(--space-2);
}
.legal-contact-box p { color: var(--color-text-light); margin: 0; }
.legal-contact-box a { color: var(--color-gold-light); font-weight: 700; text-decoration: none; }
.legal-contact-box a:hover { text-decoration: underline; }

.legal-footer {
    background: var(--color-dark);
    padding: var(--space-8) var(--space-6);
    text-align: center;
}
.legal-footer p {
    font-family: var(--font-body);
    font-size: var(--text-sm);
    color: var(--color-text-light);
    margin: 0;
}
.legal-footer a { color: var(--color-gold-light); text-decoration: none; }
.legal-footer a:hover { text-decoration: underline; }

@media (max-width: 640px) {
    .legal-topbar__brand span { display: none; }
    .legal-hero { padding: var(--space-12) var(--space-4) var(--space-10); }
    .legal-body { padding: var(--space-12) var(--space-4) var(--space-16); }
}
