@import url("https://fonts.googleapis.com/css2?family=Montserrat:wght@100..900&display=swap");
html {
  font-size: 16px;
  font-family: "Montserrat", sans-serif;
  font-weight: 400;
  font-style: normal;
  scroll-behavior: smooth;
}

body {
  position: relative;
  margin: 0;
  overflow-y: scroll;
  color: #000000;
  background-color: #ffffff;
}

a,
button,
input,
textarea {
  font-family: "Montserrat", sans-serif;
  text-decoration: none;
}

input {
  display: inline-block;
  width: 100%;
  padding: 17px 24px;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  font-weight: 500;
  font-size: 16px;
  line-height: 116%;
  letter-spacing: -0.01em;
  color: #1c1c20;
  border: 2px solid #dfdfe0;
  border-radius: 0px;
  outline: none;
  -webkit-transition-property: border, color, background-color;
  transition-property: border, color, background-color;
  -webkit-transition-timing-function: ease-in-out;
          transition-timing-function: ease-in-out;
  -webkit-transition-duration: 0.2s;
          transition-duration: 0.2s;
}
input:focus {
  border: 2px solid #1e674e;
}
input:user-invalid {
  border: 2px solid #fe4343;
}
input::-webkit-input-placeholder {
  color: #87878e;
}
input::-moz-placeholder {
  color: #87878e;
}
input:-ms-input-placeholder {
  color: #87878e;
}
input::-ms-input-placeholder {
  color: #87878e;
}
input::placeholder {
  color: #87878e;
}

.container {
  display: block;
  max-width: 1580px;
  margin: 0 auto;
  padding: 0 40px;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
}
@media (max-width: 1580px) {
  .container {
    max-width: 1200px;
    padding: 0 30px;
  }
}
@media (max-width: 1200px) {
  .container {
    max-width: 1020px;
    padding: 0 20px;
  }
}
@media (max-width: 1020px) {
  .container {
    padding: 0 20px;
  }
}
@media (max-width: 576px) {
  .container {
    padding: 0 15px;
  }
}

.button {
  display: inline-block;
  min-height: 56px;
  padding: 16px 32px;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  font-weight: 600;
  font-size: 16px;
  line-height: 125%;
  letter-spacing: -0.01em;
  text-align: center;
  color: #000000;
  border: 2px solid #000000;
  background-color: #ffffff;
  -webkit-transition-property: border, color, background-color;
  transition-property: border, color, background-color;
  -webkit-transition-timing-function: ease-in-out;
          transition-timing-function: ease-in-out;
  -webkit-transition-duration: 0.2s;
          transition-duration: 0.2s;
  cursor: pointer;
}
.button_primary {
  color: #1e674e;
  border-color: #1e674e;
  background-color: #ffffff;
}
.button_primary:hover {
  color: #ffffff;
  background-color: #1e674e;
}
.button_secondary {
  color: #ffffff;
  border-color: #1e674e;
  background-color: #1e674e;
}
.button_secondary:hover {
  color: #ffffff;
  border-color: #1c1c20;
  background-color: #1c1c20;
}
.button_light {
  color: #1e674e;
  border-color: #e9f0ed;
  background-color: #e9f0ed;
}
.button_light:hover {
  color: #ffffff;
  border-color: #1e674e;
  background-color: #1e674e;
}
.button_wide {
  width: 100%;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
}

.h1-base,
.h2-base,
.h3-base,
.h4-base,
.h5-base,
.h6-base {
  margin: 0;
  font-weight: 500;
  line-height: 140%;
  letter-spacing: -0.01em;
  color: #1c1c20;
}

.h1-base {
  font-size: 74px;
}
@media (max-width: 1020px) {
  .h1-base {
    font-size: 60px;
  }
}
@media (max-width: 576px) {
  .h1-base {
    font-size: 44px;
  }
}

.h2-base {
  font-size: 60px;
}
@media (max-width: 1020px) {
  .h2-base {
    font-size: 44px;
  }
}
@media (max-width: 576px) {
  .h2-base {
    font-size: 38px;
  }
}

.h3-base {
  font-size: 48px;
}
@media (max-width: 1020px) {
  .h3-base {
    font-size: 38px;
  }
}
@media (max-width: 576px) {
  .h3-base {
    font-size: 32px;
  }
}

.h4-base {
  font-size: 38px;
}
@media (max-width: 1020px) {
  .h4-base {
    font-size: 32px;
  }
}
@media (max-width: 576px) {
  .h4-base {
    font-size: 28px;
  }
}

.h5-base {
  font-size: 28px;
}
@media (max-width: 1020px) {
  .h5-base {
    font-size: 24px;
  }
}

.h6-base {
  font-size: 20px;
}
@media (max-width: 576px) {
  .h6-base {
    font-size: 24px;
  }
}

.block_otstup_l {
  padding: 270px 0;
}
@media (max-width: 1200px) {
  .block_otstup_l {
    padding: 240px 0;
  }
}
.block_otstup_m {
  padding: 180px 0;
}
@media (max-width: 1200px) {
  .block_otstup_m {
    padding: 160px 0;
  }
}
.block_otstup_s {
  padding: 90px 0;
}
@media (max-width: 1200px) {
  .block_otstup_s {
    padding: 80px 0;
  }
}
.block_otstup_xs {
  padding: 45px 0;
}
@media (max-width: 1200px) {
  .block_otstup_xs {
    padding: 40px 0;
  }
}