/* CSS propio: lo mínimo que el código del creador ponía al vuelo y que ahora va fijo. */

/* La burbuja de WhatsApp (el creador inyectaba esta regla al cargar). */
.whats-app-bubble{position:fixed;right:20px;bottom:24px;z-index:19;display:flex;cursor:pointer;border-radius:100px;box-shadow:rgba(0,0,0,.15) 0 4px 12px}

/* Las variantes de móvil y tableta de las fotos van en <picture>: no debe cambiar la maqueta. */
picture.hr-picture{display:contents}

/* El botón «Agendar ya» de las fichas va dentro de un formulario que lleva a /reserva (funciona sin JavaScript). */
form.hr-ir{display:contents}

/* Campo trampa para robots: fuera de la vista y del teclado. */
.hr-trampa{position:absolute!important;left:-10000px!important;top:auto!important;width:1px!important;height:1px!important;overflow:hidden!important}

/* Columnas de la lista de productos de las fichas: el creador las calculaba por el ancho de la pantalla
   (más de 920 px: 4; de 621 a 919: 2; hasta 620, y 920 justos: 1). */
.block-product-list{--6811afa8:4}
@media screen and (max-width:920px){.block-product-list{--6811afa8:1}}
@media screen and (min-width:620.02px) and (max-width:919.98px){.block-product-list{--6811afa8:2}}

/* reservas@hotelrooseveltpunta.com es más larga que la dirección de antes: en una sola línea, como estaba. */
.hr-correo{white-space:nowrap!important}

/* ===================================================================================================================
   Web v2 (HR-58): accesibilidad, velocidad y pulido. Las letras de Lato (400 y 700) van en línea en cada <head>.
   =================================================================================================================== */

/* --- Títulos re-etiquetados (un solo h1 por página y sin saltos): cada uno conserva el aspecto de su etiqueta de
   antes (clase hr-hN = era un hN). Copia exacta de las reglas de sitio.css que estilan por etiqueta hN. --- */
.text-box .hr-h1{font-family:var(--h1-font-family);font-size:var(--h1-font-size);font-style:var(--h1-font-style);font-weight:var(--h1-font-weight);line-height:var(--h1-line-height);color:var(--h1-color);text-decoration:var(--h1-text-decoration);text-transform:var(--h1-text-transform);letter-spacing:var(--h1-letter-spacing)}
@media screen and (max-width: 920px){.text-box .hr-h1{font-family:var(--h1-m-font-family, var(--h1-font-family));font-size:var(--h1-m-font-size, var(--h1-font-size));font-style:var(--h1-m-font-style, var(--h1-font-style));font-weight:var(--h1-m-font-weight, var(--h1-font-weight));line-height:var(--h1-m-line-height, var(--h1-line-height));color:var(--h1-m-color, var(--h1-color));text-decoration:var(--h1-m-text-decoration, var(--h1-text-decoration));text-transform:var(--h1-m-text-transform, var(--h1-text-transform));letter-spacing:var(--h1-m-letter-spacing, var(--h1-letter-spacing))}}
.text-box .hr-h3{font-family:var(--h3-font-family);font-size:var(--h3-font-size);font-style:var(--h3-font-style);font-weight:var(--h3-font-weight);line-height:var(--h3-line-height);color:var(--h3-color);text-decoration:var(--h3-text-decoration);text-transform:var(--h3-text-transform);letter-spacing:var(--h3-letter-spacing)}
@media screen and (max-width: 920px){.text-box .hr-h3{font-family:var(--h3-m-font-family, var(--h3-font-family));font-size:var(--h3-m-font-size, var(--h3-font-size));font-style:var(--h3-m-font-style, var(--h3-font-style));font-weight:var(--h3-m-font-weight, var(--h3-font-weight));line-height:var(--h3-m-line-height, var(--h3-line-height));color:var(--h3-m-color, var(--h3-color));text-decoration:var(--h3-m-text-decoration, var(--h3-text-decoration));text-transform:var(--h3-m-text-transform, var(--h3-text-transform));letter-spacing:var(--h3-m-letter-spacing, var(--h3-letter-spacing))}}
.text-box .hr-h5{font-family:var(--h5-font-family);font-size:var(--h5-font-size);font-style:var(--h5-font-style);font-weight:var(--h5-font-weight);line-height:var(--h5-line-height);color:var(--h5-color);text-decoration:var(--h5-text-decoration);text-transform:var(--h5-text-transform);letter-spacing:var(--h5-letter-spacing)}
@media screen and (max-width: 920px){.text-box .hr-h5{font-family:var(--h5-m-font-family, var(--h5-font-family));font-size:var(--h5-m-font-size, var(--h5-font-size));font-style:var(--h5-m-font-style, var(--h5-font-style));font-weight:var(--h5-m-font-weight, var(--h5-font-weight));line-height:var(--h5-m-line-height, var(--h5-line-height));color:var(--h5-m-color, var(--h5-color));text-decoration:var(--h5-m-text-decoration, var(--h5-text-decoration));text-transform:var(--h5-m-text-transform, var(--h5-text-transform));letter-spacing:var(--h5-m-letter-spacing, var(--h5-letter-spacing))}}
.text-box .hr-h6{font-family:var(--h6-font-family);font-size:var(--h6-font-size);font-style:var(--h6-font-style);font-weight:var(--h6-font-weight);line-height:var(--h6-line-height);color:var(--h6-color);text-decoration:var(--h6-text-decoration);text-transform:var(--h6-text-transform);letter-spacing:var(--h6-letter-spacing)}
@media screen and (max-width: 920px){.text-box .hr-h6{font-family:var(--h6-m-font-family, var(--h6-font-family));font-size:var(--h6-m-font-size, var(--h6-font-size));font-style:var(--h6-m-font-style, var(--h6-font-style));font-weight:var(--h6-m-font-weight, var(--h6-font-weight));line-height:var(--h6-m-line-height, var(--h6-line-height));color:var(--h6-m-color, var(--h6-color));text-decoration:var(--h6-m-text-decoration, var(--h6-text-decoration));text-transform:var(--h6-m-text-transform, var(--h6-text-transform));letter-spacing:var(--h6-m-letter-spacing, var(--h6-letter-spacing))}}
.text-box .hr-h1{margin-bottom:48px}
.text-box .hr-h1:last-child{margin-bottom:0}
.text-box .hr-h3{margin-bottom:32px}
.text-box .hr-h3:last-child{margin-bottom:0}
.text-box .hr-h5{margin-bottom:16px}
.text-box .hr-h5:last-child{margin-bottom:0}
.text-box .hr-h6{margin-bottom:8px}
.text-box .hr-h6:last-child{margin-bottom:0}
.text-box .hr-h1{font-size:var(--fontSizeDesktop, var(--h1-font-size));line-height:var(--lineHeightDesktop, var(--h1-line-height))}
.text-box .hr-h3{font-size:var(--fontSizeDesktop, var(--h3-font-size));line-height:var(--lineHeightDesktop, var(--h3-line-height))}
.text-box .hr-h5{font-size:var(--fontSizeDesktop, var(--h5-font-size));line-height:var(--lineHeightDesktop, var(--h5-line-height))}
.text-box .hr-h6{font-size:var(--fontSizeDesktop, var(--h6-font-size));line-height:var(--lineHeightDesktop, var(--h6-line-height))}
.text-box ol:not(.s)>.hr-h1,.text-box ol:not(.s) .hr-h3,.text-box ol:not(.s) .hr-h5,.text-box ol:not(.s) .hr-h6,.text-box ul:not(.s)>.hr-h1,.text-box ul:not(.s) .hr-h3,.text-box ul:not(.s) .hr-h5,.text-box ul:not(.s) .hr-h6{margin-bottom:0}
@media screen and (max-width: 920px){.text-box .hr-h1{margin-bottom:48px}}
@media screen and (max-width: 920px){.text-box .hr-h1:last-child{margin-bottom:0}}
@media screen and (max-width: 920px){.text-box .hr-h3{margin-bottom:32px}}
@media screen and (max-width: 920px){.text-box .hr-h3:last-child{margin-bottom:0}}
@media screen and (max-width: 920px){.text-box .hr-h5{margin-bottom:16px}}
@media screen and (max-width: 920px){.text-box .hr-h5:last-child{margin-bottom:0}}
@media screen and (max-width: 920px){.text-box .hr-h6{margin-bottom:8px}}
@media screen and (max-width: 920px){.text-box .hr-h6:last-child{margin-bottom:0}}
@media screen and (max-width: 920px){.text-box .hr-h1{font-size:var(--fontSizeMobile, var(--h1-m-font-size));line-height:var(--lineHeightMobile, var(--h1-line-height))}}
@media screen and (max-width: 920px){.text-box .hr-h3{font-size:var(--fontSizeMobile, var(--h3-m-font-size));line-height:var(--lineHeightMobile, var(--h3-line-height))}}
@media screen and (max-width: 920px){.text-box .hr-h5{font-size:var(--fontSizeMobile, var(--h5-m-font-size));line-height:var(--lineHeightMobile, var(--h5-line-height))}}
@media screen and (max-width: 920px){.text-box .hr-h6{font-size:var(--fontSizeMobile, var(--h6-m-font-size));line-height:var(--lineHeightMobile, var(--h6-line-height))}}
.product-list-empty-state .hr-h6{font-family:var(--h6-font-family);font-size:var(--h6-font-size);font-style:var(--h6-font-style);font-weight:var(--h6-font-weight);line-height:var(--h6-line-height);color:var(--h6-color);text-decoration:var(--h6-text-decoration);text-transform:var(--h6-text-transform);letter-spacing:var(--h6-letter-spacing)}
@media screen and (max-width: 920px){.product-list-empty-state .hr-h6{font-family:var(--h6-m-font-family, var(--h6-font-family));font-size:var(--h6-m-font-size, var(--h6-font-size));font-style:var(--h6-m-font-style, var(--h6-font-style));font-weight:var(--h6-m-font-weight, var(--h6-font-weight));line-height:var(--h6-m-line-height, var(--h6-line-height));color:var(--h6-m-color, var(--h6-color));text-decoration:var(--h6-m-text-decoration, var(--h6-text-decoration));text-transform:var(--h6-m-text-transform, var(--h6-text-transform));letter-spacing:var(--h6-m-letter-spacing, var(--h6-letter-spacing))}}
.product-list-item .hr-h6[data-v-3d8a68ba]{font-family:var(--h6-font-family);font-size:var(--h6-font-size);font-style:var(--h6-font-style);font-weight:var(--h6-font-weight);line-height:var(--h6-line-height);color:var(--h6-color);text-decoration:var(--h6-text-decoration);text-transform:var(--h6-text-transform);letter-spacing:var(--h6-letter-spacing)}
@media screen and (max-width: 920px){.product-list-item .hr-h6[data-v-3d8a68ba]{font-family:var(--h6-m-font-family, var(--h6-font-family));font-size:var(--h6-m-font-size, var(--h6-font-size));font-style:var(--h6-m-font-style, var(--h6-font-style));font-weight:var(--h6-m-font-weight, var(--h6-font-weight));line-height:var(--h6-m-line-height, var(--h6-line-height));color:var(--h6-m-color, var(--h6-color));text-decoration:var(--h6-m-text-decoration, var(--h6-text-decoration));text-transform:var(--h6-m-text-transform, var(--h6-text-transform));letter-spacing:var(--h6-m-letter-spacing, var(--h6-letter-spacing))}}
.block-product-list .hr-h3[data-v-1055e560]{font-family:var(--h3-font-family);font-size:var(--h3-font-size);font-style:var(--h3-font-style);font-weight:var(--h3-font-weight);line-height:var(--h3-line-height);color:var(--h3-color);text-decoration:var(--h3-text-decoration);text-transform:var(--h3-text-transform);letter-spacing:var(--h3-letter-spacing)}
@media screen and (max-width: 920px){.block-product-list .hr-h3[data-v-1055e560]{font-family:var(--h3-m-font-family, var(--h3-font-family));font-size:var(--h3-m-font-size, var(--h3-font-size));font-style:var(--h3-m-font-style, var(--h3-font-style));font-weight:var(--h3-m-font-weight, var(--h3-font-weight));line-height:var(--h3-m-line-height, var(--h3-line-height));color:var(--h3-m-color, var(--h3-color));text-decoration:var(--h3-m-text-decoration, var(--h3-text-decoration));text-transform:var(--h3-m-text-transform, var(--h3-text-transform));letter-spacing:var(--h3-m-letter-spacing, var(--h3-letter-spacing))}}
.block-appointment-list .hr-h3[data-v-f17a52d1]{font-family:var(--h3-font-family);font-size:var(--h3-font-size);font-style:var(--h3-font-style);font-weight:var(--h3-font-weight);line-height:var(--h3-line-height);color:var(--h3-color);text-decoration:var(--h3-text-decoration);text-transform:var(--h3-text-transform);letter-spacing:var(--h3-letter-spacing)}
@media screen and (max-width: 920px){.block-appointment-list .hr-h3[data-v-f17a52d1]{font-family:var(--h3-m-font-family, var(--h3-font-family));font-size:var(--h3-m-font-size, var(--h3-font-size));font-style:var(--h3-m-font-style, var(--h3-font-style));font-weight:var(--h3-m-font-weight, var(--h3-font-weight));line-height:var(--h3-m-line-height, var(--h3-line-height));color:var(--h3-m-color, var(--h3-color));text-decoration:var(--h3-m-text-decoration, var(--h3-text-decoration));text-transform:var(--h3-m-text-transform, var(--h3-text-transform));letter-spacing:var(--h3-m-letter-spacing, var(--h3-letter-spacing))}}
.payment-info .hr-h5[data-v-92feaa65]{font-family:var(--h5-font-family);font-size:var(--h5-font-size);font-style:var(--h5-font-style);font-weight:var(--h5-font-weight);line-height:var(--h5-line-height);color:var(--h5-color);text-decoration:var(--h5-text-decoration);text-transform:var(--h5-text-transform);letter-spacing:var(--h5-letter-spacing)}
@media screen and (max-width: 920px){.payment-info .hr-h5[data-v-92feaa65]{font-family:var(--h5-m-font-family, var(--h5-font-family));font-size:var(--h5-m-font-size, var(--h5-font-size));font-style:var(--h5-m-font-style, var(--h5-font-style));font-weight:var(--h5-m-font-weight, var(--h5-font-weight));line-height:var(--h5-m-line-height, var(--h5-line-height));color:var(--h5-m-color, var(--h5-color));text-decoration:var(--h5-m-text-decoration, var(--h5-text-decoration));text-transform:var(--h5-m-text-transform, var(--h5-text-transform));letter-spacing:var(--h5-m-letter-spacing, var(--h5-letter-spacing))}}

/* --- Solo para lectores de pantalla (el h1 de Habitaciones, mientras el fundador no apruebe uno visible). --- */
.hr-solo-lector{position:absolute!important;width:1px!important;height:1px!important;padding:0!important;margin:-1px!important;overflow:hidden!important;clip:rect(0,0,0,0)!important;white-space:nowrap!important;border:0!important}
/* Preparado para el enlace «Ir al contenido» (segunda pasada, si se aprueba el texto): primer elemento del <body>,
   <a class="hr-saltar" href="#contenido">…</a>; solo se ve al recibir el foco. */
.hr-saltar{position:absolute;left:12px;top:-100px;z-index:100;padding:10px 16px;border-radius:999px;background:#2D236D;color:#fff;font-weight:700;text-decoration:none}
.hr-saltar:focus{top:12px}

/* --- Foco del teclado visible en todo el sitio (WCAG 2.4.7): morado oscuro sobre claro, blanco sobre morado o foto. --- */
:focus-visible{outline:2px solid #2D236D!important;outline-offset:3px!important}
.block-sticky-bar :focus-visible,footer :focus-visible,#ai-80QTHH :focus-visible,#ai-Ngckxy :focus-visible,.lightbox :focus-visible,
.block-header-layout-mobile__dropdown :focus-visible{outline-color:#fff!important}
.whats-app-bubble:focus-visible{outline-color:#fff!important;outline-offset:2px!important;box-shadow:0 0 0 5px #2D236D!important}
/* el mapa: al entrar con Tab el foco pasa a su documento, que no ve :focus-visible desde aquí */
iframe:focus,.hr-foco-mapa{outline:2px solid #2D236D!important;outline-offset:3px!important}
.image--zoom[data-ampliada]{cursor:zoom-in}
.image--zoom[data-ampliada]:focus-visible{outline-offset:4px!important}
#contenido:focus{outline:none}

/* --- Pie del móvil (WCAG 1.4.12): sin el párrafo vacío que se montaba sobre «Email», la fila de los teléfonos crece
   si crece el texto. --- */
@media (max-width:920px){.hr-vacio-movil{display:none!important}}

/* --- Enlaces de teléfono y correo con el mismo aspecto que el texto de antes. --- */
a.hr-mudo{color:inherit;text-decoration:none;font:inherit}
/* WCAG 2.5.8: en el pie de escritorio los teléfonos van en líneas de 18 px; cada uno ocupa una línea de 24 px para que
   se pueda tocar sin rozar el de al lado. */
@media (min-width:921px){footer a.hr-mudo[href^="tel:"]{display:inline-block;line-height:24px}}

/* --- Estrellas del testimonio en SVG (iguales en todos los aparatos). --- */
.hr-estrellas{display:inline-block;width:5.4em;height:1.08em;vertical-align:-.12em;fill:currentColor}

/* --- La fila de servicios de cada habitación, en texto real (antes era una captura). --- */
.hr-tira{display:flex;align-items:center;justify-content:space-between;width:100%;height:100%;margin:0;padding:0;list-style:none;
  color:#202124;font-family:Lato,sans-serif;font-size:13px;line-height:1.2;white-space:nowrap}
.hr-tira li{display:flex;align-items:center;gap:.45em}
.hr-tira svg{flex:none;width:1.3em;height:1.3em;fill:currentColor}
.hr-tira span{margin-left:.15em;padding:.12em .45em;border-radius:4px;background:#E8EAED;font-size:.85em}
@media (max-width:920px){.hr-tira{font-size:min(11px,2.85vw)}.hr-tira li{gap:.35em}}

/* --- Menú del móvil: el resto de la página queda inerte mientras está abierto (lo pone sitio.js). --- */

/* --- Reducir movimiento (WCAG 2.3.3): todo visible y quieto desde el principio; como mucho, un fundido corto. --- */
@media (prefers-reduced-motion:reduce){
  .transition,.transition [data-animation-role]{opacity:1!important;transform:none!important;transition:opacity .15s ease!important}
  html{scroll-behavior:auto!important}
  a.grid-button--primary,button.grid-button--primary,a.grid-button--primary:hover,button.grid-button--primary:hover{transform:none!important;transition:none!important}
  .lightbox,.lightbox *{transition:none!important}
}

/* ===================================================================================================================
   Pulido M1-M5 (maquetas de la auditoría de diseño, decisión B del hub; lo que el fundador vete se quita aquí).
   =================================================================================================================== */
/* M1 · Portada: el texto del héroe se lee sobre la foto y el título va en una línea en escritorio */
#ai-80QTHH .block-background__overlay,#ai-Ngckxy .block-background__overlay{
  background:linear-gradient(180deg,rgba(20,15,48,.28) 0%,rgba(20,15,48,.62) 34%,rgba(20,15,48,.62) 74%,rgba(20,15,48,.34) 100%)!important;opacity:1!important}
@media (min-width:921px){
  #ai-80QTHH .block-layout{--grid-template-rows:minmax(200px,auto) minmax(92px,auto) minmax(16px,auto) minmax(24px,auto) minmax(58px,auto) minmax(52px,auto) minmax(28px,auto) minmax(27px,auto) minmax(21px,auto) 1fr!important}
  #ai-80QTHH .layout-element:has(#ai-wmSk0y),#ai-Ngckxy .layout-element:has(.hr-h1){--grid-column:1/10!important}
}
#ai-80QTHH h1,#ai-Ngckxy .hr-h1{letter-spacing:-.012em;text-wrap:balance;text-shadow:0 1px 18px rgba(10,8,30,.25)}
#ai-80QTHH p.body,#ai-Ngckxy p{text-shadow:0 1px 10px rgba(10,8,30,.35)}
#ai-80QTHH p.body-small{letter-spacing:.08em}

/* M2 · Un solo botón principal (morado de la marca) y fotos con el mismo radio en todas las páginas */
a.grid-button--primary,button.grid-button--primary{
  background-color:#2D236D!important;color:#fff!important;border-radius:999px!important;
  font-weight:600;letter-spacing:.01em;box-shadow:0 1px 2px rgba(20,15,48,.18);
  transition:background-color .2s cubic-bezier(.2,.7,.2,1),box-shadow .2s cubic-bezier(.2,.7,.2,1),transform .2s cubic-bezier(.2,.7,.2,1)}
a.grid-button--primary:hover,button.grid-button--primary:hover{background-color:#3A2E8C!important;box-shadow:0 8px 20px -6px rgba(45,35,109,.45);transform:translateY(-1px)}
#ai-Ngckxy a.grid-button--primary{background-color:transparent!important;box-shadow:none;border:1.5px solid #fff!important}
#ai-Ngckxy a.grid-button--primary:hover{background-color:rgba(255,255,255,.14)!important}
/* (los avatares redondos, con radio 50 %, siguen redondos) */
.image-wrapper:not(.block-background) .image:not([style*="--f177488a:50%"]),.image-wrapper:not(.block-background) .image:not([style*="--f177488a:50%"]) img.image__image,
.image.image--grid:not([style*="--f177488a:50%"]),.image.image--grid:not([style*="--f177488a:50%"]) img{border-radius:14px!important;overflow:hidden}

/* M3 · Los dos formularios con el mismo estilo: borde visible, texto y pista legibles, foco claro */
form.form__control .input__component{background:#fff!important;border:1px solid #8C8A9E!important;border-radius:10px!important;color:#1D1E20!important;font-size:16px;transition:border-color .15s ease,box-shadow .15s ease}
form.form__control .input__component::placeholder{color:#6B6880!important;opacity:1}
form.form__control .input__component:hover{border-color:#2D236D!important}
form.form__control .input__component:focus,form.form__control .input__component:focus-visible{outline:none!important;border-color:#2D236D!important;box-shadow:0 0 0 3px rgba(114,94,237,.35)!important}
form.form__control .input__component--error{border-color:#B3204A!important}
form.form__control label.input__label{font-weight:600;color:#1D1E20}
form.form__control .input__error-message{color:#B3204A!important}

/* M4 · Móvil: la barra de aviso en una línea (como en escritorio) y el botón del menú con 44 × 44 px de zona táctil */
@media (max-width:920px){
  section.block-sticky-bar .block-sticky-bar-layout{padding-left:16px!important;padding-right:16px!important}
  section.block-sticky-bar p.body-small{font-size:11.5px!important;letter-spacing:.02em!important;white-space:nowrap}
  button.burger{position:relative}
  button.burger::after{content:"";position:absolute;inset:-13px -10px}
}

/* M4 (tableta) · Tableta (621-920 px): la columna deja de estar topada en 360 px y la barra de aviso cabe en una línea */
@media (min-width:621px) and (max-width:920px){
  .block-layout{--1b0ec2ff:640px!important}
  section.block-sticky-bar .block-sticky-bar-layout{--1b0ec2ff:640px!important;max-width:none!important}
}

/* M5 · Negrita real de Lato (las caras 700 van en línea en el <head>) y el logotipo en Lato, igual en todos los aparatos */
.block-header-logo svg text{font-family:Lato,sans-serif!important;font-weight:700;font-size:22px!important}
:is(h1,h2,h3):not(.hr-h4,.hr-h5,.hr-h6),.hr-h1,.hr-h2,.hr-h3{letter-spacing:-.01em}
