/* ── Portal: navegación superior, buscador y verticales ───────────────── */
.navbar{background:#0a2f42;position:relative;z-index:50;border-bottom:1px solid #ffffff14}
.navbar .wrap{display:flex;align-items:center;gap:26px;padding:10px 22px;flex-wrap:wrap}
.navbar .logo{font-size:19px;white-space:nowrap}
.menu-v{display:flex;gap:4px;flex-wrap:wrap;margin-left:auto}
.menu-v a{color:#cfe4ea;font-size:14.5px;font-weight:600;padding:9px 13px;border-radius:9px;display:flex;align-items:center;gap:7px}
.menu-v a:hover{background:#ffffff14;color:#fff;text-decoration:none}
.menu-v a.act{background:#12b3a8;color:#04211d}
.menu-v a.act:hover{background:#12b3a8;color:#04211d}
.idiomas{display:flex;gap:2px;margin-left:8px}
.idiomas a{font-size:12.5px;font-weight:800;color:#9fc3cd;padding:6px 8px;border-radius:6px}
.idiomas a.act{background:#ffffff1f;color:#fff}

/* buscador tipo portal */
.buscador{background:linear-gradient(180deg,#0a2f42,#083b52);padding:38px 0 34px;border-bottom:1px solid #ffffff12}
.buscador h1{color:#fff;font-size:clamp(26px,3.6vw,40px);letter-spacing:-1px;line-height:1.1}
.buscador p{color:#b9d7e0;margin-top:10px;font-size:17px}
.tabs{display:flex;gap:6px;margin:22px 0 0}
.tabs a{background:#ffffff14;color:#dcecef;font-size:14px;font-weight:700;padding:10px 16px;border-radius:11px 11px 0 0}
.tabs a.act{background:#fff;color:#0a2f42}
.tabs a:hover{text-decoration:none;background:#ffffff22}
.form-buscar{background:#fff;border-radius:0 14px 14px 14px;padding:14px;display:flex;gap:10px;flex-wrap:wrap;align-items:flex-end}
.form-buscar .campo{flex:1 1 170px;min-width:150px}
.form-buscar label{display:block;font-size:11.5px;text-transform:uppercase;letter-spacing:.06em;color:#6b7c86;font-weight:800;margin-bottom:5px}
.form-buscar input,.form-buscar select{width:100%;border:1px solid #d8d2c7;border-radius:9px;padding:11px 12px;font:15px system-ui;color:#16242c;background:#fff}
.form-buscar button{border:0;background:#12b3a8;color:#04211d;font-weight:900;font-size:16px;padding:13px 24px;border-radius:10px;cursor:pointer;white-space:nowrap}
.form-buscar button:hover{filter:brightness(1.06)}

/* tarjetas de vertical */
.verticales{display:grid;gap:16px;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));margin-top:22px}
.vert{position:relative;border-radius:16px;overflow:hidden;min-height:196px;display:flex;align-items:flex-end;color:#fff;background:#0a2f42}
.vert img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;opacity:.62}
.vert::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(4,20,28,.1),rgba(4,20,28,.85))}
.vert .txt{position:relative;z-index:2;padding:16px 18px}
.vert strong{display:block;font-size:18px;letter-spacing:-.3px;line-height:1.2;margin-bottom:3px}
.vert span{font-size:13px;color:#c9e3ea;line-height:1.3}
.vert:hover{text-decoration:none}
.vert:hover img{opacity:.75;transform:scale(1.03);transition:.4s}

/* confianza */
.trust{display:flex;flex-wrap:wrap;gap:26px;justify-content:space-between;background:#f4f8f7;border:1px solid #dcebe8;border-radius:16px;padding:20px 24px;margin-top:34px}
.trust div{font-size:14.5px;color:#2b4a52;max-width:300px}
.trust b{display:block;color:#0a2f42;font-size:16px;margin-bottom:3px}
@media(max-width:820px){.menu-v{width:100%;margin-left:0;overflow-x:auto;flex-wrap:nowrap}.navbar .wrap{gap:12px}}

/* ── Buscador tipo Booking ───────────────────────────────────────────── */
.sb{background:#ffb700;padding:8px;border-radius:14px;display:flex;gap:8px;flex-wrap:wrap;align-items:stretch;box-shadow:0 10px 30px rgba(0,0,0,.18)}
.sb .caja{background:#fff;border-radius:9px;padding:8px 12px;display:flex;flex-direction:column;justify-content:center;min-width:130px;position:relative;border:2px solid transparent}
.sb .caja:focus-within{border-color:#0a6ee0}
.sb .caja label{font-size:11px;font-weight:800;letter-spacing:.04em;text-transform:uppercase;color:#6b7c86;margin-bottom:2px}
.sb .caja input,.sb .caja select{border:0;outline:0;font:15.5px system-ui;color:#16242c;background:transparent;width:100%;padding:2px 0}
.sb .destino{flex:2 1 260px}
.sb .fechas{flex:2 1 300px;display:flex;gap:8px;cursor:pointer}
.sb .fechas>div{flex:1;display:flex;flex-direction:column;justify-content:center}
.sb .fechas input{border:0;background:transparent;font:15px system-ui;color:#16242c;outline:0;width:100%}
.sb .ocup{flex:1 1 190px;cursor:pointer;user-select:none}
.sb .ocup .valor{font-size:15.5px;color:#16242c}
.sb .btn-buscar{flex:0 0 auto;background:#0071c2;color:#fff;border:0;border-radius:9px;padding:0 30px;font-size:18px;font-weight:800;cursor:pointer;min-height:56px}
.sb .btn-buscar:hover{background:#005999}
.pop{position:absolute;top:calc(100% + 8px);left:0;background:#fff;border:1px solid #dce3e8;border-radius:12px;box-shadow:0 20px 44px rgba(0,0,0,.18);padding:14px;min-width:260px;z-index:80;display:none}
.pop.abierto{display:block}
.pop .fila{display:flex;align-items:center;justify-content:space-between;padding:9px 0;border-bottom:1px solid #f0f3f5}
.pop .fila:last-of-type{border-bottom:0}
.pop .fila span{font-size:14.5px;color:#16242c}
.pop .cont{display:flex;align-items:center;gap:10px}
.pop button{width:32px;height:32px;border-radius:8px;border:1px solid #cfd8dd;background:#fff;font-size:18px;font-weight:800;color:#0071c2;cursor:pointer;line-height:1}
.pop button:disabled{opacity:.35;cursor:default}
.pop .n{min-width:18px;text-align:center;font-weight:800}
.pop .ok{width:100%;margin-top:10px;background:#0071c2;color:#fff;border:0;border-radius:8px;padding:9px;font-weight:800;cursor:pointer}
.sb .nota{flex:1 1 100%;color:#5d4a00;font-size:12.5px;padding:6px 6px 0}
@media(max-width:720px){.sb{flex-direction:column}.sb .btn-buscar{min-height:50px;padding:14px}}
