html.iframe .booking-header-mobile__right,
html.iframe .booking__wrapper__content__step__header__right .ui-search__input {
  visibility: hidden;
}

.bs-gi__cf__tc {
  border: 1px solid var(--theme-color-border);
}

.hero__background.fade img {
  object-position: center 55%;
}

.hero__background.fade:after {
  content: "";
  position: absolute;
  inset: 0;
  background-image: linear-gradient(
    0deg,
    var(--color-dark) 0,
    var(--color-dark)
  );
  opacity: 0.7;
}

.hero__description.par-sm {
  max-width: 65ch;
  text-align: center;
}

.booking-ts {
  gap: 0.5em !important;
}

@media (max-width: 425px) {
  .booking-ts {
    font-size: 0.7em;
  }
  .booking-ts .par-sm-med,
  .booking-ts .sub {
    font-size: 0.9em;
    font-weight: 600;
  }
}

html.iframe .booking-time-slot-wrapper {
  gap: 0.5em;
}

/* service cards */
.bs-service-card-desc__content:not(.expanded) {
  max-width: calc(100% - 4.5em);
}

.bs-extra__extras__item__body__description:not(.expanded) {
  max-width: calc(100% - 4em);
}

@media (min-width: 768px) {
  html.iframe
    .booking__wrapper:has(.bs-service)
    .booking__wrapper__content__details-tablet {
    display: none;
  }

  html.iframe
    .booking__wrapper:not(:has(.bs-service)):has(~ .booking__tablet-continue)
    .booking__wrapper__content__details-tablet {
    display: flex;
  }
}

html.iframe .booking__wrapper__content__step {
  padding-bottom: 0;
}

@media (min-width: 1024px) {
  html.iframe .booking__wrapper__content,
  html.iframe .bk-sticky-foot {
    max-width: 90rem;
  }
  /* side bar */
  html.iframe .booking__wrapper:not(:has(.bs-dt)) ~ .booking__details-desktop {
    display: none;
  }
  html.iframe .booking__wrapper:has(.bs-dt) .booking__details-desktop {
    display: flex;
  }
}

.booking__wrapper .ui-avatar,
html.iframe .booking-embed-layout:has(.bs-service),
html.iframe .booking__wrapper__content:has(.bs-service) {
  background-color: transparent !important;
}

/* Services */
html.iframe .booking__wrapper__content:has( .bs-service) {
  padding: 0;
}

html.iframe .booking__wrapper__content__step__header:has(+ .bs-service),
html.iframe .booking-header-mobile:has(+ div .bs-service) {
  display: none;
}

html.iframe .bs-service {
  display: grid !important;
  grid-template-columns: repeat(auto-fit, minmax(14rem, 1fr));
}

html.iframe .bs-service-card {
  --space: 1rem;
  --image-height: 12rem;
  padding: var(--space, 1rem);
  flex-direction: column !important;
  position: relative;
}

html.iframe .bs-service-card__header {
  flex-direction: column;
  position: relative;
}

html.iframe .bs-service-card__header .ui-avatar {
  width: 100%;
  height: var(--image-height, 12rem);
  display: block;
  position: relative;
}

html.iframe .bs-service-card__header .ui-avatar__image {
  width: 100%;
  height: 100%;
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  inset: 0;
  max-width: 345px;
  margin: auto;
}

html.iframe .bs-service-card__book .ui-price-tag {
  position: absolute;
  top: var(--image-height, 12rem);
  transform: translateY(50%);
  left: 0;
  right: 0;
  padding: 0.3em 0.5em;
  justify-content: center;
  background: unset;
  font-size: 2rem;
}

html.iframe .bs-service-card__book .ui-tax__booking-service {
  position: absolute;
  right: 0;
  left: 0;
  top: var(--image-height, 12rem);
  transform: translateY(-100%);
  background: unset;
  padding: 0.2em;
  color: rgba(var(--color-dark-rgb), 0.9);
  justify-content: center;
}

html.iframe .bs-service-card__book .ui-tax__text {
  position: absolute;
  background: var(--color-metal);
  padding: 0.25em 0.5em;
  color: var(--color-dark-rgb);
  border-radius: 4px;
  border: 1px solid #343a40;
}

html.iframe .bs-service-card__header__info {
  margin-top: 2rem
}

html.iframe .bs-service-card__header__info__badge {
  position: absolute;
  right: 0.25rem;
  top: 0;
}

html.iframe .bs-service-card__book__button {
  align-self: unset;
  padding-top: 0;
}

html.iframe .bs-service-card__book__button button {
  width: 100%;
}

/* Extras */
html.iframe .bs-extra__extras {
  display: grid;
  grid-template-columns: repeat(auto-fill, minmax(16rem, 1fr));
}

html.iframe .bs-extra__extras__item__header {
  justify-content: space-between;
}

html.iframe .bs-extra__extras__item__header .par-sm-med {
  text-transform: uppercase;
  text-align: right;
  max-width: 22ch;
}

html.iframe .bs-extra__extras__item__header .ui-avatar {
  width: unset;
  height: unset;
  flex: unset;
  min-width: unset;
  min-height: unset;
}

html.iframe .bs-extra__extras__item__header .ui-avatar__image {
  width: 4rem;
  height: 4rem;
  min-width: 4rem;
}

@media (min-width: 768px) {
  html.iframe .bs-extra {
    padding-right: 16px;
  }
}