/* Targeted UX corrections; keep the existing type, photography and terracotta palette. */
.room-detail-card[id],
#contact-form {
  scroll-margin-top: 120px;
}

.room-details-link {
  display: inline-flex;
  min-height: 44px;
  align-items: center;
  text-decoration: underline;
  text-decoration-thickness: 1px;
  text-underline-offset: 5px;
}

.room-enquiry {
  display: inline-flex;
  min-height: 44px;
  align-items: center;
  justify-content: center;
  max-width: 100%;
  margin-top: 20px;
  padding: 12px 18px;
  border: 1px solid #a64f3a;
  border-radius: 2px;
  background: #a64f3a;
  color: #fff;
  font: 600 13px/1.5 var(--sans);
  text-align: center;
}

.room-enquiry:hover,
.room-enquiry:focus-visible {
  background: #843c2b;
}

body.contact-page .stay-enquiry-help,
body.contact-page .form-requirements {
  margin: 0 0 16px;
  color: #59483f;
  font-size: 13px;
  line-height: 1.65;
}

.stay-enquiry-help a {
  text-decoration: underline;
  text-underline-offset: 3px;
}

body.contact-page .contact-field {
  display: grid;
  min-width: 0;
  gap: 6px;
  align-content: start;
}

body.contact-page .contact-field-wide {
  grid-column: 1 / -1;
}

body.contact-page .contact-field-label {
  color: #59483f;
  font-size: 13px;
  font-weight: 600;
  line-height: 1.5;
}

body.contact-page .contact-panel .contact-form input,
body.contact-page .contact-panel .contact-form textarea {
  width: 100%;
  min-width: 0;
  font-size: 16px;
}

body.contact-page .contact-form input::placeholder,
body.contact-page .contact-form textarea::placeholder {
  color: #6d625d;
  opacity: 1;
}

body.contact-page .contact-privacy {
  color: #6d625d;
  font-size: 12px;
  line-height: 1.6;
}

html[lang] body.home-page .hero-actions .btn.primary,
html[lang] body.contact-page .contact-submit {
  border-color: #a64f3a;
  background: #a64f3a;
  color: #fff;
}

html[lang] body.home-page .hero-actions .btn.primary:hover,
html[lang] body.home-page .hero-actions .btn.primary:focus-visible,
html[lang] body.contact-page .contact-submit:hover,
html[lang] body.contact-page .contact-submit:focus-visible {
  background: #843c2b;
  color: #fff;
}

body .rf-footer .rf-contact-band {
  background: linear-gradient(100deg, #97482f, #a64f3a);
}

body .rf-footer .rf-contact-card,
body .rf-footer .rf-contact-copy p,
body .rf-footer .rf-contact-copy > span {
  color: #fff7ef;
}

/* The minified bundles lost these existing desktop photographs. */
@media (min-width: 821px) {
  .page-hero-rooms {
    background-image: url('/assets/photos/responsive/riad-bath-suite-1200.webp');
  }
  .page-hero-riad {
    background-image: url('/assets/photos/responsive/riad-patio-wide-1200.webp');
  }
}

/* Reserve caption and counter space on short landscape screens. */
@media (max-height: 500px) {
  body .rf-lightbox-frame {
    max-height: calc(100dvh - 32px);
    gap: 6px;
  }
  body .rf-lightbox-image {
    max-height: calc(100dvh - 112px);
  }
  body .rf-lightbox-caption {
    max-width: min(760px, 76vw);
  }
}
