@media (min-width: 1400px) {
  .container,
  .container-lg,
  .container-md,
  .container-sm,
  .container-xl,
  .container-xxl {
    max-width: 1164px;
    padding: 0;
  }
}
@media only screen and (max-width: 1400px) {
  :root {
    --bs-h1-front: 56px;
    --bs-block-title-size: 46px;
    .nav {
      --bs-nav-link-padding-x: 20px;
    }
  }
}
@media only screen and (max-width: 1200px) {
  :root {
    --bs-h1-front: 48px;
    --bs-title-block-slider: 34px;
    --bs-desc-block-slider: 31px;
    --bs-block-title-size: 42px;
    --bs-margin-top-footer-block: 25px;
    header .col-contacts {
      gap: 10px;
      width: 315px;
    }
    .nav {
      --bs-nav-link-padding-x: 13px;
    }
  }
  header .logo {
    width: 120px;
  }
  header .col-phone {
    font-size: 16px;
  }
  .col-callback {
    width: 150px;
  }
  a.btn-callback {
    padding: 6px;
  }
  header .region-navigation {
    padding-left: 120px;
  }
  .taxonomy-term--type-catalog .field--name-taxonomy-term-title a,
  .node--type-services.node--view-mode-teaser .field--name-node-title a {
    font-size: 30px;
  }
  .field--name-field-gallery img {
    width: 100%;
    height: auto;
  }
  div#block-vesta-theme-vebforma {
    width: 90%;
  }
  .form-container .js-form-item-name {
    width: 32%;
  }
  form#webform-submission-callback-node-2-add-form .js-form-type-checkbox {
    margin-top: 38px;
  }
  .col-logo {
    width: 150px;
  }
  .col-phone {
    font-size: 18px;
  }
  button.slick-arrow {
    width: 45px;
    height: 45px;
  }
  .node--type-slide .field--name-node-title {
    width: 95%;
  }
  button.slick-arrow::before {
    width: 45px;
    height: 45px;
  }
  .product-teaser .product-teaser-image {
    max-width: 400px;
  }
}
@media only screen and (max-width: 992px) {
  :root {
    --bs-h1-front: 36px;
    --bs-h1: 40px;
    --bs-block-title-size: 32px;
    --bs-padding-slider-block: 43px 62px 50px;
    --bs-title-block-slider: 30px;
    --bs-desc-block-slider: 28px;
    --bs-padding-form: 32px;
  }
  main#main {
    margin-top: 76px;
  }
  .not-front main#main {
    margin: 115px 0 50px;
  }
  .col-logo {
    width: 110px;
  }
  header .col-phone {
    width: 70%;
    text-align: center;
  }
  #header-mob {
    background: #000;
  }
  #header-mob a {
    color: #fff;
  }
  .node--type-slide .field--name-node-title {
    margin: 0 auto 50px;
  }
  .taxonomy-term--type-catalog .field--name-taxonomy-term-title a,
  .node--type-services.node--view-mode-teaser .field--name-node-title a {
    font-size: 26px;
    padding: 23px;
  }
  .taxonomy-term--type-catalog.taxonomy-term--view-mode-teaser,
  .node--type-services.node--view-mode-teaser {
    padding: 142px 0 34px;
  }
  .more-link a,
  .field--name-field-link-about a {
    width: 180px;
  }
  .node--type-benefits {
    gap: 30px;
  }
  .form-container .js-form-item-name {
    width: 30%;
  }
  .form-container .js-form-item-telefon {
    width: 36%;
  }
  .webform-button--submit {
    width: 155px;
    font-size: 14px;
  }
  .form-item-text {
    font-size: 18px;
  }
  .field--name-field-name-avtor {
    font-size: 22px;
  }
  .reviews-block .block-title {
    margin-bottom: 32px;
  }
  ul.slick-dots {
    margin: 8px 0 0;
  }
  .col-webvesta {
    margin-top: 15px;
  }
  .social img {
    width: 42px;
  }

  #scrollToTop {
    width: 42px;
    height: 42px;
  }
  form#search-api-page-block-form-search--2 {
    position: relative;
    width: max-content;
  }
  div#offcanvasNav {
    background: linear-gradient(180deg, #ede3a1, #fff);
  }
  .product-teaser .product-teaser-image {
    max-width: 53%;
  }
  .product-teaser .product-teaser-info {
    max-width: 38%;
  }
  .taxonomy-term--view-mode-video-razdela {
    width: 50%;
  }
}

@media only screen and (max-width: 768px) {
  :root {
    --bs-h1-front: 26px;
    --bs-h1: 36px;
    --bs-block-title-size: 25px;
    --bs-padding-slider-block: 26px 63px 30px;
    --bs-title-block-slider: 24px;
    --bs-desc-block-slider: 22px;
    --bs-padding-benefits-block: 57px 0 50px;
    --bs-margin-bottom-reviews-body: 30px;
    --bs-padding-form-block: 36px;
  }
  button.slick-arrow::before {
    width: 36px;
    height: 36px;
  }
  button.slick-arrow {
    width: 36px;
    height: 36px;
  }
  header .col-phone {
    width: 50%;
  }
  .taxonomy-term--type-catalog .field--name-taxonomy-term-title a,
  .node--type-services.node--view-mode-teaser .field--name-node-title a {
    font-size: 22px;
    padding: 12px;
  }
  .taxonomy-term--type-catalog .field--name-taxonomy-term-title,
  .node--type-services.node--view-mode-teaser .field--name-node-title {
    min-height: 110px;
    width: 86%;
  }
  .node--type-reviews.node--view-mode-teaser {
    padding: 0 16px 13px;
  }
  .taxonomy-term--type-catalog.taxonomy-term--view-mode-teaser,
  .node--type-services.node--view-mode-teaser {
    padding: 80px 0 34px;
  }
  .more-link a,
  .field--name-field-link-about a {
    width: 160px;
    font-size: 14px;
  }
  .view-id-catalog .more-link a {
    margin: 34px auto 0;
  }
  .field--name-field-name-about {
    font-size: 22px;
  }
  .benefits-block .block-title {
    margin-bottom: 36px;
  }
  .field--name-field-img-benefits img {
    width: 75px;
    height: 75px;
  }
  .node--type-benefits .field--name-node-title {
    font-size: 16px;
  }
  .node--type-videogalereya.node--view-mode-teaser .field--name-node-title {
    font-size: 20px;
  }
  .node--type-reviews.node--view-mode-teaser {
    padding: 0 16px 41px;
  }
  .form-container .js-form-item-name,
  .form-container .js-form-item-telefon {
    width: 100%;
  }
  .form-container {
    gap: 12px;
  }
  .form-item-text {
    font-size: 16px;
    margin-bottom: 0;
  }
  form#webform-submission-callback-node-2-add-form .js-form-type-checkbox {
    margin-top: 12px;
  }
  .mapContainer {
    height: 240px;
  }
  .right {
    margin: 0 auto;
  }
  .social {
    right: 0;
  }
  .product-teaser .product-teaser-image {
    max-width: 80%;
  }
  .product-teaser .product-teaser-info {
    max-width: 100%;
  }
  .taxonomy-term--view-mode-video-razdela {
    width: 100%;
  }
}

@media only screen and (max-width: 576px) {
  :root {
    --bs-h1-front: 24px;
    --bs-h1: 30px;
    --bs-block-title-size: 22px;
    --bs-padding-slider-block: 23px 50px 26px;
    --bs-title-block-slider: 20px;
    --bs-desc-block-slider: 18px;
    --bs-padding-gallery: 50px 0 50px;
    --bs-padding-form-block: 20px;
  }
  .front h1 {
    text-align: center;
  }
  header .col-phone {
    width: 40%;
  }
  .taxonomy-term--type-catalog .field--name-taxonomy-term-title a,
  .node--type-services.node--view-mode-teaser .field--name-node-title a {
    font-size: 18px;
    padding: 7px;
  }
  .taxonomy-term--type-catalog .field--name-taxonomy-term-title,
  .node--type-services.node--view-mode-teaser .field--name-node-title {
    min-height: 85px;
    width: 100%;
  }
  .taxonomy-term--type-catalog.taxonomy-term--view-mode-teaser,
  .node--type-services.node--view-mode-teaser {
    padding: 50px 0 30px;
  }
  .node--type-slide .field--name-node-title {
    margin: 0 auto 34px;
  }
  button.slick-arrow::before {
    width: 30px;
    height: 30px;
  }
  button.slick-arrow {
    width: 30px;
    height: 30px;
  }
  .more-link a,
  .field--name-field-link-about a {
    width: 140px;
  }
  .field--name-field-name-avtor {
    font-size: 20px;
  }
  div#block-vesta-theme-vebforma {
    width: 100%;
  }
  .reviews-block .block-title {
    margin-bottom: 22px;
  }
  .field--name-field-name-about {
    font-size: 18px;
  }
  .product-teaser .product-teaser-image {
    max-width: 100%;
  }
  .commerce-order-item-variation-cart-form-form .button--add-to-cart {
    width: 100%;
    padding: 5px;
    font-size: 14px;
  }
  .commerce-order-item-variation-cart-form-form .btn-minus,
  .commerce-order-item-variation-cart-form-form .btn-plus {
    padding: 3px 8px;
  }
  .commerce-order-item-variation-cart-form-form .js-form-type-number input {
    width: 36px;
    height: 30px;
  }
  .commerce-product--view-mode-teaser > div {
    gap: 4px;
  }
}
