/* legal.css — Estilos para páginas legales (privacy, legal, cookies) */

.legal-wrap {
  min-height:     100vh;
  background:     var(--parchment-1);
  color:          var(--ink);
  font-family:    var(--serif);
  display:        flex;
  flex-direction: column;
}

/* ---- Cabecera ---- */
.legal-header {
  display:         flex;
  justify-content: space-between;
  align-items:     center;
  padding:         1.5rem 2rem;
  border-bottom:   1px solid rgba(42,29,14,.15);
}
.legal-back {
  font-family:     var(--mono);
  font-size:       clamp(9px, .8vw, 11px);
  letter-spacing:  .25em;
  text-transform:  uppercase;
  color:           var(--ink-soft);
  text-decoration: none;
  transition:      color 150ms ease;
}
.legal-back:hover { color: var(--accent); }

.legal-lang {
  display:        flex;
  gap:            .35rem;
  align-items:    center;
  font-family:    var(--mono);
  font-size:      clamp(9px, .75vw, 11px);
  letter-spacing: .2em;
  text-transform: uppercase;
}
.legal-lang a {
  color:           var(--ink-mute);
  text-decoration: none;
  transition:      color 150ms ease;
}
.legal-lang a:hover,
.legal-lang a[aria-current="true"] {
  color:       var(--ink);
  font-weight: 600;
}
.legal-lang .sep { color: var(--ink-mute); }

/* ---- Cuerpo ---- */
.legal-body {
  max-width: 720px;
  width:     100%;
  margin:    3rem auto;
  padding:   0 2rem;
  flex:      1;
}
.legal-title {
  font-family:   var(--display);
  font-size:     clamp(22px, 3vw, 40px);
  font-weight:   600;
  color:         var(--ink);
  margin-bottom: .5rem;
  line-height:   1.15;
}
.legal-updated {
  font-family:    var(--mono);
  font-size:      clamp(9px, .75vw, 11px);
  letter-spacing: .15em;
  color:          var(--ink-mute);
  text-transform: uppercase;
  margin-bottom:  3rem;
}

.legal-section h2 {
  font-family:   var(--display);
  font-size:     clamp(14px, 1.4vw, 18px);
  font-weight:   600;
  color:         var(--ink);
  margin:        2rem 0 .75rem;
  padding-bottom:.35rem;
  border-bottom: 1px solid rgba(42,29,14,.12);
}
.legal-section p,
.legal-section li {
  font-size:     clamp(14px, 1.15vw, 16px);
  line-height:   1.8;
  color:         var(--ink-soft);
  margin-bottom: .75rem;
}
.legal-section ul {
  padding-left: 1.4rem;
}
.legal-section a {
  color: var(--accent);
}

/* Tabla de cookies */
.legal-section table {
  width:           100%;
  border-collapse: collapse;
  font-size:       clamp(12px, 1vw, 14px);
  margin-bottom:   1rem;
  margin-top:      .5rem;
}
.legal-section th,
.legal-section td {
  text-align:    left;
  padding:       .5rem .75rem;
  border-bottom: 1px solid rgba(42,29,14,.12);
  vertical-align: top;
}
.legal-section th {
  font-family:    var(--mono);
  font-size:      clamp(8px, .7vw, 10px);
  letter-spacing: .15em;
  text-transform: uppercase;
  color:          var(--ink-mute);
}
.legal-section td { color: var(--ink-soft); }
.legal-section td code {
  font-family:    var(--mono);
  font-size:      .9em;
  color:          var(--ink);
  background:     rgba(42,29,14,.06);
  padding:        1px 4px;
}

/* ---- Pie ---- */
.legal-footer {
  padding:        1.5rem 2rem;
  border-top:     1px solid rgba(42,29,14,.12);
  text-align:     center;
  font-family:    var(--mono);
  font-size:      clamp(8px, .7vw, 10px);
  letter-spacing: .15em;
  text-transform: uppercase;
  color:          var(--ink-mute);
}
.legal-footer a {
  color:           var(--ink-soft);
  text-decoration: none;
}
.legal-footer a:hover { color: var(--accent); }

/* ---- Mobile ---- */
@media (max-width: 600px) {
  .legal-header { padding: 1rem 1.25rem; flex-wrap: wrap; gap: .75rem; }
  .legal-body   { padding: 0 1.25rem; margin: 1.75rem auto; }
}
