/**
 * Мобильная вёрстка публичных страниц (не кабинеты).
 * Подключать в общем шаблоне сайта ПОСЛЕ style.css и media.css:
 *   <link rel="stylesheet" href="/assets/template/css/public-mobile.css?v=20261027" />
 *
 * Страницы: /, /blog/, /about, /be-teacher, /katalog/, /login, /sign-teacher, /sign-students
 */

html {
  overflow-x: hidden;
}

body {
  overflow-x: hidden;
}

img,
svg,
video {
  max-width: 100%;
}

@media (max-width: 992px) {
  .container,
  .banner.container,
  .katalog .container {
    width: 100%;
    max-width: 100%;
    padding-left: 16px;
    padding-right: 16px;
    box-sizing: border-box;
  }

  header {
    flex-wrap: wrap;
    width: 100%;
    max-width: 100%;
    box-sizing: border-box;
  }

  .left_header,
  .right_header {
    box-sizing: border-box;
  }

  .nav {
    display: flex;
    flex-wrap: wrap;
    justify-content: flex-start;
    gap: 8px 16px;
    text-align: left;
  }

  .nav a {
    white-space: nowrap;
  }

  .title_flex {
    flex-wrap: wrap;
  }

  .title_flex h1,
  .title_flex .title_blog_page {
    width: 100%;
  }

  /* Карточки блога в ленте — высота по содержимому, не 300px-обрезка */
  .blog_page .blog_item,
  .blog .blog_item {
    height: auto;
    min-height: 0;
    overflow: visible;
  }

  .blog_page .blog_text p,
  .blog .blog_text p {
    max-height: none;
  }

  .collaboration_item,
  .adv_item,
  .project_text,
  .project_img {
    width: 100%;
    max-width: 100%;
  }

  .katalog input[type="submit"],
  .katalog .btn-primary,
  .flex-form,
  .filter {
    width: 100%;
    max-width: 100%;
  }

  .filter select,
  .filter input,
  .flex-form input,
  .flex-form select,
  .flex-form textarea,
  form input[type="text"],
  form input[type="email"],
  form input[type="password"],
  form input[type="tel"],
  form select,
  form textarea {
    max-width: 100%;
    box-sizing: border-box;
  }
}

@media (max-width: 768px) {
  header {
    flex-direction: column;
    align-items: stretch;
    border-radius: 0;
  }

  header svg,
  header select {
    margin-left: 0;
  }

  .left_header,
  .right_header {
    width: 100%;
    padding: 12px 16px;
    margin: 0;
  }

  .banner,
  .banner.container {
    flex-wrap: wrap;
    padding-left: 16px;
    padding-right: 16px;
  }

  .banner_left,
  .banner_right,
  .banner p,
  .main_buttons {
    width: 100%;
  }

  .banner h1 {
    font-size: 26px;
    line-height: 1.25;
    width: 100%;
  }

  .main_buttons {
    display: flex;
    flex-direction: column;
    gap: 12px;
  }

  .main_buttons a,
  .main_buttons div {
    width: 100%;
    padding-left: 0;
    box-sizing: border-box;
  }

  .vzhik1,
  .vzhik2,
  .star1,
  .star2,
  .star_blog1,
  .star_blog2,
  .star_blog5,
  .star_blog6 {
    display: none !important;
  }

  .footer_top,
  .right_footer {
    flex-wrap: wrap;
  }

  .be-banner .container,
  .winter,
  .faq,
  .help,
  .advantages,
  .collaboration {
    padding-left: 16px;
    padding-right: 16px;
    box-sizing: border-box;
  }

  /* Формы входа и регистрации */
  .login form,
  .sign-teacher form,
  .sign-students form,
  form.login-form,
  #login-form,
  .lgnLoginForm,
  .account form,
  .page form,
  .container form {
    width: 100%;
    max-width: 100%;
  }

  .login input,
  .sign-teacher input,
  .sign-students input,
  .account input,
  .account select,
  .page form input,
  .page form select,
  .page form textarea,
  .page form button {
    width: 100%;
    max-width: 100%;
    box-sizing: border-box;
  }

  .katalog .container {
    display: block;
  }

  .filter,
  .katalogoslider,
  .sitebar,
  .studentoslider {
    width: 100%;
  }

  .katalogoslider .blog_item {
    height: auto;
  }
}

@media (max-width: 480px) {
  body {
    font-size: 15px;
  }

  h1 {
    font-size: 24px !important;
  }

  h2 {
    font-size: 22px;
  }

  .nav {
    flex-direction: column;
    align-items: flex-start;
  }

  .center_action {
    margin-left: 0;
    width: 100%;
  }

  .rev_slider_title {
    display: block;
  }

  .blog_item,
  .rev_slider_item {
    margin-left: 0;
    margin-right: 0;
  }
}

/* Кабинеты не ломаем этим файлом: сайдбар остаётся как есть на /cabinet* */
body[class*="cabinet"] .page__container,
[class*="cabinet"] .page__container {
  /* no-op: файл всё равно глобальный, но кабинетные сетки не трогаем ниже */
}
