/* ══════════════════════════════════════════════════════════════════
   FOUR PARKING · legal.css
   Estilos de las páginas legales (aviso legal, privacidad, cookies).
   Se cargan junto a base.css; no necesitan sections.css.
   ══════════════════════════════════════════════════════════════════ */

.lheader {
  background: var(--navy);
  padding: 1.1rem 0;
  border-bottom: 1px solid rgba(201, 210, 227, .16);
}
.lheader__inner {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 1rem;
}
.lheader img { height: 42px; width: auto; }
.lheader a.btn { flex: none; }

.legal {
  padding: clamp(2.5rem, 5vw, 4.5rem) 0 clamp(3rem, 6vw, 5rem);
}

.legal__back {
  display: inline-flex;
  align-items: center;
  gap: .45rem;
  margin-bottom: 1.5rem;
  font-size: var(--fs-sm);
  font-weight: 600;
  color: var(--azul);
}
.legal__back:hover { text-decoration: underline; }

.legal h1 {
  font-size: var(--fs-2xl);
  margin-bottom: .6rem;
}

.legal__updated {
  font-size: var(--fs-xs);
  letter-spacing: .1em;
  text-transform: uppercase;
  color: var(--tx-mute);
  padding-bottom: 1.75rem;
  margin-bottom: 2.25rem;
  border-bottom: 1px solid var(--line);
}

.legal h2 {
  font-size: var(--fs-lg);
  margin: 2.5rem 0 .85rem;
  color: var(--azul);
}

.legal h3 {
  font-size: var(--fs-md);
  margin: 1.75rem 0 .6rem;
}

.legal p,
.legal li {
  color: var(--tx-soft);
  font-size: var(--fs-sm);
}

.legal p { margin-bottom: 1rem; }

.legal ul {
  list-style: disc;
  padding-left: 1.35rem;
  margin-bottom: 1.25rem;
}
.legal li { margin-bottom: .45rem; }

.legal a { color: var(--azul); text-decoration: underline; }
.legal a:hover { color: var(--azul-luz); }

.legal strong { color: var(--tx); font-weight: 600; }

.legal dl {
  display: grid;
  grid-template-columns: minmax(150px, auto) 1fr;
  gap: .5rem 1.5rem;
  padding: 1.25rem 1.5rem;
  margin-bottom: 1.5rem;
  background: var(--off-white);
  border: 1px solid var(--line);
  border-radius: var(--radius-sm);
  font-size: var(--fs-sm);
}
.legal dt { font-weight: 600; color: var(--tx); }
.legal dd { margin: 0; color: var(--tx-soft); }

@media (max-width: 560px) {
  .legal dl { grid-template-columns: 1fr; gap: .15rem; }
  .legal dt { margin-top: .6rem; }
}

/* Aviso para el cliente: bloques que debe completar antes de publicar */
.legal .todo {
  display: block;
  padding: 1rem 1.25rem;
  margin-bottom: 1.5rem;
  background: #FFF8E1;
  border: 1px dashed #E0A800;
  border-radius: var(--radius-sm);
  font-size: var(--fs-sm);
  color: #6B4E00;
}

.legal table {
  margin-bottom: 1.5rem;
  font-size: var(--fs-sm);
  border: 1px solid var(--line);
  border-radius: var(--radius-sm);
  overflow: hidden;
}
.legal th,
.legal td {
  padding: .7rem .9rem;
  text-align: left;
  border-bottom: 1px solid var(--line);
}
.legal thead th {
  background: var(--off-white);
  font-family: var(--font-display);
  font-size: var(--fs-xs);
  letter-spacing: .06em;
  text-transform: uppercase;
  color: var(--tx-mute);
}
.legal tbody tr:last-child td { border-bottom: 0; }

.lfooter {
  background: var(--navy);
  color: rgba(201, 210, 227, .7);
  padding: 2rem 0;
  font-size: var(--fs-xs);
}
.lfooter__inner {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: space-between;
  gap: .75rem;
}
.lfooter a { color: rgba(201, 210, 227, .85); }
.lfooter a:hover { color: #fff; }
.lfooter nav { display: flex; flex-wrap: wrap; gap: 1.25rem; }
