/* ============================================================
   VITA · Landing Eixample — páginas legales
   Hereda los tokens de landing.css (mismas fuentes y paleta).
   ============================================================ */
:root{
  --green:#124734; --green-deep:#0E3528; --green-mid:#2C7A58;
  --sand:#E5B789; --sand-2:#B57F45; --clara-pale:#FBEEE2;
  --bg:#F6F1E9; --bg-2:#FCF8F1; --paper:#FFFFFF;
  --ink:#173A2D; --ink-soft:rgba(23,58,45,.72); --ink-faint:rgba(23,58,45,.55);
  --line:rgba(23,58,45,.12); --line-2:rgba(23,58,45,.2);
  --serif:"Fraunces","Cormorant Garamond",Georgia,serif;
  --sans:"Bellota Text",system-ui,sans-serif;
  --maxw:1320px; --read:72ch; --gutter:clamp(1.25rem,5vw,4rem);
  --ease:cubic-bezier(.22,.61,.36,1);
}

*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{
  margin:0; background:var(--bg); color:var(--ink);
  font-family:var(--sans); font-weight:400; line-height:1.7;
  -webkit-font-smoothing:antialiased; text-rendering:optimizeLegibility;
}
a{color:inherit}
img{max-width:100%;display:block}

/* ---------- nav ---------- */
.lg-nav{
  position:sticky; top:0; z-index:20;
  display:flex; align-items:center; justify-content:space-between;
  gap:1rem; padding:1rem var(--gutter);
  background:color-mix(in srgb,var(--bg) 86%,transparent);
  backdrop-filter:blur(14px) saturate(1.2);
  border-bottom:1px solid var(--line);
}
.lg-nav-logo{display:inline-flex;align-items:center;line-height:0}
.lg-nav-logo img{height:18px !important;width:auto !important;max-height:18px;display:block}
.lg-back{
  display:inline-flex; align-items:center; gap:.5rem;
  font-size:.74rem; font-weight:700; letter-spacing:.16em; text-transform:uppercase;
  color:var(--green); border:1px solid var(--line-2); border-radius:999px;
  padding:.6rem 1.1rem; transition:background .25s var(--ease), border-color .25s;
}
.lg-back:hover{background:var(--paper);border-color:var(--green-mid)}
.lg-back svg{width:15px;height:15px}

/* ---------- header del documento ---------- */
.lg-head{
  max-width:var(--maxw); margin-inline:auto;
  padding:clamp(3rem,8vw,6rem) var(--gutter) clamp(1.5rem,3vw,2.5rem);
}
.lg-eyebrow{
  display:inline-flex; align-items:center; gap:.7rem;
  font-size:.7rem; font-weight:700; letter-spacing:.34em; text-transform:uppercase;
  color:var(--sand-2);
}
.lg-eyebrow::before{content:"";width:30px;height:1px;background:color-mix(in srgb,var(--sand-2) 60%,transparent)}
.lg-title{
  font-family:var(--serif); font-weight:400; font-style:normal;
  font-size:clamp(2.4rem,6vw,4rem); line-height:1.02; letter-spacing:-.02em;
  margin:1.1rem 0 0; color:var(--green);
}
.lg-title em{font-style:italic;color:var(--sand-2)}
.lg-sub{margin:1rem 0 0;color:var(--ink-soft);font-size:1.02rem;max-width:60ch}

/* ---------- cuerpo legal ---------- */
.lg-body{
  max-width:var(--read); margin-inline:auto;
  padding:clamp(1rem,3vw,2rem) var(--gutter) clamp(3rem,7vw,6rem);
}
.lg-body .legal-intro{
  font-size:1.08rem; color:var(--ink); background:var(--bg-2);
  border:1px solid var(--line); border-left:3px solid var(--sand);
  border-radius:14px; padding:1.2rem 1.4rem; margin:0 0 2.4rem;
}
.lg-body h2{
  font-family:var(--serif); font-weight:500; font-size:clamp(1.5rem,3vw,2rem);
  line-height:1.15; letter-spacing:-.01em; color:var(--green);
  margin:2.8rem 0 .9rem; padding-top:1.6rem; border-top:1px solid var(--line);
}
.lg-body h2:first-of-type{border-top:none;padding-top:0;margin-top:0}
.lg-body h3{
  font-family:var(--serif); font-weight:500; font-style:italic;
  font-size:1.18rem; color:var(--green-mid); margin:1.8rem 0 .5rem;
}
.lg-body p{margin:0 0 1.05rem;color:var(--ink-soft)}
.lg-body p strong{color:var(--ink)}
.lg-body a{color:var(--green-mid);text-decoration:underline;text-underline-offset:2px;word-break:break-word}
.lg-body a:hover{color:var(--green)}
.lg-body .legal-updated{
  margin-top:2.6rem; padding-top:1.4rem; border-top:1px solid var(--line);
  font-size:.86rem; font-style:italic; color:var(--ink-faint);
}

/* ---------- footer legal ---------- */
.lg-foot{
  border-top:1px solid var(--line);
  background:var(--green-deep); color:#EFE6D6;
}
.lg-foot-in{
  max-width:var(--maxw); margin-inline:auto;
  display:flex; flex-wrap:wrap; align-items:center; justify-content:space-between;
  gap:1rem 2rem; padding:clamp(2rem,5vw,3rem) var(--gutter);
}
.lg-foot-links{display:flex;flex-wrap:wrap;gap:.4rem 1.4rem}
.lg-foot-links a{
  font-size:.82rem; font-weight:700; letter-spacing:.04em;
  color:rgba(239,230,214,.7); transition:color .2s;
}
.lg-foot-links a:hover{color:var(--sand)}
.lg-foot-links a.current{color:var(--sand)}
.lg-foot-copy{font-size:.78rem;color:rgba(239,230,214,.5)}

@media (max-width:640px){
  .lg-nav-logo img{height:15px !important;max-height:15px}
  .lg-back span{display:none}
  .lg-back{padding:.6rem .7rem}
}
