.benefit-card {
  position: relative;
  overflow: hidden;
  height: 17rem;
  display: flex;
  border-radius: 20px;
}
.benefit-card .overlay {
  top: 0;
  left: 0;
  bottom: 0;
  right: 0;
  position: absolute;
  background: linear-gradient(180deg, rgba(4, 18, 55, 0) 0%, rgba(4, 18, 55, 0.8) 100%);
  z-index: -1;
}
.benefit-card .bg-image {
  position: absolute;
  height: 100%;
  left: 0;
  right: 0;
  top: 0;
  bottom: 0;
  z-index: -2;
  width: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}
@media (min-width: 769px) {
  .benefit-card {
    height: 100%;
  }
}
.benefit-card .icon {
  position: absolute;
  top: -1.5rem;
  left: 1rem;
  width: 10rem;
  height: 5rem;
}
@media (min-width: 769px) {
  .benefit-card .icon {
    width: auto;
    height: auto;
    top: -4rem;
    left: 0;
  }
}
.benefit-card .content {
  color: #f8f6f2;
  text-align: left;
  align-self: flex-end;
  padding-top: 2.3rem;
  padding-bottom: 1.7rem;
  padding-left: 1.4rem;
  padding-right: 4rem;
  width: 100%;
}
.benefit-card .content h3 {
  padding-bottom: 0.5rem;
  font-size: 2.4rem;
  line-height: 26.4px;
  font-weight: 500;
}
.benefit-card .content p {
  font-size: 1.4rem;
  font-weight: 400;
  line-height: 18.2px;
}
@media (min-width: 769px) {
  .benefit-card .content {
    background: rgba(212, 212, 212, 0.6509803922);
    border-radius: 30px;
    display: flex;
    position: absolute;
    left: 1.4rem;
    bottom: 1.4rem;
    width: 77rem;
    height: 20.7rem;
    align-items: center;
    padding-inline: 5.5rem;
    gap: 5rem;
    opacity: 0;
  }
  .benefit-card .content h3 {
    font-size: 5.1rem;
    font-weight: 500;
    line-height: 55.08px;
    padding: 0;
    flex: 1;
  }
  .benefit-card .content p {
    flex: 1;
    padding: 0;
    font-size: 2.1rem;
    line-height: 29.4px;
    font-weight: 400;
  }
}
.benefit-card.swiper-slide-active .content {
  opacity: 1;
  transition-duration: 500ms;
}
