/* ==========================================================================
   PÁGINA: POLÍTICA DE PRIVACIDAD (politica-privacidad.html)
   ========================================================================== */

.legal-hero { text-align: center; padding: 40px 8% 10px; max-width: 900px; margin: 0 auto; }

.legal-hero .badge-sub { display: block; margin-bottom: 6px; }

.legal-hero h1 { font-family: var(--font-heading); font-size: 3rem; line-height: 1.1; color: var(--primary-dark); margin-bottom: 10px; }

.legal-updated { font-size: 0.85rem; color: var(--text-muted); }

.legal-page { max-width: 900px; margin: 0 auto; padding: 30px 24px 80px; }

.legal-summary {
  background-color: var(--bg-subtle); border: 1px solid var(--border-light);
  border-left: 5px solid var(--accent-wine); border-radius: 14px;
  padding: 26px 30px; margin-bottom: 28px;
}

.legal-summary h2 { font-family: var(--font-heading); font-size: 1.6rem; color: var(--primary-dark); margin-bottom: 12px; }

.legal-summary ul { list-style: none; }

.legal-summary li { font-size: 0.95rem; line-height: 1.6; color: var(--text-dark); margin-bottom: 6px; }

.legal-summary strong { color: var(--accent-wine); }

.legal-block {
  background-color: var(--bg-card); border: 1px solid var(--border-light);
  border-radius: 14px; padding: 30px 34px; margin-bottom: 20px; box-shadow: var(--shadow-soft);
}

.legal-block h2 {
  display: flex; align-items: center; gap: 14px;
  font-family: var(--font-heading); font-size: 1.55rem; line-height: 1.2;
  color: var(--primary-dark); margin-bottom: 16px;
}

.legal-block h2 span {
  flex: 0 0 38px; height: 38px; display: inline-flex; align-items: center; justify-content: center;
  border-radius: 50%; background-color: var(--accent-wine); color: var(--bg-warm);
  font-size: 1rem; border: 3px solid var(--bg-card); box-shadow: 0 0 0 1.5px var(--accent-gold);
}

.legal-block p { font-size: 0.95rem; line-height: 1.7; color: var(--text-dark); margin-bottom: 12px; }

.legal-block p:last-child { margin-bottom: 0; }

.legal-block a { color: var(--accent-wine); font-weight: 600; border-bottom: 1px solid var(--accent-gold); }

.legal-block a:hover { color: var(--accent-wine-hover); }

.legal-block ul { list-style: none; margin: 0 0 14px; }

.legal-block li { position: relative; padding-left: 20px; margin-bottom: 9px; font-size: 0.95rem; line-height: 1.65; color: var(--text-dark); }

.legal-block li::before { content: ""; position: absolute; left: 0; top: 0.72em; width: 7px; height: 7px; border-radius: 50%; background-color: var(--accent-gold); }

.legal-block li strong { color: var(--primary-dark); }

.legal-data li::before { display: none; }

.legal-data li { padding-left: 0; padding-bottom: 8px; border-bottom: 1px dashed var(--border-light); }

.legal-data li:last-child { border-bottom: none; }

.legal-block .ci-note { margin-top: 18px; }

.legal-rights { display: flex; flex-wrap: wrap; gap: 10px; margin: 4px 0 16px; }

.legal-rights span {
  padding: 7px 16px; border-radius: 30px; background-color: var(--bg-subtle);
  border: 1px solid var(--border-light); font-size: 0.82rem; font-weight: 600; color: var(--text-heading-soft);
}

.legal-pending { background-color: #F3E3B5; color: #5A4140; padding: 1px 6px; border-radius: 4px; font-weight: 600; }

.legal-back { text-align: center; margin-top: 30px; }

.legal-back-link { color: var(--accent-wine); border-bottom-color: var(--accent-gold); }

.legal-back-link:hover { color: var(--accent-wine-hover); }

@media (max-width: 600px) {
  .legal-hero h1 { font-size: 2.3rem; }
  .legal-page { padding: 20px 16px 60px; }
  .legal-block { padding: 24px 20px; }
  .legal-block h2 { font-size: 1.3rem; }
}
