/* Room details: shared presentation, original booking controls and data. */
.bh-room-detail{color:#333;letter-spacing:normal;line-height:1.65;margin:0 0 35px;background:#fff;min-width:0}
.bh-room-detail *{box-sizing:border-box}
.bh-room-detail .bh-room-heading{padding:28px 0 30px;max-width:980px}
.bh-room-detail .bh-room-eyebrow{color:#a9002a;font-size:12px;letter-spacing:1.2px;font-weight:700;margin:0 0 12px;line-height:1.5;text-align:left}
.bh-room-detail h1{font-size:clamp(30px,3.5vw,46px);line-height:1.15;font-weight:400;margin:0 0 18px;text-align:left}
.bh-room-detail .bh-room-lead{font-size:18px;line-height:1.7;margin:0;text-align:left;color:#555}
.bh-room-detail h2{font-size:25px;line-height:1.3;margin:0 0 16px;font-weight:400;text-align:left}
.bh-room-main{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(0,1fr);gap:30px;align-items:start}
.bh-room-main>*{min-width:0}
.bh-room-gallery{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px}
.bh-room-gallery .bh-room-image{display:block;position:relative;overflow:hidden;background:#f5f5f3;aspect-ratio:4/3;color:#fff}
.bh-room-gallery .bh-room-image-main{grid-column:1/-1;aspect-ratio:4/3}
.bh-room-gallery .bh-room-image img{display:block;width:100%;height:100%;max-width:100%;object-fit:cover;transition:transform .25s ease}
.bh-room-gallery .bh-room-image:hover img{transform:scale(1.025)}
.bh-room-photo-label{position:absolute;bottom:14px;right:14px;background:rgba(20,28,32,.85);padding:8px 12px;font-size:13px;line-height:1.4;color:#fff}
.bh-room-facts{list-style:none;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0;margin:18px 0 0!important;padding:0!important;background:#f5f6f6}
.bh-room-facts li{margin:0;padding:13px 16px;border-bottom:1px solid #e2e5e6;font-size:14px;font-weight:600}
.bh-room-facts li:before{content:'✓';color:#cf0030;margin-right:8px}
.bh-room-detail .bh-room-reservation{background:#f5f6f6;border-top:3px solid #d50032;padding:25px 25px 20px;scroll-margin-top:30px}
.bh-room-booking-hint{font-size:14px;color:#555;margin:0 0 18px;text-align:left}
.bh-room-detail .bh-room-reservation .vmBooking{padding:0;margin:0;background:transparent;border:0;border-radius:0;box-shadow:none;backdrop-filter:none}
.bh-room-detail .bh-room-reservation .product-fields,.bh-room-detail .bh-room-reservation .product-field,.bh-room-detail .bh-room-reservation .product-field-display{margin:0;padding:0;width:100%;float:none}
.bh-room-detail .bh-room-reservation .addtocart-area{margin:0;min-height:0}
.bh-room-detail .bh-room-reservation .vmBooking .br-row{margin:10px 0;padding:6px 0}
.bh-room-detail .bh-room-reservation .vmBooking .book-button{border-radius:3px;box-shadow:none;font-size:13px;padding:13px 8px;white-space:normal;max-width:100%;letter-spacing:.2px}
.bh-room-detail .bh-room-reservation .vmBooking .btn-select{box-shadow:none;border-radius:3px;min-width:42px;margin:3px 2px}
.bh-room-detail .bh-room-reservation .vmBooking .checkin_daterange{width:100%;border-radius:3px;background:#fff;text-align:left;font-size:14px;padding:10px}
.bh-room-detail .bh-room-reservation .br-field-title{font-size:14px;letter-spacing:normal}
.bh-room-detail .bh-room-reservation .br-arrival-fieldset{margin:0 0 15px}
.bh-room-detail .bh-room-reservation .br-occupancy-fieldset{border-color:#ddd}
.bh-room-detail .bh-room-amenities{padding:30px 0;margin:36px 0;border-top:1px solid #e2e5e6;border-bottom:1px solid #e2e5e6}
.bh-room-detail .hotel_icons{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:15px;justify-content:start}
.bh-room-detail .hotel_icons .hotel_icon{display:flex;gap:10px;width:auto;height:auto;min-height:40px;justify-content:flex-start;align-items:center;font-style:normal;text-align:left}
.bh-room-detail .hotel_icons .hotel_icon:not([class*="PRO_"]){display:none}
.bh-room-detail .hotel_icons .hotel_icon img{width:25px;height:25px;flex:0 0 25px;object-fit:contain;margin:0}
.bh-room-detail .hotel_icons .hotel_icon .tooltiptext{position:static;visibility:visible;opacity:1;transform:none;background:none;color:#444;width:auto;padding:0;font-size:13px;line-height:1.5;border-radius:0;box-shadow:none;white-space:normal}
.bh-room-detail .hotel_icons .hotel_icon .tooltiptext:after{display:none}
.bh-room-text-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:28px 45px}
.bh-room-text-grid section:first-child{grid-column:1/-1;max-width:980px}
.bh-room-text-grid p{margin:0;text-align:left;line-height:1.8;font-size:16px}
.bh-room-alternatives{margin-top:36px;padding:30px;background:#f5f6f6}
.bh-room-alternatives>div{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:15px}
.bh-room-alternatives a{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:15px 0;color:#333;border-bottom:2px solid #d50032;font-size:17px;text-decoration:none}
.bh-room-alternatives a:hover{color:#b0002a}
.bh-room-alternatives a span{color:#d50032}
.bh-room-reviews{margin-top:35px;padding-top:25px;border-top:1px solid #e2e5e6;max-height:400px;overflow:auto}
.bh-room-detail a:focus-visible,.bh-room-detail button:focus-visible,.bh-room-detail input:focus-visible{outline:3px solid #d50032;outline-offset:3px}
@media(max-width:991px){.bh-room-main{grid-template-columns:minmax(0,1fr);gap:25px}.bh-room-gallery{grid-template-columns:repeat(4,minmax(0,1fr))}.bh-room-gallery .bh-room-image-main{aspect-ratio:3/2}.bh-room-detail .hotel_icons{grid-template-columns:repeat(3,minmax(0,1fr))}.bh-room-detail .bh-room-reservation{padding:25px}.bh-room-text-grid{gap:25px}}
@media(max-width:575px){.bh-room-detail .bh-room-heading{padding:20px 0}.bh-room-detail .bh-room-lead{font-size:16px}.bh-room-detail .bh-room-reservation{padding:20px 15px}.bh-room-detail h2{font-size:23px}.bh-room-detail .bh-room-eyebrow{font-size:11px}.bh-room-gallery{gap:5px}.bh-room-gallery .bh-room-image-main{aspect-ratio:4/3}.bh-room-photo-label{bottom:8px;right:8px;font-size:12px}.bh-room-facts li{font-size:12px;padding:12px 9px}.bh-room-detail .hotel_icons{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px 10px}.bh-room-text-grid{grid-template-columns:minmax(0,1fr)}.bh-room-alternatives{padding:22px 18px}.bh-room-alternatives>div{grid-template-columns:minmax(0,1fr);gap:0}.bh-room-detail .bh-room-amenities{margin:26px 0;padding:25px 0}}
@media(prefers-reduced-motion:reduce){.bh-room-gallery .bh-room-image img{transition:none}}
