/* Local photographic hero study. Typography, copy and controls remain inherited. */
body .rp-hero { overflow: hidden; }
.rp-hero .rp-hero__grid {
  min-height: clamp(470px, 31vw, 600px);
  display: flex;
  align-items: center;
  padding-top: 64px;
  padding-bottom: 64px;
}
.rp-hero .rp-hero__media { overflow: hidden; }
.rp-hero .rp-hero__media img {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: 50% 70%;
}
.rp-hero[data-hero-photo="pattaya"] .rp-hero__media img { object-position: 50% 58%; }
@media (min-width: 1600px) {
  .rp-hero[data-hero-photo="pattaya"] .rp-hero__media img { object-position: 50% 64%; }
}
.rp-hero .rp-hero__media::after {
  background: linear-gradient(90deg, rgba(7, 29, 27, .84) 0%, rgba(7, 29, 27, .65) 35%, rgba(7, 29, 27, .12) 72%, rgba(7, 29, 27, .06) 100%);
}
@media (min-width: 1024px) and (pointer: fine) and (prefers-reduced-motion: no-preference) {
  .rp-hero .rp-hero__media img { position: relative; top: -24px; height: calc(100% + 48px); transform: translate3d(0, var(--hero-shift, 0px), 0); }
}
@media (max-width: 780px) {
  .rp-hero .rp-hero__grid { min-height: 450px; padding-top: 44px; padding-bottom: 44px; }
  .rp-hero .rp-hero__media img { object-position: 48% 50%; }
  .rp-hero[data-hero-photo="pattaya"] .rp-hero__media img { object-position: 62% 50%; }
  .rp-hero .rp-hero__media::after { background: linear-gradient(90deg, rgba(7, 29, 27, .84), rgba(7, 29, 27, .42)); }
}
