.g-home .mp-top-banner .flexslider {
  background: #142720 !important;
  border: 0;
  border-radius: 12px;
  margin: 0 0 32px;
}
.g-home .mp-top-banner .slides > li { position: relative; }
.g-home .mp-top-banner .slides img {
  width: 100%;
  height: clamp(270px, 34vw, 420px);
  object-fit: cover;
  border-radius: 12px;
}
.g-home .mp-top-banner .flex-caption {
  box-sizing: border-box;
  inset: auto 0 0;
  width: 100%;
  padding: 30px 64px 24px;
  margin: 0;
  color: #fff;
  background: linear-gradient(transparent, rgba(10, 26, 21, .92));
  border-radius: 0 0 12px 12px;
  font-size: clamp(16px, 1.6vw, 22px);
}
.g-home .mp-top-banner .slides > li:first-child img { object-position: 72% center; }
.g-home .mp-top-banner .slides > li:first-child .flex-caption {
  inset: 0 auto 0 0;
  width: min(65%, 720px);
  display: flex;
  flex-direction: column;
  justify-content: center;
  gap: 10px;
  background: linear-gradient(90deg, rgba(12, 32, 26, .92), rgba(12, 32, 26, .48) 75%, transparent);
  border-radius: 12px 0 0 12px;
  pointer-events: none;
}
.g-home .mp-top-banner .flex-caption strong {
  display: block;
  font-size: clamp(23px, 3.4vw, 46px);
  line-height: 1.12;
}
.g-home .mp-top-banner .flex-caption span { font-size: clamp(14px, 1.6vw, 19px); }
.g-home .mp-top-banner .flex-direction-nav a { border-radius: 50%; }
.g-home .mp-top-banner .flex-control-nav a { border-radius: 50%; }
@media (max-width: 600px) {
  .g-home .mp-top-banner .flex-caption { padding: 22px 44px 16px; }
  .g-home .mp-top-banner .slides > li:first-child .flex-caption {
    inset: auto 0 0;
    width: 100%;
    background: linear-gradient(transparent, rgba(10, 26, 21, .96));
    border-radius: 0 0 12px 12px;
  }
}
