.hotel-header{background:#18372c;color:#fff;position:relative;z-index:30}
.hotel-nav{max-width:1600px;margin:auto;padding:20px 4%;display:flex;justify-content:space-between;align-items:flex-start;gap:24px}
.hotel-logo{display:block;flex-shrink:0;width:190px}
.hotel-logo img{display:block;width:100%;height:auto;border-radius:5px}
.hotel-nav-actions{display:flex;align-items:center;gap:28px;padding-top:12px;font-weight:600}
.hotel-reservar{padding:12px 18px;border:1px solid #ffffff90;border-radius:6px;text-decoration:none}
.hotel-contacto{position:relative}
.hotel-contacto summary{list-style:none;padding:12px 0;cursor:pointer;display:flex;gap:10px;align-items:center}
.hotel-contacto summary::-webkit-details-marker{display:none}
.hotel-contacto[open] summary span{transform:rotate(180deg)}
.hotel-contacto-panel{position:absolute;right:0;top:calc(100% + 14px);background:white;color:#374151;padding:26px;border-radius:10px;box-shadow:0 16px 48px #0003;width:350px;display:grid;grid-template-columns:1fr auto;gap:16px;font-weight:400}
.hotel-contacto-panel strong{white-space:nowrap}.hotel-contacto-panel small{grid-column:1/-1;border-top:1px solid #ddd;padding-top:12px;color:#6b7280}
.pagina-inicio .hotel-header{position:absolute;top:0;left:0;right:0;background:linear-gradient(#071713a8,transparent)}
.hotel-hero{min-height:800px;min-height:max(800px,100svh);position:relative;isolation:isolate;display:flex;flex-direction:column;justify-content:center;background:linear-gradient(135deg,#193f38,#677c58);overflow:hidden}
.hotel-video{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center;z-index:-3}
.hotel-hero-sombra{position:absolute;inset:0;background:linear-gradient(180deg,#06140f55 0%,#06140f20 30%,#06140f50 65%,#06140f99 100%);z-index:-2}
.hotel-hero-texto{color:white;text-align:center;padding:200px 24px 100px;text-shadow:0 2px 20px #0006;margin:auto 0}
.hotel-eyebrow{text-transform:uppercase;letter-spacing:.22em;font-size:12px;margin-bottom:22px}
.hotel-hero-texto h1{font-family:Georgia,serif;font-weight:400;font-size:clamp(54px,7vw,108px);line-height:1.04;letter-spacing:-.035em;margin:0 0 24px}
.hotel-hero-texto>p:last-child{font-size:18px;letter-spacing:.025em}
.hotel-buscador{width:92%;max-width:1440px;margin:0 auto 40px;color:#18372c;scroll-margin-top:24px}
.hotel-video-control{position:absolute;right:4%;bottom:220px;border:1px solid #ffffff90;border-radius:30px;background:#10251d88;color:white;padding:9px 16px;font-size:12px;cursor:pointer}
.hotel-video-control[hidden]{display:none}
@media(max-width:640px){.hotel-nav{padding:16px;gap:12px;align-items:center}.hotel-logo{width:125px}.hotel-nav-actions{gap:8px;flex-direction:column;align-items:flex-end;padding:0;font-size:12px}.hotel-reservar{padding:9px}.hotel-contacto summary{padding:6px}.hotel-contacto-panel{width:min(330px,calc(100vw - 32px));padding:20px;gap:12px;font-size:13px}.hotel-hero{min-height:100svh}.hotel-hero-texto{padding:170px 20px 90px}.hotel-eyebrow{font-size:10px;letter-spacing:.14em}.hotel-hero-texto>p:last-child{font-size:15px}.hotel-buscador{width:calc(100% - 32px);margin-bottom:20px}.hotel-video-control{position:relative;bottom:auto;right:auto;align-self:flex-end;margin:-55px 16px 20px}.hotel-buscador form{padding:20px;gap:14px}}
@media(prefers-reduced-motion:reduce){.hotel-video{opacity:0}.hotel-video.reproduccion-manual{opacity:1}}

/* Mantiene el teléfono dentro del panel y reserva una fila completa para el correo. */
.hotel-contacto-panel{box-sizing:border-box;max-width:calc(100vw - 32px);grid-template-columns:minmax(0,1fr) auto}
.hotel-contacto-panel>span{min-width:0;overflow-wrap:anywhere}
.hotel-contacto-panel>strong{justify-self:end}
.hotel-contacto-panel>a{grid-column:1/-1;min-width:0;overflow-wrap:anywhere;white-space:normal}
@media(max-width:360px){.hotel-contacto-panel{grid-template-columns:minmax(0,1fr)}.hotel-contacto-panel>strong{justify-self:start;white-space:normal;overflow-wrap:anywhere}}

/* Apila el contacto en filas propias para evitar desbordes con zoom o textos largos. */
.hotel-contacto .hotel-contacto-panel{display:flex;flex-direction:column;align-items:stretch;gap:12px;width:350px;max-width:calc(100vw - 32px);box-sizing:border-box}
.hotel-contacto .hotel-contacto-panel>strong{display:block;align-self:flex-start;max-width:100%;white-space:normal;overflow-wrap:anywhere;font-size:1.125rem;line-height:1.4}
.hotel-contacto .hotel-contacto-panel>a{display:block;max-width:100%;overflow-wrap:anywhere;white-space:normal}

/* Permite que el nuevo nombre de Experiencias se acomode en cabeceras intermedias. */
.hotel-nav-actions{flex-wrap:wrap;justify-content:flex-end;min-width:0}.hotel-nav-actions>a{max-width:100%}

/* Mantiene los canales legibles y el acceso de IA visible sin bloquear el contenido al final. */
.canal-contacto,.hotel-contacto .hotel-contacto-panel>a.canal-contacto{display:flex;align-items:center;gap:10px;text-decoration:none;margin:8px 0}.canal-contacto svg{flex-shrink:0}.canal-contacto span{overflow-wrap:anywhere;min-width:0}.canal-contacto:hover{text-decoration:underline}
.whatsapp-flotante{position:fixed;right:max(20px,env(safe-area-inset-right));bottom:max(20px,env(safe-area-inset-bottom));z-index:80;display:flex;align-items:center;gap:12px;text-decoration:none;max-width:calc(100vw - 32px)}
.whatsapp-callout{background:#fff;color:#18372c;padding:12px 16px;border:1px solid #18372c20;border-radius:16px;box-shadow:0 5px 24px #0002;font-size:14px;line-height:1.45}
.whatsapp-circulo{position:relative;display:flex;align-items:center;justify-content:center;width:60px;height:60px;flex-shrink:0;border-radius:50%;background:#128c4a;color:white;box-shadow:0 5px 20px #0003}.whatsapp-circulo>svg{width:34px;height:34px}.whatsapp-robot{position:absolute;right:-3px;top:-8px;background:white;border-radius:50%;padding:3px;font-size:17px;line-height:1.2}.whatsapp-flotante:hover .whatsapp-circulo{background:#096c36}
footer{padding-bottom:125px!important}
@media(max-width:480px){.whatsapp-flotante{right:16px;bottom:max(16px,env(safe-area-inset-bottom));gap:8px}.whatsapp-callout{font-size:12px;padding:9px 12px}.whatsapp-circulo{width:52px;height:52px}}

/* Centra el buscador debajo del hero y permite el desborde de su contenedor exterior. */
.hotel-buscador{flex-shrink:0;position:relative;min-width:0}.hh-buscador{display:block;max-width:100%;box-sizing:border-box}
@media(max-width:640px){.hotel-buscador{min-height:360px}.hh-buscador{height:360px!important}}

.buscador-seccion{overflow:visible;padding-top:32px}.buscador-seccion .hotel-buscador{overflow:visible}.hh-buscador{min-height:280px}
