/* Páginas legales de Veladas Project.
   Tokens muestreados del sitio (index.html) para que no canten al lado.
   Se generan con LEGAL/construir.py — no editar el HTML a mano. */

:root{
  --v-ink:#0a0806; --v-bone:#fcf1da; --v-dim:#ada08c;
  --v-gold:#e09835; --v-gold-lit:#efba5e;
  --v-hair:rgba(224,152,53,.26); --v-hair-soft:rgba(252,241,218,.09);
  --v-card:#0b0806; --v-card-2:#100c09;
  --v-sans:'Inter','Inter var',system-ui,-apple-system,'Segoe UI',sans-serif;
  --v-marca:'Fraunces',Georgia,serif;
  --v-e:cubic-bezier(.22,1,.36,1);
  --v-gut:clamp(1.25rem,4vw,3.5rem);
}
html.v-light{
  --v-ink:#f5efe3; --v-bone:#221c12; --v-dim:#655a4c;
  --v-gold:#7f5209; --v-gold-lit:#b8801f;
  --v-hair:rgba(143,93,14,.32); --v-hair-soft:rgba(34,28,18,.13);
  --v-card:#fbf7ee; --v-card-2:#f2ebdb;
}

*,*::before,*::after{box-sizing:border-box;}
html{-webkit-text-size-adjust:100%;}
body{
  margin:0; background:var(--v-ink); color:var(--v-bone);
  font-family:var(--v-sans); font-weight:300;
  font-size:clamp(1rem,.97rem + .15vw,1.0625rem); line-height:1.75;
  -webkit-font-smoothing:antialiased;
}
.v-lg__in{max-width:74ch;margin-inline:auto;padding-inline:var(--v-gut);}

/* ── barra ───────────────────────────────────────────────────────────── */
.v-lg__top{
  border-bottom:1px solid var(--v-hair-soft);
  position:sticky; top:0; z-index:10;
  background:color-mix(in srgb,var(--v-ink) 88%,transparent);
  backdrop-filter:blur(10px);
}
.v-lg__top .v-lg__in{
  display:flex; align-items:center; justify-content:space-between;
  gap:1rem; padding-block:.9rem; max-width:var(--v-max,1360px);
}
.v-lg__marca{
  font-family:var(--v-marca); font-style:italic; font-weight:900;
  font-variation-settings:'SOFT' 100,'WONK' 1; font-optical-sizing:auto;
  font-size:1.35rem; letter-spacing:-.01em; color:var(--v-bone);
  text-decoration:none; line-height:1;
}
.v-lg__top nav{display:flex;align-items:center;gap:1.1rem;}
.v-lg__top nav a,.v-lg__tema{
  font-size:.8125rem; font-weight:500; color:var(--v-dim);
  text-decoration:none; background:none; border:0; padding:0;
  font-family:inherit; cursor:pointer; transition:color 200ms var(--v-e);
}
.v-lg__top nav a:hover,.v-lg__tema:hover{color:var(--v-gold);}

/* ── contenido ───────────────────────────────────────────────────────── */
main{padding-block:clamp(3rem,7vw,5.5rem) clamp(4rem,9vw,7rem);}
.v-lg h1{
  font-size:clamp(2rem,1.5rem + 2.2vw,3.05rem); font-weight:600;
  letter-spacing:-.032em; line-height:1.06; margin:0 0 .85rem;
  text-wrap:balance;
}
.v-lg__fecha{
  color:var(--v-dim); font-size:.8125rem; font-style:normal;
  margin:0 0 clamp(2.5rem,5vw,3.5rem); padding-bottom:1.4rem;
  border-bottom:1px solid var(--v-hair);
}
.v-lg h2{
  font-size:clamp(1.3rem,1.15rem + .6vw,1.6rem); font-weight:600;
  letter-spacing:-.02em; line-height:1.2;
  margin:clamp(3rem,6vw,4.25rem) 0 1.1rem; text-wrap:balance;
}
.v-lg h2:first-child{margin-top:0;}
.v-lg h3{
  font-size:1.0625rem; font-weight:600; letter-spacing:-.008em;
  margin:2.4rem 0 .7rem; color:var(--v-gold);
}
.v-lg p{margin:0 0 1.15rem;}
.v-lg strong{font-weight:600;color:var(--v-bone);}
.v-lg a{color:var(--v-gold);text-decoration:underline;text-underline-offset:.18em;
  text-decoration-thickness:1px;text-decoration-color:var(--v-hair);
  transition:text-decoration-color 200ms var(--v-e);}
.v-lg a:hover{text-decoration-color:currentColor;}
.v-lg code{
  font-family:ui-monospace,SFMono-Regular,Menlo,monospace; font-size:.875em;
  background:var(--v-card-2); border:1px solid var(--v-hair-soft);
  border-radius:6px; padding:.1em .38em;
}
.v-lg ul{margin:0 0 1.15rem;padding:0;list-style:none;}
.v-lg li{position:relative;padding-left:1.35rem;margin-bottom:.55rem;}
.v-lg li::before{
  content:''; position:absolute; left:.25rem; top:.72em;
  width:5px; height:5px; border-radius:50%; background:var(--v-gold); opacity:.75;
}
.v-lg hr{
  border:0; border-top:1px solid var(--v-hair-soft);
  margin:clamp(3rem,6vw,4.25rem) 0;
}
.v-lg blockquote{
  margin:1.6rem 0; padding:1.1rem 1.35rem;
  border-left:2px solid var(--v-gold); background:var(--v-card-2);
  border-radius:0 14px 14px 0; color:var(--v-dim);
}
.v-lg blockquote p{margin:0;}
.v-lg blockquote p+p{margin-top:.6rem;}
.v-lg blockquote strong{color:var(--v-bone);}

/* tablas: se desplazan solas si no caben, la página nunca */
.v-lg__tabla{overflow-x:auto;margin:0 0 1.6rem;
  border:1px solid var(--v-hair-soft);border-radius:14px;}
.v-lg table{border-collapse:collapse;width:100%;font-size:.9375rem;}
.v-lg th,.v-lg td{
  text-align:left; padding:.72rem .95rem; vertical-align:top;
  border-bottom:1px solid var(--v-hair-soft);
}
.v-lg th{font-weight:600;color:var(--v-gold);font-size:.8125rem;
  letter-spacing:.01em;background:var(--v-card-2);white-space:nowrap;}
.v-lg tr:last-child td{border-bottom:0;}

/* ── pie ─────────────────────────────────────────────────────────────── */
.v-lg__pie{border-top:1px solid var(--v-hair-soft);padding-block:2.5rem 3rem;}
.v-lg__pie .v-lg__in{max-width:var(--v-max,1360px);}
.v-lg__nav{
  display:flex; flex-wrap:wrap; gap:.6rem 1.4rem; margin-bottom:1.5rem;
  padding:0; list-style:none;
}
.v-lg__nav li{padding:0;margin:0;}
.v-lg__nav li::before{display:none;}
.v-lg__nav a{font-size:.8125rem;color:var(--v-dim);text-decoration:none;
  transition:color 200ms var(--v-e);}
.v-lg__nav a:hover{color:var(--v-gold);}
.v-lg__nav a[aria-current]{color:var(--v-gold);}
.v-lg__copy{font-size:.75rem;color:var(--v-dim);margin:0;}

@media (prefers-reduced-motion:reduce){*{transition:none!important;}}
