.room-proof {
  padding: 105px clamp(28px, 6vw, 90px);
  background: #0a1f32;
  color: #fff;
  position: relative;
  overflow: hidden;
}

.room-proof::before {
  content: "";
  position: absolute;
  inset: 0;
  background:
    radial-gradient(circle at 15% 0, rgba(120, 173, 63, 0.18), transparent 34%),
    linear-gradient(rgba(255, 255, 255, 0.025) 1px, transparent 1px),
    linear-gradient(90deg, rgba(255, 255, 255, 0.025) 1px, transparent 1px);
  background-size: auto, 44px 44px, 44px 44px;
}

.room-proof > * { position: relative; z-index: 1; }
.room-proof-heading { display: grid; grid-template-columns: 0.65fr 1.35fr; column-gap: 50px; align-items: end; margin-bottom: 45px; }
.room-proof-heading .eyebrow { grid-column: 1 / -1; }
.room-proof-heading h2 { font-size: clamp(40px, 5vw, 72px); line-height: 1; letter-spacing: -0.045em; margin: 20px 0 0; }
.room-proof-heading > p:last-child { font-size: 18px; line-height: 1.65; color: #c2d1da; margin: 20px 0 0; max-width: 740px; }
.room-gallery { display: grid; grid-template-columns: 1.35fr 0.65fr; gap: 16px; min-height: 640px; }
.room-gallery figure { margin: 0; position: relative; overflow: hidden; background: #102f49; }
.room-gallery img { width: 100%; height: 100%; object-fit: cover; display: block; transition: transform 0.6s ease, filter 0.6s ease; }
.room-gallery figure:hover img { transform: scale(1.02); filter: saturate(1.05); }
.room-gallery-main img { object-position: center 48%; }
.room-gallery-side { display: grid; grid-template-rows: 1fr 1fr; gap: 16px; }
.room-gallery-side figure:first-child img { object-position: center 55%; }
.room-gallery-side figure:last-child img { object-position: center 48%; }
.room-gallery figcaption { position: absolute; left: 0; right: 0; bottom: 0; padding: 34px 24px 20px; background: linear-gradient(transparent, rgba(6, 19, 31, 0.94)); display: flex; flex-direction: column; gap: 4px; }
.room-gallery figcaption b { font-size: 12px; letter-spacing: 0.11em; color: #a8ce83; }
.room-gallery figcaption span { font-size: 13px; color: #e0e9ee; }

@media (max-width: 900px) {
  .room-proof-heading { grid-template-columns: 1fr; }
  .room-gallery { grid-template-columns: 1fr; min-height: auto; }
  .room-gallery-main { height: 560px; }
  .room-gallery-side { grid-template-columns: 1fr 1fr; grid-template-rows: 360px; }
}

@media (max-width: 560px) {
  .room-proof { padding: 70px 22px; }
  .room-gallery-main { height: 440px; }
  .room-gallery-side { grid-template-columns: 1fr; grid-template-rows: 300px 300px; }
  .room-gallery figcaption { padding: 30px 18px 16px; }
}
