/* ROOMS PAGE — ported from 03-page-rooms.html */
.bv-rooms * { box-sizing: border-box; margin: 0; padding: 0; font-family: 'Barlow', sans-serif; }
.bv-rooms .bv-sec { padding: 3.5rem 3rem; }
.bv-rooms .bv-sec-alt { background: #F3F1EB; }
.bv-rooms .bv-slbl { font-size: 11px; letter-spacing: 0.15em; text-transform: uppercase; color: #1D9E75; font-weight: 500; margin-bottom: 0.6rem; }
.bv-rooms .bv-sh { font-family: 'Barlow Condensed', sans-serif; font-size: clamp(26px, 4vw, 38px); font-weight: 700; text-transform: uppercase; line-height: 1; margin-bottom: 0.75rem; color: #085041; }
.bv-rooms .bv-sb { font-size: 15px; line-height: 1.7; color: #5A5A5A; max-width: 580px; margin-bottom: 0; }

/* ROOM LISTING ROWS */
.bv-rooms .bv-row { background: #fff; border: 0.5px solid rgba(0,0,0,0.1); border-radius: 12px; padding: 1.5rem; display: grid; grid-template-columns: 1fr 2fr auto; gap: 1.5rem; align-items: center; margin-bottom: 1.1rem; }
.bv-rooms .bv-row-label { font-size: 10px; letter-spacing: 0.1em; text-transform: uppercase; color: #1D9E75; font-weight: 600; margin-bottom: 4px; }
.bv-rooms .bv-row-name { font-family: 'Barlow Condensed', sans-serif; font-size: 26px; font-weight: 700; text-transform: uppercase; color: #085041; margin-bottom: 0; }
.bv-rooms .bv-row-desc { font-size: 13px; color: #5A5A5A; line-height: 1.65; margin-bottom: 10px; }
.bv-rooms .bv-tags { display: flex; flex-wrap: wrap; gap: 3px; }
.bv-rooms .bv-tag { font-size: 10px; background: #E1F5EE; color: #0F6E56; padding: 2px 8px; border-radius: 20px; font-weight: 500; }
.bv-rooms .bv-rate { font-family: 'Barlow Condensed', sans-serif; font-size: 36px; font-weight: 900; color: #D85A30; line-height: 1; }
.bv-rooms .bv-rate span { font-size: 14px; font-weight: 400; color: #5A5A5A; font-family: 'Barlow', sans-serif; }
.bv-rooms .bv-rate-note { font-size: 11px; color: #5A5A5A; margin-top: 4px; margin-bottom: 12px; }
.bv-rooms .bv-btn-p { display: inline-block; background: #D85A30; color: #fff; padding: 10px 20px; border-radius: 4px; font-size: 12px; font-weight: 600; letter-spacing: 0.07em; text-transform: uppercase; text-decoration: none; white-space: nowrap; }
.bv-rooms .bv-btn-p:hover { background: #C04E28; color: #fff; }

/* AMENITIES GRID */
.bv-rooms .bv-am-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 1.1rem; margin-top: 1.75rem; }
.bv-rooms .bv-am-card { background: #fff; border: 0.5px solid rgba(0,0,0,0.1); border-radius: 10px; padding: 1.25rem; }
.bv-rooms .bv-am-title { font-family: 'Barlow Condensed', sans-serif; font-size: 18px; font-weight: 700; text-transform: uppercase; color: #085041; margin-bottom: 0.75rem; }
.bv-rooms .bv-am-list { list-style: none; }
.bv-rooms .bv-am-list li { font-size: 13px; color: #5A5A5A; padding: 4px 0; border-bottom: 0.5px solid rgba(0,0,0,0.07); display: flex; align-items: center; gap: 8px; line-height: 1.5; }
.bv-rooms .bv-am-list li:last-child { border-bottom: none; }
.bv-rooms .bv-am-list li::before { content: "✓"; color: #1D9E75; font-weight: 600; flex-shrink: 0; }

/* ROOM PHOTO GRIDS */
.bv-rooms .bv-photo-grid { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 8px; margin-top: 1.25rem; }
.bv-rooms .bv-photo-grid a { display: block; aspect-ratio: 4/3; overflow: hidden; border-radius: 8px; }
.bv-rooms .bv-photo-grid img { width: 100%; height: 100%; object-fit: cover; display: block; transition: transform 0.3s ease; }
.bv-rooms .bv-photo-grid a:hover img { transform: scale(1.04); }

/* WHO STAYS GRID (extended stay teaser) */
.bv-rooms .bv-who-grid { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 1rem; margin-top: 1.5rem; }
.bv-rooms .bv-who-card { background: #fff; border: 0.5px solid rgba(0,0,0,0.1); border-radius: 10px; padding: 1.1rem; }
.bv-rooms .bv-who-icon { font-size: 22px; margin-bottom: 6px; }
.bv-rooms .bv-who-title { font-weight: 500; font-size: 13px; color: #085041; margin-bottom: 5px; }
.bv-rooms .bv-who-body { font-size: 12px; color: #5A5A5A; line-height: 1.55; }

@media (max-width: 680px) {
  .bv-rooms .bv-row { grid-template-columns: 1fr; }
  .bv-rooms .bv-am-grid { grid-template-columns: 1fr; }
  .bv-rooms .bv-photo-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .bv-rooms .bv-who-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .bv-rooms .bv-sec { padding: 2.5rem 1.5rem; }
}
