/* ==========================================================================
   PÁGINAS LEGALES
   Mismo lenguaje visual que la web, pero pensadas para leerse: una columna
   estrecha, buen interlineado y nada que distraiga.
   ========================================================================== */

.legal{
  background:var(--negro);
  color:var(--crema);
  min-height:100vh;
  padding:clamp(90px,12vw,140px) 0 clamp(60px,8vw,90px);
}

.legal__wrap{ width:100%; max-width:760px; margin-inline:auto; padding-inline:20px; }

.legal__volver{
  display:inline-flex; align-items:center; gap:.5rem;
  min-height:44px; margin-bottom:2rem;
  color:var(--oro); text-decoration:none; font-weight:700; font-size:.95rem;
  transition:gap var(--t);
}
.legal__volver svg{ width:18px; height:18px; fill:currentColor; }
.legal__volver:hover{ gap:.8rem; }

.legal h1{
  font-family:var(--fuente-t);
  font-size:clamp(2rem,7vw,3.2rem); line-height:1; letter-spacing:-.03em;
  text-transform:uppercase; color:var(--crema);
  margin:0 0 .8rem;
}
.legal__fecha{ color:#8A8477; font-size:.9rem; margin:0 0 2.6rem; }

.legal h2{
  font-family:var(--fuente-t);
  font-size:1.25rem; line-height:1.2; letter-spacing:-.01em; text-transform:uppercase;
  color:var(--oro);
  margin:2.6rem 0 .9rem; padding-top:1.6rem;
  border-top:1px solid var(--borde-osc);
}
.legal h2:first-of-type{ border-top:0; padding-top:0; }

.legal h3{
  font-family:var(--fuente-b); font-size:1.02rem; font-weight:700;
  color:var(--crema); margin:1.6rem 0 .5rem;
}

.legal p,
.legal li{ color:#C6C1B5; font-size:1rem; line-height:1.75; }
.legal p{ margin:0 0 1.1rem; }

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

.legal ul{ margin:0 0 1.3rem; padding-left:1.2rem; list-style:disc; }
.legal ul li{ margin-bottom:.5rem; padding-left:.3rem; }
.legal ul li::marker{ color:var(--oro); }

.legal strong{ color:var(--crema); }

/* datos que el restaurante tiene que rellenar antes de publicar */
.pendiente{
  background:rgba(217,58,43,.14);
  border:1px dashed var(--rojo);
  border-radius:6px;
  padding:.1rem .45rem;
  color:#FFB3AB; font-weight:600; font-size:.94em;
  white-space:nowrap;
}

.legal__aviso{
  background:var(--carbon-2); border:1px solid var(--borde-osc);
  border-left:4px solid var(--oro);
  border-radius:var(--r);
  padding:1.3rem 1.4rem; margin:0 0 2.6rem;
}
.legal__aviso p{ margin:0; font-size:.95rem; }
.legal__aviso strong{ color:var(--oro); }

/* tabla de cookies */
.tabla-cookies{
  width:100%; border-collapse:collapse; margin:0 0 1.6rem;
  font-size:.92rem;
}
.tabla-cookies th,
.tabla-cookies td{
  text-align:left; padding:.75rem .6rem;
  border-bottom:1px solid var(--borde-osc);
  vertical-align:top;
}
.tabla-cookies th{ color:var(--oro); font-weight:700; }
.tabla-cookies td{ color:#C6C1B5; }
.tabla-cookies caption{
  text-align:left; color:#8A8477; font-size:.88rem; padding-bottom:.6rem;
}
.tabla-envoltorio{ overflow-x:auto; margin-bottom:1.6rem; }

.legal__pie{
  margin-top:3.5rem; padding-top:1.6rem;
  border-top:1px solid var(--borde-osc);
  display:flex; flex-wrap:wrap; gap:.2rem 1.4rem; align-items:center;
}
.legal__pie a{
  color:#B9B4A8; font-size:.9rem; text-decoration:none;
  display:inline-flex; align-items:center; min-height:44px;
}
.legal__pie a:hover{ color:var(--oro); text-decoration:underline; }
