/* Visit Balandra · páginas legales · scope #vb-legal */
#vb-legal { --vb-ivory:#F4F0E8; --vb-paper:#FBF9F4; --vb-linen:#EAE4D8; --vb-sand:#D8C9AE; --vb-sea:#1F3644; --vb-pacific:#3F5A6B; --vb-lagoon:#A9CBD1; --vb-shallow:#DCE8E6; --vb-ink:#1D1C1A; --vb-stone:#4A4843; --vb-stone-2:#6B6862; --vb-clay:#8A3B2E; --vb-line:rgba(29,28,26,.14); --vb-line-2:rgba(29,28,26,.08);
  --vb-serif:"Cormorant Garamond",Georgia,"Times New Roman",serif; --vb-sans:"Hanken Grotesk","DM Sans",system-ui,-apple-system,"Helvetica Neue",Arial,sans-serif;
  font-family:var(--vb-sans); font-size:16px; line-height:1.7; color:var(--vb-ink); background:var(--vb-ivory); padding:clamp(48px,7vh,88px) 0 clamp(64px,9vh,110px); -webkit-font-smoothing:antialiased; font-variant-numeric:lining-nums; overflow-x:clip; }
#vb-legal *, #vb-legal *::before, #vb-legal *::after { box-sizing:border-box; }
#vb-legal h1, #vb-legal h2, #vb-legal p, #vb-legal ul, #vb-legal ol { margin:0; padding:0; }
#vb-legal a { color:var(--vb-sea); text-decoration:none; border-bottom:1px solid var(--vb-line); transition:color 180ms, border-color 180ms; }
#vb-legal a:hover { color:var(--vb-pacific); border-color:var(--vb-pacific); }
#vb-legal button { font:inherit; color:inherit; background:none; border:0; cursor:pointer; }
#vb-legal code { font-family:ui-monospace,SFMono-Regular,Menlo,monospace; font-size:13px; background:var(--vb-linen); padding:2px 6px; border-radius:4px; }
#vb-legal .vb-wrap { max-width:1120px; margin-inline:auto; padding-inline:clamp(20px,3vw,40px); }
#vb-legal .vb-eyebrow { font-size:11px; font-weight:500; letter-spacing:.26em; text-transform:uppercase; color:var(--vb-stone-2); }

#vb-legal .vb-legal__head { display:grid; grid-template-columns:repeat(auto-fit,minmax(300px,1fr)); gap:24px 40px; align-items:end; padding-top:22px; border-top:1px solid var(--vb-ink); margin-bottom:32px; }
#vb-legal .vb-legal__h1 { font-family:var(--vb-serif); font-weight:400; font-size:clamp(38px,5vw,60px); line-height:1.02; letter-spacing:-.01em; margin:14px 0 10px; }
#vb-legal .vb-legal__h1 em { font-style:italic; color:var(--vb-pacific); }
#vb-legal .vb-legal__meta { font-size:13px; color:var(--vb-stone-2); }
#vb-legal .vb-legal__tabs { display:flex; flex-wrap:wrap; gap:4px; justify-self:end; align-items:center; }
#vb-legal .vb-legal__tabs a { border:0; font-size:11px; font-weight:500; letter-spacing:.2em; text-transform:uppercase; color:var(--vb-stone); padding:10px 12px; border-radius:7px; }
#vb-legal .vb-legal__tabs a:hover { color:var(--vb-sea); background:var(--vb-paper); }
#vb-legal .vb-legal__tabs a[aria-current="page"] { background:var(--vb-sea); color:var(--vb-ivory); }
#vb-legal .vb-legal__lang { font-size:11px; letter-spacing:.2em; text-transform:uppercase; color:var(--vb-stone-2); padding:10px 12px; min-height:44px; }
#vb-legal[data-lang="es"] .vb-lang-es, #vb-legal[data-lang="en"] .vb-lang-en { font-weight:700; color:var(--vb-ink); }

#vb-legal .vb-legal__notice { background:var(--vb-sand); border-radius:7px; padding:22px 26px; margin-bottom:40px; display:grid; gap:8px; font-size:15.5px; }
#vb-legal .vb-legal__notice .vb-eyebrow { color:var(--vb-ink); font-weight:600; }

#vb-legal .vb-legal__body { display:grid; grid-template-columns:260px minmax(0,1fr); gap:48px; align-items:start; }
#vb-legal .vb-legal__toc { position:sticky; top:24px; background:var(--vb-paper); border-radius:7px; padding:20px 22px; box-shadow:inset 0 0 0 1px var(--vb-line-2); }
#vb-legal .vb-legal__toc ol { list-style:none; counter-reset:toc; margin-top:12px; }
#vb-legal .vb-legal__toc li { counter-increment:toc; display:flex; gap:10px; padding:7px 0; border-top:1px solid var(--vb-line-2); font-size:13.5px; }
#vb-legal .vb-legal__toc li::before { content:counter(toc,decimal-leading-zero); font-family:var(--vb-serif); font-size:15px; color:var(--vb-pacific); min-width:22px; }
#vb-legal .vb-legal__toc a { border:0; color:var(--vb-stone); }
#vb-legal .vb-legal__toc a:hover { color:var(--vb-sea); }

#vb-legal .vb-legal__sec { padding:28px 0; border-top:1px solid var(--vb-line); scroll-margin-top:24px; }
#vb-legal .vb-legal__sec:first-child { border-top:0; padding-top:0; }
#vb-legal .vb-legal__sec h2 { display:flex; align-items:baseline; gap:14px; font-family:var(--vb-serif); font-weight:400; font-size:28px; line-height:1.1; margin-bottom:14px; }
#vb-legal .vb-legal__sec h2 b { font-weight:400; font-size:18px; color:var(--vb-pacific); min-width:30px; }
#vb-legal .vb-legal__text { max-width:68ch; color:var(--vb-stone); font-size:15.5px; }
#vb-legal .vb-legal__text p + p, #vb-legal .vb-legal__text ul + p, #vb-legal .vb-legal__text p + ul, #vb-legal .vb-legal__text div + p { margin-top:12px; }
#vb-legal .vb-legal__text strong { color:var(--vb-ink); font-weight:600; }
#vb-legal .vb-legal__list { list-style:none; margin-top:10px; }
#vb-legal .vb-legal__list li { position:relative; padding:9px 0 9px 22px; border-top:1px solid var(--vb-line-2); }
#vb-legal .vb-legal__list li::before { content:""; position:absolute; left:4px; top:18px; width:6px; height:6px; border-radius:50%; background:var(--vb-pacific); }
#vb-legal .vb-legal__fine { font-size:13.5px; color:var(--vb-stone-2); }
#vb-legal .vb-legal__breaks { display:grid; grid-template-columns:repeat(auto-fit,minmax(260px,1fr)); gap:8px; margin:14px 0; }
#vb-legal .vb-legal__tbl { width:100%; border-collapse:collapse; background:var(--vb-paper); border-radius:7px; overflow:hidden; box-shadow:inset 0 0 0 1px var(--vb-line-2); font-size:14px; }
#vb-legal .vb-legal__tbl caption { text-align:left; padding:12px 16px 4px; font-size:11px; letter-spacing:.2em; text-transform:uppercase; color:var(--vb-stone-2); background:var(--vb-paper); }
#vb-legal .vb-legal__tbl td, #vb-legal .vb-legal__tbl th { padding:10px 16px; border-top:1px solid var(--vb-line-2); text-align:left; vertical-align:top; }
#vb-legal .vb-legal__tbl td:last-child { text-align:right; white-space:nowrap; color:var(--vb-ink); }
#vb-legal .vb-legal__tbl .is-total td { border-top:1px solid var(--vb-ink); font-weight:600; color:var(--vb-ink); }
#vb-legal .vb-legal__tbl .is-total small { display:block; font-weight:400; font-size:12px; color:var(--vb-stone-2); }
#vb-legal .vb-legal__tbl--cookies th { font-size:11px; letter-spacing:.18em; text-transform:uppercase; color:var(--vb-stone-2); border-top:0; }
#vb-legal .vb-legal__tbl--cookies td:last-child { text-align:left; white-space:normal; }
#vb-legal .vb-legal__foot { margin-top:40px; padding-top:20px; border-top:1px solid var(--vb-ink); font-size:13px; color:var(--vb-stone-2); display:grid; gap:8px; }
#vb-legal .vb-legal__foot a { border:0; font-size:11px; letter-spacing:.18em; text-transform:uppercase; }

@media (max-width:900px) {
  #vb-legal .vb-legal__body { grid-template-columns:1fr; gap:24px; }
  #vb-legal .vb-legal__toc { position:static; }
  #vb-legal .vb-legal__tabs { justify-self:start; }
}
@media (max-width:640px) {
  #vb-legal .vb-legal__sec h2 { font-size:24px; }
  #vb-legal .vb-legal__tbl--cookies { display:block; overflow-x:auto; }
  #vb-legal .vb-legal__tbl--cookies th, #vb-legal .vb-legal__tbl--cookies td { min-width:120px; }
}
