/* ============ Мобильная адаптация навигации (≤992px) ============ */
@media (max-width: 991.98px) {


  .navLogoDesctop {
    display: none;
  }

  .navLogoMobail {
    display: block;
  }

  /* Собираем header в колонку: бургер, логотип, потом меню */
  .containerHeader .container-fluid {
    flex-direction: column;
    align-items: center;
    padding: 10px;
  }

  /* Центрируем бургер */
  .navbar-toggler {
    align-self: center;
    margin-bottom: 8px;
  }

  /* Немного уменьшаем и центрируем логотип */
  .navbar-brand {
    position: static;
    transform: none;
    margin-bottom: 8px;
  }

  /* Стили collapse-меню: полная ширина, фон, плавный выезд */
  .navbar-collapse {
    max-height: 0;
    /* изначально скрыто */
    overflow: hidden;
    transition: max-height 0.4s ease-in-out, padding 0.4s ease;
    padding-top: 0;
    padding-bottom: 0;
  }

  .navbar-collapse.show {
    max-height: 300px;
    /* достаточно, чтобы вместить все ссылки */
    padding-top: 10px;
    /* возвращаем внутренние отступы */
    padding-bottom: 10px;
  }

  /* Вертикальный список ссылок */
  .navbar-nav {
    display: flex !important;
    flex-direction: column;
    gap: 12px;
    align-items: center;
    width: 100%;
  }

  /* Каждая группа ссылок (block-link) растягивается по ширине */
  .block-link {
    flex-direction: column !important;
    width: 100%;
    text-align: center;
  }

  /* Отступы и размер ссылок для удобства тапов */
  .nav-link {
    padding: 8px 0;
    font-size: 18px !important;
  }
}

/* =============hero-block================== */

@media (max-width: 768px) {
  body {
    background: linear-gradient(90deg, rgba(34, 37, 44, 1), rgba(34, 37, 44, 0.7)),
      100% 0% / 170% 10% no-repeat url(../images/backgroun/main\ screen.webp),
      no-repeat linear-gradient(268.37deg, #22252C 21.06%, rgba(34, 37, 44, 0.7) 55.11%),
      linear-gradient(182.48deg, rgba(34, 37, 44, 0) 54.94%, #22252C 96.03%);
  }

  .hero-block {
    margin: 0px;
    padding: 0px;
  }

  .hero-block h1 {
    font-size: 36px;
    text-align: start;
    font-weight: 600;
    line-height: 100%;
    margin-bottom: 50px;
  }

  .hero-block p {
    font-size: 26px;
    text-align: start;
    font-weight: 400;
    line-height: 100%;
  }

  .tags-block {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 10px 30px;
    justify-items: start;
    align-items: center;
    max-width: 400px;
    margin: 0 auto;
  }

  .tag-item {
    display: flex;
    align-items: center;
    gap: 8px;
    font-size: 16px;
    color: white;
  }

  .tagImg {
    width: 16px;
    height: 16px;
  }
}

@media (max-width: 480px) {

  .hero-block {
    margin: 0px;
    padding: 0px;
    margin-bottom: 50px;
  }

  .hero-block h1 {
    font-size: 36px;
    text-align: start;
    font-weight: 600;
    line-height: 100%;
    margin-bottom: 50px;
  }

  .hero-block p {
    font-size: 26px;
    text-align: start;
    font-weight: 400;
    line-height: 100%;
  }

  .tags-block {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 10px 30px;
    justify-items: start;
    align-items: center;
    max-width: 400px;
    margin: 0 auto;
  }

  .tag-item {
    display: flex;
    align-items: center;
    gap: 8px;
    font-size: 16px;
    color: white;
  }

  .tagImg {
    width: 16px;
    height: 16px;
  }

  .tag-item span {
    font-weight: 400;
    font-size: 16px;
    line-height: 100%;
  }
}

/* ----------------- Планшеты (≤1024px) ----------------- */
@media (max-width: 1024px) {
  .containerAdvantages {
    padding: 0 20px;
  }

  .advantages-grid {
    grid-template-columns: repeat(2, 1fr);
    gap: 20px;
  }
}

/* ----------------- Смартфоны (≤768px) ----------------- */
@media (max-width: 768px) {
  .containerAdvantages {
    padding: 0 10px;
    margin-top: 0px;
  }

  .titleAdvantages {
    margin-top: 20px;
  }

  .titleAdvantages h1 {
    font-size: 28px;
  }

  .advantages-grid {
    grid-template-columns: 1fr;
    gap: 16px;
    padding: 20px 0;
  }

  .adv-card {
    height: 300px;
    padding: 16px;
  }

  .adv-card h3 {
    font-family: Tilda Sans;
    font-weight: 900;
    font-size: 22px;
    line-height: 100%;
    letter-spacing: 0%;

  }

  .adv-card p {
    font-family: Tilda Sans;
    font-weight: 400;
    font-size: 18px;
    line-height: 24px;
    letter-spacing: 0%;
    text-align: center;
  }
}


/* ------------------ Смартфоны (≤768px) ------------------ */
@media (max-width: 768px) {
  .consult-form {
    display: flex;
    flex-direction: column;
    gap: 12px;
    /* уменьшаем отступы между полями */
    width: 100%;
    /* растягиваем форму на весь контейнер */
    margin: 0 auto 30px;
    /* чуть меньше отступ снизу */
    padding: 0 10px;
    /* небольшой внутренний отступ по бокам */
  }

  .consult-form input {
    width: 100%;
    /* каждая строка на всю ширину */
    font-size: 16px;
    /* сохраняем читаемый размер */
    padding: 12px 8px;
    /* чуть больше “кликабельной” области */
  }

  .consult-form button {
    width: 100%;
    /* кнопка растянута на всю ширину */
    padding: 14px;
    /* увеличиваем высоту кнопки */
    font-size: 16px;
  }
}

/* -------------- Очень маленькие экраны (≤480px) -------------- */
@media (max-width: 480px) {
  .consult-form {
    padding: 0 5px;
  }

  .consult-form input,
  .consult-form button {
    font-size: 14px;
    /* чуть меньше шрифт, если совсем тесно */
    padding: 10px 6px;
  }
}

/* ---------------- Планшеты и небольшие экраны (≤768px) ---------------- */
@media (max-width: 768px) {
  .world-block {
    padding: 120px 10px;
    /* уменьшаем вертикальные отступы и боковые паддинги */
  }

  .world-content {
    width: 100%;
    /* занимаем всю доступную ширину */
    padding: 0 10px;
    /* дополнительный внутренний отступ, чтобы текст не «прилипал» к краю */
  }

  .world-content h2 {
    font-family: Tilda Sans;
    font-weight: 900;
    font-size: 32px;
    line-height: 100%;
    letter-spacing: 0%;
    text-align: center;

  }

  .world-content p {
    font-family: Tilda Sans;
    font-weight: 400;
    font-size: 18px;
    line-height: 26px;
    letter-spacing: 0%;
    text-align: center;

  }
}

/* --------------- Мелкие телефоны (≤480px) --------------- */
@media (max-width: 480px) {
  .world-block {
    padding: 80px 8px;
    /* ещё более компактные отступы */
  }

  .world-content h2 {
    font-family: Tilda Sans;
    font-weight: 900;
    font-size: 32px;
    line-height: 100%;
    letter-spacing: 0%;
    text-align: center;

  }

  .world-content p {
    font-family: Tilda Sans;
    font-weight: 400;
    font-size: 18px;
    line-height: 26px;
    letter-spacing: 0%;
    text-align: center;

  }
}


/* ===================== Мобильная адаптация для Services-карусели ===================== */
@media (max-width: 768px) {

  /* Ставит хелп-контейнер в колонку (сначала карусель, потом текст) */
  .help-container {
    flex-direction: column-reverse;
    gap: 20px;
  }

  /* Окно карусели растягиваем на 100% */
  .carousel-wrapper {
    width: 100%;
  }

  /* Между карточками можно сделать чуть меньше gap */
  .carousel-track {
    gap: 12px;
    direction: ltr !important;
  }

  /* Каждая карточка теперь ровно 100% ширины окна */
  .case-card {
    flex: 0 0 100%;
    width: 100%;
  }

  /* Центрируем стрелки под каруселью */
  .carousel-controls {
    justify-content: center;
    margin: 12px 0;
    width: 100%;
  }

  /* Текстовый блок под каруселью по центру */
  .help-text {
    text-align: start;
    padding: 0px;
  }


}

/* ============ Планшеты и небольшие экраны (≤992px) ============ */
@media (max-width: 992px) {
  .stats-container {
    flex-direction: column;
    align-items: center;
  }

  .stats-section {
    background:
      url(../images/backgroun/Frame\ \(1\).png) no-repeat center/cover,
      rgba(255, 255, 255, 1);
    padding: 10px;
  }

  .stats-image {
    order: -1;
    text-align: center;
    margin-bottom: 20px;
  }

  .stats-title {
    font-size: 24px;
    margin: 0;
  }

  .stats-grid {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    /* 2 колонки */
    gap: 20px 30px;
    width: 100%;
    padding: 0 15px;
    box-sizing: border-box;
  }

  .stat-item {
    text-align: center;
  }
}

/* ============ Смартфоны (≤768px) ============ */
@media (max-width: 768px) {
  .stats-container {
    flex-direction: column;
    align-items: center;
  }

  .stats-section {
    background:
      url(../images/backgroun/Frame\ \(1\).png) no-repeat center/cover,
      rgba(255, 255, 255, 1);
    padding: 10px;
  }

  .stats-image {
    order: -1;
    text-align: center;
    margin-bottom: 20px;
  }

  .stats-title {
    font-size: 24px;
    margin: 0;
  }

  .stats-grid {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    /* 2 колонки */
    gap: 20px 30px;
    width: 100%;
    padding: 0 15px;
    box-sizing: border-box;
  }

  .stat-item {
    text-align: center;
  }
}

/* ============ Очень маленькие экраны (≤480px) ============ */
@media (max-width: 480px) {
  .stats-title {
    font-size: 18px;
  }

  .stat-value {
    font-size: 28px;
  }

  .stat-text {
    font-size: 12px;
  }

  .stats-section {
    background: 100% 100% / 100% 100% no-repeat url(../images/backgroun/Frame\ \(1\).png),
      rgba(255, 255, 255, 1);
  }
}

/* ============ Планшеты и небольшие экраны (≤768px) ============ */
@media (max-width: 768px) {

  /* Переводим основную обёртку в столбик */
  .partners-container {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 20px;
  }

  /* Заголовок “Как мы работаем:” центрируем */
  .partners-text h2 {
    text-align: center;
    font-size: 24px;
    margin-bottom: 16px;
  }

  /* Окно карусели занимает всю ширину */
  .carousel-wrapper-partners {
    width: 100%;
    overflow: hidden;
  }

  /* Между карточками чуть меньше gap */
  .carousel-track-partners {
    gap: 12px;
  }

  /* Каждая карточка — по одной на экран */
  .case-card-partners {
    flex: 0 0 100%;
    width: 100%;
  }

  /* Контейнер стрелок под каруселью, по центру */
  .carousel-controls-partners {
    display: flex;
    justify-content: center;
    width: 100%;
    margin-top: 12px;
    gap: 16px;
  }

  /* Текст “Сотрудничество” (h1) подвинем и центрируем */
  .titlePartners h1 {
    text-align: center;
    font-size: 28px;
    margin: 24px 0;
  }
}

/* ============ Очень маленькие экраны (≤480px) ============ */
@media (max-width: 480px) {
  .partners-text h2 {
    font-size: 20px;
    margin-bottom: 12px;
  }

  .titlePartners h1 {
    font-size: 24px;
  }

  .case-body-partners h3 {
    font-size: 18px;
  }

  .case-body-partners p {
    font-size: 14px;
    line-height: 1.4;
  }

  .carousel-controls-partners .carousel-btn-partners {
    font-size: 20px;
    padding: 6px 10px;
  }
}

/* ============ Планшеты и небольшие экраны (≤768px) ============ */
@media (max-width: 768px) {

  /* Контейнер отзывов — полная ширина с отступами */
  .containerReviews {
    width: 100%;
    padding: 0 10px;
  }

  .titleReviews {
    margin-top: 0px;
  }

  /* Заголовок центрируем и уменьшаем шрифт */
  .titleReviews h1 {
    text-align: center;
    font-size: 28px;
    margin: 20px 0;
  }

  /* Карусель: окно занимает всю ширину */
  .carousel-wrapper-reviews {
    width: 100%;
    overflow: hidden;
  }

  /* Между карточками чуть меньше gap */
  .carousel-track-reviews {
    gap: 12px;
  }

  /* Одна карточка на экран, в колонку */
  .testimonial-card-reviews {
    flex: 0 0 100%;
    display: flex;
    flex-direction: column;
    align-items: center;
    text-align: center;
    gap: 16px;
    padding: 16px;
  }

  /* Фото – подстраиваемся под ширину */
  .testimonial-img-reviews {
    width: 100%;
    height: auto;
    max-width: 300px;
  }

  /* Центрируем стрелки под каруселью */
  .carousel-controls-reviews {
    display: flex;
    justify-content: center;
    gap: 20px;
    margin: 12px 0;
    width: 100%;
  }

  /* Уменьшаем размеры заголовка и текста внутри карточки */
  .testimonial-content-reviews h3 {
    font-size: 20px;
    margin: 0 0 8px;
  }

  .testimonial-content-reviews p {
    font-size: 14px;
    line-height: 1.4;
    margin: 0;
  }
}

/* ============ Очень маленькие экраны (≤480px) ============ */
@media (max-width: 480px) {
  .titleReviews h1 {
    font-size: 24px;
  }

  .testimonial-content-reviews h3 {
    font-size: 18px;
  }

  .testimonial-content-reviews p {
    font-size: 12px;
  }

  .carousel-btn-reviews {
    font-size: 20px;
    padding: 6px 10px;
  }
}


/* ============ Смартфоны и планшеты (≤768px) ============ */
@media (max-width: 768px) {

  .help-section {
    padding: 0px;
  }

  /* Основной контейнер: колонки → стопка */
  .help-content {
    display: flex;
    flex-direction: column;
    align-items: stretch;
    gap: 20px;
    /* расстояние между блоками */
    padding: 0 10px;
    /* отступы по бокам */
  }

  /* Текстовая часть: центрируем заголовок и параграфы */
  .help-text {
    width: 100%;
  }

  .help-text h2 {
    font-family: Tilda Sans;
    font-weight: 400;
    font-size: 32px;
    line-height: 100%;
    letter-spacing: 0%;
    vertical-align: middle;
    margin-bottom: 20px;
  }

  .help-text p {
    font-family: Tilda Sans;
    font-weight: 400;
    font-size: 20px;
    line-height: 100%;
    letter-spacing: 0%;
    vertical-align: middle;

  }

  /* Форма: растягиваем на всю ширину */
  .help-form {
    width: 100%;
  }

  .consult-form2 {
    display: flex;
    flex-direction: column;
    gap: 12px;
  }

  .consult-form2 label {
    width: 100%;
    font-size: 14px;
  }

  .consult-form2 input[type="text"],
  .consult-form2 input[type="email"],
  .consult-form2 input[type="tel"] {
    width: 100%;
    padding: 10px 8px;
    font-size: 14px;
  }

  .btn-submit {
    width: 100%;
    padding: 12px;
    font-size: 16px;
  }
}

/* ============ Очень маленькие экраны (≤480px) ============ */
@media (max-width: 480px) {
  .help-text h2 {
    font-family: Tilda Sans;
    font-weight: 400;
    font-size: 32px;
    line-height: 100%;
    letter-spacing: 0%;
    vertical-align: middle;
    margin-bottom: 32px;
  }

  .help-text p {
    font-family: Tilda Sans;
    font-weight: 400;
    font-size: 20px;
    line-height: 100%;
    letter-spacing: 0%;
    vertical-align: middle;
    margin-bottom: 32px;
  }

  .consult-form2 label {
    font-size: 13px;
  }

  .btn-submit {
    font-size: 14px;
    padding: 10px;
  }
}


/* Адаптация футера под мобильные (≤768px) */
@media (max-width: 768px) {

  /* Собираем весь верхний блок в колонку */
  .footer-top {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 16px;
    padding: 0 10px;
  }

  /* Навигацию делаем вертикальной под логотипом */
  .footer-nav {
    display: flex;
    flex-direction: column;
    gap: 8px;
    width: 100%;
    max-width: 300px;
    /* чтобы не растягивалась слишком широко */
    text-align: center;
  }

  /* Логотип между двумя навигациями */
  .footer-logo {
    position: static;
    transform: none;
    margin: 0;
    display: none;
  }

  .footer-logo-mobail {
    display: block;
    text-align: center;
  }

  .footer-logo-mobail img {
    width: 200px;
  }

  /* Сохраняем порядок: сначала левое меню, потом логотип, потом правое меню */
  .footer-nav--left {
    order: 1;
  }

  .footer-logo {
    order: 2;
  }

  .footer-nav--right {
    order: 3;
  }

  /* Нижний блок — тоже в колонку */
  .footer-bottom {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 8px;
    padding: 16px 10px;
    text-align: center;
  }
}

/* Ещё компактнее на узких экранах (≤480px) */
@media (max-width: 480px) {
  .footer-logo img {
    height: 28px;
    display: none;
  }

  .footer-nav a {
    font-size: 16px;
  }

  .footer-bottom {
    font-size: 14px;
    gap: 6px;
  }
}