/* Landings Vtravel — misma identidad: #071420 #10283B #C8A56A #F5F7FA / Playfair Display + Montserrat */
:root { --bg:#071420; --bg2:#10283B; --gold:#C8A56A; --ink:#F5F7FA; --mute:#b9c4d0; }
* { box-sizing: border-box; }
html { scroll-behavior: smooth; }
body.lp { margin:0; background:var(--bg); color:var(--ink); font-family:'Montserrat',Arial,sans-serif; line-height:1.65; font-size:16px; }
.lp a { color:var(--gold); }
.lp-wrap { width:100%; max-width:1080px; margin:0 auto; padding:0 20px; }
.lp-head { position:sticky; top:0; z-index:50; background:rgba(7,20,32,.96); border-bottom:1px solid rgba(200,165,106,.25); }
.lp-head .lp-wrap { display:flex; align-items:center; justify-content:space-between; gap:12px; min-height:64px; }
.lp-head img { height:40px; width:auto; background:none; padding:0; display:block; filter:drop-shadow(0 2px 6px rgba(0,0,0,.35)); }
.lp-nav { display:flex; gap:6px; align-items:center; flex-wrap:wrap; justify-content:flex-end; }
.lp-nav a { color:var(--ink); text-decoration:none; font-size:.9rem; padding:10px 10px; min-height:44px; display:inline-flex; align-items:center; }
.lp-nav a:hover { color:var(--gold); }
.lp-btn { display:inline-flex; align-items:center; justify-content:center; gap:8px; min-height:48px; padding:0 22px; border-radius:10px; font-weight:700; text-decoration:none; border:2px solid var(--gold); cursor:pointer; font-family:inherit; font-size:1rem; }
.lp .lp-btn.primary { background:linear-gradient(135deg,#C8A56A,#d9bd8a); color:#071420; }
.lp .lp-btn.ghost { background:transparent; color:var(--gold); }
.lp-hero { padding:56px 0 40px; background:radial-gradient(circle at 70% 0%,#10283B 0%,#071420 70%); text-align:center; }
.lp-eyebrow { display:inline-block; color:var(--gold); letter-spacing:.12em; text-transform:uppercase; font-size:.8rem; font-weight:600; border:1px solid rgba(200,165,106,.4); border-radius:999px; padding:6px 14px; margin-bottom:18px; }
.lp h1 { font-family:'Playfair Display',Georgia,serif; font-size:2.6rem; line-height:1.18; margin:0 0 16px; font-weight:600; }
.lp h2 { font-family:'Playfair Display',Georgia,serif; font-size:1.9rem; margin:0 0 14px; font-weight:600; }
.lp h3 { font-size:1.1rem; margin:0 0 6px; }
.lp-lead { color:var(--mute); font-size:1.12rem; max-width:760px; margin:0 auto 26px; }
.lp-cta { display:flex; gap:12px; justify-content:center; flex-wrap:wrap; margin-bottom:26px; }
.lp-trust { display:grid; grid-template-columns:repeat(4,1fr); gap:10px; max-width:820px; margin:0 auto; }
.lp-trust div { border:1px solid rgba(200,165,106,.3); border-radius:12px; padding:12px 6px; background:rgba(16,40,59,.6); font-size:.85rem; color:var(--mute); }
.lp-trust b { display:block; font-family:'Playfair Display',Georgia,serif; color:var(--gold); font-size:1.3rem; }
.lp-sec { padding:44px 0; }
.lp-sec.alt { background:var(--bg2); }
.lp-grid { display:grid; grid-template-columns:repeat(3,1fr); gap:16px; }
.lp-grid.two { grid-template-columns:repeat(2,1fr); }
.lp-card { border:1px solid rgba(200,165,106,.3); border-radius:14px; padding:18px; background:rgba(7,20,32,.55); }
.lp-card p { margin:0; color:var(--mute); font-size:.95rem; }
.lp-card .price { color:var(--gold); font-weight:700; margin-top:8px; }
.lp-steps { counter-reset:s; display:grid; grid-template-columns:repeat(3,1fr); gap:16px; padding:0; list-style:none; margin:0; }
.lp-steps li { counter-increment:s; border:1px solid rgba(200,165,106,.3); border-radius:14px; padding:18px; background:rgba(7,20,32,.55); }
.lp-steps li::before { content:counter(s); display:inline-flex; width:32px; height:32px; border-radius:50%; background:var(--gold); color:#071420; font-weight:700; align-items:center; justify-content:center; margin-bottom:8px; }
.lp-quote { border-left:3px solid var(--gold); padding:4px 0 4px 16px; margin:0; color:var(--ink); }
.lp-quote cite { display:block; color:var(--mute); font-style:normal; font-size:.88rem; margin-top:6px; }
.lp details { border:1px solid rgba(200,165,106,.3); border-radius:12px; padding:0 16px; margin-bottom:10px; background:rgba(7,20,32,.55); }
.lp summary { cursor:pointer; padding:14px 0; font-weight:600; min-height:44px; }
.lp details p { margin:0 0 14px; color:var(--mute); }
.lp-form { display:grid; grid-template-columns:1fr 1fr; gap:12px; max-width:760px; margin:0 auto; }
.lp-form .full { grid-column:1/-1; }
.lp-form label { display:block; font-size:.88rem; color:var(--mute); margin-bottom:4px; }
.lp-form input,.lp-form select,.lp-form textarea { width:100%; min-height:46px; padding:10px 12px; border-radius:8px; border:1px solid rgba(200,165,106,.35); background:rgba(255,255,255,.06); color:var(--ink); font-family:inherit; font-size:1rem; }
.lp-form input[aria-invalid="true"],.lp-form select[aria-invalid="true"] { border-color:#e55353; }
.lp-form option { color:#071420; }
.lp-msg { grid-column:1/-1; padding:10px 14px; border-radius:8px; display:none; }
.lp-msg.err { display:block; background:rgba(229,83,83,.12); border:1px solid rgba(229,83,83,.5); color:#ffb4b4; }
.lp-msg.ok { display:block; background:rgba(200,165,106,.12); border:1px solid rgba(200,165,106,.5); }
.lp-foot { border-top:1px solid rgba(200,165,106,.25); padding:28px 0 90px; color:var(--mute); font-size:.88rem; text-align:center; }
.lp-foot a { display:inline-block; padding:10px 8px; min-height:44px; }
.lp-wa-float { position:fixed; right:16px; bottom:16px; z-index:60; width:56px; height:56px; border-radius:50%; background:#25D366; color:#fff; display:flex; align-items:center; justify-content:center; font-size:1.8rem; text-decoration:none; box-shadow:0 6px 20px rgba(0,0,0,.4); }
.lp-bc { font-size:.85rem; color:var(--mute); padding:14px 0 0; }
.lp-bc a { color:var(--mute); }
@media (max-width:768px) {
  .lp h1 { font-size:1.85rem; } .lp h2 { font-size:1.45rem; }
  .lp-hero { padding:32px 0 28px; } .lp-lead { font-size:1rem; }
  .lp-trust { grid-template-columns:repeat(2,1fr); }
  .lp-grid,.lp-grid.two,.lp-steps { grid-template-columns:1fr; }
  .lp-form { grid-template-columns:1fr; }
  .lp-nav a.hide-m { display:none; }
  .lp-btn { width:100%; } .lp-cta { flex-direction:column; }
}
/* Páginas de producto */
.lp-hero-img { max-width:920px; margin:8px auto 0; border-radius:16px; overflow:hidden; border:1px solid rgba(200,165,106,.35); }
.lp-hero-img img { display:block; width:100%; height:auto; max-height:560px; object-fit:cover; }
.lp-facts { display:grid; grid-template-columns:repeat(auto-fit,minmax(240px,1fr)); gap:12px; margin:0 0 24px; }
.lp-facts div { border:1px solid rgba(200,165,106,.3); border-radius:12px; padding:14px 16px; background:rgba(16,40,59,.55); }
.lp-facts dt { color:var(--gold); font-size:.8rem; letter-spacing:.08em; text-transform:uppercase; font-weight:600; margin:0 0 4px; }
.lp-facts dd { margin:0; color:var(--ink); font-size:.98rem; }
.lp-desc { color:var(--mute); font-size:1.02rem; max-width:860px; margin:0 0 26px; }
.lp-list { padding-left:20px; margin:0; max-width:860px; color:var(--ink); }
.lp-list li { margin-bottom:8px; }
.lp-gal { display:grid; grid-template-columns:repeat(auto-fill,minmax(220px,1fr)); gap:10px; }
.lp-gal img { width:100%; height:200px; object-fit:cover; border-radius:12px; display:block; background:#10283B; }
a.lp-rel { display:block; text-decoration:none; color:var(--ink); }
a.lp-rel:hover { border-color:var(--gold); }
@media (max-width:768px) { .lp-gal { grid-template-columns:repeat(2,1fr); } .lp-gal img { height:150px; } }
.lp-bc { margin-bottom:14px; }
