/* Section compositions generated by native Gutenberg blocks. */
.nr-entry-body .nr-availability-wrap.wp-block-group { position:relative; z-index:3; display:flex; flex-wrap:wrap; align-items:center; gap:20px; width:min(calc(100% - 48px),var(--nr-container)); margin:-64px auto 0; padding:26px 34px; background:#fff; box-shadow:0 4px 40px rgba(0,0,0,.15); }
.nr-entry-body .nr-availability-wrap > .wp-block-paragraph { flex:1; margin:0; }
.nr-entry-body .nr-availability-wrap .wp-block-buttons { flex-shrink:0; }
.nr-entry-body .nr-amenities.wp-block-group { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); column-gap:60px; row-gap:55px; padding:94px max(24px,calc((100% - 1454px)/2)); }
.nr-entry-body .nr-amenities > .nr-amenity-item { margin:0; min-width:0; }
.nr-entry-body .nr-amenities > .nr-amenity-grid { grid-column:1/-1; width:100%; }
.nr-entry-body .nr-amenities .nr-amenity-item h3 { margin:0 0 8px; }
.nr-entry-body .nr-amenities .nr-amenity-item p { margin:0; }
.nr-entry-body .nr-breakfast-section, .nr-entry-body .nr-island-section { padding:110px 0; }
.nr-entry-body .nr-breakfast-section { background:var(--nr-ice); }
.nr-entry-body .nr-breakfast-section .wp-block-columns, .nr-entry-body .nr-island-section .wp-block-columns { gap:clamp(35px,5vw,90px); align-items:center; }
.nr-entry-body .nr-breakfast-section .wp-block-column, .nr-entry-body .nr-island-section .wp-block-column { min-width:0; }
.nr-entry-body .nr-breakfast-section figure, .nr-entry-body .nr-island-section figure { max-width:85%; }
.nr-entry-body .nr-breakfast-section figure + figure, .nr-entry-body .nr-island-section figure + figure { margin:-25% 0 0 36%; position:relative; max-width:58%; box-shadow:0 10px 30px rgba(0,0,0,.05); }
.nr-entry-body .nr-room-detail, .nr-entry-body .nr-hotel-content, .nr-entry-body .nr-contact-info, .nr-entry-body .nr-booking-preview { padding:85px 24px 110px; }
.nr-entry-body .nr-room-detail > *, .nr-entry-body .nr-hotel-content > *, .nr-entry-body .nr-contact-info > *, .nr-entry-body .nr-booking-preview > * { max-width:1100px; margin-left:auto; margin-right:auto; }
.nr-entry-body .nr-room-detail .wp-block-image, .nr-entry-body .nr-hotel-content .wp-block-image { margin-top:40px; }
.nr-entry-body .nr-full-gallery { padding:90px 0; }
.nr-entry-body .nr-full-gallery .wp-block-gallery { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:24px; }
.nr-entry-body .nr-full-gallery figure.wp-block-image { width:100% !important; margin:0; }
.nr-entry-body .nr-full-gallery figure.wp-block-image img { width:100%; aspect-ratio:4/5; object-fit:cover; }
.nr-entry-body .nr-booking-preview { background:var(--nr-ice); }
.nr-entry-body .nr-booking-preview .wp-block-heading { font-size:clamp(26px,3vw,44px); }
.nr-entry-body .nr-room-section .nr-section-title { margin-bottom:80px; }
.nr-entry-body .nr-room-section .nr-section-title h2 { font-size:clamp(30px,3vw,48px); }
.nr-entry-body .nr-room-card .nr-room-copy .wp-block-group__inner-container { width:100%; }
.nr-footer .nr-footer-inner { width:min(calc(100% - 48px),var(--nr-container)); margin-inline:auto; }
.nr-footer .nr-footer-inner > .wp-block-heading { max-width:850px; margin:0 auto 35px; text-align:center; font-size:clamp(24px,2vw,30px); font-weight:400; }
.nr-footer .nr-footer-inner > .nr-eyebrow { text-align:center; }
.nr-footer .nr-footer-inner > .wp-block-buttons { justify-content:center; }
@media (max-width:720px) {
  .nr-entry-body .nr-availability-wrap.wp-block-group { width:calc(100% - 36px); margin-top:-30px; padding:22px; display:block; }
  .nr-entry-body .nr-amenities.wp-block-group { grid-template-columns:1fr; padding:65px 24px; gap:28px; }
  .nr-entry-body .nr-amenities > .nr-amenity-grid { grid-column:auto; }
  .nr-entry-body .nr-breakfast-section, .nr-entry-body .nr-island-section { padding:65px 0; }
  .nr-entry-body .nr-breakfast-section .wp-block-columns, .nr-entry-body .nr-island-section .wp-block-columns { display:block; }
  .nr-entry-body .nr-breakfast-section .wp-block-column, .nr-entry-body .nr-island-section .wp-block-column { margin-bottom:45px; }
  .nr-entry-body .nr-full-gallery .wp-block-gallery { grid-template-columns:repeat(2,minmax(0,1fr)); gap:12px; }
  .nr-footer .nr-footer-inner { width:calc(100% - 36px); }
}
