
*{margin:0;padding:0;box-sizing:border-box}
html{scroll-behavior:smooth}
body{font-family:'Montserrat',sans-serif;background:#f7f6f3;color:#0f0f0f;overflow-x:hidden}
::-webkit-scrollbar{width:3px}::-webkit-scrollbar-thumb{background:#ff6a00}
:root{
  --gold:#ff6a00;--gold2:#ff8c3a;--navy:#0b3a73;--dark:#06182e;
  --white:#fff;--bg:#f3f7fc;--text:#0f1722;--muted:#5f6b7a;
  --wa:#25D366;--red:#e8261c;--red2:#ff4136;--blue:#1e7fe0;
}
img{display:block;width:100%;max-width:100%}
a{text-decoration:none}

/* Cursor nativo del navegador. */
/* ─── NAV ─── */
nav{position:fixed;inset:0 0 auto;z-index:500;height:70px;display:flex;align-items:center;justify-content:space-between;padding:0 52px;transition:all .4s}
nav.solid{background:rgba(247,246,243,.97);backdrop-filter:blur(20px);border-bottom:1px solid rgba(0,0,0,.06);box-shadow:0 2px 32px rgba(0,0,0,.06)}
.logo{display:flex;flex-direction:column;line-height:1.1}
.logo-main{font-weight:900;font-size:16px;letter-spacing:3px;color:var(--text);text-transform:uppercase}
.logo-sub{font-family:'Montserrat',sans-serif;font-style:normal;font-size:12px;color:var(--gold);letter-spacing:2px}
.nav-links{display:flex;gap:40px}
.nav-links a{font-size:11px;font-weight:600;letter-spacing:1.5px;text-transform:uppercase;color:var(--muted);transition:color .2s;position:relative}
.nav-links a::after{content:'';position:absolute;bottom:-4px;left:0;width:0;height:1.5px;background:var(--gold);transition:width .3s}
.nav-links a:hover{color:var(--text)}
.nav-links a:hover::after{width:100%}
.nav-right{display:flex;gap:14px;align-items:center}
.nav-ig{font-size:10px;font-weight:700;letter-spacing:1.5px;text-transform:uppercase;color:var(--muted);transition:color .2s}
.nav-ig:hover{color:var(--text)}
.nav-btn{background:var(--text);color:#fff;font-weight:800;font-size:10px;letter-spacing:2px;text-transform:uppercase;padding:12px 26px;border-radius:4px;transition:all .3s;display:inline-flex;align-items:center;gap:7px}
.nav-btn:hover{background:var(--gold);color:var(--navy)}

/* ─── HERO ─── */
.hero{min-height:100vh;padding:110px 52px 80px;display:grid;grid-template-columns:1.1fr .9fr;gap:52px;align-items:center;background:var(--bg);position:relative;overflow:hidden}
.hero::before{content:'';position:absolute;top:-200px;right:-200px;width:600px;height:600px;border-radius:50%;background:radial-gradient(circle,rgba(255,106,0,.06) 0%,transparent 70%);pointer-events:none}
.hero-left{position:relative;z-index:2}
.hero-kicker{display:flex;align-items:center;gap:10px;margin-bottom:28px;opacity:0;animation:fu .7s .2s forwards}
.kicker-dot{width:8px;height:8px;border-radius:50%;background:var(--gold)}
.kicker-text{font-size:10px;font-weight:700;letter-spacing:4px;text-transform:uppercase;color:var(--muted)}
.hero-h1{font-size:clamp(58px,6.2vw,96px);font-weight:900;line-height:.87;letter-spacing:-3px;color:var(--text);margin-bottom:32px}
.hero-h1 .w{display:block;opacity:0;transform:translateY(90px);animation:su .9s forwards}
.hero-h1 .w:nth-child(1){animation-delay:.3s}
.hero-h1 .w:nth-child(2){animation-delay:.5s}
.hero-h1 .w:nth-child(3){animation-delay:.7s;color:var(--gold)}
.hero-desc{font-size:15px;font-weight:300;color:var(--muted);line-height:1.85;max-width:440px;margin-bottom:40px;opacity:0;animation:fu .7s 1s forwards}
.hero-desc strong{color:var(--text);font-weight:700}
.hero-btns{display:flex;gap:14px;align-items:center;flex-wrap:wrap;opacity:0;animation:fu .7s 1.2s forwards}
.btn-primary{background:var(--text);color:#fff;font-weight:800;font-size:11px;letter-spacing:2px;text-transform:uppercase;padding:17px 38px;border-radius:4px;display:inline-flex;align-items:center;gap:8px;transition:all .3s;position:relative;overflow:hidden}
.btn-primary::after{content:'';position:absolute;inset:0;background:linear-gradient(135deg,transparent 40%,rgba(255,255,255,.18) 50%,transparent 60%);transform:translateX(-100%);transition:transform .5s}
.btn-primary:hover{background:var(--gold);color:var(--navy)}
.btn-primary:hover::after{transform:translateX(100%)}
.btn-sec{background:transparent;color:var(--muted);font-weight:700;font-size:11px;letter-spacing:2px;text-transform:uppercase;padding:16px 28px;border:1.5px solid rgba(0,0,0,.12);border-radius:4px;transition:all .3s}
.btn-sec:hover{border-color:var(--text);color:var(--text)}
.hero-stats{display:flex;gap:40px;margin-top:60px;padding-top:40px;border-top:1px solid rgba(0,0,0,.08);opacity:0;animation:fu .7s 1.4s forwards}
.hs{}.hs-n{font-size:38px;font-weight:900;letter-spacing:-2px;color:var(--text);line-height:1}
.hs-l{font-size:10px;font-weight:600;letter-spacing:1.5px;text-transform:uppercase;color:var(--muted);margin-top:3px}

/* HERO RIGHT FRAME */
.hero-right{opacity:0;animation:fu .9s .5s forwards;position:relative}
.hero-frame{background:#fff;border-radius:28px;padding:12px;box-shadow:0 40px 100px rgba(0,0,0,.12),0 0 0 1px rgba(0,0,0,.05);overflow:hidden;position:relative}
.hero-frame img{border-radius:20px;height:540px;object-fit:cover;animation:zoom 22s ease-in-out infinite alternate}
@keyframes zoom{from{transform:scale(1)}to{transform:scale(1.06)}}
.hero-badge-1{position:absolute;bottom:36px;left:36px;background:rgba(255,255,255,.96);backdrop-filter:blur(12px);border-radius:14px;padding:16px 22px;box-shadow:0 8px 32px rgba(0,0,0,.1);animation:badgePop .6s 1.6s both}
@keyframes badgePop{from{opacity:0;transform:scale(.8) translateY(10px)}to{opacity:1;transform:scale(1) translateY(0)}}
.hb1-n{font-size:30px;font-weight:900;letter-spacing:-1.5px;color:var(--text);line-height:1}
.hb1-l{font-size:10px;font-weight:600;letter-spacing:1px;text-transform:uppercase;color:var(--muted);margin-top:3px}
.hero-badge-2{position:absolute;top:36px;right:36px;background:var(--gold);border-radius:14px;padding:14px 20px;animation:badgePop .6s 1.9s both}
.hb2-l{font-size:9px;font-weight:800;letter-spacing:2px;text-transform:uppercase;color:var(--navy)}
.hb2-n{font-size:24px;font-weight:900;letter-spacing:-1px;color:var(--navy);line-height:1;margin-top:2px}
.hero-badge-3{position:absolute;top:50%;right:-20px;transform:translateY(-50%);background:var(--navy);border-radius:14px;padding:16px 20px;text-align:center;animation:badgePop .6s 2.1s both;box-shadow:0 12px 40px rgba(11,37,69,.3)}
.hb3-n{font-size:28px;font-weight:900;letter-spacing:-1px;color:#fff;line-height:1}
.hb3-l{font-size:9px;font-weight:700;letter-spacing:1.5px;text-transform:uppercase;color:rgba(255,255,255,.5);margin-top:3px}

/* ─── TICKER ─── */
.ticker{background:var(--text);padding:18px 0;overflow:hidden;display:flex;gap:0}
.ticker-track{display:flex;gap:0;animation:ticker 28s linear infinite;white-space:nowrap}
.ticker-item{display:inline-flex;align-items:center;gap:16px;padding:0 32px;font-size:11px;font-weight:700;letter-spacing:2px;text-transform:uppercase;color:rgba(255,255,255,.5)}
.ticker-item b{color:var(--gold)}
.ticker-sep{color:rgba(255,106,0,.3);font-size:18px}
@keyframes ticker{from{transform:translateX(0)}to{transform:translateX(-50%)}}

/* ─── SECTIONS ─── */
.sec{padding:104px 52px}
.wrap{max-width:1200px;margin:0 auto}
.kicker{display:flex;align-items:center;gap:10px;margin-bottom:14px}
.kicker-d{width:7px;height:7px;border-radius:50%;background:var(--gold)}
.kicker-t{font-size:9px;font-weight:800;letter-spacing:4px;text-transform:uppercase;color:var(--gold)}
.h2{font-size:clamp(34px,4.2vw,56px);font-weight:900;letter-spacing:-2px;line-height:.95;color:var(--text)}
.h2 em{font-family:'Montserrat',sans-serif;font-style:normal;font-weight:800;color:var(--gold)}
.h2-w{color:#fff}
.body{font-size:15px;font-weight:300;color:var(--muted);line-height:1.85}
.rule{width:44px;height:2px;background:var(--gold);margin:24px 0}
.btn-arrow{display:inline-flex;align-items:center;gap:8px;font-size:11px;font-weight:700;letter-spacing:2px;text-transform:uppercase;color:var(--text);transition:gap .25s}
.btn-arrow:hover{gap:14px}
.btn-arrow::after{content:'→'}

/* ─── ABOUT ─── */
.about-sec{background:var(--white)}
.about-grid{display:grid;grid-template-columns:200px 1fr 360px;gap:56px;align-items:start}
.about-side-label{font-size:10px;font-weight:700;letter-spacing:2px;text-transform:uppercase;color:var(--muted);line-height:1.6;padding-top:6px}
.about-h2{font-size:clamp(26px,3.2vw,42px);font-weight:900;letter-spacing:-1.5px;line-height:1.05;margin-bottom:18px;color:var(--text)}
.about-h2 em{font-family:'Montserrat',sans-serif;font-style:normal;font-weight:800;color:var(--gold)}
.about-img-wrap{border-radius:20px;overflow:hidden;height:300px;box-shadow:0 20px 60px rgba(0,0,0,.1)}
.about-img-wrap img{height:100%;object-fit:cover;transition:transform .6s}
.about-img-wrap:hover img{transform:scale(1.04)}

/* TRUST POINTS */
.trust-row{display:flex;gap:32px;margin-top:32px;flex-wrap:wrap}
.trust-pt{display:flex;align-items:center;gap:10px;font-size:13px;font-weight:600;color:var(--text)}
.trust-pt::before{content:'✓';width:22px;height:22px;background:rgba(255,106,0,.15);color:var(--gold);border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:12px;font-weight:800;flex-shrink:0}

/* ─── PROMISE ─── */
.promise-sec{padding-top:0;padding-bottom:104px;background:var(--white)}
.p-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:20px}
.pc{background:var(--bg);border-radius:20px;padding:40px 28px;transition:all .4s;position:relative;overflow:hidden}
.pc::before{content:'';position:absolute;inset:0;background:var(--navy);transform:translateY(100%);transition:transform .4s cubic-bezier(.4,0,.2,1);z-index:0}
.pc:hover::before{transform:translateY(0)}
.pc>*{position:relative;z-index:1}
.pc:hover .pc-num,.pc:hover .pc-title{color:#fff}
.pc:hover .pc-text{color:rgba(255,255,255,.6)}
.pc:hover .pc-icon{background:var(--gold)}
.pc-icon{width:52px;height:52px;border-radius:14px;background:rgba(255,106,0,.1);display:flex;align-items:center;justify-content:center;font-size:24px;margin-bottom:20px;transition:background .3s}
.pc-num{font-size:10px;font-weight:800;letter-spacing:3px;color:var(--muted);margin-bottom:10px;text-transform:uppercase;transition:color .3s}
.pc-title{font-size:16px;font-weight:800;color:var(--text);margin-bottom:8px;letter-spacing:-.3px;transition:color .3s}
.pc-text{font-size:13px;font-weight:300;color:var(--muted);line-height:1.7;transition:color .3s}

/* ─── STATS GOLD ─── */
.stats-bar{background:var(--gold);padding:40px 52px}
.stats-inner{display:grid;grid-template-columns:repeat(4,1fr);max-width:1200px;margin:0 auto;gap:0}
.sb{text-align:center;padding:0 24px;border-right:1px solid rgba(11,37,69,.1)}
.sb:last-child{border-right:none}
.sb-n{font-size:54px;font-weight:900;letter-spacing:-2.5px;color:var(--navy);line-height:1}
.sb-l{font-size:9px;font-weight:700;letter-spacing:2.5px;text-transform:uppercase;color:rgba(11,37,69,.5);margin-top:5px}

/* ─── COMBOS ─── */
.combos-sec{background:var(--bg)}
.combos-head{display:grid;grid-template-columns:1fr 1fr;gap:60px;align-items:end;margin-bottom:56px}
.combos-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}
.cc{background:var(--white);border-radius:22px;overflow:hidden;box-shadow:0 4px 28px rgba(0,0,0,.06);transition:all .4s;position:relative}
.cc:hover{transform:translateY(-10px);box-shadow:0 28px 72px rgba(0,0,0,.13)}
.cc.big{grid-column:span 2}
.cc-img{position:relative;overflow:hidden}
.cc-img img{height:260px;object-fit:cover;transition:transform .7s cubic-bezier(.4,0,.2,1)}
.cc.big .cc-img img{height:300px}
.cc:hover .cc-img img{transform:scale(1.06)}
.cc-badge{position:absolute;top:16px;left:16px;font-size:9px;font-weight:800;letter-spacing:2px;text-transform:uppercase;padding:5px 14px;border-radius:20px;z-index:2}
.cc-badge.gold{background:var(--gold);color:var(--navy)}
.cc-badge.dark{background:var(--text);color:#fff}
.cc-body{padding:26px 28px 30px}
.cc-cat{font-size:9px;font-weight:700;letter-spacing:3px;text-transform:uppercase;color:var(--gold);margin-bottom:6px}
.cc-name{font-size:20px;font-weight:900;letter-spacing:-.5px;color:var(--text);margin-bottom:8px;line-height:1.05}
.cc-desc{font-size:13px;font-weight:300;color:var(--muted);line-height:1.7;margin-bottom:16px}
.cc-chips{display:flex;flex-wrap:wrap;gap:6px;margin-bottom:22px}
.chip{background:var(--bg);color:var(--muted);font-size:10px;font-weight:600;letter-spacing:.5px;padding:5px 12px;border-radius:20px}
.cc-foot{display:flex;align-items:center;justify-content:space-between;padding-top:18px;border-top:1px solid rgba(0,0,0,.06)}
.cc-pfrom{font-size:10px;color:var(--muted);font-weight:500;margin-bottom:2px}
.cc-pval{font-size:28px;font-weight:900;letter-spacing:-1px;color:var(--text);line-height:1}
.cc-pnote{font-size:9px;color:var(--muted);margin-top:1px}
.btn-res{background:var(--text);color:#fff;font-size:10px;font-weight:800;letter-spacing:1.5px;text-transform:uppercase;padding:12px 22px;border-radius:8px;display:inline-flex;align-items:center;gap:7px;transition:all .3s;white-space:nowrap}
.btn-res:hover{background:var(--gold);color:var(--navy);transform:translateY(-1px)}
.combos-more{text-align:center;margin-top:48px}
.btn-full{display:inline-flex;align-items:center;gap:10px;border:1.5px solid rgba(0,0,0,.1);color:var(--muted);font-size:11px;font-weight:700;letter-spacing:2px;text-transform:uppercase;padding:16px 52px;border-radius:8px;transition:all .3s}
.btn-full:hover{border-color:var(--text);color:var(--text)}

/* ─── TESTIMONIALS ─── */
.testi-sec{background:var(--white)}
.testi-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px;margin-top:56px}
.testi-card{background:var(--bg);border-radius:20px;padding:36px 28px;transition:all .35s}
.testi-card:hover{background:var(--navy);transform:translateY(-5px)}
.testi-card:hover .testi-text,.testi-card:hover .testi-name,.testi-card:hover .testi-origin{color:#fff}
.testi-card:hover .testi-country{color:rgba(255,255,255,.4)}
.testi-card:hover .testi-stars{color:var(--gold)}
.testi-stars{color:var(--gold);font-size:15px;margin-bottom:14px;letter-spacing:2px;transition:color .3s}
.testi-text{font-size:14px;font-weight:300;color:var(--muted);line-height:1.75;margin-bottom:20px;font-style:normal;transition:color .3s}
.testi-text::before{content:'"';font-family:'Montserrat',sans-serif;font-size:48px;color:rgba(255,106,0,.2);line-height:0;vertical-align:-20px;margin-right:4px}
.testi-foot{display:flex;align-items:center;gap:12px;padding-top:18px;border-top:1px solid rgba(0,0,0,.06)}
.testi-avatar{width:40px;height:40px;border-radius:50%;background:var(--gold);display:flex;align-items:center;justify-content:center;font-weight:900;font-size:14px;color:var(--navy);flex-shrink:0}
.testi-name{font-size:13px;font-weight:700;color:var(--text);transition:color .3s}
.testi-origin{font-size:11px;color:var(--muted);transition:color .3s}
.testi-country{font-size:18px;transition:color .3s}

/* ─── WHY US ─── */
.why-sec{background:var(--bg)}
.why-grid{display:grid;grid-template-columns:1fr 1fr;gap:96px;align-items:center}
.why-img-stack{position:relative;padding-bottom:32px;padding-right:32px}
.why-frame-deco{position:absolute;top:-16px;left:-16px;right:32px;bottom:32px;border:1.5px solid rgba(255,106,0,.2);border-radius:20px;pointer-events:none}
.why-main{position:relative;z-index:1;height:560px;object-fit:cover;border-radius:20px;box-shadow:0 24px 72px rgba(0,0,0,.1);display:block;width:100%}
.why-badge-gold{position:absolute;top:-16px;left:-16px;z-index:2;background:var(--gold);border-radius:16px;padding:20px 24px;box-shadow:0 12px 40px rgba(255,106,0,.3);animation:float 3s ease-in-out infinite}
@keyframes float{0%,100%{transform:translateY(0)}50%{transform:translateY(-8px)}}
.wbg-n{font-size:30px;font-weight:900;letter-spacing:-1px;color:var(--navy);line-height:1}
.wbg-l{font-size:9px;font-weight:800;letter-spacing:1.5px;text-transform:uppercase;color:rgba(11,37,69,.6);margin-top:3px}
.why-badge-dark{position:absolute;bottom:0;right:0;z-index:2;background:var(--navy);border-radius:16px;padding:20px 24px;box-shadow:0 12px 40px rgba(0,0,0,.2);animation:float 3.5s ease-in-out infinite .5s}
.wbd-n{font-size:30px;font-weight:900;letter-spacing:-1px;color:#fff;line-height:1}
.wbd-l{font-size:9px;font-weight:800;letter-spacing:1.5px;text-transform:uppercase;color:rgba(255,255,255,.4);margin-top:3px}
.why-list{display:flex;flex-direction:column;margin-top:32px}
.wi{display:flex;gap:20px;padding:24px 0;border-bottom:1px solid rgba(0,0,0,.07);transition:all .3s}
.wi:last-child{border-bottom:none}
.wi:hover{padding-left:8px}
.wi-n{min-width:46px;height:46px;border:1.5px solid rgba(0,0,0,.1);border-radius:10px;display:flex;align-items:center;justify-content:center;font-size:14px;font-weight:900;color:var(--muted);transition:all .3s;flex-shrink:0}
.wi:hover .wi-n{border-color:var(--gold);color:var(--gold);background:rgba(255,106,0,.06)}
.wi-title{font-size:15px;font-weight:800;color:var(--text);margin-bottom:4px;letter-spacing:-.3px}
.wi-body{font-size:13px;font-weight:300;color:var(--muted);line-height:1.7}

/* ─── DESTINATIONS GRID ─── */
.dest-sec{background:var(--white)}
.dest-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;margin-top:56px}
.dest-card{border-radius:20px;overflow:hidden;position:relative;height:320px;transition:all .35s}
.dest-card:hover{transform:scale(1.02)}
.dest-card img{width:100%;height:100%;object-fit:cover;transition:transform .7s,filter .5s;filter:brightness(.7) saturate(1.1)}
.dest-card:hover img{transform:scale(1.07);filter:brightness(.45) saturate(1.3)}
.dest-overlay{position:absolute;inset:0;background:linear-gradient(transparent 30%,rgba(6,24,46,.92));display:flex;flex-direction:column;justify-content:flex-end;padding:28px 24px}
.dest-num{font-size:10px;font-weight:800;letter-spacing:3px;text-transform:uppercase;color:var(--gold);margin-bottom:6px}
.dest-name{font-size:22px;font-weight:900;color:#fff;letter-spacing:-.5px;line-height:1}
.dest-sub{font-size:12px;font-weight:300;color:rgba(255,255,255,.55);margin-top:4px}
.dest-card-link{position:absolute;bottom:24px;right:24px;width:40px;height:40px;background:var(--gold);border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:16px;color:var(--navy);opacity:0;transform:scale(.7);transition:all .3s}
.dest-card:hover .dest-card-link{opacity:1;transform:scale(1)}

/* ─── GALLERY FULL ─── */
.gallery-sec{background:var(--dark);overflow:hidden}
.gallery-top{padding:80px 52px 48px}
.gallery-slider{display:flex;height:82vh;min-height:520px;transition:transform .9s cubic-bezier(.4,0,.2,1)}
.gs{min-width:100%;position:relative;overflow:hidden}
.gs img{width:100%;height:100%;object-fit:cover;filter:brightness(.5) saturate(1.1)}
.gs-fade{position:absolute;inset:0;background:linear-gradient(to right,rgba(6,24,46,.88) 0%,transparent 55%)}
.gs-body{position:absolute;top:50%;left:52px;transform:translateY(-50%);max-width:560px}
.gs-num{font-size:120px;font-weight:900;line-height:1;color:rgba(255,255,255,.04);letter-spacing:-5px;margin-bottom:-24px}
.gs-title{font-size:clamp(44px,5.8vw,78px);font-weight:900;letter-spacing:-2.5px;color:#fff;line-height:.9;margin-bottom:14px}
.gs-title em{font-family:'Montserrat',sans-serif;font-style:normal;font-weight:800;color:var(--gold)}
.gs-sub{font-size:11px;font-weight:300;letter-spacing:3px;text-transform:uppercase;color:rgba(255,255,255,.4)}
.gs-nav{position:absolute;bottom:40px;right:52px;display:flex;align-items:center;gap:16px}
.gs-btn{width:52px;height:52px;border:1px solid rgba(255,255,255,.2);background:transparent;color:#fff;font-size:22px;border-radius:50%;display:flex;align-items:center;justify-content:center;transition:all .3s}
.gs-btn:hover{border-color:var(--gold);color:var(--gold)}
.gs-count{font-size:12px;font-weight:500;letter-spacing:2px;color:rgba(255,255,255,.3)}
.gs-count b{color:var(--gold)}
.gs-dots{position:absolute;bottom:48px;left:52px;display:flex;gap:8px}
.gd{width:28px;height:2px;background:rgba(255,255,255,.18);transition:all .35s;border-radius:1px}
.gd.on{background:var(--gold);width:48px}

/* ─── CTA FINAL ─── */
.cta-sec{background:var(--navy);padding:128px 52px;text-align:center;position:relative;overflow:hidden}
.cta-sec::before{content:'';position:absolute;top:-300px;left:50%;transform:translateX(-50%);width:800px;height:800px;border-radius:50%;background:radial-gradient(circle,rgba(255,106,0,.06) 0%,transparent 70%);pointer-events:none}
.cta-sec::after{content:'';position:absolute;bottom:-200px;right:-200px;width:500px;height:500px;border-radius:50%;background:radial-gradient(circle,rgba(255,106,0,.04) 0%,transparent 70%);pointer-events:none}
.cta-inner{position:relative;z-index:2;max-width:780px;margin:0 auto}
.cta-orn{display:flex;align-items:center;gap:16px;justify-content:center;margin-bottom:32px}
.col{flex:1;max-width:80px;height:1px;background:linear-gradient(to right,transparent,rgba(255,106,0,.4))}
.col.r{background:linear-gradient(to left,transparent,rgba(255,106,0,.4))}
.cdia{width:7px;height:7px;background:var(--gold);transform:rotate(45deg)}
.cta-h{font-size:clamp(38px,5.5vw,72px);font-weight:900;letter-spacing:-2.5px;line-height:.92;color:#fff;margin-bottom:20px}
.cta-h em{font-family:'Montserrat',sans-serif;font-style:normal;font-weight:800;color:var(--gold)}
.cta-p{font-size:16px;font-weight:300;color:rgba(255,255,255,.45);line-height:1.85;margin-bottom:48px;max-width:540px;margin-left:auto;margin-right:auto}
.cta-urgency{display:inline-flex;align-items:center;gap:8px;background:rgba(255,106,0,.12);border:1px solid rgba(255,106,0,.3);color:var(--gold);font-size:11px;font-weight:700;letter-spacing:2px;text-transform:uppercase;padding:10px 22px;border-radius:20px;margin-bottom:32px}
.cta-urgency-dot{width:7px;height:7px;border-radius:50%;background:var(--gold);animation:blink 1.2s infinite}
@keyframes blink{0%,100%{opacity:1}50%{opacity:.3}}
.cta-chips{display:flex;gap:12px;justify-content:center;flex-wrap:wrap;margin-top:36px}
.cta-chip{border:1px solid rgba(255,255,255,.08);color:rgba(255,255,255,.4);font-size:11px;font-weight:500;letter-spacing:.5px;padding:10px 20px;border-radius:8px;transition:all .3s}
.cta-chip:hover{border-color:var(--gold);color:var(--gold)}

/* ─── FOOTER ─── */
footer{background:#05080f;padding:72px 52px 36px;border-top:1px solid rgba(255,255,255,.04)}
.f-top{display:grid;grid-template-columns:2fr 1fr 1fr 1fr;gap:64px;max-width:1200px;margin:0 auto;padding-bottom:56px;border-bottom:1px solid rgba(255,255,255,.04)}
.f-brand{font-family:'Montserrat',sans-serif;font-style:normal;font-size:30px;font-weight:900;letter-spacing:1px;color:#fff;line-height:1;margin-bottom:6px}
.f-brand b{font-style:normal;font-family:'Montserrat',sans-serif;font-weight:900;font-size:18px;letter-spacing:3px;display:block;color:var(--gold);margin-bottom:2px}
.f-tag{font-size:9px;font-weight:700;letter-spacing:3px;text-transform:uppercase;color:rgba(255,255,255,.18);margin-bottom:18px}
.f-desc{font-size:12px;font-weight:300;color:rgba(255,255,255,.25);line-height:1.8;max-width:240px}
.fc-title{font-size:9px;font-weight:800;letter-spacing:3px;text-transform:uppercase;color:var(--gold);margin-bottom:20px}
.fc a{display:block;font-size:12px;font-weight:300;color:rgba(255,255,255,.28);margin-bottom:10px;transition:color .2s}
.fc a:hover{color:#fff}
.f-bot{max-width:1200px;margin:0 auto;padding-top:28px;display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:12px}
.f-copy{font-size:10px;color:rgba(255,255,255,.14);letter-spacing:1px}
.f-soc{display:flex;gap:20px}
.f-soc a{font-size:9px;font-weight:700;letter-spacing:2px;text-transform:uppercase;color:rgba(255,255,255,.18);transition:color .2s}
.f-soc a:hover{color:var(--gold)}

/* ─── WA FLOAT ─── */
.wa{position:fixed;bottom:30px;right:30px;z-index:600;width:60px;height:60px;background:var(--wa);border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:26px;box-shadow:0 4px 28px rgba(37,211,102,.4);animation:wap 2.5s infinite}
@keyframes wap{0%,100%{box-shadow:0 4px 28px rgba(37,211,102,.4),0 0 0 0 rgba(37,211,102,.2)}70%{box-shadow:0 4px 28px rgba(37,211,102,.4),0 0 0 18px rgba(37,211,102,0)}}
.wa-tip{position:absolute;right:72px;white-space:nowrap;background:var(--navy);color:#fff;font-size:11px;font-weight:600;padding:8px 14px;border-radius:6px;border:1px solid rgba(255,106,0,.2);opacity:0;pointer-events:none;transition:opacity .25s}
.wa:hover .wa-tip{opacity:1}

/* ─── ANIMATIONS ─── */
@keyframes fu{from{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}
@keyframes su{to{opacity:1;transform:translateY(0)}}
.rv{opacity:0;transform:translateY(40px);transition:opacity .75s ease,transform .75s ease}
.rl{opacity:0;transform:translateX(-44px);transition:opacity .85s ease,transform .85s ease}
.rr{opacity:0;transform:translateX(44px);transition:opacity .85s ease,transform .85s ease}
.rv.on,.rl.on,.rr.on{opacity:1;transform:none}
.sg>*{opacity:0;transform:translateY(26px);transition:opacity .55s ease,transform .55s ease}
.sg.on>*:nth-child(1){opacity:1;transform:none;transition-delay:.04s}
.sg.on>*:nth-child(2){opacity:1;transform:none;transition-delay:.13s}
.sg.on>*:nth-child(3){opacity:1;transform:none;transition-delay:.22s}
.sg.on>*:nth-child(4){opacity:1;transform:none;transition-delay:.31s}
.sg.on>*:nth-child(5){opacity:1;transform:none;transition-delay:.40s}
.sg.on>*:nth-child(6){opacity:1;transform:none;transition-delay:.49s}
.sg.on>*{opacity:1;transform:none}

/* ─── COUNTER ANIMATION ─── */
.count-up{display:inline-block}

/* ─── PROMO BANNER + COUNTDOWN ─── */
.promo-band{background:linear-gradient(110deg,#0B2545 0%,#12325f 55%,#0B2545 100%);position:relative;overflow:hidden;padding:54px 52px}
.promo-band::after{content:"";position:absolute;inset:0;background:radial-gradient(circle at 88% 18%,rgba(255,106,0,.28),transparent 46%),radial-gradient(circle at 6% 92%,rgba(255,106,0,.14),transparent 40%);pointer-events:none}
.promo-inner{max-width:1240px;margin:0 auto;display:flex;align-items:center;justify-content:space-between;gap:36px;flex-wrap:wrap;position:relative;z-index:2}
.promo-left{flex:1;min-width:280px}
.promo-tag{display:inline-flex;align-items:center;gap:8px;background:rgba(255,106,0,.16);border:1px solid rgba(255,106,0,.4);color:var(--gold);font-size:10px;font-weight:800;letter-spacing:2px;text-transform:uppercase;padding:7px 14px;border-radius:50px;margin-bottom:14px}
.promo-tag .pdot{width:7px;height:7px;border-radius:50%;background:var(--gold);animation:blink 1.3s infinite}
@keyframes blink{50%{opacity:.25}}
.promo-h{color:#fff;font-size:clamp(24px,3.4vw,40px);font-weight:900;line-height:1.08;letter-spacing:-.5px}
.promo-h b{color:var(--gold)}
.promo-sub{color:rgba(255,255,255,.7);font-size:14px;margin-top:10px;max-width:520px}
.promo-right{display:flex;flex-direction:column;align-items:center;gap:16px}
.cd{display:flex;gap:10px}
.cd-box{background:rgba(255,255,255,.06);border:1px solid rgba(255,255,255,.14);border-radius:12px;width:74px;height:78px;display:flex;flex-direction:column;align-items:center;justify-content:center;backdrop-filter:blur(6px)}
.cd-box b{font-size:32px;font-weight:900;color:#fff;line-height:1;font-variant-numeric:tabular-nums}
.cd-box span{font-size:9px;letter-spacing:1.5px;text-transform:uppercase;color:rgba(255,255,255,.45);margin-top:6px}
.cd-sep{color:var(--gold);font-size:30px;font-weight:900;align-self:center;margin-top:-14px}
.promo-cta{background:var(--gold);color:var(--navy);font-weight:800;font-size:12px;letter-spacing:1.5px;text-transform:uppercase;padding:16px 36px;border-radius:6px;transition:.3s;box-shadow:0 14px 34px rgba(255,106,0,.35)}
.promo-cta:hover{background:#fff;transform:translateY(-2px)}
/* mini countdown chip (para traslados) */
.mini-cd{display:inline-flex;align-items:center;gap:8px;background:rgba(255,106,0,.14);border:1px solid rgba(255,106,0,.4);color:var(--gold);font-weight:800;font-size:12px;letter-spacing:1px;padding:8px 16px;border-radius:50px}
.mini-cd b{font-variant-numeric:tabular-nums;color:#fff}

/* ─── TRASLADOS ─── */
.tr-sec{padding:96px 52px;background:var(--navy);position:relative;overflow:hidden}
.tr-sec::before{content:"";position:absolute;inset:0;background:radial-gradient(circle at 90% 10%,rgba(255,106,0,.12),transparent 45%)}
.tr-wrap{max-width:1240px;margin:0 auto;position:relative;z-index:2}
.tr-head{max-width:680px;margin-bottom:50px}
.tr-head .kicker-t{color:rgba(255,255,255,.5)}
.tr-h{color:#fff;font-size:clamp(30px,4.4vw,52px);font-weight:900;line-height:1.05;letter-spacing:-1px}
.tr-h em{color:var(--gold);font-style:normal;font-weight:900}
.tr-p{color:rgba(255,255,255,.7);font-size:15px;margin-top:16px;line-height:1.8}
.tr-grid{display:grid;grid-template-columns:1.05fr .95fr;gap:44px;align-items:start}
.tr-types{display:grid;grid-template-columns:1fr 1fr;gap:14px;margin-bottom:24px}
.tr-card{background:rgba(255,255,255,.05);border:1px solid rgba(255,255,255,.1);border-radius:14px;padding:20px;transition:.25s}
.tr-card:hover{background:rgba(255,255,255,.09);transform:translateY(-3px);border-color:rgba(255,106,0,.4)}
.tr-ic{font-size:26px;margin-bottom:10px;display:block}
.tr-card h4{color:#fff;font-size:15px;font-weight:700;margin-bottom:5px}
.tr-card p{color:rgba(255,255,255,.55);font-size:12.5px;line-height:1.5}
.tr-photo{border-radius:16px;overflow:hidden;border:1px solid rgba(255,255,255,.12);position:relative}
.tr-photo img{width:100%;height:230px;object-fit:cover;display:block}
.tr-photo .tr-photo-tag{position:absolute;left:14px;bottom:14px;background:rgba(11,37,69,.82);backdrop-filter:blur(4px);color:#fff;font-size:11px;font-weight:700;letter-spacing:.5px;padding:8px 14px;border-radius:8px;border:1px solid rgba(255,106,0,.4)}
/* form */
.tr-form{background:#fff;border-radius:18px;padding:30px;box-shadow:0 30px 70px rgba(0,0,0,.3)}
.tr-form h3{font-size:21px;font-weight:900;color:var(--navy);margin-bottom:4px;letter-spacing:-.3px}
.tr-form .tf-sub{color:var(--muted);font-size:12.5px;margin-bottom:20px}
.tf-row{display:grid;grid-template-columns:1fr 1fr;gap:12px}
.tf{margin-bottom:12px}
.tf label{display:block;font-size:10px;font-weight:800;letter-spacing:1px;text-transform:uppercase;color:var(--navy);margin-bottom:6px}
.tf input,.tf select,.tf textarea{width:100%;padding:12px 14px;border:1.5px solid rgba(11,37,69,.14);border-radius:9px;font-family:'Montserrat',sans-serif;font-size:14px;color:var(--text);background:#f7f6f3;transition:.2s}
.tf input:focus,.tf select:focus,.tf textarea:focus{outline:none;border-color:var(--gold);background:#fff;box-shadow:0 0 0 3px rgba(255,106,0,.15)}
.tf textarea{resize:vertical;min-height:60px}
.tf-btn{width:100%;margin-top:6px;background:var(--wa);color:#fff;border:none;font-family:'Montserrat',sans-serif;font-weight:800;font-size:13px;letter-spacing:1px;text-transform:uppercase;padding:16px;border-radius:8px;cursor:pointer;transition:.3s;display:flex;align-items:center;justify-content:center;gap:8px}
.tf-btn:hover{background:#1da851;transform:translateY(-2px)}
.tf-note{text-align:center;font-size:11px;color:var(--muted);margin-top:10px}

/* ─── SOCIAL PROOF TOAST ─── */
.sp-toast{position:fixed;left:18px;bottom:18px;z-index:600;display:flex;align-items:center;gap:13px;background:#fff;border:1px solid rgba(11,37,69,.1);border-radius:14px;padding:13px 16px 13px 13px;box-shadow:0 18px 50px rgba(11,37,69,.22);max-width:330px;transform:translateY(140%);opacity:0;transition:transform .5s cubic-bezier(.2,.9,.3,1.3),opacity .5s}
.sp-toast.show{transform:translateY(0);opacity:1}
.sp-av{width:44px;height:44px;border-radius:11px;flex:none;display:grid;place-items:center;font-weight:800;color:#fff;font-size:15px;background:linear-gradient(135deg,var(--navy),#1a3a6b)}
.sp-body{flex:1;min-width:0}
.sp-name{font-size:13px;font-weight:800;color:var(--text);line-height:1.2}
.sp-name span{color:var(--muted);font-weight:600}
.sp-item{font-size:12px;color:var(--navy);font-weight:700;margin-top:2px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.sp-meta{font-size:10.5px;color:var(--muted);margin-top:3px;display:flex;align-items:center;gap:6px}
.sp-meta .sp-ver{color:var(--wa);font-weight:800}
.sp-close{position:absolute;top:8px;right:10px;border:none;background:none;color:#c2c8d0;font-size:15px;cursor:pointer;line-height:1}
.sp-close:hover{color:var(--navy)}

@media(max-width:1024px){
  .promo-band{padding:44px 24px}
  .tr-sec{padding:72px 24px}
  .tr-grid{grid-template-columns:1fr;gap:32px}
}
@media(max-width:600px){
  .promo-inner{flex-direction:column;align-items:flex-start;gap:24px}
  .cd-box{width:62px;height:68px}.cd-box b{font-size:26px}
  .tr-types{grid-template-columns:1fr}
  .tf-row{grid-template-columns:1fr}
  .sp-toast{left:10px;right:10px;max-width:none;bottom:84px}
}

/* ===== HERO CINEMÁTICO (video full-bleed) ===== */
.hero{display:flex;flex-direction:column;justify-content:center;min-height:100vh;padding:120px 52px 90px;background:var(--dark);grid-template-columns:none;gap:0;color:#fff}
.hero::before{display:none}
.hero-media{position:absolute;inset:0;z-index:0;overflow:hidden}
.hero-media video,.hero-media img{width:100%;height:100%;object-fit:cover;display:block}
.hero-scrim{position:absolute;inset:0;background:linear-gradient(90deg,rgba(6,24,46,.95) 0%,rgba(6,24,46,.8) 32%,rgba(6,24,46,.34) 64%,rgba(6,24,46,.66) 100%),linear-gradient(0deg,rgba(6,24,46,.9) 0%,transparent 34%)}
.hero-content{position:relative;z-index:2;max-width:1240px;margin:0 auto;width:100%}
.hero-kicker{margin-bottom:22px}
.kicker-text{color:rgba(255,255,255,.78)}
.hero-h1{font-size:clamp(44px,7vw,100px);font-weight:900;line-height:.92;letter-spacing:-1.5px;text-transform:uppercase;color:#fff;margin-bottom:22px;text-shadow:0 12px 44px rgba(0,0,0,.45)}
.hero-h1 .w{display:block}
.hero-h1 .w:nth-child(3){color:var(--gold)}
.hero-desc{color:rgba(255,255,255,.85);font-size:16px;font-weight:300;max-width:540px;margin-bottom:34px}
.hero-desc strong{color:#fff;font-weight:700}
.hero-cta{background:var(--gold);color:var(--navy);font-weight:800;font-size:13px;letter-spacing:1.5px;text-transform:uppercase;padding:14px 14px 14px 30px;border-radius:50px;display:inline-flex;align-items:center;gap:16px;box-shadow:0 18px 44px rgba(255,106,0,.42);transition:.3s}
.hero-cta:hover{background:#fff;transform:translateY(-2px)}
.hero-cta .cta-arrow{display:grid;place-items:center;width:36px;height:36px;border-radius:50%;background:var(--navy);color:var(--gold);font-size:17px;transition:.3s}
.hero-cta:hover .cta-arrow{transform:translateX(3px)}
.btn-sec.light{border-color:rgba(255,255,255,.45);color:#fff}
.btn-sec.light:hover{border-color:#fff;background:rgba(255,255,255,.1);color:#fff}
.hero-stats{border-top-color:rgba(255,255,255,.2);margin-top:46px}
.hero .hs-n{color:#fff}
.hero .hs-l{color:rgba(255,255,255,.62)}
.hero-scroll{position:absolute;left:50%;bottom:22px;transform:translateX(-50%);z-index:2;color:rgba(255,255,255,.6);font-size:9px;letter-spacing:2.5px;text-transform:uppercase;display:flex;flex-direction:column;align-items:center;gap:9px;animation:fu .7s 1.6s both}
.hero-scroll i{width:1px;height:32px;background:rgba(255,255,255,.5);position:relative;overflow:hidden}
.hero-scroll i::after{content:"";position:absolute;top:0;left:0;width:100%;height:40%;background:var(--gold);animation:scrolldn 1.8s infinite}
@keyframes scrolldn{0%{top:-40%}100%{top:100%}}

/* nav legible sobre el hero */
nav:not(.solid) .logo-main{color:#fff}
nav:not(.solid) .nav-links a{color:rgba(255,255,255,.85)}
nav:not(.solid) .nav-links a:hover{color:#fff}
nav:not(.solid) .nav-ig{color:rgba(255,255,255,.72)}
nav:not(.solid) .nav-ig:hover{color:#fff}
nav:not(.solid) .nav-btn{background:var(--gold);color:var(--navy)}
nav:not(.solid) .nav-btn:hover{background:#fff}

/* ===== WHATSAPP MENSAJE EMERGENTE ===== */
.wa{display:none!important}
.wa-wrap{position:fixed;right:20px;bottom:20px;z-index:700;display:flex;flex-direction:column;align-items:flex-end;gap:14px}
.wa-fab{position:relative;width:62px;height:62px;border-radius:50%;border:none;cursor:pointer;background:linear-gradient(135deg,#25D366,#1da851);color:#fff;display:grid;place-items:center;box-shadow:0 14px 34px rgba(37,211,102,.5);transition:transform .25s}
.wa-fab:hover{transform:scale(1.07)}
.wa-fab svg{width:34px;height:34px}
.wa-fab::before{content:"";position:absolute;inset:0;border-radius:50%;animation:waPulse 2.2s infinite;pointer-events:none}
@keyframes waPulse{0%{box-shadow:0 0 0 0 rgba(37,211,102,.5)}70%{box-shadow:0 0 0 16px rgba(37,211,102,0)}100%{box-shadow:0 0 0 0 rgba(37,211,102,0)}}
.wa-badge{position:absolute;top:-3px;right:-3px;min-width:22px;height:22px;padding:0 5px;border-radius:11px;background:#ff3b30;color:#fff;font-size:12px;font-weight:800;display:grid;place-items:center;border:2px solid #fff;box-shadow:0 2px 8px rgba(0,0,0,.3)}
.wa-badge.hide{display:none}
.wa-pop{width:312px;max-width:80vw;background:#fff;border-radius:18px;box-shadow:0 26px 64px rgba(0,0,0,.3);overflow:hidden;transform:translateY(18px) scale(.9);transform-origin:bottom right;opacity:0;pointer-events:none;transition:transform .38s cubic-bezier(.2,.9,.3,1.35),opacity .3s}
.wa-pop.show{transform:none;opacity:1;pointer-events:auto}
.wa-pop-head{background:#075E54;padding:13px 16px;display:flex;align-items:center;gap:11px;position:relative}
.wa-pop-av{width:40px;height:40px;border-radius:50%;background:var(--gold);color:var(--navy);font-weight:900;font-size:14px;display:grid;place-items:center;flex:none}
.wa-pop-name{color:#fff;font-weight:700;font-size:13.5px;line-height:1.2}
.wa-pop-status{color:rgba(255,255,255,.82);font-size:11px;display:flex;align-items:center;gap:6px;margin-top:2px}
.wa-pop-status span{width:7px;height:7px;border-radius:50%;background:#25D366}
.wa-pop-x{position:absolute;top:9px;right:12px;background:none;border:none;color:rgba(255,255,255,.85);font-size:19px;cursor:pointer;line-height:1}
.wa-pop-body{background:#ECE5DD;background-image:radial-gradient(rgba(0,0,0,.03) 1px,transparent 1px);background-size:14px 14px;padding:16px}
.wa-pop-msg{background:#fff;border-radius:4px 14px 14px 14px;padding:11px 13px;box-shadow:0 1px 2px rgba(0,0,0,.12);position:relative;min-height:20px}
.wa-text{font-size:13px;color:#222;line-height:1.5;opacity:0;transition:opacity .3s}
.wa-pop-msg.ready .wa-text{opacity:1}
.wa-pop-time{font-size:9px;color:#9aa;text-align:right;margin-top:4px;opacity:0;transition:opacity .3s}
.wa-pop-msg.ready .wa-pop-time{opacity:1}
.wa-typing{display:flex;gap:4px;align-items:center;height:18px}
.wa-pop-msg.ready .wa-typing{display:none}
.wa-typing i{width:7px;height:7px;border-radius:50%;background:#b8c0c4;animation:waDot 1.2s infinite}
.wa-typing i:nth-child(2){animation-delay:.2s}.wa-typing i:nth-child(3){animation-delay:.4s}
@keyframes waDot{0%,60%,100%{transform:translateY(0);opacity:.5}30%{transform:translateY(-5px);opacity:1}}
.wa-pop-btn{display:flex;align-items:center;justify-content:center;gap:8px;margin-top:12px;background:#25D366;color:#fff;font-weight:800;font-size:12px;letter-spacing:.5px;padding:13px;border-radius:24px;transition:.25s}
.wa-pop-btn:hover{background:#1da851}

@media(max-width:600px){
  .hero{padding:104px 22px 80px}
  .hero-scroll{display:none}
  .wa-wrap{right:14px;bottom:14px}
}

/* ─── RESPONSIVE ─── */
@media(max-width:1024px){
  nav,.sec,.cta-sec,footer,.gallery-top,.about-sec,.promise-sec,.dest-sec,.why-sec,.testi-sec{padding-left:24px;padding-right:24px}
  .hero{grid-template-columns:1fr;padding-top:100px;gap:40px;min-height:auto}
  .hero-right{display:none}
  .hero-h1{font-size:clamp(52px,11vw,80px)}
  .about-grid,.combos-head,.why-grid,.f-top{grid-template-columns:1fr;gap:40px}
  .p-grid,.combos-grid,.testi-grid,.dest-grid{grid-template-columns:1fr 1fr}
  .cc.big{grid-column:span 1}
  .stats-inner{grid-template-columns:repeat(2,1fr)}
  .nav-links{display:none}
  .gs-body{left:24px}
  .gs-nav,.gs-dots{left:24px;right:24px}
}
@media(max-width:600px){
  .p-grid,.combos-grid,.testi-grid,.dest-grid{grid-template-columns:1fr}
  .stats-inner{grid-template-columns:repeat(2,1fr)}
  .hero-btns{flex-direction:column;align-items:flex-start}
  .hero-stats{flex-wrap:wrap;gap:24px}
}

/* ===== PALETA VENTAS · azul + naranja + rojo ===== */
:root{--grad-cta:linear-gradient(135deg,#ff8a1a 0%,#ff3b2e 65%,#e2231a 100%)}
.hero-cta,.promo-cta,.nav-btn,.btn-primary,.btn-res{background:var(--grad-cta)!important;color:#fff!important;border:none!important}
.hero-cta:hover,.promo-cta:hover,.nav-btn:hover,.btn-primary:hover,.btn-res:hover{filter:brightness(1.07);color:#fff!important}
.hero-cta{box-shadow:0 18px 44px rgba(226,35,26,.42)!important}
.hero-cta .cta-arrow{background:#fff;color:#e2231a}
nav:not(.solid) .nav-btn{background:var(--grad-cta)!important;color:#fff!important}
.cc-badge.gold{background:var(--grad-cta)!important;color:#fff!important}
.btn-primary::after{display:none}
/* urgencia en ROJO */
.promo-tag{background:rgba(226,35,26,.16);border-color:rgba(226,35,26,.5);color:#ff6a5e}
.promo-tag .pdot{background:#ff3b30}
.cta-urgency-dot{background:#ff3b30!important}
.mini-cd{background:rgba(226,35,26,.14);border-color:rgba(226,35,26,.45);color:#ff7d72}
.sp-meta .sp-ver{color:#e2231a}
.testi-stars{color:#ff8a1a}
/* AZUL vivo en acentos suaves */
.kicker-d,.kicker-dot{background:var(--blue)!important}
.qbtn .ic,.tl-item .ic{background:linear-gradient(135deg,var(--blue),#0b3a73)!important}
.ec::before{background:linear-gradient(180deg,#ff8a1a,#e2231a)!important}
.cat-item::before{background:linear-gradient(180deg,#ff8a1a,#e2231a)!important}
.lc-plus{background:var(--grad-cta)!important;color:#fff!important}
.step .num{background:linear-gradient(135deg,#ff8a1a,#e2231a)!important}
.sb-n,.hs-n{}
/* ===== APARTA TU COMBO (anticipo $5-$10) ===== */
.dep-band{padding:70px 52px;background:var(--bg)}
.dep-card{max-width:1240px;margin:0 auto;background:linear-gradient(120deg,#0b3a73,#0a4ea3);border-radius:22px;padding:42px;color:#fff;display:grid;grid-template-columns:1.05fr 1fr;gap:40px;align-items:center;position:relative;overflow:hidden;box-shadow:0 26px 60px rgba(11,58,115,.32)}
.dep-card::after{content:"";position:absolute;right:-70px;top:-70px;width:280px;height:280px;border-radius:50%;background:radial-gradient(circle,rgba(255,106,0,.5),transparent 70%);pointer-events:none}
.dep-l{position:relative;z-index:2}
.dep-pill{display:inline-flex;align-items:center;gap:8px;background:var(--grad-cta);color:#fff;font-weight:800;font-size:11px;letter-spacing:1.5px;text-transform:uppercase;padding:9px 16px;border-radius:50px;margin-bottom:16px}
.dep-h{font-size:clamp(24px,3.2vw,38px);font-weight:900;line-height:1.1;letter-spacing:-.5px}
.dep-h b{color:#ffb066}
.dep-p{color:rgba(255,255,255,.85);font-size:14.5px;margin-top:14px;max-width:520px;line-height:1.7}
.dep-p b{color:#fff}
.dep-cta{display:inline-flex;align-items:center;gap:10px;margin-top:22px;background:#fff;color:#0b3a73;font-weight:800;font-size:12px;letter-spacing:1px;text-transform:uppercase;padding:16px 30px;border-radius:50px;transition:.3s}
.dep-cta:hover{background:var(--gold);color:#fff;transform:translateY(-2px)}
.dep-steps{position:relative;z-index:2;display:flex;flex-direction:column;gap:13px}
.dep-step{display:flex;gap:14px;align-items:flex-start;background:rgba(255,255,255,.09);border:1px solid rgba(255,255,255,.15);border-radius:14px;padding:16px 18px}
.dep-num{width:34px;height:34px;border-radius:50%;background:var(--grad-cta);color:#fff;font-weight:900;display:grid;place-items:center;flex:none;font-size:15px}
.dep-step h5{font-size:14px;font-weight:700;margin-bottom:3px}
.dep-step p{font-size:12.5px;color:rgba(255,255,255,.72);line-height:1.5}
@media(max-width:1024px){.dep-band{padding:56px 24px}.dep-card{grid-template-columns:1fr;gap:26px;padding:30px}}
/* ===== SELECTOR PRECIO por persona / pareja ===== */
.price-toggle-wrap{display:flex;flex-direction:column;gap:9px;margin-bottom:18px}
.price-toggle{display:inline-flex;background:#fff;border:1.5px solid rgba(11,37,69,.14);border-radius:50px;padding:5px;gap:4px;box-shadow:0 8px 24px rgba(11,58,115,.1);width:max-content}
.pt-opt{border:none;background:none;font-family:'Montserrat',sans-serif;font-weight:800;font-size:11px;letter-spacing:1px;text-transform:uppercase;padding:11px 22px;border-radius:50px;cursor:pointer;color:var(--muted);transition:.25s}
.pt-opt.active{background:var(--grad-cta);color:#fff;box-shadow:0 6px 16px rgba(226,35,26,.32)}
.pt-cap{font-size:11.5px;color:var(--muted);font-weight:600;letter-spacing:.2px}
.lc-pricewrap{display:flex;align-items:baseline;gap:5px}
.lc-unit{font-size:11px;color:var(--muted);font-weight:600}
@media(max-width:600px){.price-toggle{width:100%}.pt-opt{flex:1;text-align:center;padding:11px 8px}}
/* ===== LOGO ===== */
.logo{display:flex;align-items:center;gap:11px;flex-direction:row;text-decoration:none}
.logo-img{height:42px;width:auto;display:block;filter:drop-shadow(0 2px 6px rgba(0,0,0,.25))}
.logo-tx{display:flex;flex-direction:column;line-height:1.1}
.logo-main,.logo-sub{white-space:nowrap}
.f-logo{height:62px;width:auto;margin-bottom:14px;display:block}
.wa-pop-av{background:#eaf3ff!important;overflow:hidden;padding:0}
.wa-pop-av img{width:34px;height:34px;object-fit:contain}
@media(max-width:600px){.logo-img{height:40px}}
/* ===== SELECTOR DE IDIOMAS ===== */
.lang-wrap{position:relative}
.lang-btn{display:inline-flex;align-items:center;gap:7px;background:rgba(11,37,69,.06);border:1px solid rgba(11,37,69,.1);border-radius:50px;padding:8px 13px;cursor:pointer;font-family:'Montserrat',sans-serif;font-weight:700;font-size:12px;color:var(--text);transition:.2s}
.lang-btn:hover{background:rgba(11,37,69,.1)}
.lang-flag{font-size:15px;line-height:1}
.lang-caret{font-size:9px;opacity:.6}
.lang-menu{position:absolute;top:calc(100% + 10px);right:0;background:#fff;border:1px solid rgba(11,37,69,.1);border-radius:14px;box-shadow:0 20px 50px rgba(11,37,69,.2);padding:6px;display:none;flex-direction:column;gap:2px;min-width:190px;max-height:360px;overflow:auto;z-index:120}
.lang-menu.show{display:flex}
.lang-opt{display:flex;align-items:center;gap:10px;border:none;background:none;text-align:left;padding:10px 12px;border-radius:9px;cursor:pointer;font-family:'Montserrat',sans-serif;font-weight:600;font-size:13px;color:var(--text);transition:.15s;white-space:nowrap}
.lang-opt:hover{background:var(--bg)}
nav:not(.solid) .lang-btn{background:rgba(255,255,255,.16);border-color:rgba(255,255,255,.32);color:#fff}
nav:not(.solid) .lang-btn:hover{background:rgba(255,255,255,.28)}
/* ocultar barra/tooltip de Google Translate */
.goog-te-banner-frame,.skiptranslate{display:none!important}
body{top:0!important}
#goog-gt-tt,.goog-te-balloon-frame{display:none!important}
font font{background:none!important;box-shadow:none!important}
/* ===== MODAL DETALLE DE PRODUCTO ===== */
.cc,.ec{cursor:pointer}
.pm{position:fixed;inset:0;z-index:950;display:flex;align-items:center;justify-content:center;padding:20px;background:rgba(6,24,46,.75);backdrop-filter:blur(6px);opacity:0;pointer-events:none;transition:opacity .3s}
.pm.show{opacity:1;pointer-events:auto}
.pm-card{position:relative;width:760px;max-width:96vw;max-height:92vh;overflow:auto;background:#fff;border-radius:22px;box-shadow:0 40px 100px rgba(0,0,0,.5);transform:translateY(24px) scale(.96);transition:transform .4s cubic-bezier(.2,.9,.3,1.3)}
.pm.show .pm-card{transform:none}
.pm-x{position:absolute;top:14px;right:14px;z-index:5;width:38px;height:38px;border-radius:50%;border:none;background:rgba(0,0,0,.45);color:#fff;font-size:20px;cursor:pointer;backdrop-filter:blur(4px)}
.pm-x:hover{background:rgba(0,0,0,.65)}
.pm-hero{position:relative;height:260px}
.pm-hero img{width:100%;height:100%;object-fit:cover;display:block}
.pm-hero-grad{position:absolute;inset:0;background:linear-gradient(180deg,transparent 28%,rgba(6,24,46,.92) 100%)}
.pm-hero-tx{position:absolute;left:28px;bottom:22px;right:28px;color:#fff}
.pm-type{display:inline-block;background:var(--grad-cta);color:#fff;font-size:10px;font-weight:800;letter-spacing:1.5px;text-transform:uppercase;padding:6px 13px;border-radius:50px;margin-bottom:10px}
.pm-title{font-size:clamp(24px,3.4vw,34px);font-weight:900;line-height:1.05;letter-spacing:-.5px;text-shadow:0 4px 18px rgba(0,0,0,.45)}
.pm-body{display:grid;grid-template-columns:1.5fr 1fr;gap:28px;padding:28px}
.pm-desc{color:var(--text);font-size:15px;line-height:1.7;margin-bottom:22px}
.pm-inc-title{font-size:11px;font-weight:800;letter-spacing:1.5px;text-transform:uppercase;color:var(--navy);margin-bottom:12px}
.pm-chips{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:22px}
.pm-meta{display:flex;flex-direction:column;gap:8px}
.pm-mi{font-size:13px;color:var(--muted);font-weight:600}
.pm-side{background:var(--bg);border-radius:16px;padding:22px;align-self:start;position:sticky;top:0}
.pm-price-label{font-size:11px;font-weight:700;letter-spacing:1px;text-transform:uppercase;color:var(--muted)}
.pm-price{font-size:40px;font-weight:900;color:var(--navy);line-height:1;margin:6px 0}
.pm-price-note{font-size:12px;color:var(--muted);margin-bottom:18px}
.pm-cta{display:flex;align-items:center;justify-content:center;gap:9px;background:var(--wa);color:#fff;font-weight:800;font-size:14px;padding:15px;border-radius:50px;transition:.25s;box-shadow:0 12px 30px rgba(37,211,102,.35)}
.pm-cta:hover{background:#1da851;transform:translateY(-2px)}
.pm-trust{font-size:12px;color:var(--muted);font-weight:600;margin-top:12px;display:flex;gap:7px;align-items:flex-start}
@media(max-width:680px){.pm-body{grid-template-columns:1fr;gap:20px;padding:20px}.pm-hero{height:200px}.pm-side{position:static}}
/* ===== MODAL OFERTA 5% ===== */
.offer-modal{position:fixed;inset:0;z-index:900;display:flex;align-items:center;justify-content:center;padding:20px;background:rgba(6,24,46,.72);backdrop-filter:blur(6px);opacity:0;pointer-events:none;transition:opacity .35s}
.offer-modal.show{opacity:1;pointer-events:auto}
.offer-card{position:relative;width:520px;max-width:94vw;border-radius:22px;overflow:hidden;box-shadow:0 40px 100px rgba(0,0,0,.55);transform:translateY(26px) scale(.95);transition:transform .42s cubic-bezier(.2,.9,.3,1.3)}
.offer-modal.show .offer-card{transform:none}
.offer-bg{position:absolute;inset:0;z-index:0}
.offer-bg img{width:100%;height:100%;object-fit:cover;display:none}
.offer-bg img.on{display:block}
.offer-bg::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(6,24,46,.5) 0%,rgba(6,24,46,.84) 58%,rgba(6,24,46,.96) 100%)}
.offer-content{position:relative;z-index:2;padding:44px 34px 32px;text-align:center;color:#fff}
.offer-x{position:absolute;top:14px;right:16px;z-index:3;width:34px;height:34px;border-radius:50%;border:none;background:rgba(255,255,255,.18);color:#fff;font-size:19px;cursor:pointer;backdrop-filter:blur(4px)}
.offer-x:hover{background:rgba(255,255,255,.32)}
.offer-badge{display:inline-flex;align-items:center;gap:8px;background:var(--grad-cta);color:#fff;font-weight:800;font-size:11px;letter-spacing:1.5px;text-transform:uppercase;padding:9px 18px;border-radius:50px;margin-bottom:14px}
.offer-disc{font-size:66px;font-weight:900;line-height:1;color:#fff;margin:6px 0 2px;text-shadow:0 6px 24px rgba(0,0,0,.45)}
.offer-disc small{font-size:22px;vertical-align:super;color:#ffb066;margin-left:4px}
.offer-title{font-size:clamp(22px,3.4vw,30px);font-weight:900;line-height:1.12;letter-spacing:-.4px}
.offer-title span{color:#ffb066}
.offer-sub{color:rgba(255,255,255,.9);font-size:14.5px;max-width:390px;margin:14px auto 22px;line-height:1.6}
.offer-sub b{color:#ffb066}
.offer-cta{display:inline-flex;align-items:center;justify-content:center;gap:10px;width:100%;background:var(--grad-cta);color:#fff;font-weight:800;font-size:14px;letter-spacing:.5px;padding:17px;border-radius:50px;box-shadow:0 16px 40px rgba(226,35,26,.42);transition:.3s}
.offer-cta:hover{filter:brightness(1.07);transform:translateY(-2px)}
.offer-dismiss{display:block;margin:14px auto 0;background:none;border:none;color:rgba(255,255,255,.62);font-size:12px;font-weight:600;cursor:pointer;text-decoration:underline}
.offer-dismiss:hover{color:#fff}
