/* ============================================
   ПЕРЕМЕННЫЕ И КОНСТАНТЫ
   ============================================ */
:root {
  --page-width: 1440px;
  --content-width: 1140px;
  --side-padding: 150px;
  --color-red: #D2232A;
  --color-red-dark: #b71c1c;
  --color-red-light: #e30613;
  --color-black: #000000;
  --color-white: #fff;
  --color-gray: #71717a;
  --color-gray-light: #f4f4f5;
  --btn-height: 69px;
  --white-bg-height: calc(var(--btn-height) / 2);
}

@media (max-width: 1440px) and (min-width: 1024px) {
  :root {
    --side-padding: clamp(24px, calc(24px + (150px - 24px) * ((100vw - 1024px) / (1440px - 1024px))), 150px);
  }
}

@media (max-width: 1023px) {
  :root {
    --side-padding: 24px;
  }
}

@media (max-width: 768px) {
  :root {
    --side-padding: 20px;
  }
}

@media (max-width: 400px) {
  .kindergarten-learning-process {
    padding-left: 20px !important;
    padding-right: 20px !important;
  }
  
  .block14 {
    padding-left: 20px !important;
    padding-right: 20px !important;
  }
  
  .block5 {
    padding-left: 20px !important;
    padding-right: 20px !important;
  }
  
  .block20_campuses {
    padding-left: 20px !important;
    padding-right: 20px !important;
  }
  
  .block21 {
    padding-left: 20px !important;
    padding-right: 20px !important;
  }
}

@media (max-width: 380px) {
  :root {
    --side-padding: 14px;
  }
  
  /* Для элементов с padding-inline */
  .block1 .nav-buttons {
    padding-inline: 14px !important;
  }
  
  /* Для элементов с padding: Xpx 24px в медиа-запросах */
  .block14_campus_btn {
    padding-left: 14px !important;
    padding-right: 14px !important;
  }
  
  .block12_campus_btn {
    padding-left: 14px !important;
    padding-right: 14px !important;
  }
  
  .block20_campus_btn {
    padding-left: 14px !important;
    padding-right: 14px !important;
  }
  
  .form_campus_btn {
    padding-left: 14px !important;
    padding-right: 14px !important;
  }
  
  /* Для элементов с прямым padding: Xpx 24px */
  .phone_modal,
  .phone_modal2,
  .campus_modal,
  .block12_campus_modal {
    padding-left: 14px !important;
    padding-right: 14px !important;
  }
  
  /* Для modal_header вне region_modal */
  .modal_header:not(.region_modal .modal_header) {
    padding-left: 14px !important;
    padding-right: 14px !important;
  }
  
  /* Убираем padding у region_modal и его внутренних элементов на 400px */
  .region_modal {
    padding-left: 0 !important;
    padding-right: 0 !important;
  }
  
  .region_modal .country_options {
    padding: 16px 20px !important;
  }
  
  /* Специфичные элементы с padding 24px */
  .btn {
    padding: 14px 14px !important;
  }
  
  .block12_price_item {
    padding-left: 14px !important;
    padding-right: 14px !important;
  }
  
  .block19_news_card,
  .block19_review_card {
    padding-left: 14px !important;
    padding-right: 14px !important;
  }
  
  .block21_item {
    padding-left: 14px !important;
    padding-right: 14px !important;
  }
  
  .block22_item {
    padding-left: 14px !important;
    padding-right: 14px !important;
  }
  
  .block23_item {
    padding-left: 14px !important;
    padding-right: 14px !important;
  }
  
  .block24_item {
    padding-left: 14px !important;
    padding-right: 14px !important;
  }
  
  /* Для элементов с padding: Xpx 24px или padding: 24px */
  .mobile-menu-btn {
    padding-left: 0 !important;
    padding-right: 14px !important;
  }
  
  /* Исключаем country_options внутри region_modal */
  .country_options:not(.region_modal .country_options) {
    padding-left: 14px !important;
    padding-right: 14px !important;
  }
  
  .phone_country_options {
    padding-left: 14px !important;
    padding-right: 14px !important;
  }
  
  .campus_option {
    padding-left: 14px !important;
    padding-right: 14px !important;
  }
  
  .block12_campus_option {
    padding-left: 14px !important;
    padding-right: 14px !important;
  }
  
  .block14_campus_option {
    padding-left: 14px !important;
    padding-right: 14px !important;
  }
  
  .block20_campus_option {
    padding-left: 14px !important;
    padding-right: 14px !important;
  }
  
  .form_campus_option {
    padding-left: 14px !important;
    padding-right: 14px !important;
  }
  
  /* Для кнопок и других элементов */
  .block12_price_info_btn,
  .block7_download,
  .submit,
  .form_step2_submit {
    padding-left: 14px !important;
    padding-right: 14px !important;
  }
  
}

@media (max-width: 373px) {
  :root {
    --side-padding: 6px;
  }
  
  /* Для элементов с padding-inline */
  .block1 .nav-buttons {
    padding-inline: 6px !important;
  }
  
  /* Для элементов с padding: Xpx 14px в медиа-запросах */
  .block14_campus_btn {
    padding-left: 6px !important;
    padding-right: 6px !important;
  }
  
  .block12_campus_btn {
    padding-left: 6px !important;
    padding-right: 6px !important;
  }
  
  .block20_campus_btn {
    padding-left: 6px !important;
    padding-right: 6px !important;
  }
  
  .form_campus_btn {
    padding-left: 6px !important;
    padding-right: 6px !important;
  }
  
  /* Для элементов с прямым padding: Xpx 14px */
  .modal_header,
  .region_modal,
  .phone_modal,
  .phone_modal2,
  .campus_modal,
  .block12_campus_modal {
    padding-left: 6px !important;
    padding-right: 6px !important;
  }
  
  /* Специфичные элементы с padding 14px */
  .btn {
    padding: 14px 6px !important;
  }
  
  .block12_price_item {
    padding-left: 6px !important;
    padding-right: 6px !important;
  }
  
  .block19_news_card,
  .block19_review_card {
    padding-left: 6px !important;
    padding-right: 6px !important;
  }
  
  .block21_item {
    padding-left: 6px !important;
    padding-right: 6px !important;
  }
  
  .block22_item {
    padding-left: 6px !important;
    padding-right: 6px !important;
  }
  
  .block23_item {
    padding-left: 6px !important;
    padding-right: 6px !important;
  }
  
  .block24_item {
    padding-left: 6px !important;
    padding-right: 6px !important;
  }
  
  .mobile-menu-btn {
    padding-left: 0 !important;
    padding-right: 6px !important;
  }
  
  .country_options:not(.region_modal .country_options) {
    padding-left: 6px !important;
    padding-right: 6px !important;
  }
  
  .phone_country_options {
    padding-left: 6px !important;
    padding-right: 6px !important;
  }
  
  .campus_option {
    padding-left: 6px !important;
    padding-right: 6px !important;
  }
  
  .block12_campus_option {
    padding-left: 6px !important;
    padding-right: 6px !important;
  }
  
  .block14_campus_option {
    padding-left: 6px !important;
    padding-right: 6px !important;
  }
  
  .block20_campus_option {
    padding-left: 6px !important;
    padding-right: 6px !important;
  }
  
  .form_campus_option {
    padding-left: 6px !important;
    padding-right: 6px !important;
  }
  
  .block12_price_info_btn,
  .block7_download,
  .submit,
  .form_step2_submit {
    padding-left: 6px !important;
    padding-right: 6px !important;
  }
  
}

