/* =====================================================================
   LEGAL — plantilla compartida (Aviso legal · Privacidad · Cookies)
   Documento editorial: índice lateral fijo + cuerpo en papel.
   Prefijo .lp- (legal page) para no chocar con .lg- (LoginGate).
   ===================================================================== */

/* ---------- Hero ---------- */
.lp-hero{
  background:var(--bg);
  border-bottom:1px solid var(--rule);
}
.lp-hero-inner{padding:30px 0 34px}
.lp-hero-eyebrow{color:var(--ink-2);margin-bottom:14px}
.lp-hero-title{
  font-family:var(--serif);font-weight:400;
  font-size:46px;line-height:1.02;letter-spacing:-.015em;
  color:var(--navy);margin:0 0 16px;max-width:14ch;
}
.lp-hero-lede{
  font-family:var(--sans);font-size:15px;line-height:1.55;
  color:var(--ink-2);margin:0;max-width:60ch;
}
.lp-hero-updated{
  display:inline-flex;align-items:center;gap:9px;margin-top:20px;
  font-family:var(--mono);font-size:11.5px;color:var(--muted);
}
.lp-hero-updated::before{
  content:"";width:7px;height:7px;background:var(--amber);
  display:inline-block;
}

/* ---------- Layout índice + cuerpo ---------- */
.lp-layout{
  display:grid;grid-template-columns:248px 1fr;gap:56px;
  padding:48px 0 64px;align-items:start;
}

/* Índice lateral fijo */
.lp-toc{position:sticky;top:96px}
.lp-toc-label{
  font-family:var(--sans);font-size:10.5px;font-weight:700;letter-spacing:.18em;
  text-transform:uppercase;color:var(--muted);
  padding-bottom:12px;margin-bottom:8px;border-bottom:1px solid var(--rule);
}
.lp-toc-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column}
.lp-toc-link{
  display:flex;gap:10px;align-items:baseline;
  font-family:var(--sans);font-size:13px;line-height:1.4;
  color:var(--ink-2);text-decoration:none;
  padding:8px 0 8px 12px;border-left:2px solid transparent;
  transition:color .15s ease, border-color .15s ease;
}
.lp-toc-link .n{font-family:var(--mono);font-size:11px;color:var(--muted);flex:none}
.lp-toc-link:hover{color:var(--navy)}
.lp-toc-link.is-active{
  color:var(--navy);font-weight:600;border-left-color:var(--amber);
}
.lp-toc-link.is-active .n{color:var(--navy)}

/* Cuerpo del documento */
.lp-body{max-width:760px;min-width:0}
.lp-section{
  padding-top:34px;margin-top:34px;border-top:1px solid var(--rule);
}
.lp-section:first-child{padding-top:0;margin-top:0;border-top:0}
.lp-section-head{display:flex;gap:16px;align-items:baseline;margin-bottom:16px}
.lp-section-num{
  font-family:var(--serif);font-weight:400;font-size:22px;color:var(--amber-2);
  line-height:1;flex:none;
}
.lp-section-title{
  font-family:var(--sans);font-weight:600;font-size:21px;line-height:1.2;
  letter-spacing:-.01em;color:var(--navy);margin:0;
}
.lp-section p{
  font-family:var(--sans);font-size:14.5px;line-height:1.65;
  color:var(--ink-2);margin:0 0 14px;text-wrap:pretty;
}
.lp-section p:last-child{margin-bottom:0}
.lp-section strong{color:var(--ink);font-weight:600}
.lp-section a{color:var(--navy);text-decoration:underline;text-underline-offset:2px;text-decoration-color:var(--amber-2)}
.lp-section a:hover{color:var(--amber-2)}
.lp-section ul{margin:0 0 14px;padding-left:0;list-style:none;display:flex;flex-direction:column;gap:9px}
.lp-section ul li{
  position:relative;padding-left:20px;
  font-family:var(--sans);font-size:14.5px;line-height:1.6;color:var(--ink-2);
}
.lp-section ul li::before{
  content:"";position:absolute;left:2px;top:10px;
  width:6px;height:6px;border:1px solid var(--navy);
}
.lp-section ul li strong{color:var(--ink)}

/* Marcador de dato por completar */
.lp-todo{
  background:rgba(255,199,44,.16);
  border-bottom:1px solid var(--amber-2);
  padding:0 4px;font-style:normal;color:var(--ink);font-weight:600;
}

/* Bloque de datos del titular (dl) */
.lp-data{
  background:var(--paper);border:1px solid var(--rule);
  padding:22px 24px;margin:4px 0 4px;
}
.lp-data dl{margin:0;display:grid;grid-template-columns:auto 1fr;gap:10px 24px}
.lp-data dt{
  font-family:var(--sans);font-size:10.5px;font-weight:700;letter-spacing:.14em;
  text-transform:uppercase;color:var(--muted);align-self:center;
}
.lp-data dd{
  margin:0;font-family:var(--sans);font-size:14.5px;color:var(--ink);
}

/* Tabla de cookies */
.lp-table-wrap{overflow-x:auto;margin:4px 0}
.lp-table{width:100%;border-collapse:collapse;min-width:560px}
.lp-table thead th{
  font-family:var(--sans);font-size:10px;font-weight:700;letter-spacing:.14em;
  text-transform:uppercase;color:var(--muted);text-align:left;
  padding:0 14px 10px;border-bottom:1px solid var(--navy);
}
.lp-table tbody td{
  font-family:var(--sans);font-size:13px;line-height:1.45;color:var(--ink-2);
  padding:12px 14px;border-bottom:1px solid var(--rule);vertical-align:top;
}
.lp-table tbody td:first-child{
  font-family:var(--mono);font-size:12px;color:var(--navy);white-space:nowrap;
}
.lp-table .lp-tag{
  font-family:var(--sans);font-size:10px;font-weight:700;letter-spacing:.1em;
  text-transform:uppercase;color:var(--navy);
  border:1px solid var(--rule);padding:3px 7px;white-space:nowrap;
}

/* Botón configurar cookies */
.lp-cookie-actions{display:flex;flex-wrap:wrap;gap:12px;margin-top:18px}

/* Navegación entre documentos legales (pie) */
.lp-other{
  margin-top:48px;padding-top:26px;border-top:1px solid var(--rule);
}
.lp-other-label{
  font-family:var(--sans);font-size:10.5px;font-weight:700;letter-spacing:.18em;
  text-transform:uppercase;color:var(--muted);margin-bottom:16px;
}
.lp-other-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}
.lp-other-card{
  display:flex;flex-direction:column;gap:6px;
  background:var(--paper);border:1px solid var(--rule);
  padding:18px 18px 16px;text-decoration:none;
  transition:transform .16s ease, border-color .16s ease, box-shadow .16s ease;
}
.lp-other-card:hover{
  transform:translateY(-2px);border-color:var(--navy);
  box-shadow:0 12px 26px -18px rgba(11,29,58,.4);
}
.lp-other-card.is-current{
  border-color:var(--navy);background:var(--bg-soft);pointer-events:none;
}
.lp-other-name{
  font-family:var(--serif);font-weight:400;font-size:16px;color:var(--navy);
}
.lp-other-desc{font-family:var(--sans);font-size:12px;color:var(--ink-2);line-height:1.4}
.lp-other-card.is-current .lp-other-name::after{
  content:" · estás aquí";font-family:var(--mono);font-size:10px;color:var(--muted);
}

/* ---------- Responsive ---------- */
@media (max-width:900px){
  .lp-layout{grid-template-columns:1fr;gap:8px;padding-top:32px}
  .lp-toc{position:static;margin-bottom:26px}
  .lp-toc-list{
    flex-direction:row;flex-wrap:wrap;gap:4px 6px;
  }
  .lp-toc-link{
    padding:6px 10px;border-left:0;border:1px solid var(--rule);
    font-size:12px;
  }
  .lp-toc-link.is-active{border-color:var(--navy);background:var(--bg-soft)}
  .lp-toc-link .n{display:none}
  .lp-other-grid{grid-template-columns:1fr}
}
@media (max-width:560px){
  .lp-hero-title{font-size:34px}
  .lp-data dl{grid-template-columns:1fr;gap:3px 0}
  .lp-data dt{margin-top:10px}
  .lp-data dd{margin-bottom:2px}
}
