/* Tariffs layout: inset text + solid picker plate */

.booking-tariffs {
  padding: 0 0 3rem;
  background: transparent !important;
}

.tariff-back {
  display: inline-block;
  margin: 0.35rem 4vw 0.5rem;
  color: var(--paper-dim);
  font-size: 0.88rem;
  text-decoration: none;
}

.tariff-back:hover {
  color: var(--paper);
}

.tariff-nav {
  display: flex;
  flex-wrap: wrap;
  gap: 1rem 1.5rem;
  align-items: center;
  padding: 0.35rem 4vw 0.25rem;
}

.tariff-nav .tariff-back {
  margin: 0;
}

.tariff-stories {
  margin: 0;
  padding: 1.1rem 4vw 1.25rem;
  width: 100%;
  box-sizing: border-box;
  border-bottom: 1px solid rgba(246, 239, 224, 0.08);
}

/* hero = rooms detail, KEEP side padding for title */
.booking-tariffs .tariff-banner.rooms-banner--detail {
  position: relative;
  min-height: min(72vh, 36rem);
  margin: 0 0 0.5rem;
  padding: 1.2rem 4vw 2.4rem !important;
  overflow: hidden;
  background: transparent !important;
  box-sizing: border-box;
}

.booking-tariffs .tariff-banner .rooms-banner__copy,
.booking-tariffs .tariff-banner .rooms-banner__copy--detail {
  max-width: 40rem;
  margin-left: 0;
  padding-left: 0;
  box-sizing: border-box;
}

.booking-tariffs .tariff-banner .rooms-banner__media,
.booking-tariffs .tariff-banner .photo-slider,
.booking-tariffs .tariff-banner .photo-slider__track,
.booking-tariffs .tariff-banner .photo-slider__slide,
.booking-tariffs .tariff-banner img {
  min-height: min(72vh, 36rem);
  height: min(72vh, 36rem);
}

.booking-tariffs .tariff-banner img {
  display: block;
  width: 100%;
  object-fit: cover;
}

/* body content inset — never flush to screen edge */
.tariff-body {
  padding: 1rem 4vw 0 !important;
  max-width: none !important;
  width: 100% !important;
  box-sizing: border-box;
  background: transparent !important;
}

.tariff-body > * {
  max-width: none !important;
  width: 100%;
  box-sizing: border-box;
}

/* gift + dates: SOLID plate full content width */
.tariff-inline-pick {
  margin: 0 0 1.5rem !important;
  padding: 1rem 1.25rem !important;
  border: 1px solid rgba(246, 239, 224, 0.14) !important;
  background: #0c0c0e !important;
  background-image: none !important;
  box-sizing: border-box;
  width: 100% !important;
  max-width: none !important;
}

.tariff-inline-pick .pick-gift,
.tariff-inline-pick .pick-gift.is-on {
  display: flex !important;
  margin: 0 0 0.85rem !important;
  padding: 0.35rem 0 !important;
  border: 0 !important;
  border-left: 3px solid #6f8f6a !important;
  background: transparent !important;
  background-image: none !important;
  box-shadow: none !important;
}

/* picker INSIDE solid plate */
.tariff-stay-picker,
.booking-tariffs .tariff-stay-picker,
.booking-tariffs .tariff-inline-pick .stay-picker {
  display: flex !important;
  width: 100% !important;
  max-width: none !important;
  min-height: 4.2rem !important;
  margin: 0 !important;
  padding: 0.25rem 0 !important;
  border: 0 !important;
  border-top: 1px solid rgba(246, 239, 224, 0.12) !important;
  border-radius: 0 !important;
  background: transparent !important;
  background-color: transparent !important;
  background-image: none !important;
  box-shadow: none !important;
  backdrop-filter: none !important;
  -webkit-backdrop-filter: none !important;
}

.booking-tariffs .stay-picker::before,
.booking-tariffs .stay-picker::after {
  content: none !important;
  display: none !important;
}

.booking-tariffs .stay-picker__field {
  flex: 1 1 0 !important;
  min-width: 0 !important;
}

.booking-tariffs .stay-picker__field input[type="date"],
.booking-tariffs .stay-picker__field select {
  opacity: 0 !important;
  color: transparent !important;
  -webkit-text-fill-color: transparent !important;
}

.booking-tariffs .stay-picker__field input[type="date"]::-webkit-calendar-picker-indicator {
  opacity: 0 !important;
  display: none !important;
}

.booking-tariffs .stay-picker__rule {
  flex: 0 0 1px !important;
  width: 1px !important;
  margin: 0.55rem 0 !important;
  background: rgba(246, 239, 224, 0.18) !important;
}

.booking-tariffs__rates-title {
  margin: 1.25rem 0 0.35rem;
  font-family: var(--display);
  font-size: 1rem;
  font-weight: 400;
  letter-spacing: 0.08em;
  text-transform: uppercase;
}

.booking-tariffs .room-rates__sub {
  margin: 0 0 1rem;
  color: var(--paper-dim);
  font-size: 0.9rem;
  font-weight: 300;
}

.booking-tariffs .room-detail__about {
  margin: 0 0 1rem;
  max-width: 40rem;
  color: var(--paper);
  font-size: 0.95rem;
  font-weight: 300;
  line-height: 1.5;
}

.tariff-review {
  margin-top: 2.25rem;
  padding-top: 1.5rem;
  border-top: 1px solid rgba(246, 239, 224, 0.1);
}

.booking-tariffs .room-photos {
  margin-top: 2rem;
}
