:root{
  --blue:#0757a8; --deep:#073d80; --cyan:#08a8df; --yellow:#f7b817; --ink:#12365d;
}
*{box-sizing:border-box} body{font-family:'Montserrat',sans-serif;color:#12365d;background:#fff}
.site-header{position:sticky;top:0;z-index:1000;box-shadow:0 2px 15px rgba(0,0,0,.08)}
.brand-logo{height:54px;width:auto;object-fit:contain}.navbar{min-height:72px}.nav-link{font-size:.86rem;font-weight:600;color:#12365d!important}.nav-link:hover,.nav-link.active{color:#0b74c9!important}
.btn-primary{background:linear-gradient(135deg,#0757a8,#0b8ed2);border:0}.btn-primary:hover{filter:brightness(.95)}
.hero{position:relative;min-height:510px;overflow:hidden;color:#fff;background:#078bd0}.hero-bg{position:absolute;inset:0;background:linear-gradient(90deg,rgba(0,70,140,.98) 0%,rgba(0,99,170,.78) 35%,rgba(0,125,195,.22) 65%,rgba(0,0,0,.05)),url('/images/hero_cancun.jpg') center right/cover no-repeat}.hero-copy{padding:68px 0 65px;max-width:620px}.eyebrow{letter-spacing:4px;font-weight:600;font-size:.9rem;opacity:.9;margin-bottom:8px}.eyebrow.blue{color:#0757a8;opacity:1}.hero h1{font-size:4.2rem;line-height:.95;font-weight:800;margin:0}.hero h2{font-size:2.4rem;color:#ffd02d;font-weight:800;margin:8px 0 22px}.hero-features{display:flex;gap:32px;margin-bottom:25px}.hero-features span{font-size:.85rem;font-weight:600}.hero-features i{color:#ffd02d;font-size:1.7rem;display:block;margin-bottom:4px}.price-pill{display:inline-block;background:#ffc21c;color:#0a4382;border-radius:40px;padding:10px 28px;font-size:1.9rem;font-weight:800;margin-bottom:10px}.price-pill small{font-size:.75rem;letter-spacing:.5px}.hero-btn{display:block;width:370px;max-width:100%;border:2px solid #fff;border-radius:35px!important;font-weight:700;background:#0757a8;padding:12px 25px}.how h2,.destinations h2{font-weight:800;color:#083e79}.section-subtitle{color:#6a7785}.step{height:100%;padding:8px}.step-icon{width:65px;height:65px;margin:0 auto 15px;border-radius:50%;background:#eff8ff;border:1px solid #d8ebfb;display:flex;align-items:center;justify-content:center;font-size:1.6rem;color:#0757a8}.step b{font-size:.9rem;display:block}.step p{font-size:.78rem;color:#6d7784;margin-top:8px}.destinations{background:linear-gradient(135deg,#0c5a9e,#0c86c5);color:#fff}.destinations h2{color:#fff}.destination-card{background:#fff;border-radius:13px;overflow:hidden;color:#12365d;box-shadow:0 10px 25px rgba(0,0,0,.08);position:relative}.destination-card img{width:100%;height:130px;object-fit:cover}.destination-card h5,.destination-card h4{font-weight:800;margin-bottom:2px}.active-card{border:2px solid #20a7df}.trust-strip{background:#06458a;color:#fff;padding:23px 0}.trust-strip i{font-size:1.8rem;margin-right:10px;vertical-align:middle}.trust-strip b,.trust-strip span{display:block}.trust-strip b{display:inline;font-size:.9rem}.trust-strip span{font-size:.72rem;opacity:.8;margin-top:4px}.footer{background:#052f63;color:#fff}.footer a{color:#fff;text-decoration:none;opacity:.85}.page-heading{max-width:780px}.page-heading h1{font-size:3rem;font-weight:800;color:#073f7d}.info-card,.stat-card{background:#fff;border:1px solid #e5eef7;border-radius:16px;padding:25px;box-shadow:0 8px 25px rgba(0,48,96,.05);height:100%}.info-card span{font-size:2rem;font-weight:800;color:#0b8ed2}.content-page{max-width:950px}.detail-image{width:100%;height:480px;object-fit:cover;border-radius:20px;box-shadow:0 15px 35px rgba(0,0,0,.12)}.feature-list div{padding:10px 0;font-weight:600}.feature-list i{color:#0b8ed2;margin-right:10px}.price-box{background:#f1f8ff;border-radius:15px;padding:15px 20px;display:flex;justify-content:space-between;align-items:center}.price-box b{font-size:1.8rem;color:#0757a8}.selection-bar{position:sticky;top:72px;z-index:10;background:#fff;border:1px solid #dbeaf6;border-radius:12px;padding:15px 20px;display:flex;justify-content:space-between;box-shadow:0 5px 18px rgba(0,0,0,.07)}.number-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(65px,1fr));gap:7px}.number-btn{border:1px solid #cfe1f1;background:#fff;border-radius:8px;padding:9px 2px;color:#0757a8;font-weight:600}.number-btn:hover{background:#eaf6ff}.number-btn.selected{background:#0757a8;color:#fff;border-color:#0757a8}.number-btn.disabled{background:#edf0f3;color:#9aa5ae;text-decoration:line-through;cursor:not-allowed}.confirmation-card{max-width:650px;margin:auto;text-align:center;padding:45px 30px;border-radius:20px;box-shadow:0 15px 45px rgba(0,0,0,.08);border:1px solid #e6eef5}.success-icon{width:80px;height:80px;border-radius:50%;margin:0 auto 20px;background:#e9f8ef;color:#1b9b4a;display:flex;align-items:center;justify-content:center;font-size:2.5rem}.receipt{text-align:left;margin-top:25px;border:1px dashed #b8cad8;border-radius:12px;padding:20px}.receipt div{display:flex;justify-content:space-between;border-bottom:1px solid #edf1f4;padding:9px 0}.receipt div:last-child{border:0}.auth-wrap{min-height:70vh;background:linear-gradient(135deg,#eff8ff,#fff);display:flex;align-items:center;justify-content:center;padding:50px 15px}.auth-card{width:430px;background:#fff;padding:35px;border-radius:20px;box-shadow:0 15px 50px rgba(0,55,110,.1);text-align:center}.auth-logo{max-width:240px;max-height:85px;object-fit:contain;margin-bottom:15px}.auth-card form{text-align:left}.demo-login{font-size:.75rem;background:#fff7d6;border-radius:8px;padding:8px}.stat-card span{display:block;color:#708090;font-size:.8rem}.stat-card b{font-size:2rem;color:#0757a8}.empty-box{padding:50px;text-align:center;border:2px dashed #dbe8f2;border-radius:15px;color:#708090}
@media(max-width:991px){.hero h1{font-size:3.2rem}.hero h2{font-size:1.8rem}.navbar-collapse{padding:15px 0}.detail-image{height:350px}.hero-copy{padding-left:15px}}



#formularioCompra {
    display: none;
    animation: aparecer 0.5s ease;
}

@keyframes aparecer {
    from {
        opacity: 0;
        transform: translateY(20px);
    }

    to {
        opacity: 1;
        transform: translateY(0);
    }
}