/* === Базовые стили для секции с видео и контентом === */

.videoSection {
  position: relative;
  width: 100%;
  height: 100vh;
  overflow: hidden;
}

.videoWrapper {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  z-index: -1;
}

.videoWrapper video {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  min-width: 100%;
  min-height: 100%;
  width: auto;
  height: auto;
  object-fit: cover;
}

.contentOverlay {
  position: absolute;
  top: 200px;
  left: 0;
  width: 100%;
  height: auto;
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  justify-content: flex-start;
  z-index: 2;
  text-align: left;
  padding-left: 400px;
  padding-right: 40px;
  box-sizing: border-box;
}

/* === Основной заголовок === */
.titleText {
  font-family: Arial, sans-serif;
  font-weight: bold;
  color: white;
  font-size: clamp(2.4rem, 5vw, 3.2rem);
  line-height: 1.35;
  text-shadow: 
    2px 2px 6px rgba(0, 0, 0, 0.8),
    -1px -1px 4px rgba(0, 0, 0, 0.6);
  margin: 0;
}

.titleText > div {
  white-space: nowrap;
  overflow: visible;
  text-overflow: unset;
  display: block;
  width: auto;
  min-width: 100%;
  font-size: inherit;
}

/* === Подзаголовок второго уровня === */
.subtitleText {
  font-family: Arial, sans-serif;
  color: white;
  font-size: clamp(1rem, 2.2vw, 1.4rem);
  font-weight: bold;
  line-height: 1.25;
  text-shadow: 
    2px 2px 6px rgba(0, 0, 0, 0.8),
    -1px -1px 4px rgba(0, 0, 0, 0.6);
  margin-top: 80px;
}

/* === Подзаголовок третьего уровня === */
.thirdText {
  font-family: Arial, sans-serif;
  color: white;
  font-size: clamp(0.9rem, 2vw, 1.3rem);
  font-weight: normal;
  line-height: 1.25;
  text-shadow: 
    2px 2px 6px rgba(0, 0, 0, 0.8),
    -1px -1px 4px rgba(0, 0, 0, 0.6);
  margin-top: 40px;
}

/* === Кнопка "Связаться" === */
.custom-button {
  display: inline-block;
  margin-top: 50px;
  padding: 12px 24px;
  font-family: 'Montserrat', sans-serif;
  font-size: 18px;
  font-weight: 400;
  color: white !important;
  text-decoration: none;
  border: 2px solid rgba(255, 255, 255, 0.6) !important;
  border-radius: 30px;
  backdrop-filter: blur(10px);
  background-color: rgba(255, 255, 255, 0.1);
  transition: all 0.3s ease;
}

.custom-button:hover {
  background-color: rgba(255, 255, 255, 0.2);
  border-color: rgba(255, 255, 255, 0.8) !important;
}

/* === Адаптация под планшеты и мобильные устройства === */

@media (max-width: 1024px) {
  .contentOverlay {
    top: 150px;
    padding-left: 20px;
    padding-right: 20px;
  }

  .titleText {
    font-size: clamp(1.8rem, 5vw, 2.6rem);
  }

  .subtitleText {
    font-size: clamp(1rem, 2.5vw, 1.5rem);
    margin-top: 60px;
  }

  .thirdText {
    font-size: clamp(0.95rem, 2.2vw, 1.3rem);
    margin-top: 30px;
  }

  .custom-button {
    font-size: 16px;
    padding: 10px 20px;
    border-radius: 25px;
    border-width: 2px;
    color: white;
  }
}

/* === Мобильные телефоны портрет === */
@media (max-width: 480px) {
  .contentOverlay {
    top: calc(200px + 200px * 0.15 - 20px);
    padding-left: 20px;
    padding-right: 20px;
  }

  .titleText {
    font-size: clamp(1.4rem, 5vw, 2rem);
  }

  .subtitleText {
    margin-top: 50px;
  }

  .thirdText {
    margin-top: 20px;
  }

  .custom-button {
    margin-top: 50px;
    font-size: 16px;
    padding: 10px 20px;
    border-radius: 25px;
    color: white;
  }
}
.videoWrapper video {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  min-width: 100%;
  min-height: 100%;
  width: auto;
  height: auto;
  object-fit: cover;
}
/* === Подзаголовок второго уровня (десктоп) === */
.subtitleText {
  font-family: Arial, sans-serif;
  color: white;
  font-size: clamp(1.1rem, 2.5vw, 1.6rem); /* ← Увеличенный размер */
  font-weight: bold;
  line-height: 1.3;
  text-shadow: 
    2px 2px 6px rgba(0, 0, 0, 0.8),
    -1px -1px 4px rgba(0, 0, 0, 0.6);
  margin-top: 64px; /* ← Было 80px, стало на 20% меньше */
}

/* === Подзаголовок третьего уровня (десктоп) === */
.thirdText {
  font-family: Arial, sans-serif;
  color: white;
  font-size: clamp(1rem, 2.2vw, 1.4rem); /* ← Увеличенный размер */
  font-weight: normal;
  line-height: 1.3;
  text-shadow: 
    2px 2px 6px rgba(0, 0, 0, 0.8),
    -1px -1px 4px rgba(0, 0, 0, 0.6);
  margin-top: 24px; /* ← Было 30px, стало на 20% меньше */
}
/* === Базовые стили для видеофона === */

.videoWrapper {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  overflow: hidden;
  z-index: -1;
}

.videoWrapper video {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  min-width: 100%;
  min-height: 100%;
  width: auto;
  height: auto;
  object-fit: cover;
  z-index: -1;
}

/* === Скрываем мобильное видео на десктопе === */
.desktop-video {
  display: block;
}

.mobile-video {
  display: none;
}

/* === Показываем только мобильное видео на маленьких экранах === */
@media (max-width: 480px) {
  .desktop-video {
    display: none;
  }

  .mobile-video {
    display: block;
  }
}