/* TEA-102: portrait main banners, scoped to the homepage hero. */
#a2-home-carousel,
#a2-home-carousel .home-main-banners {
  height: auto !important;
  min-height: 0 !important;
  overflow: hidden;
}
#a2-home-carousel { padding-top: 0 !important; padding-bottom: 0 !important; }
#a2-home-carousel .a2-home-banner > .l-section-h {
  width: 100% !important;
  max-width: 1280px !important;
  margin: 0 auto !important;
  padding: 0 !important;
}
#a2-home-carousel .a2-home-banner > .l-section-h > .g-cols {
  display: grid !important;
  grid-template-columns: minmax(0, 1fr) minmax(0, 1fr) !important;
  gap: 0 !important;
  align-items: stretch !important;
}
#a2-home-carousel .a2-img-absolute {
  position: relative !important;
  inset: auto !important;
  width: 100% !important;
  max-width: 480px !important;
  height: auto !important;
  min-height: 0 !important;
  aspect-ratio: 3 / 4;
  margin: 0 auto !important;
  padding: 0 !important;
  z-index: auto !important;
  background: #f9efee;
}
#a2-home-carousel .a2-img-absolute > .vc_column-inner {
  position: absolute !important;
  inset: 0;
  width: 100%;
  height: 100%;
  padding: 0 !important;
}
#a2-home-carousel .a2-img-absolute .w-slider,
#a2-home-carousel .a2-img-absolute .w-slider-h,
#a2-home-carousel .a2-img-absolute .royalSlider,
#a2-home-carousel .a2-img-absolute .rsOverflow,
#a2-home-carousel .a2-img-absolute .rsContent {
  width: 100% !important;
  height: 100% !important;
}
#a2-home-carousel .a2-img-absolute .rsImg {
  width: 100% !important;
  height: 100% !important;
  margin: 0 !important;
  object-fit: contain !important;
  object-position: center !important;
}
#a2-home-carousel .a2-banner-container {
  position: relative !important;
  width: 100% !important;
  min-width: 0;
  margin: 0 !important;
  padding: 36px 24px !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
}
#a2-home-carousel .a2-banner-container > .vc_column-inner {
  width: 100% !important;
  padding: 0 !important;
}
#a2-home-carousel .a2-banner-wrapper {
  height: auto !important;
  min-height: 0 !important;
  max-height: none !important;
  gap: 0 !important;
}
#a2-home-carousel .a2-banner-wrapper > .wpb_text_column {
  padding: 0 !important;
  margin: 0 0 16px !important;
  font-size: clamp(26px, 2.75vw, 36px) !important;
  line-height: 1.2 !important;
  letter-spacing: -0.03em !important;
}
#a2-home-carousel .a2-banner-wrapper p { margin: 0 !important; line-height: inherit !important; }
#a2-home-carousel .a2-banner-wrapper #a2-span-nofot { margin-bottom: 32px !important; }
#a2-home-carousel .a2-banner-wrapper .w-btn-wrapper { margin-right: 0 !important; }
@media (max-width: 767px) {
  #a2-home-carousel .a2-home-banner > .l-section-h > .g-cols {
    grid-template-columns: minmax(0, 1fr) !important;
  }
  #a2-home-carousel .a2-img-absolute { max-width: 420px !important; }
  #a2-home-carousel .a2-banner-container { padding: 28px 20px 34px !important; }
  #a2-home-carousel .a2-banner-wrapper > .wpb_text_column {
    font-size: clamp(26px, 7vw, 32px) !important;
  }
  #a2-home-carousel .a2-banner-wrapper #a2-span-nofot { margin-bottom: 24px !important; }
}
#a2-home-carousel .a2-banner-wrapper > .w-btn-wrapper {
  height: auto !important;
  margin: 0 !important;
}
#a2-home-carousel .a2-banner-wrapper .w-btn {
  margin: 0 !important;
  padding: 12px 20px !important;
  min-height: 44px;
  line-height: 20px !important;
}
