.banner_story {
  background-color: var(--section-color);
  padding: 6rem 0;
  text-align: center;
  position: relative;
}
.banner_story::after {
  content: "";
  background-image: url("../themes/farskecms/assets/images/pribeh_back.png");
  background-repeat: no-repeat;
  background-size: cover;
  background-position: center center;
  display: block;
  position: absolute;
  inset: 0;
  top: 0;
  left: 0;
  z-index: 1;
}
.banner_story::before {
  content: "";
  background-color: #BD3233;
  opacity: 0.55;
  display: block;
  position: absolute;
  inset: 0;
  top: 0;
  left: 0;
  z-index: 2;
}
.banner_story h2 {
  position: relative;
  z-index: 3;
  color: var(--text-color-invert);
  width: 100%;
  text-align: center;
  font-size: clamp(2.2rem, 5vw, 4rem);
  margin: 0;
  font-weight: 600;
  font-family: "Poetsen One", display;
}
.banner_story p {
  position: relative;
  z-index: 3;
  color: var(--text-color-invert);
  width: 100%;
  max-width: 768px;
  margin: 1rem auto 2rem auto;
  text-align: center;
  font-family: "Ubuntu", sans-serif;
}
.banner_story .button {
  position: relative;
  z-index: 3;
  display: block;
  width: fit-content;
  margin: auto;
}
@media only screen and (max-width: 1200px) {
  .hp_story_grid {
    width: 100%;
  }
  .hp_story_grid .hp_story_item_text h4 {
    font-size: 1.35rem;
    margin: 0.15rem 0;
  }
}
@media only screen and (max-width: 900px) {
  .hp_story_grid {
    display: flex;
    overflow-x: auto;
    width: calc(100% + 1rem);
    scroll-snap-type: x mandatory;
  }
  .hp_story_grid .hp_story_item {
    scroll-snap-align: start;
    width: 40vw;
    flex-shrink: 0;
  }
}
@media only screen and (max-width: 640px) {
  .hp_story {
    padding: 4rem 0;
  }
  .hp_story h2 {
    font-size: 2.5rem;
  }
}
@media only screen and (max-width: 425px) {
  .hp_story_grid .hp_story_item {
    width: 70vw;
  }
}
