.hero {
  margin-top: 40px;
  position: relative;
  width: 100%;
  aspect-ratio: 15 / 7;
  overflow: hidden;
}

/*.hero-slide {*/
/*  position: absolute;*/
/*  top: 0;*/
/*  left: 0;*/
/*  width: 100%;*/
/*  height: 100%;*/
/*  background-size: cover;*/
/*  background-position: center;*/
/*}*/

.hero-slide {
    position: absolute;
    width: 100%;
    height: 100%;
    top: 0;
    left: 0;
    background-size: contain;
    background-repeat: no-repeat;
    background-position: center;
}

.hero-slider {
  position: relative;
  width: 100%;
  height: 100%;
}

.hero-content {
  position: absolute;
  bottom: 12%;
  left: 50%;
  transform: translateX(-50%);
  text-align: center;
  color: #fff;
  text-shadow: 0 2px 12px rgba(0, 0, 0, 0.6);
}

.visually-hidden {
  position: absolute;
  width: 1px;
  height: 1px;
  margin: -1px;
  padding: 0;
  overflow: hidden;
  clip: rect(0, 0, 0, 0);
  border: 0;
}

.hero-overlay {
  width: 100%;
  justify-items: center;
  position: absolute;
  bottom: 4%;

  color: #fff;
  text-shadow: 0 2px 10px rgba(0, 0, 0, 0.6);
  z-index: 2;
}

.hero-title {
  font-size: 2.5rem;
  font-weight: 700;
  margin: 0 0 0.5rem;
}

.hero-subtitle {
  font-size: 1.25rem;
  font-weight: 400;
}