.ahs-slider-wrap {
  position: relative;
  width: 100%;
  margin: 0 auto;
  padding-bottom: 0;
}

.ahs-slider-viewport {
  overflow: hidden;
  position: relative;
}

.ahs-slider-track {
  display: flex;
  transition: transform 0.45s ease;
  will-change: transform;
}

.ahs-slide {
  position: relative;
  flex: 0 0 100%;
  width: 100%;
  height: var(--ahs-height, 520px);
  min-height: var(--ahs-height, 520px);
  background: var(--ahs-bg-color, #f5f5f5);
  border-radius: var(--ahs-slide-radius, 0px);
  overflow: hidden;
}

.ahs-background,
.ahs-bg-image,
.ahs-bg-video {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
}

.ahs-bg-image {
  background-color: transparent;
  background-image: var(--ahs-bg-desktop);
}

.ahs-bg-video {
  object-fit: cover;
}

.ahs-slide-inner {
  position: relative;
  z-index: 2;
  display: grid;
  grid-template-columns: minmax(0, var(--ahs-text-width, 50%)) minmax(0, var(--ahs-media-width, 50%));
  gap: var(--ahs-gap, 28px);
  height: 100%;
  min-height: 0;
  padding: var(--ahs-padding, 34px);
  box-sizing: border-box;
  overflow: hidden;
}

.ahs-slide.ahs-media-left .ahs-slide-inner {
  grid-template-columns: minmax(0, var(--ahs-media-width, 50%)) minmax(0, var(--ahs-text-width, 50%));
}

.ahs-col {
  min-width: 0;
  min-height: 0;
}

.ahs-col-text {
  display: flex;
  height: 100%;
  min-height: 0;
}

.ahs-text-box {
  min-height: 0;
  width: 100%;
  display: flex;
  flex-direction: column;
  gap: 18px;
}

.ahs-text-box.is-panel {
  background: var(--ahs-text-panel-bg, rgba(255,255,255,.85));
  padding: var(--ahs-text-panel-padding, 24px);
  border-radius: var(--ahs-text-panel-radius, 0px);
}

.ahs-badge {
  display: inline-flex;
  align-self: flex-start;
  padding: 8px 14px;
  border-radius: 999px;
  background: var(--ahs-badge-bg, #111);
  color: var(--ahs-badge-color, #fff);
  font-size: 13px;
  font-weight: 700;
  line-height: 1.2;
}

.ahs-slide .ahs-title {
  margin: 0;
  font-size: var(--ahs-title-size, 44px) !important;
  line-height: 1.1;
  color: var(--ahs-title-color, #111) !important;
}

.ahs-slide .ahs-content,
.ahs-slide .ahs-content p,
.ahs-slide .ahs-content li {
  color: var(--ahs-content-color, #333) !important;
  font-size: var(--ahs-content-size, 18px) !important;
  line-height: 1.65;
}

.ahs-content p:first-child {
  margin-top: 0;
}

.ahs-content p:last-child {
  margin-bottom: 0;
}

.ahs-slide .ahs-content a,
.ahs-slide .ahs-content a:visited {
  color: var(--ahs-link-color, #0f766e) !important;
}

.ahs-actions {
  margin-top: 8px;
}

.ahs-slide .ahs-button,
.ahs-slide .ahs-button:visited {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 46px;
  padding: 12px 24px;
  border-radius: 999px;
  text-decoration: none;
  background: var(--ahs-button-bg, #111) !important;
  color: var(--ahs-button-color, #fff) !important;
  border-color: var(--ahs-button-bg, #111) !important;
  font-size: var(--ahs-button-size, 16px) !important;
  font-weight: 700;
  transition: all 0.25s ease;
}

.ahs-slide .ahs-button:hover,
.ahs-slide .ahs-button:focus,
.ahs-slide .ahs-button:active {
  background: var(--ahs-button-hover-bg, #333) !important;
  color: var(--ahs-button-hover-color, #fff) !important;
  border-color: var(--ahs-button-hover-bg, #333) !important;
}

.ahs-col-media {
  display: flex;
  align-items: center;
  justify-content: center;
  height: 100%;
  min-height: 0;
}

.ahs-col-media.is-empty {
  min-height: 120px;
}

.ahs-media-frame {
  position: relative;
  width: 100%;
  height: 100%;
  min-height: 0;
  display: flex;
  align-items: center;
  justify-content: center;
  border-radius: var(--ahs-media-radius, 0px);
  overflow: hidden;
}

.ahs-media-frame picture,
.ahs-media-frame img,
.ahs-media-video {
  width: 100%;
  height: 100%;
  display: block;
}

.ahs-fit-contain img,
.ahs-fit-contain .ahs-media-video {
  object-fit: contain;
}

.ahs-fit-cover img,
.ahs-fit-cover .ahs-media-video {
  object-fit: cover;
}

.ahs-fit-auto img,
.ahs-fit-auto .ahs-media-video {
  object-fit: unset;
  width: auto;
  max-width: 100%;
  max-height: 100%;
}

.ahs-arrow {
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  z-index: 6;
  width: 48px;
  height: 48px;
  border: 0;
  border-radius: 999px;
  background: var(--ahs-arrow-bg, #111111);
  color: var(--ahs-arrow-color, #fff);
  cursor: pointer;
  transition: background .2s ease, color .2s ease;
}

.ahs-arrow:hover,
.ahs-arrow:focus {
  background: var(--ahs-arrow-hover-bg, #111111);
  color: var(--ahs-arrow-hover-color, #fff);
}

.ahs-arrow-prev {
  left: 18px;
}

.ahs-arrow-next {
  right: 18px;
}

.ahs-dots {
  position: static;
  left: auto;
  bottom: auto;
  transform: none;
  z-index: 6;
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
  justify-content: center;
  align-items: center;
  width: 100%;
  margin: 0;
  padding: 14px 12px 0;
  box-sizing: border-box;
}

.ahs-dot {
  width: 12px;
  height: 12px;
  border-radius: 50%;
  border: 0;
  background: var(--ahs-dot-color, rgba(255,255,255,0.38));
  cursor: pointer;
  padding: 0;
  transition: background .2s ease;
}

.ahs-dot:hover,
.ahs-dot:focus {
  background: var(--ahs-dot-hover-color, rgba(255,255,255,0.68));
}

.ahs-dot.is-active {
  background: var(--ahs-dot-active-color, #fff);
}

.ahs-align-default .ahs-text-box,
.ahs-align-center-left .ahs-text-box {
  justify-content: center;
  align-items: flex-start;
  text-align: left;
}

.ahs-align-top-left .ahs-text-box {
  justify-content: flex-start;
  align-items: flex-start;
  text-align: left;
}

.ahs-align-bottom-left .ahs-text-box {
  justify-content: flex-end;
  align-items: flex-start;
  text-align: left;
}

.ahs-align-top-right .ahs-text-box {
  justify-content: flex-start;
  align-items: flex-end;
  text-align: right;
}

.ahs-align-center-right .ahs-text-box {
  justify-content: center;
  align-items: flex-end;
  text-align: right;
}

.ahs-align-bottom-right .ahs-text-box {
  justify-content: flex-end;
  align-items: flex-end;
  text-align: right;
}

.ahs-align-top-center .ahs-text-box {
  justify-content: flex-start;
  align-items: center;
  text-align: center;
}

.ahs-align-center-center .ahs-text-box {
  justify-content: center;
  align-items: center;
  text-align: center;
}

.ahs-align-bottom-center .ahs-text-box {
  justify-content: flex-end;
  align-items: center;
  text-align: center;
}

@media (max-width: 767px) {
  .ahs-slider-wrap {
    padding-bottom: 0;
  }

  .ahs-slide {
    height: var(--ahs-height-mobile, var(--ahs-height, 520px));
    min-height: var(--ahs-height-mobile, var(--ahs-height, 520px));
  }

  .ahs-slide-inner,
  .ahs-slide.ahs-media-left .ahs-slide-inner {
    grid-template-columns: 1fr;
  }

  .ahs-mobile-media-first .ahs-col-media {
    order: 1;
  }

  .ahs-mobile-media-first .ahs-col-text {
    order: 2;
  }

  .ahs-mobile-text-first .ahs-col-text {
    order: 1;
  }

  .ahs-mobile-text-first .ahs-col-media {
    order: 2;
  }

  .ahs-arrow {
    width: 42px;
    height: 42px;
  }

  .ahs-arrow-prev {
    left: 10px;
  }

  .ahs-arrow-next {
    right: 10px;
  }

  .ahs-dots {
    display: none;
  }

  .ahs-bg-image {
    background-image: var(--ahs-bg-mobile, var(--ahs-bg-desktop));
  }

  .ahs-slide .ahs-title {
    font-size: var(--ahs-title-mobile-size, var(--ahs-title-size, 20px)) !important;
  }

  .ahs-slide .ahs-content,
  .ahs-slide .ahs-content p,
  .ahs-slide .ahs-content li {
    font-size: var(--ahs-content-mobile-size, var(--ahs-content-size, 16px)) !important;
  }

  .ahs-slide .ahs-button,
  .ahs-slide .ahs-button:visited {
    font-size: var(--ahs-button-mobile-size, var(--ahs-button-size, 14px)) !important;
  }
}
