.bg-image-hero-2 {
  /* стартовые состояния */
  /* opacity: 0;
  transform: translateY(12px) scale(1.02);
  transition: opacity 1.15s ease, transform 1.15s cubic-bezier(.22,.61,.36,1); */
}

.header-text-2 {
  font-family: "Playfair Display", serif;
  font-style: italic;

  /* стартовые состояния */
  opacity: 0;
  transform: translateY(22px);
  transition: opacity 1.9s ease, transform 1.9s ease;
}

/* тонкая декоративная линия перед и после текста */
.header-text-2::after {
  content: "";
  display: block;
  justify-self: center;
  width: 320px;
  height: 2px;
  margin-top: 12px;
  background: linear-gradient(90deg, transparent, rgba(255,255,255,.4), transparent);
  border-radius: 2px;
  opacity: .9;

  /* стартовые состояния */
  transform: scaleX(.6);
  transform-origin: center;
  opacity: 0;
  transition: opacity 1.6s ease .5s, transform 1.6s ease .5s;
}

.subheader-text-2 {
  font-family: "Lora", serif;
  font-style: italic;

  /* стартовые состояния */
  opacity: 0;
  transform: translateY(18px);
  transition: opacity 1.9s ease 1.2s, transform 1.9s ease 1.2s; /* задержка после заголовка */
}

.hero-section-2 .header-text-2 { font-size: 3rem; }
.hero-section-2 .subheader-text-2 { font-size: 1.2rem; }

/* -------- АДАПТИВ -------- */
@media (max-width: 991px){
  .hero-section-2 .header-text-2 { font-size: 2.5rem; }
  .hero-section-2 .subheader-text-2 { font-size: 1.1rem; }

  .wmys-section .heading_h1::after { width: 360px; }
}
@media (max-width: 767px){
  .hero-section-2 .header-text-2 { font-size: 2rem; }
  .hero-section-2 .subheader-text-2 { font-size: 1rem; }

  .wmys-section .heading_h1::after { width: 300px; }
}
@media (max-width: 479px){
  .hero-section-2 .header-text-2 { font-size: 1.6rem; }
  .hero-section-2 .subheader-text-2 { font-size: 0.9rem; }
  .header-text-2::after { width: 240px; }
}

/* === Состояния при входе во вьюпорт === */
/* когда ~20% секции видно — проявляем фон */
.hero-section-2.is-bg-visible .bg-image-hero-2{
  opacity: 1;
  transform: none;
}

/* когда доскроллили до текста — показываем заголовок и подзаголовок */
.hero-section-2.is-text-visible .header-text-2{
  opacity: 1;
  transform: none;
}
.hero-section-2.is-text-visible .header-text-2::after{
  opacity: .9;
  transform: scaleX(1);
}
.hero-section-2.is-text-visible .subheader-text-2{
  opacity: 1;
  transform: none;
}

/* Уважение к reduced motion */
@media (prefers-reduced-motion: reduce){
  .bg-image-hero-2,
  .hero-section-2 .header-text-2,
  .hero-section-2 .subheader-text-2,
  .header-text-2::after{
    transition: none !important;
    transform: none !important;
    opacity: 1 !important;
  }
}

/* было */
.hero-section-2.is-bg-visible .bg-image-hero-2{
  /* opacity: 1;
  transform: none; */
}

/* добавь строку ниже как fallback */
.bg-image-hero-2.is-bg-visible{
  /* opacity: 1;
  transform: none; */
}

.hero-2-trigger { position:absolute; top:20vh; left:0; width:1px; height:1px; }