/* Native SP Page Builder hero carousel and existing advice photograph. */
#home.ange-hero {
  position: relative;
  isolation: isolate;
  overflow: clip !important;
  background: #f3e7da !important;
}

#home.ange-hero > .sppb-row-container,
#home.ange-hero > .sppb-row-container > .sppb-row {
  position: static;
}

#home.ange-hero::before {
  content: none;
}

#home.ange-hero::after {
  content: "";
  position: absolute;
  inset: 0;
  z-index: 1;
  pointer-events: none;
  background: linear-gradient(90deg, #f3e7da 0%, #f3e7da 37%, rgb(243 231 218 / 86%) 48%, transparent 66%);
}

#home .sppb-row-column:has(> .ange-hero-copy-column) {
  position: relative;
  z-index: 2;
  flex: 0 0 54%;
  max-width: 54%;
}

#home .sppb-row-column:has(> .ange-hero-media-column) {
  display: block !important;
  position: absolute;
  inset: 0 0 0 auto;
  width: 60%;
  max-width: 60%;
  padding: 0;
  z-index: 0;
}

#home .ange-hero-media-column,
#home .ange-hero-media-column :is(.sppb-column, .sppb-column-addons, .sppb-addon-wrapper, .clearfix),
#home .ange-hero-carousel,
#home .ange-hero-carousel :is(.sppb-carousel-extended-list, .sppb-carousel-extended-outer-stage, .sppb-carousel-extended-item) {
  height: 100% !important;
}

#home .ange-hero-carousel {
  margin: 0;
  overflow: hidden;
}

#home .ange-hero-carousel img {
  display: block;
  width: 100%;
  height: 100% !important;
  object-fit: cover;
  object-position: center;
}

#home .sppb-carousel-extended-content-wrap,
#home .sppb-carousel-extended-nav-control,
#home .sppb-carousel-extended-dots {
  display: none !important;
}

.ange-carousel-paused .ange-hero-carousel img {
  animation-play-state: paused !important;
}

.ange-advice-room {
  margin-top: 28px;
  overflow: hidden;
  border-radius: 3px;
}

.ange-advice-room img {
  display: block;
  width: 100%;
  height: clamp(240px, 28vw, 390px);
  object-fit: cover;
  object-position: center 65%;
}

@media (min-width: 768px) and (max-width: 991px) {
  #home .sppb-row-column:has(> .ange-hero-copy-column) {
    flex-basis: 65%;
    max-width: 65%;
  }

  #home.ange-hero::after {
    background: linear-gradient(90deg, #f3e7da 0%, #f3e7da 45%, rgb(243 231 218 / 90%) 62%, rgb(243 231 218 / 12%) 100%);
  }
}

@media (max-width: 767px) {
  #home.ange-hero {
    --sofa-image-height: min(115vw, 650px);
    padding-top: 0 !important;
    background: #241913 !important;
  }

  #home.ange-hero > .sppb-row-container {
    width: 100%;
    max-width: none;
    padding: 0;
  }

  #home.ange-hero > .sppb-row-container > .sppb-row {
    flex-direction: column;
    margin: 0;
  }

  #home .sppb-row-column:has(> .ange-hero-copy-column) {
    width: 100%;
    max-width: 100%;
    flex: 0 0 auto;
    padding: min(94vw, 610px) 0 0;
  }

  #home .sppb-row-column:has(> .ange-hero-media-column) {
    position: relative;
    inset: auto;
    order: -1;
    width: 100%;
    max-width: 100%;
    flex: 0 0 auto;
    height: var(--sofa-image-height);
    margin-bottom: calc(-1 * var(--sofa-image-height));
    mask-image: linear-gradient(#000 64%, transparent 100%);
  }

  #home.ange-hero::after {
    background: linear-gradient(to bottom, transparent min(74vw, 475px), rgb(36 25 19 / 24%) min(86vw, 555px), #241913 min(115vw, 735px));
  }

  #home.ange-hero h1,
  #home.ange-hero p,
  #home.ange-hero .ange-secondary {
    color: #fff !important;
  }

  #home.ange-hero .ange-handwritten {
    color: #ffb8d9 !important;
  }

  #home.ange-hero .ange-secondary {
    border-color: #fff;
  }

  #home.ange-hero .ange-secondary:hover,
  #home.ange-hero .ange-secondary:focus-visible {
    background: #fff;
    color: #241913 !important;
  }

}

@media (max-width: 767px) and (prefers-reduced-motion: no-preference) {
  body.ange-site .body-innerwrapper {
    overflow: clip !important;
  }

  #home .sppb-row-column:has(> .ange-hero-media-column) {
    position: sticky;
    top: 0;
  }
}

#home .ange-hero-media-column { padding: 0; }

@media (max-width: 767px) {
  #home .ange-hero-copy-column {
    padding-right: 15px;
    padding-left: 15px;
  }
}


@media (min-width: 768px) and (prefers-reduced-motion: no-preference) {
  #home .sppb-row-column:has(> .ange-hero-media-column) {
    transform: translate3d(0, var(--ange-hero-parallax, 0px), 0);
  }
}

/* Decorative autoplay images must not capture a vertical swipe as a drag. */
#home .ange-hero-carousel {
  pointer-events: none;
  touch-action: pan-y;
}

#home .ange-hero-carousel img {
  animation: none !important;
  transform: none !important;
}
