/* HOSTAL BRUÑA · diseño a medida (cabecera, Home y pie propios, y retoques generales).
   Se carga la última: manda sobre el tema base. Colores y fuentes en marca.css. */

/* ---------- General ---------- */
body { background: var(--fondo); }
h1, h2, h3, .titulo-seccion, .hb-titulo { font-family: var(--fuente-titulos); font-weight: 600; letter-spacing: -.01em; }
.etiqueta, .hb-etiqueta { color: var(--acento-texto); letter-spacing: .14em; }
.boton { border-radius: 999px; gap: 8px; }
.boton--primario { background: var(--acento); color: var(--sobre-acento); }
.boton--primario:hover { background: var(--acento-hover); color: var(--sobre-acento); }
.boton .icono { flex-shrink: 0; }
.hb-boton-claro { background: transparent; color: var(--blanco); border: 1.5px solid color-mix(in srgb, var(--blanco) 65%, transparent); }
.hb-boton-claro:hover { background: color-mix(in srgb, var(--blanco) 14%, transparent); color: var(--blanco); }
.hb-boton-contorno { background: transparent; color: var(--principal); border: 1.5px solid var(--principal); }
.hb-boton-contorno:hover { background: var(--principal); color: var(--blanco); }
.hb-boton-pequeno { min-height: 40px; padding: 8px 18px; font-size: 14.5px; }
.enlace-flecha { color: var(--principal); }

/* ---------- Cabecera ---------- */
.hb-cabecera { background: color-mix(in srgb, var(--blanco) 96%, transparent); backdrop-filter: blur(8px); border-bottom-color: var(--borde-2); }
.hb-cabecera .cabecera__dentro { gap: 20px; padding-top: 10px; padding-bottom: 10px; }
.hb-cabecera .logo__img { height: 58px; }
.hb-cabecera .menu-principal { gap: 24px; font-size: 15px; }
.hb-cabecera .menu-principal > li.current-menu-item > a { box-shadow: inset 0 -2px 0 var(--acento); }
.hb-cabecera__acciones { display: flex; align-items: center; gap: 14px; flex-shrink: 0; }
.hb-cabecera__tel { display: inline-flex; align-items: center; gap: 6px; color: var(--principal); font-weight: 600; font-size: 15px; text-decoration: none; white-space: nowrap; }
.hb-cabecera__tel:hover { color: var(--acento-texto); }
.hb-cabecera .cabecera__cta { min-height: 46px; padding: 10px 22px; }
.hb-cabecera__idiomas-movil { display: none; }
.idiomas { font-size: 14px; }
.idiomas select { min-height: 38px; border: 1px solid var(--borde); border-radius: 999px; padding: 4px 10px; background: var(--blanco); font: inherit; color: var(--carbon); }
.hb-cabecera .sub-menu, .hb-cabecera .mega { border-top-color: var(--acento); }

@media (max-width: 1240px) {
	.hb-cabecera__tel span { display: none; }
	.hb-cabecera .menu-principal { gap: 18px; }
}
@media (max-width: 1100px) {
	.hb-cabecera__acciones { margin-left: auto; }
	.hb-cabecera__idiomas { display: none; }
	.hb-cabecera__idiomas-movil { display: block; margin-top: 14px; }
	.hb-cabecera .cabecera__menu { border-radius: 999px; }
}
@media (max-width: 760px) {
	.hb-cabecera .logo__img { height: 46px; }
	.hb-cabecera__tel { display: none; }
}

/* ---------- Portada ---------- */
.hb-portada { position: relative; min-height: min(78vh, 720px); display: flex; align-items: flex-end; color: var(--blanco); background: var(--principal-oscuro); overflow: hidden; }
.hb-portada__foto, .hb-portada__foto .hb-portada__media { position: absolute; inset: 0; width: 100%; height: 100%; margin: 0; border-radius: 0; aspect-ratio: auto; }
.hb-portada__foto img { width: 100%; height: 100%; object-fit: cover; }
.hb-portada__foto::after { content: ""; position: absolute; inset: 0; background: linear-gradient(180deg, rgba(28, 25, 64, .15) 0%, rgba(28, 25, 64, .35) 45%, rgba(28, 25, 64, .88) 100%); }
.hb-portada__dentro { position: relative; z-index: 1; padding-top: 140px; padding-bottom: 120px; max-width: var(--ancho); }
.hb-portada__etiqueta { margin: 0 0 14px; font-size: 13px; font-weight: 600; letter-spacing: .2em; text-transform: uppercase; color: var(--acento-claro); }
.hb-portada__titulo { margin: 0 0 18px; max-width: 820px; color: var(--blanco); font-weight: 600; }
.hb-portada__marca { display: block; font-size: clamp(48px, 7.6vw, 96px); line-height: 1; letter-spacing: -.01em; }
.hb-portada__lema { display: block; margin-top: 12px; font-size: clamp(22px, 2.8vw, 34px); line-height: 1.2; font-weight: 500; font-style: italic; color: var(--acento-claro); text-wrap: balance; }
.hb-portada__entradilla { max-width: 600px; margin: 0 0 28px; font-size: clamp(16.5px, 1.6vw, 19px); line-height: 1.6; color: rgba(255, 255, 255, .9); }
/* Slider: las fotos se funden; la activa queda encima */
.hb-portada--slider .hb-portada__foto { opacity: 0; transition: opacity 1.2s ease; }
.hb-portada--slider .hb-portada__foto.is-activa { opacity: 1; }
.hb-portada--slider .hb-portada__foto.is-activa img { animation: hb-zoom 7s ease-out both; }
@keyframes hb-zoom { from { transform: scale(1.06); } to { transform: scale(1); } }
.hb-portada__puntos { position: absolute; z-index: 2; right: max(24px, calc((100% - var(--ancho)) / 2 + 24px)); bottom: 96px; display: flex; align-items: center; gap: 10px; }
.hb-portada__punto { width: 34px; height: 4px; padding: 0; border: 0; border-radius: 4px; background: rgba(255, 255, 255, .45); cursor: pointer; }
.hb-portada__punto.is-activa { background: var(--acento-claro); }
.hb-portada__punto:focus-visible, .hb-portada__pausa:focus-visible { outline: 2px solid var(--blanco); outline-offset: 3px; }
.hb-portada__pausa { width: 30px; height: 30px; margin-left: 6px; border: 1px solid rgba(255, 255, 255, .5); border-radius: 50%; background: rgba(28, 25, 64, .35); cursor: pointer; display: grid; place-items: center; }
.hb-portada__pausa span { width: 8px; height: 10px; border-left: 2.5px solid var(--blanco); border-right: 2.5px solid var(--blanco); }
.hb-portada.is-pausado .hb-portada__pausa span { width: 0; height: 0; border: 0; border-left: 9px solid var(--blanco); border-top: 6px solid transparent; border-bottom: 6px solid transparent; margin-left: 3px; }
@media (prefers-reduced-motion: reduce) {
	.hb-portada--slider .hb-portada__foto { transition: none; }
	.hb-portada--slider .hb-portada__foto.is-activa img { animation: none; }
}
.hb-portada .media__etiqueta { position: absolute; right: 24px; top: 24px; z-index: 2; }

/* Barra superior: dirección, recepción, teléfono, email, Facebook e idioma */
.hb-barra { background: var(--principal-oscuro); border-bottom: 0; font-size: 13px; }
.hb-barra .barra-superior__dentro { align-items: center; padding-top: 7px; padding-bottom: 7px; }
.hb-barra .icono { color: var(--acento-claro); }
.hb-barra__idiomas { padding-left: 16px; border-left: 1px solid rgba(255, 255, 255, .2); }
.hb-barra .idiomas { display: flex; align-items: center; gap: 6px; }
.hb-barra .idiomas::before { content: ""; width: 15px; height: 15px; flex: none; background: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23E6CFA6' stroke-width='1.8'%3E%3Ccircle cx='12' cy='12' r='9'/%3E%3Cpath d='M3 12h18M12 3a14 14 0 010 18M12 3a14 14 0 000 18'/%3E%3C/svg%3E") center / contain no-repeat; }
.hb-barra .idiomas select { -webkit-appearance: none; appearance: none; min-height: 0; background: transparent url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23FAF7F2' stroke-width='2.4'%3E%3Cpath d='M6 9l6 6 6-6'/%3E%3C/svg%3E") right 2px center / 11px no-repeat; color: var(--fondo); border: 0; border-radius: 0; padding: 2px 18px 2px 0; font-size: 13px; font-weight: 500; cursor: pointer; field-sizing: content; }
.hb-barra .idiomas select:focus-visible { outline: 2px solid var(--acento-claro); outline-offset: 3px; }
.hb-barra .idiomas option { color: var(--carbon); }
.hb-cabecera .logo__img { width: auto; }
@media (max-width: 1100px) { .hb-barra__extra { display: none !important; } }
@media (max-width: 760px) {
	.hb-barra { display: block; }
	.hb-barra .barra-superior__dentro { justify-content: center; gap: 4px 16px; font-size: 12.5px; }
}

/* El motor flota sobre el final de la portada */
.hb-motor.seccion--motor-home { margin-top: -64px; }
.motor { border: 0; }
.motor .motor__promo { background: var(--principal); color: var(--blanco); }
.motor .motor__antetitulo { font-family: var(--fuente-titulos); font-weight: 600; font-size: 1.5rem; }
.motor .motor__destacado { color: var(--acento-claro); font-family: var(--fuente-titulos); font-weight: 700; font-size: 2.1rem; }
.motor .motor__condicion { color: var(--blanco); }
.motor .motor__pie { color: var(--texto-sobre-principal); }
.motor .motor__titulo { font-family: var(--fuente-titulos); font-weight: 600; font-size: 1.3rem; color: var(--principal); }
.motor .motor__titulo .icono { color: var(--acento-texto); }
.motor__codigo input[type="submit"], .motor__codigo button { border-radius: 999px; background: var(--acento); color: var(--sobre-acento); }
.motor__codigo input[type="submit"]:hover, .motor__codigo button:hover { background: var(--acento-hover); }

/* ---------- Secciones ---------- */
.hb-seccion { padding: 88px 0; }
.hb-etiqueta { margin: 0 0 10px; font-size: 12.5px; font-weight: 700; text-transform: uppercase; }
.hb-titulo { margin: 0 0 16px; font-size: clamp(30px, 3.6vw, 46px); line-height: 1.1; color: var(--carbon); text-wrap: balance; }
.hb-subtitulo { margin: 56px 0 20px; font-size: 26px; color: var(--carbon); }
.hb-cabeza { max-width: 720px; margin-bottom: 40px; }
.hb-cabeza p:last-child { margin: 0; color: var(--texto-2); font-size: 17px; line-height: 1.6; }
.hb-cabeza--fila { max-width: none; display: flex; justify-content: space-between; align-items: end; gap: 16px 32px; flex-wrap: wrap; }

/* Bienvenida */
.hb-bienvenida { padding-top: 64px; }
.hb-bienvenida__dentro { display: grid; grid-template-columns: 1fr 1.05fr; gap: 64px; align-items: center; }
.hb-bienvenida__texto { font-size: 18px; line-height: 1.7; color: var(--texto-2); margin: 0 0 20px; }
.hb-datos { list-style: none; margin: 0; padding: 0; display: grid; grid-template-columns: 1fr 1fr; gap: 16px; }
.hb-datos li { display: flex; flex-direction: column; gap: 4px; padding: 22px; background: var(--blanco); border: 1px solid var(--borde-2); border-radius: var(--radio-grande); }
.hb-datos strong { font-family: var(--fuente-titulos); font-size: 19px; font-weight: 600; color: var(--carbon); }
.hb-datos span:last-child { font-size: 14.5px; color: var(--texto-3); }
.hb-datos__icono { display: inline-flex; width: 48px; height: 48px; margin-bottom: 8px; align-items: center; justify-content: center; border-radius: 50%; background: var(--fondo-claro); color: var(--acento-texto); }

/* Habitaciones */
.hb-habitaciones { background: var(--blanco); }
.hb-habitaciones__lista { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 28px; }
.hb-habitacion { display: flex; flex-direction: column; background: var(--fondo); border-radius: var(--radio-grande); overflow: hidden; transition: box-shadow .2s, transform .2s; }
.hb-habitacion:hover { box-shadow: var(--sombra); transform: translateY(-3px); }
.hb-habitacion__foto { position: relative; display: block; }
.hb-habitacion__foto .hb-habitacion__media { aspect-ratio: 4 / 3; border-radius: 0; margin: 0; }
.hb-habitacion__foto img { width: 100%; height: 100%; object-fit: cover; transform: scale(1.05); transition: transform .5s; } /* Algunas fotos traen un borde blanco. */
.hb-habitacion:hover .hb-habitacion__foto img { transform: scale(1.09); }
.hb-habitacion__precio { position: absolute; left: 16px; bottom: 16px; padding: 8px 14px; border-radius: 999px; background: var(--blanco); color: var(--principal); font-family: var(--fuente-titulos); font-weight: 700; font-size: 22px; line-height: 1; box-shadow: 0 6px 16px rgba(0, 0, 0, .15); }
.hb-habitacion__precio small { font-family: var(--fuente); font-size: 12.5px; font-weight: 500; color: var(--texto-3); }
.hb-habitacion__cuerpo { display: flex; flex-direction: column; gap: 8px; padding: 22px 24px 24px; flex: 1; }
.hb-habitacion__titulo { margin: 0; font-size: 24px; }
.hb-habitacion__titulo a { color: var(--carbon); text-decoration: none; }
.hb-habitacion__personas { display: inline-flex; align-items: center; gap: 6px; margin: 0; font-size: 14px; font-weight: 600; color: var(--acento-texto); }
.hb-habitacion__texto { margin: 0; color: var(--texto-2); line-height: 1.55; flex: 1; }
.hb-habitacion__botones { display: flex; align-items: center; justify-content: space-between; gap: 12px; margin-top: 10px; }
.hb-comodidades { margin-top: 36px; padding: 22px 28px; border: 1px solid var(--borde-2); border-radius: var(--radio-grande); display: flex; flex-wrap: wrap; align-items: center; gap: 12px 28px; }
.hb-comodidades__titulo { margin: 0; font-family: var(--fuente-titulos); font-size: 19px; font-weight: 600; color: var(--carbon); }
.hb-comodidades ul { list-style: none; margin: 0; padding: 0; display: flex; flex-wrap: wrap; gap: 10px 26px; }
.hb-comodidades li { display: inline-flex; align-items: center; gap: 8px; font-size: 15px; color: var(--texto-2); }
.hb-comodidades .icono { color: var(--acento-texto); }

/* Galería en mosaico */
.hb-galeria__enlaces { display: flex; gap: 24px; flex-wrap: wrap; }
.hb-mosaico { display: grid; grid-template-columns: 2fr 1fr 1fr; grid-template-rows: 240px 240px; gap: 14px; }
.hb-mosaico > * { margin: 0; border-radius: 14px; overflow: hidden; aspect-ratio: auto; height: 100%; }
.hb-mosaico > *:first-child { grid-row: span 2; }
.hb-mosaico img { width: 100%; height: 100%; object-fit: cover; }

/* Ubicación */
.hb-ubicacion { background: var(--principal-oscuro); color: var(--texto-sobre-principal); }
.hb-ubicacion .hb-titulo, .hb-ubicacion .hb-subtitulo { color: var(--blanco); }
.hb-ubicacion .hb-etiqueta { color: var(--acento-claro); }
.hb-ubicacion__texto { display: grid; grid-template-columns: 1fr 1.25fr; gap: 64px; align-items: start; }
.hb-ubicacion__cabeza { position: sticky; top: 110px; }
.hb-ubicacion__direccion { display: flex; gap: 8px; align-items: center; margin: 0 0 22px; font-weight: 600; color: var(--blanco); }
.hb-ubicacion__direccion .icono { color: var(--acento-claro); }
.hb-ubicacion .hb-boton-contorno { color: var(--blanco); border-color: color-mix(in srgb, var(--blanco) 60%, transparent); }
.hb-ubicacion .hb-boton-contorno:hover { background: var(--blanco); color: var(--principal); }
.hb-ubicacion__parrafos p { margin: 0 0 16px; font-size: 16.5px; line-height: 1.75; }
.hb-ubicacion__parrafos a { color: var(--acento-claro); }
.hb-lugares { list-style: none; margin: 0; padding: 0; display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 18px; }
.hb-lugar { position: relative; display: block; height: 240px; border-radius: 16px; overflow: hidden; color: var(--blanco); text-decoration: none; background: var(--principal); }
.hb-lugar .hb-lugar__media { position: absolute; inset: 0; height: 100%; margin: 0; border-radius: 0; aspect-ratio: auto; }
.hb-lugar img { width: 100%; height: 100%; object-fit: cover; transition: transform .5s; }
.hb-lugar:hover img { transform: scale(1.05); }
.hb-lugar__cuerpo { position: absolute; inset: auto 0 0 0; padding: 60px 20px 18px; display: flex; flex-direction: column; gap: 4px; background: linear-gradient(0deg, rgba(28, 25, 64, .92) 0%, rgba(28, 25, 64, .6) 60%, transparent 100%); }
.hb-lugar__titulo { font-family: var(--fuente-titulos); font-size: 21px; font-weight: 600; }
.hb-lugar__texto { font-size: 14px; line-height: 1.45; color: rgba(255, 255, 255, .85); }

/* Servicios */
.hb-servicios__lista { list-style: none; margin: 0; padding: 0; display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 36px 40px; }
.hb-servicios__lista li { display: grid; grid-template-columns: 56px 1fr; column-gap: 16px; row-gap: 2px; align-items: start; }
.hb-servicios__icono { grid-row: span 2; display: inline-flex; width: 56px; height: 56px; align-items: center; justify-content: center; border-radius: 50%; background: var(--blanco); color: var(--acento-texto); border: 1px solid var(--borde); }
.hb-servicios__lista strong { font-family: var(--fuente-titulos); font-size: 19px; font-weight: 600; color: var(--carbon); padding-top: 4px; }
.hb-servicios__lista span:last-child { color: var(--texto-2); font-size: 15px; line-height: 1.5; }
.hb-resenas { margin-top: 48px; padding: 28px 32px; background: var(--blanco); border-radius: var(--radio-grande); display: flex; flex-wrap: wrap; gap: 12px 32px; align-items: center; }
.hb-resenas__nota { display: flex; align-items: center; gap: 10px; margin: 0; color: var(--texto-2); }
.hb-resenas__nota strong { font-family: var(--fuente-titulos); font-size: 40px; color: var(--carbon); }
.hb-resenas__estrellas { color: var(--acento); letter-spacing: 2px; }
.hb-resenas blockquote { margin: 0; flex: 1; font-family: var(--fuente-titulos); font-style: italic; font-size: 18px; color: var(--texto-2); }

/* Preguntas frecuentes */
.hb-faq { background: var(--blanco); }
.hb-faq__dentro { display: grid; grid-template-columns: 1fr 1.6fr; gap: 64px; align-items: start; }
.hb-faq__dentro > div:first-child { position: sticky; top: 110px; }
.hb-faq__dentro > div:first-child p:last-child { color: var(--texto-2); line-height: 1.6; }
.hb-faq .faq__lista { margin: 0; }
.hb-faq .faq__item { background: var(--fondo); border: 0; border-radius: 14px; }
.hb-faq summary { font-weight: 600; }

/* Blog */
.hb-blog { padding-bottom: 96px; }

/* Llamada final */
.hb-final { background: var(--principal); color: var(--texto-sobre-principal); padding: 64px 0; }
.hb-final__dentro { display: flex; flex-wrap: wrap; justify-content: space-between; align-items: center; gap: 24px 48px; }
.hb-final .hb-titulo { color: var(--blanco); margin-bottom: 8px; }
.hb-final p { margin: 0; max-width: 620px; font-size: 17px; line-height: 1.6; }

/* ---------- Pie ---------- */
.hb-pie { background: var(--principal-oscuro); color: var(--texto-sobre-principal); font-size: 14.5px; }
.hb-pie a { color: var(--texto-sobre-principal); }
.hb-pie a:hover { color: var(--blanco); }
.hb-pie a.boton--primario, .hb-pie a.boton--primario:hover { color: var(--sobre-acento); text-decoration: none; }
.hb-pie__reserva { display: flex; flex-wrap: wrap; align-items: center; justify-content: space-between; gap: 16px 32px; padding-top: 28px; padding-bottom: 28px; border-bottom: 1px solid rgba(255, 255, 255, .12); }
.hb-pie__reserva p { margin: 0; font-size: 17px; color: var(--blanco); }
.hb-pie__reserva strong { font-family: var(--fuente-titulos); font-size: 22px; color: var(--acento-claro); margin-right: 6px; }
.hb-pie__columnas { grid-template-columns: 1.3fr 1fr 1.2fr 1.2fr; padding-top: 48px; }
.hb-pie__logo img { height: 60px; width: auto; display: block; }
.hb-pie .pie__marca p { margin: 16px 0; }
.hb-pie__red { display: inline-flex; align-items: center; gap: 8px; font-weight: 600; }
.hb-pie .pie__titulo { font-family: var(--fuente-titulos); font-size: 18px; font-weight: 600; }
.hb-pie__lista { list-style: none; margin: 0; padding: 0; display: grid; gap: 10px; }
.hb-pie__lista li { position: relative; padding-left: 16px; }
.hb-pie__lista li::before { content: ""; position: absolute; left: 0; top: .6em; width: 6px; height: 6px; border-radius: 50%; background: var(--acento); }
.hb-pie .lista-iconos .icono { color: var(--acento-claro); }
.hb-pie .pie__titulo a { color: var(--blanco); text-decoration: none; }
.hb-pie .pie__titulo a:hover { color: var(--acento-claro); }
.hb-pie__todos { display: inline-flex; align-items: center; gap: 8px; margin-top: 18px; padding: 10px 16px; border: 1px solid var(--acento); border-radius: 999px; font-weight: 600; white-space: nowrap; color: var(--acento-claro) !important; text-decoration: none; transition: background .2s, color .2s; }
.hb-pie__todos:hover { background: var(--acento); color: var(--sobre-acento) !important; }
.hb-pie__direccion { text-decoration: none; }
.hb-pie__direccion small { display: block; margin-top: 4px; font-size: 13px; font-weight: 600; color: var(--acento-claro); }
.hb-pie__direccion:hover small { text-decoration: underline; }
.hb-pie .pie__legal { border-top-color: rgba(255, 255, 255, .12); color: rgba(255, 255, 255, .6); }
.hb-pie .pie__legal a { color: rgba(255, 255, 255, .6); }
.hb-pie .pie__legal-lista li { border-left-color: rgba(255, 255, 255, .2); }

/* Contacto rápido: en escritorio, pestañas fijas a la derecha (estilo del tema base); en móvil, barra abajo */
.hb-contacto-rapido .contacto-rapido__boton { font-size: 12px; }
.hb-contacto-rapido .contacto-rapido__boton--llamar { background: var(--principal); }
.contacto-rapido__boton--presupuesto { background: var(--acento); color: var(--sobre-acento); }
/* En tableta las pestañas laterales tapaban el texto: barra abajo, como en móvil. */
@media (max-width: 1100px) {
	body { padding-bottom: var(--alto-barra-movil); }
	.hb-contacto-rapido {
		top: auto; bottom: 0; left: 0; right: 0; transform: none;
		flex-direction: row; gap: 0; box-shadow: 0 -4px 16px rgba(0, 0, 0, .12);
		padding-bottom: env(safe-area-inset-bottom);
	}
	.hb-contacto-rapido .contacto-rapido__boton {
		flex: 1 1 0; width: auto; min-height: var(--alto-barra-movil);
		border-radius: 0; box-shadow: none; font-size: 14px; font-weight: 700; gap: 3px;
	}
	.hb-contacto-rapido .contacto-rapido__boton:hover { width: auto; }
	.hb-contacto-rapido .contacto-rapido__boton + .contacto-rapido__boton { border-left: 1px solid rgba(255, 255, 255, .25); }
	.hb-contacto-rapido .icono { width: 20px; height: 20px; }
}
@media (max-width: 760px) {
	.hb-contacto-rapido { display: flex; background: var(--principal-oscuro); }
	.hb-contacto-rapido .contacto-rapido__boton--llamar { background: var(--principal); }
}

/* ---------- Páginas interiores ---------- */
.lc-hero, .lf-hero { --principal-oscuro: #1C1940; }

/* ---------- Tableta y móvil ---------- */
@media (max-width: 1000px) {
	.hb-seccion { padding: 64px 0; }
	.hb-bienvenida__dentro, .hb-ubicacion__texto, .hb-faq__dentro { grid-template-columns: 1fr; gap: 32px; }
	.hb-ubicacion__cabeza, .hb-faq__dentro > div:first-child { position: static; }
	.hb-habitaciones__lista { grid-template-columns: 1fr 1fr; }
	.hb-lugares, .hb-servicios__lista { grid-template-columns: 1fr 1fr; }
	.hb-mosaico { grid-template-columns: 1fr 1fr; grid-template-rows: 260px 180px 180px; }
	.hb-mosaico > *:first-child { grid-row: auto; grid-column: span 2; }
	.hb-pie__columnas { grid-template-columns: 1fr 1fr; }
}
@media (max-width: 640px) {
	.hb-portada { min-height: 560px; }
	.hb-portada__dentro { padding-top: 96px; padding-bottom: 88px; }
	.hb-portada__puntos { left: 16px; right: auto; bottom: 62px; }
	.hb-motor.seccion--motor-home { margin-top: -40px; }
	.hb-habitaciones__lista, .hb-lugares, .hb-servicios__lista, .hb-datos { grid-template-columns: 1fr; }
	.hb-datos li { flex-direction: row; flex-wrap: wrap; align-items: center; column-gap: 14px; padding: 16px 18px; }
	.hb-datos__icono { margin: 0; }
	.hb-datos li > strong, .hb-datos li > span:last-child { flex: 1 1 calc(100% - 64px); }
	.hb-datos li > span:last-child { margin-left: 62px; margin-top: -6px; }
	.hb-mosaico { grid-template-rows: 220px 140px 140px; gap: 10px; }
	.hb-lugar { height: 200px; }
	.hb-pie__columnas { grid-template-columns: 1fr; }
	.hb-pie .pie__legal-lista { column-gap: 18px; }
	.hb-pie .pie__legal-lista li { padding: 0; border-left: 0; }
	.hb-final .botones, .hb-portada .botones { width: 100%; }
}
