@media (min-width: 1400px) {
  .container,
  .container-lg,
  .container-md,
  .container-sm,
  .container-xl,
  .container-xxl {
    max-width: 1170px;
  }
}

@media only screen and (max-width: 1400px) {
  :root {
    --bs-block-title: 38px;
    --bs-front-h1: 50px;
    --bs-desc-slide: 22px;
  }

  .col-nav {
    margin-left: 139px;
  }
  div#block-vesta-theme-kontakty {
    width: 70%;
    padding: 87px 186px 40px 329px;
  }
  .block-content--type-o-nas .field--name-body p:first-child {
    font-size: 32px;
  }
}
@media only screen and (max-width: 1200px) {
  :root {
    --bs-front-h1: 42px;
    --bs-block-title: 30px;
  }
  .node--type-slide .field--name-body {
    margin: 38px 0 38px;
  }
  .node--type-preimushchestva .field--name-node-title {
    font-size: 20px;
    width: 100%;
  }
  .node--type-services .field--name-node-title a {
    font-size: 16px;
  }
  .more-link a {
    font-size: 16px;
  }
  #block-vesta-theme-zagolovokfos {
    margin-bottom: 75px;
  }
  .block-content--type-o-nas .field--name-body p:first-child {
    font-size: 25px;
  }
  .block-content--type-o-nas .field--name-body p {
    font-size: 22px;
  }
  .col-nav {
    margin-left: 82px;
  }
  div#block-vesta-theme-kontakty {
    padding-left: 160px;
  }
  .field--name-field-gallery img {
    width: 100%;
    height: auto;
  }
  .more-link a:after {
    width: 25px;
  }
}
@media only screen and (max-width: 992px) {
  :root {
    --bs-front-h1: 30px;
    --bs-block-title: 26px;
    --bs-desc-slide: 18px;
    --bs-padding-benefits: 70px 0;
    --bs-padding-services: 70px 0;
    --bs-padding-form: 70px 0 110px;
    --bs-padding-about: 70px 0;
    --bs-padding-gallery: 70px 0;
    .offcanvas {
      --bs-offcanvas-bg: #353536;
    }
  }
  main#main {
    margin-top: 65px;
  }
  .not-front main#main {
    margin-top: 75px;
  }
  #header-mob {
    background: #353536;
  }
  #header-mob .col-phone a {
    color: #fff;
  }
  .col-logo {
    width: 163px;
  }
  header .col-nav {
    width: 40px;
  }
  header .col-phone {
    margin-right: 85px;
  }
  .btn-form {
    padding: 12px;
    width: 260px;
  }
  .block-content--type-o-nas .field--name-body p {
    font-size: 18px;
  }
  .block-content--type-o-nas .field--name-body p:first-child {
    font-size: 20px;
  }
  img.image-style-o-nas {
    width: 275px;
    height: 100%;
    object-fit: cover;
  }
  .block-content--type-o-nas {
    gap: 30px;
  }
  .col-nav {
    margin-left: 0;
  }
  .col-contact {
    margin-left: 0;
  }
  .view-services.view-display-id-block_1 .more-link {
    height: 48px;
    border-radius: 4px;
    overflow: hidden;
  }
  .webform-button--submit {
    padding: 12px;
  }
  .contact-left,
  .contact-left a {
    color: #fff;
  }
  .contact-left {
    margin-top: 15px;
  }
}
@media screen and (max-width: 991px) {
  #offcanvasNav .nav .dropdown-menu {
    border-bottom: none;
  }
  #offcanvasNav .nav .dropdown-menu a {
    color: #fff;
  }
}

@media only screen and (max-width: 768px) {
  :root {
    --bs-front-h1: 26px;
    --bs-desc-slide: inherit;
    --bs-block-title: 22px;
  }
  header .col-phone {
    margin-right: 60px;
  }
  .node--type-slide .media--blazy {
    height: 360px;
  }
  .front h1 {
    width: 100%;
  }
  .btn-form {
    padding: 10px;
    width: 220px;
    font-size: 14px;
  }
  .block-content--type-o-nas {
    flex-direction: column;
    gap: 10px;
  }
  .block-title {
    margin-bottom: 35px;
  }
  img.image-style-o-nas {
    width: 100%;
    height: 260px;
  }
  .block-content--type-o-nas .field--name-body p:first-child {
    font-size: 18px;
    margin-bottom: 25px;
  }
  .block-content--type-o-nas .field--name-body p {
    font-size: 16px;
  }
  .node--type-preimushchestva .field--name-node-title {
    font-size: 18px;
  }
  .node--type-services .field--name-node-title a {
    font-size: 15px;
    padding: 4px;
  }
  #block-vesta-theme-kontakty .contact-item {
    font-size: inherit;
  }
  div#block-vesta-theme-kontakty {
    padding: 50px;
  }
  .mapContainer {
    height: 390px;
  }
  #scrollToTop {
    width: 40px;
    height: 40px;
    right: 35px;
  }
  .view-services.view-display-id-block_1 .more-link a {
    font-size: 14px;
  }
  .view-services.view-display-id-block_1 .more-link {
    height: 41px;
  }
}
@media only screen and (max-width: 576px) {
  :root {
    --bs-front-h1: 20px;
    --bs-block-title: 18px;
    --bs-padding-form: 70px 0 80px;
  }
  .col-logo {
    width: 130px;
  }
  .col-logo img {
    width: 100%;
  }
  main#main {
    margin-top: 51px;
  }
  .not-front main#main {
    margin-top: 65px;
  }
  header .col-phone {
    font-size: 14px;
    margin-right: 10%;
  }
  .node--type-slide .field--name-body {
    margin: 21px 0 21px;
  }
  div#block-vesta-theme-vebforma {
    width: 90%;
  }
  .block-content--type-o-nas .field--name-body p:first-child {
    font-size: 16px;
  }
  .block-title {
    margin-bottom: 20px;
  }
  div#block-vesta-theme-kontakty {
    width: 90%;
  }
  div#block-vesta-theme-kontakty .block-title {
    margin-bottom: 20px;
  }
  footer .contact-item,
  .btn-callback,
  .copyright {
    font-size: 14px;
  }
  footer .search-api-page-block-form-search {
    width: 85%;
  }
  .node--type-preimushchestva {
    padding: 20px 20px 10px 15px;
  }
  .more-link a {
    font-size: 16px;
  }
  .more-link a:after {
    width: 20px;
    height: 20px;
  }
  .webform-submission-form .form-control {
    padding: 12px 20px;
  }

  #block-vesta-theme-zagolovokfos {
    margin-bottom: 40px;
  }
  .form-text {
    margin: 0 0 15px 0;
  }
  #scrollToTop {
    right: 15px;
  }
  footer .contact-item {
    gap: 3px;
  }
  .col-callback {
    width: 100%;
  }
  .node--type-slide .media--blazy {
    height: 100vh;
  }
}
