/* Solo estilos específicos de Habitación Premium; header/footer desde style.css */
.room-layout{display:grid;grid-template-columns:minmax(0,42%) minmax(0,58%);gap:32px;padding:40px clamp(18px,4vw,65px) 65px;max-width:1550px;margin:auto}
.room-details{padding:14px 4vw 0 0;font-size:16px;line-height:1.8}
.room-details h1{font:400 27px/1.3 Trirong,Georgia,serif;margin:0;color:#171717}
.room-subtitle{margin:2px 0 34px}.room-intro{max-width:430px;margin:0 0 44px}.room-rates{margin-bottom:78px}.room-rates h2{font:500 14px Heebo,Arial,sans-serif;margin:0 0 10px}.room-rates p{margin:0 0 8px}.room-features h2{font:400 19px Trirong,Georgia,serif;margin:20px 0 3px}.room-features ul{margin:0 0 24px;padding-left:20px}.room-features li{margin:4px 0}.room-book{display:inline-block;margin:25px 0 0;padding:9px 17px;background:#00a0af;color:#fff;text-decoration:none;font:400 15px Trirong,Georgia,serif}.room-book:hover,.room-book:focus-visible{background:#008795;color:#fff}
.room-gallery{display:grid;gap:22px;min-width:0}.room-gallery figure{margin:0}.room-gallery>figure img{width:100%;aspect-ratio:1.49;object-fit:cover}.room-carousel{position:relative;overflow:hidden}.room-slides{position:relative}.room-slide img{width:100%;aspect-ratio:1.49;object-fit:cover}.room-slide[hidden]{display:none}.room-carousel button:focus-visible{outline:2px solid #00a0af;outline-offset:-2px}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
@media(max-width:820px){.room-layout{grid-template-columns:1fr;gap:30px}.room-details{padding:0}.room-rates{margin-bottom:35px}.room-intro{margin-bottom:28px}.room-book{margin:10px 0 20px}.room-gallery{gap:14px}}

/* Ajustes exclusivos de Premium: no modificar el CSS global aprobado */
@media(min-width:1001px){
  .room-premium-page .header-inner{min-height:150px;padding-block:20px}
  .room-premium-page .brand img{width:130px;max-width:none;height:auto}
}
.room-features ul{list-style:none;padding-left:0}
.room-features li{display:flex;align-items:flex-start;gap:9px}
.room-features .feature-icon{flex:none;width:16px;height:16px;margin-top:.35em;color:#777}

/* Controles de carrusel: una sola flecha CSS, sin glifos ni SVG duplicados. */
.room-carousel{position:relative;isolation:isolate;overflow:hidden}
.room-carousel .room-slide{margin:0}
.room-carousel .room-slide img{display:block;width:100%;height:auto;aspect-ratio:1.49;object-fit:cover}
.room-carousel .room-slide[hidden]{display:none}
.room-carousel button.carousel-prev,.room-carousel button.carousel-next{
  appearance:none;position:absolute;z-index:2;top:50%;display:grid;place-items:center;
  width:44px;height:44px;margin:0;padding:0;transform:translateY(-50%);
  background:rgb(0 0 0 / .18);border:0;border-radius:50%;color:#fff;
  cursor:pointer;font-size:0;text-shadow:none;box-shadow:none;
}
.room-carousel button.carousel-prev{left:16px;right:auto}
.room-carousel button.carousel-next{right:16px;left:auto}
.room-carousel button:hover{background:rgb(0 0 0 / .35)}
.room-carousel .carousel-arrow{display:block;width:13px;height:13px;border-top:2px solid currentColor;border-right:2px solid currentColor;transform:rotate(45deg)}
.room-carousel .carousel-prev .carousel-arrow{transform:rotate(-135deg)}
.room-carousel button::before,.room-carousel button::after{content:none}
@media(max-width:600px){.room-carousel button.carousel-prev{left:8px}.room-carousel button.carousel-next{right:8px}}
