/* ====================== [ Mobile Responsive Styles ] ====================== */
@media (max-width: 767px) {
  /* Общие стили для всех страниц */
  body {
    font-size: 16px;
  }
  /* Заголовки */
  h1 { font-size: 35px !important; }
  h2 { font-size: 28px !important; }
  h3 { font-size: 55px !important; }
  h4 { font-size: 20px !important; }
  h5 { font-size: 22px !important; }
  h6 { font-size: 22px !important; }
  /* Отступы и контейнеры */
  .container, .main-content {
    width: 100% !important;
    max-width: 100% !important;
    box-sizing: border-box;
    padding-left: 15px !important;
    padding-right: 15px !important;
  }
  .section-padding {
    padding: 40px 0;
  }
  .mb-40 { margin-bottom: 20px; }
  .mt-30 { margin-top: 15px; }
  .mb-30 { margin-bottom: 15px; }
  .mb-20 { margin-bottom: 10px; }
  .mb-15 { margin-bottom: 8px; }
  /* Навигация и шапка */
  .navbar {
    padding: 15px 0;
  }
  .navbar .navbar-nav .nav-link {
    font-size: 16px;
    font-weight: 500;
  }
  .navbar .container {
    display: flex !important;
    align-items: center !important;
    justify-content: space-between !important;
    min-height: 56px;
    padding-top: 0 !important;
    padding-bottom: 0 !important;
  }
  .navbar .logo {
    width: 100px !important;
    min-width: 60px !important;
  }
  .logo img {
    width: 100px !important;
    min-width: 60px !important;
    height: auto !important;
    max-width: none !important;
    display: block;
    vertical-align: middle !important;
  }
  .navbar-toggler {
    position: fixed !important;
    right: 16px !important;
    top: 20px !important;
    z-index: 1001 !important;
    margin: 0 !important;
    width: 44px !important;
    height: 44px !important;
    min-width: 0 !important;
    min-height: 0 !important;
    padding: 0 !important;
    border-radius: 8px !important;
    border-width: 1px !important;
    box-sizing: border-box !important;
    background: none !important;
    display: flex !important;
    align-items: center;
    justify-content: center;
  }
  .navbar-nav {
    margin-top: 10px;
  }
  .navbar-nav li {
    margin: 8px 0;
  }
  .navbar-nav .nav-link {
    padding: 8px 0;
  }
  .navbar-collapse {
    position: fixed !important;
    width: 100% !important;
    left: 0 !important;
    right: 0 !important;
    top: 0;
    margin-left: 0 !important;
    margin-right: 0 !important;
  }
  /* Кнопки одинаковой длины и одна под другой */
  .buton, .btn, button {
    display: block !important;
    width: 60% !important;
    min-width: 200px !important;
    max-width: 320px !important;
    margin: 0 auto 16px auto !important;
    padding-left: 0 !important;
    padding-right: 0 !important;
    text-align: center !important;
    font-size: 16px !important;
    font-weight: 600 !important;
  }
  /* Списки */
  .rest {
    padding-left: 1em;
  }
  .rest li {
    margin-bottom: 10px;
    line-height: 1.6;
  }
  /* Заголовки страниц */
  .page-app-header {
    min-height: 40vh;
  }
  .page-app-header .text-center h1 {
    font-size: 35px;
  }
  /* Футер */
  .app-footer {
    padding: 50px 0 0;
  }
  .app-footer .item-clumn {
    margin-bottom: 30px;
  }
  .app-footer .social {
    margin-top: 20px;
  }
  .app-footer .sub-footer {
    margin-top: 40px;
    padding: 20px 0;
  }
  /* Формы */
  .form-group {
    margin-bottom: 15px;
  }
  input, textarea, select {
    padding: 10px 15px;
    font-size: 14px;
    min-height: 44px;
  }
  .form-group input,
  .form-group textarea {
    width: 100%;
    box-sizing: border-box;
  }
  /* Карточки и блоки */
  .item {
    margin-bottom: 20px;
  }
  .item-clumn {
    margin-bottom: 30px;
  }
  /* Специфичные стили для privacy.html */
  .privacy-content {
    padding: 20px 15px;
  }
  .privacy-content ul {
    padding-left: 20px;
  }
  .privacy-content li {
    margin-bottom: 10px;
  }
  /* Специфичные стили для pricing-plan.html */
  .pricing-item {
    margin-bottom: 20px;
  }
  .pricing-features {
    padding: 15px;
  }
  /* Специфичные стили для services.html */
  .services-item {
    margin-bottom: 20px;
  }
  .services-icon {
    margin-bottom: 15px;
  }
  /* Специфичные стили для contact.html */
  .contact-form {
    padding: 20px 15px;
  }
  .contact-info {
    margin-top: 30px;
  }
  /* Специфичные стили для more.html */
  .more-content {
    padding: 20px 15px;
  }
  .more-features {
    margin-top: 20px;
  }
  .subtitle {
    font-size: 16px !important;
    line-height: 1.8 !important;
    color: #999;
  }
  .features-list {
    list-style: none;
    padding: 0 !important;
    margin: 0 !important;
  }
  .features-list li {
    margin-bottom: 14px;
    font-size: 18px;
    display: flex;
    align-items: center;
    gap: 30px !important;
  }
  .features-list i {
    color: #3fa9f5;
    font-size: 20px;
  }
  /* Специфичные стили для login.html и registration.html */
  .auth-form {
    padding: 20px 15px;
  }
  .auth-links {
    margin-top: 20px;
  }
  /* Кастомный курсор скрываем на мобилках */
  .mouse-cursor {
    display: none !important;
  }
  /* Картинки не вылазят за границы */
  img {
    max-width: 100%;
    height: auto;
    display: block;
  }
  /* Убираем горизонтальный скролл */
  html, body {
    overflow-x: hidden;
  }
  /* Ограничиваем размер главного заголовка и центрируем */
  h1, .main-title, .main-header, .hero-title, .caption-title {
    font-size: 38px !important;
    line-height: 1.3 !important;
    word-break: break-word;
    text-align: center !important;
    margin-bottom: 20px !important;
    white-space: normal !important;
    letter-spacing: -0.01em;
    max-width: 100vw !important;
    padding-left: 5px !important;
    padding-right: 5px !important;
  }
  .features-list, .features-list li, .features, .features li {
    font-size: 18px !important;
    line-height: 1.7 !important;
  }
  .butons {
    text-align: center;
  }
  .butn-more, .button-more:focus, .button-more:active, .button-more:hover {
    font-size: 16px !important;
    font-weight: 700 !important;
    display: inline-block;
    text-align: center;
    margin: 0 0 18px 0 !important;
    width: 130px;
    max-width: 90vw;
  }
  .features-list li, .features li {
    font-size: 16px !important;
    line-height: 1.7 !important;
    position: relative;
    padding-left: 15px !important;
    text-indent: -8px;
  }
  .features-list li .icon-check, .features li .icon-check {
    position: absolute;
    left: 0;
    top: 50%;
    transform: translateY(-50%);
    font-size: 18px !important;
    display: inline-block;
    vertical-align: middle;
  }
  .loading {
    position: fixed;
    left: 50%;
    top: calc(50% - 40px);
    -webkit-transform: translateX(-50%) translateY(-50%);
    -ms-transform: translateX(-50%) translateY(-50%);
    transform: translateX(-50%) translateY(-50%);
    font-weight: 300;
    font-size: 13px;
    text-transform: uppercase;
    letter-spacing: 7px;
    z-index: 9999999999;
  }
  .first-column {
    margin-bottom: 0 !important;
  }
  .first-column {
  margin-bottom: 0 !important;
  }
  .serv-block .row {
    display: flex;
    flex-direction: column; /* Располагаем элементы вертикально */
  }
  
  .serv-block .row .content {
    order: 1;
    margin-bottom: 20px; /* Добавляем отступ снизу, если картинка идет после текста */
    margin-top: 0 !important; /* Убираем возможный верхний отступ */
  }
  
  .serv-block .row .serv-img {
    order: 2;
    margin-bottom: 0 !important; /* Убираем возможный нижний отступ у картинки */
    margin-top: 20px; /* Добавляем отступ сверху, если текст идет перед картинкой */
  }
  .faq-butn {
    margin-top: 40px !important;
  }
  /* Стили для заголовка "Давайте поговорим!" */
  h3.wow[data-splitting] {
    font-size: 35px !important;
    line-height: 1.3 !important;
    margin-bottom: 20px !important;
    text-align: left !important;
  }
}
@media (max-width: 480px) {
  .logo img {
    width: 100px !important;
    min-width: 32px !important;
  }
}
.app-price .item .amount h3 {
    font-size: 100px !important;
    font-weight: 500;
    color: #f45162;
    position: relative;
    display: inline-block;
    line-height: 1;
}
