/* Tema web pública — lenguaje visual LAV Real Estate: navy profundo, carmesí, blanco, gris frío. */
:root{
  --navy:#072B50;--navy-2:#0B3A6B;--navy-3:#041B33;--red:#9A031F;--red-2:#B8122F;--ice:#F2F4F7;--ice-2:#E4E8EE;--steel:#8198B8;--ink:#212529;--ink-2:#444;--muted:#6B7684;--white:#fff;
  --cond:"Sofia Sans Extra Condensed","Oswald","Arial Narrow",sans-serif;--body:"Manrope",system-ui,-apple-system,Segoe UI,sans-serif;
  /* puente con base.css para reservar/checkin/confirmación */
  --bg:#F2F4F7;--surface:#fff;--surface-2:#E9EDF3;--line:#DDE3EA;--line-2:#C9D2DD;--brass:#9A031F;--brass-2:#B8122F;--brass-soft:#F7E3E7;--slate:#072B50;--slate-2:#0B3A6B;--serif:"Sofia Sans Extra Condensed","Oswald",sans-serif;--sans:"Manrope",system-ui,sans-serif;--r:3px;
}
body{font-family:var(--body);color:var(--ink);background:var(--white);margin:0;line-height:1.6;font-size:15px;-webkit-font-smoothing:antialiased}
h1,h2,h3,h4{font-family:var(--cond);font-weight:600;text-transform:uppercase;letter-spacing:.01em;line-height:.98;margin:0;color:var(--navy)}
h1{font-size:clamp(54px,8vw,112px)}h2{font-size:clamp(40px,5vw,64px)}h3{font-size:30px}h4{font-size:22px}
.acc{color:var(--red)}.kicker{font-family:var(--body);font-size:12px;letter-spacing:.22em;text-transform:uppercase;color:var(--steel);font-weight:600}
.on-dark h1,.on-dark h2,.on-dark h3{color:#fff}
.btn-l{display:inline-flex;align-items:center;gap:10px;padding:14px 26px;border:1px solid var(--navy);background:var(--navy);color:#fff;font:600 12px/1 var(--body);letter-spacing:.18em;text-transform:uppercase;text-decoration:none;cursor:pointer;transition:background .2s,color .2s,transform .1s}
.btn-l:hover{background:var(--navy-2);text-decoration:none}.btn-l.red{background:var(--red);border-color:var(--red)}.btn-l.red:hover{background:var(--red-2)}
.btn-l.ghost{background:transparent;color:var(--navy)}.btn-l.ghost:hover{background:var(--navy);color:#fff}.btn-l.light{background:#fff;color:var(--navy);border-color:#fff}.btn-l.light:hover{background:var(--ice)}
.btn-l.outline-w{background:transparent;color:#fff;border-color:rgba(255,255,255,.6)}.btn-l.outline-w:hover{background:#fff;color:var(--navy)}
.wrap{max-width:1240px;margin:0 auto;padding:0 24px}
.reveal{opacity:0;transform:translateY(22px);transition:opacity .7s ease,transform .7s ease}.reveal.in{opacity:1;transform:none}
@media (prefers-reduced-motion: reduce){.reveal{opacity:1;transform:none;transition:none}}
