/* Basecourt · las páginas legales. Mismo aspecto que la legal.html anterior,
   con clases en lugar de estilos sueltos. Los colores salen de comun.css y
   tema.css, así que el modo claro y el oscuro funcionan solos. */
*{box-sizing:border-box}
body{margin:0;padding-top:90px;background:var(--tinta);color:var(--tiza);font-family:Inter,system-ui,sans-serif;font-size:16.5px;line-height:1.6;overflow-x:hidden;-webkit-font-smoothing:antialiased}
h1,h2,h3,p,ul,ol,li,dl,dt,dd,table{margin:0;padding:0}
li{list-style:none}
a{color:var(--tiza);text-decoration:none}
::selection{background:var(--tiza);color:var(--tinta)}
a:focus-visible,button:focus-visible,summary:focus-visible{outline:2px solid var(--tiza);outline-offset:3px}

/* cabecera de la página */
.lg-cab{padding:clamp(50px,8vh,100px) clamp(20px,6vw,96px) clamp(34px,5vh,54px)}
.lg-cab>div{max-width:1200px;margin:0 auto}
.lg-antetitulo,.lg-fecha{font-family:Archivo,sans-serif;font-size:12px;font-weight:700;letter-spacing:.17em;text-transform:uppercase;color:var(--apagada)}
.lg-antetitulo{margin-bottom:24px}
.lg-cab h1{font-family:Archivo,sans-serif;font-weight:800;font-variation-settings:'wdth' 108,'wght' 800;font-size:clamp(30px,4.6vw,52px);letter-spacing:-.035em;line-height:1.02;max-width:22ch;text-wrap:balance}
.lg-entrada{margin-top:24px;font-size:17px;line-height:1.6;color:var(--media);max-width:62ch;text-wrap:pretty}
.lg-fecha{margin-top:18px}

/* cuerpo con índice lateral */
.lg-doc{max-width:1200px;margin:0 auto;padding:0 clamp(20px,6vw,96px) clamp(70px,10vh,120px);display:grid;grid-template-columns:minmax(0,240px) minmax(0,1fr);gap:clamp(28px,5vw,72px);align-items:start}
.lg-indice{position:sticky;top:110px;display:flex;flex-direction:column;gap:2px;border-left:1px solid var(--borde);padding-left:18px}
.lg-indice a{display:block;padding:11px 0;font-size:14px;color:var(--media)}
.lg-indice a[aria-current]{color:var(--tiza)}
.lg-texto{display:flex;flex-direction:column;gap:clamp(40px,6vh,64px);max-width:80ch;min-width:0}
.lg-texto section{scroll-margin-top:110px}
.lg-texto h2{font-family:Archivo,sans-serif;font-weight:800;font-variation-settings:'wdth' 108,'wght' 800;font-size:clamp(22px,2.8vw,30px);letter-spacing:-.03em;line-height:1.1;margin-bottom:20px}
.lg-texto h3{font-family:Archivo,sans-serif;font-weight:700;font-size:17px;letter-spacing:-.01em;line-height:1.3;margin:26px 0 10px;color:var(--tiza)}
.lg-texto p{font-size:16px;line-height:1.7;color:var(--media);margin-bottom:14px}
.lg-texto p:last-child{margin-bottom:0}
.lg-texto strong{color:var(--tiza);font-weight:600}
.lg-texto a{color:var(--tiza);text-decoration:underline;text-decoration-color:var(--borde);text-underline-offset:3px}
.lg-texto a:hover{text-decoration-color:var(--tiza)}
.lg-texto ul,.lg-texto ol{display:flex;flex-direction:column;gap:8px;margin:0 0 14px}
.lg-texto ul li,.lg-texto ol li{position:relative;padding-left:20px;font-size:16px;line-height:1.65;color:var(--media)}
.lg-texto ul li::before{content:"";position:absolute;left:2px;top:.72em;width:6px;height:6px;border-radius:50%;background:var(--apagada)}
.lg-texto ol{counter-reset:paso}
.lg-texto ol li{counter-increment:paso;padding-left:30px}
.lg-texto ol li::before{content:counter(paso);position:absolute;left:0;top:0;font-family:Archivo,sans-serif;font-weight:700;color:var(--tiza)}

/* ficha de datos (titular, responsable) */
.lg-ficha{display:grid;grid-template-columns:minmax(0,190px) minmax(0,1fr);margin-bottom:14px}
.lg-ficha dt,.lg-ficha dd{padding:12px 0;border-top:1px solid var(--borde)}
.lg-ficha dt:nth-last-of-type(1),.lg-ficha dd:last-of-type{border-bottom:1px solid var(--borde)}
.lg-ficha dt{font-family:Archivo,sans-serif;font-size:12px;font-weight:700;letter-spacing:.17em;text-transform:uppercase;color:var(--apagada);padding-right:14px}
.lg-ficha dd{font-size:15.5px;color:var(--tiza);line-height:1.6}

/* tablas: en el móvil cada fila se vuelve una tarjeta */
.lg-tabla{width:100%;border-collapse:collapse;margin:4px 0 16px;font-size:14.5px}
.lg-tabla th{font-family:Archivo,sans-serif;font-size:11.5px;font-weight:700;letter-spacing:.14em;text-transform:uppercase;color:var(--apagada);text-align:left;padding:10px 12px 10px 0;border-bottom:1px solid var(--borde);vertical-align:bottom}
.lg-tabla td{padding:12px 12px 12px 0;border-bottom:1px solid var(--borde);color:var(--media);vertical-align:top;line-height:1.55}
.lg-tabla td:first-child{color:var(--tiza);font-weight:600}
@media (max-width:719.98px){
  .lg-tabla thead{display:none}
  .lg-tabla,.lg-tabla tbody,.lg-tabla tr,.lg-tabla td{display:block;width:100%}
  .lg-tabla tr{padding:12px 0;border-bottom:1px solid var(--borde)}
  .lg-tabla td{border:0;padding:3px 0}
  .lg-tabla td[data-col]::before{content:attr(data-col) ": ";color:var(--apagada);font-weight:600}
}

/* caja de resumen y caja de aviso */
.lg-resumen{background:var(--superficie);border:1px solid var(--borde);border-radius:16px;padding:20px 22px;margin-bottom:6px}
.lg-resumen h2{font-size:19px;margin-bottom:12px}
.lg-resumen p,.lg-resumen li{font-size:15.5px}
.lg-pendiente{border:1px dashed var(--revisar);border-radius:12px;padding:12px 14px;color:var(--tiza);font-size:14.5px;margin:0 0 14px}

/* hub de enlaces legales */
.lg-hub{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:12px;margin-bottom:6px}
.lg-hub a{display:flex;flex-direction:column;gap:6px;padding:18px 18px 16px;border:1px solid var(--borde);border-radius:14px;background:var(--superficie);text-decoration:none !important;min-height:44px}
.lg-hub a:hover{border-color:var(--media)}
.lg-hub strong{font-family:Archivo,sans-serif;font-size:16px}
.lg-hub span{font-size:14px;color:var(--media);line-height:1.5}

/* botón grande (eliminar datos) */
.lg-boton{display:inline-flex;align-items:center;justify-content:center;min-height:48px;padding:14px 22px;border-radius:12px;background:var(--tiza);color:var(--tinta) !important;font-weight:600;text-decoration:none !important;margin:4px 0 14px}

@media (max-width:1023.98px){
  .lg-doc{grid-template-columns:minmax(0,1fr)}
  .lg-indice{position:static;margin-bottom:4px}
}
@media (max-width:559.98px){
  .lg-ficha{grid-template-columns:minmax(0,1fr)}
  .lg-ficha dt{border-bottom:0;padding-bottom:0}
  .lg-ficha dd{border-top:0;padding-top:4px}
}
@media (prefers-reduced-motion:reduce){*{animation:none !important;transition:none !important}}
