/* ==== BELA TRANSA · Estilo legal minimal ==== */
:root{
  --fg:#111; --bg:#fff; --hover:#674840;
  --outer-left: clamp(48px,6.5vw,120px);
  --rail-right: clamp(24px,5vw,80px);
  --h1: clamp(28px,4.2vw,56px);
  --h2: clamp(20px,2.8vw,34px);
  --h3: clamp(16px,2.2vw,22px);
  --txt: clamp(14px,1.2vw,18px);
  --small: clamp(12px,.95vw,14px);
  --sp-1: clamp(8px,1.2vw,14px);
  --sp-2: clamp(14px,1.8vw,22px);
  --sp-3: clamp(20px,2.4vw,34px);
  --sp-4: clamp(28px,3vw,48px);
  --measure: min(92ch, 100%);
}

body.legal-page{
  color:var(--fg); background:var(--bg);
  font: var(--txt)/1.55 Helvetica,Arial,sans-serif;
  margin:0;
  padding: clamp(28px,5vh,56px) var(--rail-right) clamp(100px,10vh,140px) var(--outer-left);
}

.legal-wrap{ width:var(--measure); max-width:1000px; }

/* Titulares en Impact como el resto del sitio */
.legal-page h1,.legal-page h2,.legal-page h3{
  font-family: Impact, Helvetica, Arial, sans-serif;
  font-weight:900; text-transform:uppercase; letter-spacing:.02em;
  line-height:1.04; margin:0 0 var(--sp-2);
}
.legal-page h1{ font-size:var(--h1); margin-bottom:var(--sp-3); border-bottom:2px solid #000; padding-bottom:.3em; }
.legal-page h2{ font-size:var(--h2); margin-top:var(--sp-4); }
.legal-page h3{ font-size:var(--h3); margin-top:var(--sp-3); }

.legal-page p,.legal-page li{ margin:0 0 var(--sp-2); }
.legal-meta{ font-size:var(--small); opacity:.75; margin-bottom:var(--sp-3); }

/* Enlaces sobrios */
.legal-page a{
  color:inherit; text-decoration:underline; text-decoration-thickness:2px; text-underline-offset:.15em;
}
.legal-page a:hover{ color:var(--hover); }

/* Listas y tablas bonitas */
.legal-page ul{ padding-left:1.2em; margin:0 0 var(--sp-2); }
.legal-page li{ list-style:square; }

.legal-table{
  width:100%; border-collapse:collapse; margin:var(--sp-2) 0 var(--sp-3);
  font-size:var(--txt);
}
.legal-table th,.legal-table td{ border-bottom:1px solid #ddd; padding:.7em .6em; text-align:left; vertical-align:top; }
.legal-table th{
  font-family: Impact, Helvetica, Arial, sans-serif; text-transform:uppercase; font-weight:900; letter-spacing:.02em;
}

/* Nota resaltada */
.legal-note{ background:rgba(0,0,0,.04); padding:var(--sp-2); border-left:4px solid #000; margin:var(--sp-3) 0; }

/* Acciones al final (opcional) */
.legal-actions{ margin-top:var(--sp-4); display:flex; gap:var(--sp-2); flex-wrap:wrap; }
.legal-actions a{
  display:inline-block; border:2px solid #000; padding:.5em .8em; text-decoration:none;
  font-family:Impact,Helvetica,Arial,sans-serif; text-transform:uppercase; font-weight:900;
}
.legal-actions a:hover{ background:#000; color:#fff; }

/* Resp. */
@media (max-width:900px){
  body.legal-page{
    padding: clamp(22px,4vh,36px) clamp(18px,4vw,28px) clamp(80px,9vh,120px) clamp(18px,6vw,36px);
  }
  .legal-wrap{ max-width:680px; }
}

/* Print limpio */
@media print{
  body.legal-page{ padding:0; }
  .legal-actions{ display:none !important; }
  a[href^="http"]:after{ content:" (" attr(href) ")"; font-size:.9em; opacity:.7; }
}