
:root{
  --c1: #0b3d91;
  --c2: #d4af37;
  --bg:#08101a;
  --glass: rgba(255,255,255,0.06);
  --muted:#8b93a0;
}
*{box-sizing:border-box;margin:0;padding:0}
body{font-family:Inter, system-ui, -apple-system, 'Segoe UI', Roboto, Arial; background:var(--bg); color:#e9f3ff; -webkit-font-smoothing:antialiased; -moz-osx-font-smoothing:grayscale;}
.container{width:92%;max-width:1100px;margin:0 auto}

/* Header */
.site-header{position:fixed;left:0;right:0;top:0;z-index:80;padding:14px 0;background:linear-gradient(90deg, rgba(0,0,0,0.25), transparent);backdrop-filter:blur(6px);}
.header-inner{display:flex;align-items:center;justify-content:space-between}
.logo{display:flex;align-items:center;gap:10px;cursor:pointer}
.logo-icon{width:36px;height:36px;color:var(--c1);filter:drop-shadow(0 6px 18px rgba(0,0,0,0.6))}
.brand{font-weight:800;color:#fff}
.nav .nav-link{margin-right:12px;color:var(--muted);text-decoration:none;position:relative;padding:6px 8px;border-radius:6px}
.nav .nav-link:after{content:'';position:absolute;left:8px;right:8px;bottom:0;height:2px;background:linear-gradient(90deg,var(--c1),var(--c2));transform:scaleX(0);transform-origin:left;transition:transform .28s ease}
.nav .nav-link:hover{color:#fff}
.nav .nav-link:hover:after{transform:scaleX(1)}

/* Neon button */
.btn{display:inline-block;padding:10px 16px;border-radius:10px;text-decoration:none;font-weight:700;cursor:pointer;transition:transform .12s ease, box-shadow .18s ease}
.btn.small{padding:8px 12px;font-size:0.95rem}
.btn.primary{background:linear-gradient(90deg,var(--c1),var(--c2));box-shadow:0 8px 28px rgba(0,0,0,0.4), 0 0 18px 3px rgba(0,0,0,0.06);color:#021; color:#fff}
.btn.outline{background:transparent;border:2px solid rgba(255,255,255,0.06);color:#fff;box-shadow:0 6px 18px rgba(0,0,0,0.25)}
.btn.neon{background:linear-gradient(90deg,var(--c2),var(--c1));box-shadow:0 8px 40px rgba(0,0,0,0.35), 0 0 22px 2px rgba(255,255,255,0.02);color:#fff;animation:neonPulse 3s infinite alternate}

/* hero */
.hero{min-height:72vh;display:flex;align-items:center;position:relative;background-position:center;background-size:cover;background-attachment:fixed;overflow:hidden;border-bottom-left-radius:40px;border-bottom-right-radius:40px}
.neon-bg{position:absolute;inset:-20% -20%;background:radial-gradient(circle at 10% 10%, rgba(255,255,255,0.03), transparent 10%), linear-gradient(120deg,var(--c1), var(--c2));opacity:0.09;mix-blend-mode:screen;filter:blur(80px);transform:translateZ(0)}
.hero .overlay{position:absolute;inset:0;background:linear-gradient(180deg, rgba(2,6,23,0.35), rgba(2,6,23,0.6));}
.hero-inner{position:relative;z-index:3;padding:110px 0;text-align:center}
.hero-title{font-size:2.2rem;line-height:1.02;text-shadow:0 10px 30px rgba(0,0,0,0.6);display:inline-block;padding:6px 12px;border-radius:8px;background:linear-gradient(90deg, rgba(255,255,255,0.02), rgba(255,255,255,0.01));backdrop-filter:blur(4px)}
.subtitle{opacity:0.95;margin:12px 0 18px}

/* benefits */
.benefits{display:flex;gap:18px;justify-content:space-between;margin-top:22px;padding:18px;background:linear-gradient(90deg, rgba(255,255,255,0.02), rgba(255,255,255,0.01));border-radius:12px}
.benefit{flex:1;padding:12px;text-align:center;background:rgba(255,255,255,0.02);border-radius:10px;box-shadow:0 8px 40px rgba(2,6,23,0.25);color:#e7f6ff}

/* reviews */
.reviews{margin-top:30px;padding:26px 0}
.reviews h2{margin-bottom:12px;color:#fff}
.review-list{display:flex;gap:14px;flex-wrap:wrap}
.review{flex:1 1 30%;background:linear-gradient(180deg, rgba(255,255,255,0.02), rgba(255,255,255,0.01));padding:14px;border-radius:12px;box-shadow:0 14px 40px rgba(2,6,23,0.4);color:#fff}

/* destinos */
.destinos{margin-top:20px;padding:18px 0}
.destinos h2{color:#fff;margin-bottom:12px}
.cards{display:flex;gap:18px;flex-wrap:wrap}
.card{flex:1 1 30%;background:linear-gradient(180deg, rgba(255,255,255,0.01), rgba(255,255,255,0.02));border-radius:14px;overflow:hidden;box-shadow:0 20px 60px rgba(0,0,0,0.45);transition:transform .22s ease, box-shadow .22s ease}
.card:hover{transform:translateY(-10px);box-shadow:0 30px 90px rgba(0,0,0,0.6);}
.card-img{height:160px;background-position:center;background-size:cover;filter:contrast(1.02) saturate(1.05)}
.card-body{padding:14px;background:linear-gradient(180deg, rgba(255,255,255,0.02), rgba(255,255,255,0.01))}
.card-body h4{margin-bottom:6px;color:#fff}
.card-body p{color:var(--muted);margin-bottom:12px}

/* cta small centered */
.cta-small{margin:28px 0;padding:28px;border-radius:14px;display:flex;justify-content:center}
.cotizar-card{width:100%;max-width:760px;padding:24px;border-radius:12px;background:linear-gradient(90deg, rgba(255,255,255,0.02), rgba(255,255,255,0.01));box-shadow:0 30px 80px rgba(0,0,0,0.5);text-align:center}
.cotizar-card h3{font-size:1.6rem;margin-bottom:6px}
.cotizar-card p{margin-bottom:12px;color:var(--muted)}

/* modal */
.modal{position:fixed;inset:0;display:none;align-items:center;justify-content:center;z-index:150}
.modal.open{display:flex}
.modal-backdrop{position:absolute;inset:0;background:rgba(2,6,23,0.6);backdrop-filter:blur(4px)}
.modal-card{position:relative;background:linear-gradient(180deg, rgba(255,255,255,0.02), rgba(255,255,255,0.01));padding:20px;border-radius:12px;width:92%;max-width:520px;box-shadow:0 40px 120px rgba(0,0,0,0.7);transform:translateY(-20px);animation:modalIn .36s ease forwards}
.modal-close{position:absolute;right:12px;top:8px;background:transparent;border:none;color:#fff;font-size:1.6rem;cursor:pointer}
.modal-card h3{margin-bottom:12px}
.modal-card form label{display:block;margin-bottom:10px;color:#e6f7ff}
.modal-card input, .modal-card select{width:100%;padding:10px;border-radius:8px;border:1px solid rgba(255,255,255,0.06);background:transparent;color:#fff;margin-top:6px}
.form-actions{margin-top:12px;text-align:right}
.sent-success{display:none;margin-top:12px;padding:12px;border-radius:8px;background:linear-gradient(90deg,var(--c1),var(--c2));color:#021;font-weight:700}

/* footer */
.site-footer{padding:18px 0;text-align:center;color:var(--muted);margin-top:28px}

/* animations */
@keyframes neonPulse{0%{box-shadow:0 8px 30px rgba(0,0,0,0.3),0 0 18px rgba(255,255,255,0.02)}100%{box-shadow:0 12px 60px rgba(0,0,0,0.35),0 0 40px rgba(255,255,255,0.04)}}
@keyframes modalIn{from{opacity:0;transform:translateY(-20px)}to{opacity:1;transform:none}}

/* responsive */
@media(max-width:900px){.cards{flex-direction:column}.review{flex:1 1 100%}.hero-inner{padding:80px 0}.hero{background-attachment:scroll} .nav .nav-link{display:none}}
