/* ============================================================
   Historic Rivermill — farm-stay.css
   The /farm-stay/ landing page. Layers on home.css and
   celebrate.css (sub-hero, occasion rows, bands).
   ============================================================ */

/* Hero: photo, one line, two booking buttons. */
.hr-subhero--tall { min-height: 560px; height: 92svh; }
.hr-subhero__lede {
  font-size: clamp(17px, 1.6vw, 21px);
  line-height: 1.55;
  max-width: 60ch;
  margin: 20px 0 0;
  color: rgba(255,255,255,0.94);
}
.hr-subhero .hr-hero__actions { margin-top: 26px; }

/* Proof strip. */
.hr-proof { padding: 30px 0; }
.hr-proof__row { display: flex; align-items: center; gap: 28px; max-width: 860px; margin: 0 auto; }
.hr-proof__badge img { display: block; width: 104px; height: 104px; }
.hr-proof__line { font-size: 18px; line-height: 1.6; color: #3E463E; margin: 0; }
@media (max-width: 600px) { .hr-proof__row { flex-direction: column; text-align: center; } }

/* Gallery rail: a horizontally scrolling row of photographs. */
.hr-locrail { position: relative; }
.hr-locrail__track { display: grid; grid-auto-flow: column; grid-auto-columns: minmax(260px, 30%); gap: 18px; overflow-x: auto; scroll-snap-type: x mandatory; scroll-padding: 0 4px; padding-bottom: 6px; scrollbar-width: none; }
.hr-locrail__track::-webkit-scrollbar { display: none; }
.hr-locrail__track > img { scroll-snap-align: start; display: block; width: 100%; height: 340px; object-fit: cover; border-radius: 10px; }
.hr-locrail__nav { position: absolute; top: 148px; z-index: 3; width: 44px; height: 44px; border-radius: 999px; border: 0; background: rgba(255,255,255,.95); box-shadow: 0 3px 14px rgba(0,0,0,.18); cursor: pointer; display: grid; place-items: center; transition: opacity .18s ease; }
.hr-locrail__nav:hover { background: #fff; }
.hr-locrail__nav[disabled] { opacity: 0; pointer-events: none; }
.hr-locrail__nav::before { content: ""; width: 10px; height: 10px; border-right: 2px solid var(--rm-text); border-bottom: 2px solid var(--rm-text); }
.hr-locrail__nav--prev { left: -18px; }
.hr-locrail__nav--prev::before { transform: rotate(135deg) translate(-2px,-2px); }
.hr-locrail__nav--next { right: -18px; }
.hr-locrail__nav--next::before { transform: rotate(-45deg) translate(-2px,-2px); }
@media (max-width: 900px) { .hr-locrail__track { grid-auto-columns: 78%; } .hr-locrail__nav { display: none; } }

/* Getting here alone in its band, centred. */
.hr-info--single { display: block; max-width: 860px; margin: 0 auto; }

/* Booking band. */
.hr-book__actions { display: flex; flex-wrap: wrap; justify-content: center; gap: 14px; margin-top: 26px; }
.hr-btn--ghost { background: transparent; color: var(--accent, #B5462E); border: 2px solid var(--accent, #B5462E); }
.hr-btn--ghost:hover { background: var(--accent, #B5462E); color: #fff; transform: translateY(-2px); }
.hr-book__note { font-size: 17px; line-height: 1.6; color: #3E463E; margin: 26px auto 0; max-width: 60ch; }
.hr-book__note a { color: var(--accent); }
.hr-book__links { font-size: 15px; color: #5a625a; margin: 18px auto 0; max-width: 60ch; }
.hr-book__links a { color: var(--accent); }
