/* Hoja compartida por aviso-legal.html y privacidad.html.
   Reutiliza los mismos tokens que la web principal para que las páginas
   legales no parezcan un cuerpo extraño pegado al sitio. */
:root{
  --verde:#0D3D2E; --hondo:#08251B; --abismo:#04140E; --tinta:#020B07;
  --oro:#C8A34A; --oro-claro:#F2DEA4;
  --niebla:#E6ECE7; --niebla-baja:#8C9F94;
  --display:"Jost",system-ui,sans-serif; --texto:"Archivo",system-ui,sans-serif;
  --mono:"IBM Plex Mono",ui-monospace,monospace;
  --linea:1px solid rgba(200,163,74,.15);
}
*{box-sizing:border-box;margin:0;padding:0}
body{background:var(--abismo);color:var(--niebla);font-family:var(--texto);
  -webkit-font-smoothing:antialiased}
::selection{background:var(--oro);color:var(--abismo)}
:focus-visible{outline:2px solid var(--oro);outline-offset:4px}
a{color:inherit}

.rotulo{font-family:var(--display);font-weight:300;text-transform:uppercase;
  letter-spacing:.055em;line-height:1.04}
.eyebrow{font-size:.804rem;letter-spacing:.32em;text-transform:uppercase;
  color:var(--oro);font-weight:500;font-family:var(--display)}

/* --- Cabecera --- */
header.legal-cab{position:sticky;top:0;z-index:20;display:flex;align-items:center;
  justify-content:space-between;gap:1rem;flex-wrap:wrap;
  padding:1rem clamp(1.1rem,4vw,3.2rem);
  background:rgba(2,11,7,.86);backdrop-filter:blur(10px);border-bottom:var(--linea)}
header.legal-cab .marca{display:flex;align-items:center;gap:.62rem;text-decoration:none}
header.legal-cab .astro{width:22px;aspect-ratio:1;flex:none;
  background:url(estrella-min.webp) center/contain no-repeat}
header.legal-cab .palabra{width:92px;aspect-ratio:527/157;opacity:.95;
  background:url(logotipo.webp) center/contain no-repeat}
header.legal-cab nav{display:flex;gap:1.4rem;align-items:center}
header.legal-cab nav a{font-family:var(--display);font-size:.82rem;letter-spacing:.18em;
  text-transform:uppercase;color:var(--niebla-baja);text-decoration:none;transition:color .3s}
header.legal-cab nav a:hover{color:var(--oro)}
header.legal-cab nav a[aria-current="page"]{color:var(--oro)}

/* --- Cuerpo --- */
main.legal{max-width:78ch;margin:0 auto;padding:clamp(2.6rem,7vh,4.6rem) clamp(1.2rem,5vw,2.4rem) 5rem}
main.legal .titular{margin-bottom:2.6rem;padding-bottom:1.8rem;border-bottom:var(--linea)}
main.legal h1{font-size:clamp(1.9rem,4.2vw,2.9rem);margin:.7rem 0 .9rem}
main.legal .actualizado{font-family:var(--mono);font-size:.78rem;letter-spacing:.16em;
  text-transform:uppercase;color:var(--niebla-baja)}
main.legal h2{font-family:var(--display);font-weight:300;text-transform:uppercase;
  letter-spacing:.05em;font-size:clamp(1.18rem,2.4vw,1.48rem);color:var(--oro-claro);
  margin:2.9rem 0 .9rem;padding-top:1.4rem;border-top:var(--linea)}
main.legal h3{font-family:var(--display);font-weight:400;font-size:1.02rem;
  letter-spacing:.06em;color:var(--niebla);margin:1.7rem 0 .5rem}
main.legal p,main.legal li{color:#c2cec6;line-height:1.85;font-size:1.02rem}
main.legal p+p{margin-top:.9rem}
main.legal ul,main.legal ol{margin:.7rem 0 .7rem 1.3rem}
main.legal li{margin-bottom:.5rem}
main.legal strong{color:var(--niebla);font-weight:500}
main.legal a:not(.btn){color:var(--oro-claro);text-decoration:underline;text-underline-offset:3px}
main.legal a:not(.btn):hover{color:var(--oro)}

/* Ficha de datos identificativos */
.ficha{border:var(--linea);background:rgba(13,61,46,.28);border-radius:14px;
  padding:1.3rem 1.4rem;margin:1.2rem 0}
.ficha dl{display:grid;grid-template-columns:minmax(150px,auto) 1fr;gap:.55rem 1.4rem}
.ficha dt{font-family:var(--mono);font-size:.76rem;letter-spacing:.14em;text-transform:uppercase;
  color:var(--niebla-baja);padding-top:.2rem}
.ficha dd{color:var(--niebla);line-height:1.6}
@media(max-width:560px){.ficha dl{grid-template-columns:1fr;gap:.2rem 0}
  .ficha dd{margin-bottom:.7rem}}

/* Direcciones y rutas citadas dentro del texto */
.ruta{font-family:var(--mono);font-size:.9em;color:var(--oro-claro);
  background:rgba(200,163,74,.1);border-radius:5px;padding:.05em .45em;
  word-break:break-all}

/* Tabla de cookies */
.tabla-envoltorio{overflow-x:auto;margin:1.1rem 0;border:var(--linea);border-radius:14px}
table.cookies{border-collapse:collapse;width:100%;min-width:560px;font-size:.94rem}
table.cookies th,table.cookies td{text-align:left;padding:.8rem 1rem;
  border-bottom:1px solid rgba(200,163,74,.12);line-height:1.6;color:#c2cec6;vertical-align:top}
table.cookies th{font-family:var(--mono);font-size:.74rem;letter-spacing:.14em;
  text-transform:uppercase;color:var(--oro);background:rgba(13,61,46,.35)}
table.cookies tr:last-child td{border-bottom:0}

/* Botón para reabrir la decisión de cookies */
.btn{display:inline-block;font-family:var(--display);font-size:.84rem;letter-spacing:.18em;
  text-transform:uppercase;font-weight:500;padding:.8rem 1.7rem;border-radius:999px;
  text-decoration:none;cursor:pointer;transition:transform .3s,background .3s,color .3s,border-color .3s}
.btn-linea{border:1px solid rgba(200,163,74,.35);color:var(--niebla);background:transparent}
.btn-linea:hover{transform:translateY(-2px);border-color:var(--oro);color:var(--oro)}
.aviso-guardado{display:block;margin-top:.7rem;font-family:var(--mono);font-size:.78rem;
  letter-spacing:.12em;text-transform:uppercase;color:var(--oro-claro)}
.aviso-guardado[hidden]{display:none}

/* --- Pie --- */
footer.pie{background:var(--tinta);padding:2.2rem clamp(1.2rem,5vw,4rem);
  display:flex;justify-content:space-between;flex-wrap:wrap;gap:1rem;
  color:var(--niebla-baja);font-size:.911rem;letter-spacing:.11em;border-top:var(--linea)}
footer.pie a{color:var(--niebla-baja);text-decoration:none;transition:color .3s}
footer.pie a:hover{color:var(--oro)}
