/* Hoja de las páginas legales. Se genera junto a ellas: no editar a mano,
   se pisa en el siguiente `npm run generar:legal`. */
.lg { margin: 0; background: #F7F5EF; color: #0B0E0C;
  font-family: "Bricolage Grotesque", system-ui, sans-serif; -webkit-font-smoothing: antialiased; }
.lg * { box-sizing: border-box; }
.lg a { color: #0E8F4D; }

.lg-nav { position: sticky; top: 0; z-index: 5; display: flex; align-items: center;
  justify-content: space-between; gap: 16px; padding: 14px clamp(18px, 4vw, 44px);
  background: rgba(247,245,239,.92); backdrop-filter: blur(10px); border-bottom: 1px solid #E2DDD0; }
.lg-brand { display: inline-flex; align-items: center; gap: 9px; font-weight: 700;
  font-size: 17px; color: #0B0E0C; text-decoration: none; letter-spacing: -.02em; }
.lg-brand .dot { width: 9px; height: 9px; border-radius: 50%; background: #1AE57A; }
.lg-volver { font-size: 14px; text-decoration: none; font-weight: 600; }

.lg-wrap { display: grid; grid-template-columns: 250px minmax(0, 1fr);
  gap: clamp(24px, 4vw, 56px); max-width: 1100px; margin: 0 auto;
  padding: clamp(28px, 5vw, 56px) clamp(18px, 4vw, 44px) 80px; }

.lg-indice { position: sticky; top: 78px; align-self: start; }
.lg-indice h2 { font-family: "Chivo Mono", ui-monospace, monospace; font-size: 11px;
  letter-spacing: .16em; text-transform: uppercase; color: #6B6F6A; margin: 0 0 12px; }
.lg-indice nav { display: flex; flex-direction: column; gap: 2px; }
.lg-indice a { display: block; padding: 8px 11px; border-radius: 8px; font-size: 14px;
  line-height: 1.35; color: #3A3F39; text-decoration: none; }
.lg-indice a:hover { background: #EDE9DE; color: #0B0E0C; }
.lg-indice a[aria-current="page"] { background: #0B0E0C; color: #F2EEE5; font-weight: 600; }
.lg-pdf { display: inline-block; margin-top: 16px; padding: 9px 14px; border-radius: 999px;
  border: 1px solid #C9C3B2; font-size: 13px; font-weight: 600; text-decoration: none;
  color: #0B0E0C; background: #fff; }
.lg-pdf:hover { border-color: #0E8F4D; color: #0E8F4D; }

.lg-doc { min-width: 0; background: #fff; border: 1px solid #E2DDD0; border-radius: 16px;
  padding: clamp(24px, 4vw, 52px); }
.lg-kicker { font-family: "Chivo Mono", ui-monospace, monospace; font-size: 11px;
  letter-spacing: .16em; text-transform: uppercase; color: #0E8F4D; margin: 0 0 10px; }
.lg-doc h1 { font-size: clamp(27px, 4vw, 41px); line-height: 1.06; letter-spacing: -.035em; margin: 0; }
.lg-lede { font-size: 16.5px; line-height: 1.5; color: #5A5F59; margin: 14px 0 30px;
  padding-bottom: 26px; border-bottom: 1px solid #E9E5DA; }
.lg-doc h2 { font-size: 18px; letter-spacing: -.02em; margin: 34px 0 12px; }
.lg-doc p { font-size: 15.5px; line-height: 1.62; margin: 0 0 14px; color: #24282300; color: #242823; }
.lg-doc ul { margin: 0 0 16px; padding-left: 20px; }
.lg-doc li { font-size: 15.5px; line-height: 1.6; margin-bottom: 7px; color: #242823; }
.lg-doc li::marker { color: #0E8F4D; }
.nota { font-size: 13.5px; color: #6B6F6A; font-style: italic; margin-top: 26px;
  padding-top: 16px; border-top: 1px solid #E9E5DA; }

.tabla-scroll { overflow-x: auto; margin: 0 0 22px; }
.lg-doc table { border-collapse: collapse; width: 100%; min-width: 520px; font-size: 13.5px; }
.lg-doc th, .lg-doc td { text-align: left; vertical-align: top; padding: 10px 12px;
  border-bottom: 1px solid #E9E5DA; line-height: 1.45; }
.lg-doc th { background: #F7F5EF; font-weight: 600; font-size: 12.5px; }

/* Los huecos por rellenar tienen que verse: un documento legal publicado con
   un dato de identificación en blanco no cumple el art. 10 de la LSSI. */
.pend { background: #FFE9A8; color: #6B4E00; padding: 1px 6px; border-radius: 4px;
  font-weight: 600; font-size: .92em; }

.lg-pie { display: flex; align-items: center; justify-content: space-between; gap: 16px;
  flex-wrap: wrap; max-width: 1100px; margin: 0 auto; padding: 22px clamp(18px, 4vw, 44px) 40px;
  border-top: 1px solid #E2DDD0; font-size: 13px; color: #6B6F6A; }
.lg-pie button { background: none; border: 0; padding: 0; font: inherit; color: #0E8F4D;
  cursor: pointer; text-decoration: underline; }

@media (max-width: 860px) {
  .lg-wrap { grid-template-columns: minmax(0, 1fr); }
  .lg-indice { position: static; }
  .lg-indice nav { flex-direction: row; flex-wrap: wrap; }
  .lg-indice a { font-size: 13px; padding: 7px 10px; background: #EDE9DE; }
}
