html, body, div, span, applet, object, iframe, h1, h2, h3, h4, h5, h6, p, blockquote, pre, a, abbr, acronym, address, big, cite, code, del, dfn, em, img, ins, kbd, q, s, samp, small, strike, strong, sub, sup, tt, var, b, u, i, dl, dt, dd, ol, nav ul, nav li, fieldset, form, label, legend, table, caption, tbody, tfoot, thead, tr, th, td, article, aside, canvas, details, embed, figure, figcaption, footer, header, hgroup, menu, nav, output, ruby, section, summary, time, mark, audio, video {
  margin: 0;
  padding: 0;
  border: 0;
  font-size: 100%;
  font: inherit;
  vertical-align: baseline;
}

article, aside, details, figcaption, figure, footer, header, hgroup, menu, nav, section {
  display: block;
}

ol, ul {
  list-style: none;
  margin: 0;
  padding: 0;
}

blockquote, q {
  quotes: none;
}

blockquote:before, blockquote:after, q:before, q:after {
  content: "";
}

table {
  border-collapse: collapse;
  border-spacing: 0;
}

html, body {
  margin: 0;
  padding: 0;
  height: 100%;
}

input[type=submit] {
  -webkit-appearance: none;
}

img {
  border: 0;
  max-width: 100%;
}

ul {
  margin-bottom: 20px;
}
ul li {
  font-weight: 500;
  background: url("/common/img/li-bg.svg") no-repeat 0 4px;
  padding-left: 25px;
  margin-bottom: 10px;
}
ul li:last-child {
  margin-bottom: 0;
}

input, textarea, select {
  outline: none;
}

textarea {
  resize: none;
  overflow: hidden;
}

a {
  color: #008fff;
  -webkit-transition: all 0.15s ease 0s;
  transition: all 0.15s ease 0s;
  text-decoration: underline;
  cursor: pointer;
}

a:hover {
  text-decoration: none;
  color: #008fff;
  -webkit-transition: all 0.2s ease 0.05s;
  transition: all 0.2s ease 0.05s;
}

a:active,
a:focus,
a:focus-within,
a:target,
a:visited,
a:focus-visible {
  outline: none;
}

hr {
  margin: 0;
  height: 0;
}

textarea, input[type=text], input[type=button], input[type=submit] {
  -webkit-appearance: none;
  border-radius: 0;
}

p {
  line-height: 1.4;
  margin-bottom: 22px;
}

button:focus {
  outline: 0;
}

*, *:before, *:after {
  box-sizing: border-box;
}

sup {
  font-size: 75%;
  top: -0.5em;
  position: relative;
}

.c-container {
  width: 100%;
  padding-right: 15px;
  padding-left: 15px;
  margin-right: auto;
  margin-left: auto;
}
@media (min-width: 577px) {
  .c-container {
    max-width: 540px;
  }
}
@media (min-width: 768px) {
  .c-container {
    max-width: 720px;
  }
}
@media (min-width: 992px) {
  .c-container {
    max-width: 960px;
  }
}
@media (min-width: 1200px) {
  .c-container {
    max-width: 1140px;
  }
}
@media (min-width: 1300px) {
  .c-container {
    max-width: 1280px;
    padding-right: 0;
    padding-left: 0;
  }
}

.c-container-fluid {
  max-width: 2560px;
  padding-right: 0;
  padding-left: 0;
  margin-right: auto;
  margin-left: auto;
  position: relative;
}

@font-face {
  font-display: swap;
  font-family: "PT Root UI";
  font-style: normal;
  font-weight: 100;
  src: url("/common/fonts/pt-root-ui_light.woff2") format("woff2"), url("/common/fonts/pt-root-ui_light.woff") format("woff");
}
@font-face {
  font-display: swap;
  font-family: "PT Root UI";
  font-style: normal;
  font-weight: 400;
  src: url("/common/fonts/pt-root-ui_regular.woff2") format("woff2"), url("/common/fonts/pt-root-ui_regular.woff") format("woff");
}
@font-face {
  font-display: swap;
  font-family: "PT Root UI";
  font-style: normal;
  font-weight: normal;
  src: url("/common/fonts/pt-root-ui_regular.woff2") format("woff2"), url("/common/fonts/pt-root-ui_regular.woff") format("woff");
}
@font-face {
  font-display: swap;
  font-family: "PT Root UI";
  font-style: normal;
  font-weight: 600;
  src: url("/common/fonts/pt-root-ui_medium.woff2") format("woff2"), url("/common/fonts/pt-root-ui_medium.woff") format("woff");
}
@font-face {
  font-display: swap;
  font-family: "PT Root UI";
  font-style: normal;
  font-weight: 800;
  src: url("/common/fonts/pt-root-ui_bold.woff2") format("woff2"), url("/common/fonts/pt-root-ui_bold.woff") format("woff");
}
/* montserrat-100 - cyrillic_cyrillic-ext_latin */
@font-face {
  font-display: swap; /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
  font-family: "Montserrat";
  font-style: normal;
  font-weight: 100;
  src: url("/common/fonts/montserrat-v26-cyrillic_cyrillic-ext_latin-100.woff2") format("woff2"); /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
}
/* montserrat-100italic - cyrillic_cyrillic-ext_latin */
@font-face {
  font-display: swap; /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
  font-family: "Montserrat";
  font-style: italic;
  font-weight: 100;
  src: url("/common/fonts/montserrat-v26-cyrillic_cyrillic-ext_latin-100italic.woff2") format("woff2"); /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
}
/* montserrat-200 - cyrillic_cyrillic-ext_latin */
@font-face {
  font-display: swap; /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
  font-family: "Montserrat";
  font-style: normal;
  font-weight: 200;
  src: url("/common/fonts/montserrat-v26-cyrillic_cyrillic-ext_latin-200.woff2") format("woff2"); /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
}
/* montserrat-200italic - cyrillic_cyrillic-ext_latin */
@font-face {
  font-display: swap; /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
  font-family: "Montserrat";
  font-style: italic;
  font-weight: 200;
  src: url("/common/fonts/montserrat-v26-cyrillic_cyrillic-ext_latin-200italic.woff2") format("woff2"); /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
}
/* montserrat-300 - cyrillic_cyrillic-ext_latin */
@font-face {
  font-display: swap; /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
  font-family: "Montserrat";
  font-style: normal;
  font-weight: 300;
  src: url("/common/fonts/montserrat-v26-cyrillic_cyrillic-ext_latin-300.woff2") format("woff2"); /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
}
/* montserrat-300italic - cyrillic_cyrillic-ext_latin */
@font-face {
  font-display: swap; /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
  font-family: "Montserrat";
  font-style: italic;
  font-weight: 300;
  src: url("/common/fonts/montserrat-v26-cyrillic_cyrillic-ext_latin-300italic.woff2") format("woff2"); /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
}
/* montserrat-regular - cyrillic_cyrillic-ext_latin */
@font-face {
  font-display: swap; /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
  font-family: "Montserrat";
  font-style: normal;
  font-weight: 400;
  src: url("/common/fonts/montserrat-v26-cyrillic_cyrillic-ext_latin-regular.woff2") format("woff2"); /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
}
/* montserrat-italic - cyrillic_cyrillic-ext_latin */
@font-face {
  font-display: swap; /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
  font-family: "Montserrat";
  font-style: italic;
  font-weight: 400;
  src: url("/common/fonts/montserrat-v26-cyrillic_cyrillic-ext_latin-italic.woff2") format("woff2"); /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
}
/* montserrat-500 - cyrillic_cyrillic-ext_latin */
@font-face {
  font-display: swap; /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
  font-family: "Montserrat";
  font-style: normal;
  font-weight: 500;
  src: url("/common/fonts/montserrat-v26-cyrillic_cyrillic-ext_latin-500.woff2") format("woff2"); /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
}
/* montserrat-500italic - cyrillic_cyrillic-ext_latin */
@font-face {
  font-display: swap; /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
  font-family: "Montserrat";
  font-style: italic;
  font-weight: 500;
  src: url("/common/fonts/montserrat-v26-cyrillic_cyrillic-ext_latin-500italic.woff2") format("woff2"); /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
}
/* montserrat-600 - cyrillic_cyrillic-ext_latin */
@font-face {
  font-display: swap; /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
  font-family: "Montserrat";
  font-style: normal;
  font-weight: 600;
  src: url("/common/fonts/montserrat-v26-cyrillic_cyrillic-ext_latin-600.woff2") format("woff2"); /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
}
/* montserrat-600italic - cyrillic_cyrillic-ext_latin */
@font-face {
  font-display: swap; /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
  font-family: "Montserrat";
  font-style: italic;
  font-weight: 600;
  src: url("/common/fonts/montserrat-v26-cyrillic_cyrillic-ext_latin-600italic.woff2") format("woff2"); /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
}
/* montserrat-700 - cyrillic_cyrillic-ext_latin */
@font-face {
  font-display: swap; /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
  font-family: "Montserrat";
  font-style: normal;
  font-weight: 700;
  src: url("/common/fonts/montserrat-v26-cyrillic_cyrillic-ext_latin-700.woff2") format("woff2"); /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
}
/* montserrat-700italic - cyrillic_cyrillic-ext_latin */
@font-face {
  font-display: swap; /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
  font-family: "Montserrat";
  font-style: italic;
  font-weight: 700;
  src: url("/common/fonts/montserrat-v26-cyrillic_cyrillic-ext_latin-700italic.woff2") format("woff2"); /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
}
/* montserrat-800 - cyrillic_cyrillic-ext_latin */
@font-face {
  font-display: swap; /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
  font-family: "Montserrat";
  font-style: normal;
  font-weight: 800;
  src: url("/common/fonts/montserrat-v26-cyrillic_cyrillic-ext_latin-800.woff2") format("woff2"); /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
}
/* montserrat-800italic - cyrillic_cyrillic-ext_latin */
@font-face {
  font-display: swap; /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
  font-family: "Montserrat";
  font-style: italic;
  font-weight: 800;
  src: url("/common/fonts/montserrat-v26-cyrillic_cyrillic-ext_latin-800italic.woff2") format("woff2"); /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
}
/* montserrat-900 - cyrillic_cyrillic-ext_latin */
@font-face {
  font-display: swap; /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
  font-family: "Montserrat";
  font-style: normal;
  font-weight: 900;
  src: url("/common/fonts/montserrat-v26-cyrillic_cyrillic-ext_latin-900.woff2") format("woff2"); /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
}
/* montserrat-900italic - cyrillic_cyrillic-ext_latin */
@font-face {
  font-display: swap; /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
  font-family: "Montserrat";
  font-style: italic;
  font-weight: 900;
  src: url("/common/fonts/montserrat-v26-cyrillic_cyrillic-ext_latin-900italic.woff2") format("woff2"); /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
}
body {
  font-family: "PT Root UI", sans-serif;
  font-size: 18px;
  font-weight: 600;
  height: auto;
  margin: 0 auto;
  background: transparent;
  color: #224738;
  line-height: 1.4;
  max-width: 2560px;
  min-height: 100vh;
  display: flex;
  flex-direction: column;
}
@media (max-width: 991px) {
  body {
    font-size: 16px;
  }
}
@media (max-width: 576px) {
  body {
    font-size: 14px;
  }
}

main {
  flex-grow: 1;
}

sup {
  font-size: 75%;
}

picture {
  display: flex;
  flex-direction: column;
  height: 100%;
}

strong {
  font-weight: 700;
}

a {
  color: inherit;
  transition: 0.25s;
}
a:hover {
  color: #578779;
  transition: 0.25s;
}

svg path,
svg rect {
  transition: 0.25s;
}

.section-title {
  font-family: Montserrat, sans-serif;
  font-size: 48px;
  line-height: 1.2;
  margin-bottom: 40px;
  font-weight: 600;
}
@media (max-width: 1499px) {
  .section-title {
    font-size: 38px;
    margin-bottom: 30px;
  }
}
@media (max-width: 1199px) {
  .section-title {
    font-size: 32px;
  }
}
@media (max-width: 767px) {
  .section-title {
    font-size: 30px;
    margin-bottom: 20px;
  }
}
@media (max-width: 576px) {
  .section-title {
    font-size: 28px;
  }
}

.section-subtitle {
  font-size: 26px;
  line-height: 1.3;
  font-weight: normal;
  margin-bottom: 15px;
}
@media (max-width: 1199px) {
  .section-subtitle {
    font-size: 22px;
  }
}
@media (max-width: 576px) {
  .section-subtitle {
    font-size: 20px;
  }
}

.page-form__title {
  font-size: 36px;
  margin-bottom: 30px;
}
.page-form__subtitle {
  margin-bottom: 30px;
  flex-grow: 1;
}
@media (max-width: 1399px) {
  .page-form__title {
    font-size: 30px;
  }
}
@media (max-width: 1199px) {
  .page-form__title {
    font-size: 25px;
  }
}

.page-btn {
  position: relative;
  line-height: 1;
  text-align: center;
  text-decoration: none !important;
  padding: 9px 18px;
  outline: none;
  cursor: pointer;
  border: 1px solid transparent;
  border-radius: 12px;
  font-size: 16px;
  font-weight: 500;
  min-height: 44px;
  background-color: transparent;
  display: flex;
  align-items: center;
  justify-content: center;
  transition: 0.25s;
}
.page-btn._green {
  border-color: #224738;
  background-color: #224738;
  color: #fff;
}
.page-btn:hover {
  background-color: #578779;
  border-color: #578779;
}
.page-btn svg {
  margin-right: 8px;
}
.page-btn._icon-right svg {
  margin-right: 0;
  margin-left: 8px;
}

._nowrap {
  white-space: nowrap;
}

._pale {
  opacity: 0.8;
}

._bg-lightgrey {
  background-color: #F6F6F6;
}

._text-white {
  color: #fff;
}

._text-grey1 {
  color: #BDBDBD;
}

._text-grey2 {
  color: #828282;
}

._text-blue {
  color: #4893CC;
}

._text-red {
  color: #D20C1C;
}

._weight-300 {
  font-weight: 300;
}

._text-center {
  text-align: center;
}

._rel {
  position: relative;
}

._w100 {
  width: 100%;
}

._fz26 {
  font-size: 26px;
}
@media (max-width: 1399px) {
  ._fz26 {
    font-size: 24px;
  }
}
@media (max-width: 767px) {
  ._fz26 {
    font-size: 22px;
  }
}
@media (max-width: 576px) {
  ._fz26 {
    font-size: 20px;
  }
}

._fz24 {
  font-size: 24px;
}
@media (max-width: 1399px) {
  ._fz24 {
    font-size: 21px;
  }
}

._fz18 {
  font-size: 18px;
}
@media (max-width: 1399px) {
  ._fz18 {
    font-size: 16px;
  }
}

input[type=number] {
  -moz-appearance: textfield;
}

input[type=checkbox] {
  display: none;
}

input[type=checkbox] + label,
input[type=checkbox] + span {
  padding-left: 30px;
  position: relative;
  cursor: pointer;
}
input[type=checkbox] + label:before,
input[type=checkbox] + span:before {
  content: "";
  position: absolute;
  left: 0;
  top: -2px;
  width: 20px;
  height: 20px;
  border-radius: 6px;
  border: 1px solid rgba(255, 255, 255, 0.5);
  flex-shrink: 0;
}
input[type=checkbox] + label:hover:before,
input[type=checkbox] + span:hover:before {
  border-color: #fff;
}

input[type=checkbox]:checked + span:before,
input[type=checkbox]:checked + label:before {
  background-color: #224738;
  border-color: #fff;
  background-image: url("/common/img/ico-check.svg");
  background-size: 10px 10px;
  background-repeat: no-repeat;
  background-position: 50% 50%;
}

@media (min-width: 500px) {
  ._show-499 {
    display: none !important;
  }
}
@media (max-width: 499px) {
  ._hide-499 {
    display: none !important;
  }
}
@media (min-width: 768px) {
  ._show-767 {
    display: none !important;
  }
}
@media (max-width: 767px) {
  ._hide-767 {
    display: none !important;
  }
}
@media (min-width: 992px) {
  ._show-991 {
    display: none !important;
  }
}
@media (max-width: 991px) {
  ._hide-991 {
    display: none !important;
  }
}
@media (min-width: 1300px) {
  ._show-1299 {
    display: none !important;
  }
}
@media (max-width: 1299px) {
  ._hide-1299 {
    display: none !important;
  }
}
@media (min-width: 992px) {
  .toTop {
    position: fixed;
    right: 100px;
    bottom: 100px;
    cursor: pointer;
    z-index: 50;
    display: none;
    border-radius: 50%;
    -webkit-transition: 0.25s;
    transition: 0.25s;
  }
  .toTop:hover {
    -webkit-transition: 0.25s;
    transition: 0.25s;
  }
  .toTop:hover svg circle {
    fill: transparent;
  }
  .toTop.active {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    -webkit-box-shadow: 2px 2px 20px rgba(0, 0, 0, 0.15);
    box-shadow: 2px 2px 20px rgba(0, 0, 0, 0.15);
  }
}
@media (max-width: 991px) {
  .toTop.active {
    height: 0;
    width: 0;
    display: none;
  }
}
body.overflow {
  height: 100vh;
  overflow: hidden;
}

.modal {
  overflow: hidden;
  opacity: 0;
  position: fixed;
  z-index: -1;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
  background: linear-gradient(101.43deg, rgba(0, 0, 0, 0.24) -5.15%, rgba(0, 0, 0, 0.04) 104.36%);
  backdrop-filter: blur(8px);
  transition: 0.25s;
}
.modal .close {
  cursor: pointer;
  position: absolute;
  right: -56px;
  top: 0;
  width: 44px;
  height: 44px;
  opacity: 0.6;
  background-color: #ECEDEC;
  border-radius: 12px;
  display: flex;
  justify-content: center;
  align-items: center;
  z-index: 2;
  transition: 0.25s;
}
.modal .close:hover {
  opacity: 1;
  transition: 0.25s;
}
@media (max-width: 1199px) {
  .modal .close {
    right: 8px;
    top: 8px;
    width: 32px;
    height: 32px;
  }
}
.modal-dialog {
  position: absolute;
  left: 50%;
  top: -100%;
  transform: translateX(-50%);
  height: auto;
  width: calc(100vw - 30px);
  background-color: #fff;
  transition: 0.25s;
}
@media (min-width: 1200px) {
  .modal-dialog {
    max-width: 1000px;
    width: 100%;
  }
}
.modal.modal-open {
  display: block;
  overflow: visible;
  opacity: 1;
  z-index: 100;
  transition: 0.25s;
}
.modal.modal-open .modal-dialog {
  top: 50px;
  border-radius: 24px;
  transition: 0.25s ease-in-out;
  transition-delay: 0.25s;
}
@media (max-width: 1199px) {
  .modal.modal-open .modal-dialog {
    border-radius: 12px;
    top: 15px;
  }
}
.modal-header {
  padding: 0;
  border: 0;
  margin: 0;
}
.modal-body {
  margin: 40px 20px;
  padding: 0 20px;
  height: 100%;
  max-height: calc(100vh - 180px);
  overflow-y: auto;
  border-radius: 12px;
}
@media (max-width: 1199px) {
  .modal-body {
    margin: 30px 15px;
    padding: 0 15px;
    max-height: calc(100vh - 90px);
  }
}
@media (max-width: 991px) {
  .modal-body {
    padding: 0;
    margin: 0 0 20px 0;
    max-height: calc(100vh - 50px);
  }
}
@media (min-width: 1240px) {
  .modal-body::-webkit-scrollbar {
    width: 6px;
    border-radius: 3px;
  }
  .modal-body::-webkit-scrollbar-track {
    background: #fff;
    border-radius: 3px;
  }
  .modal-body::-webkit-scrollbar-thumb {
    background: rgba(59, 66, 59, 0.1019607843);
    border-radius: 3px;
  }
  .modal-body::-moz-selection {
    color: rgba(59, 66, 59, 0.1019607843);
    background: #fff;
    border-radius: 3px;
  }
  .modal-body::selection {
    color: rgba(59, 66, 59, 0.1019607843);
    background: #fff;
    border-radius: 3px;
  }
}

.tab-pane {
  visibility: hidden;
  height: 0;
  opacity: 0;
}

.tab-pane._active {
  visibility: visible;
  height: auto;
  opacity: 1;
  transition: 1s;
  transition-delay: 0.05s;
}

.c-tabs .tabs-nav {
  font-size: 20px;
  padding: 12px;
  background-color: #F6F6F6;
  border-radius: 32px;
  display: flex;
}
@media (max-width: 1399px) {
  .c-tabs .tabs-nav {
    font-size: 18px;
  }
}
@media (max-width: 767px) {
  .c-tabs .tabs-nav {
    font-size: 16px;
  }
}
.c-tabs .tab-link {
    -webkit-tap-highlight-color: transparent;
    tap-highlight-color: transparent;
  padding: 12px 24px;
  text-decoration: none;
  border-radius: 32px;
  transition: 0s;
}
.c-tabs .tab-link._active {
  background-color: #224738;
  color: #fff;
}
.c-tabs .tab-link:hover:not(._active) {
  color: #578779;
  background-color: #ECEDEC;
}

/*start menu-top*/
@media (max-width: 1199px) {
  body.menu-show {
    overflow: hidden;
  }
  body.menu-show .menu-top--nav {
    height: calc(100vh - 68px);
    right: 0;
    overflow-y: auto;
    transition: 0.25s;
  }
  body.menu-show .menu-top {
    background-color: #fff;
  }
}
.menu-top {
  height: 120px;
  background: rgba(255, 255, 255, 0.8);
  padding: 0 30px;
  position: fixed;
  width: 100vw;
  z-index: 20;
  left: 0;
  top: 0;
  display: flex;
  justify-content: center;
  transition: 0.15s;
}
.menu-top.menu-shrink {
  box-shadow: 0 3px 6px rgba(0, 0, 0, 0.1);
  background: white;
  transition: 0.4s;
}
@media (min-width: 1200px) {
  .menu-top.menu-shrink {
    height: 68px;
  }
  .menu-top.menu-shrink .menu-top--logo img {
    height: 120px;
  }
}
@media (max-width: 1199px) {
  .menu-top {
    height: 100px;
    padding: 0 15px;
  }
}
@media (max-width: 1299px) {
  .menu-top {
    font-size: 14px;
  }
}
@media (max-width: 576px) {
  .menu-top {
    height: 68px;
    padding: 0 8px;
  }
}
@media (max-width: 349px) {
  .menu-top {
    padding: 0;
  }
}

.menu-top--wrap {
  width: 100%;
  max-width: 1280px;
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding: 8px 0;
  transition: 0.25s;
}
@media (max-width: 1199px) {
  .menu-top--wrap {
    align-items: center;
  }
}

.menu-top--logo {
  display: flex;
  align-items: center;
}
.menu-top--logo img {
  height: 150px;
  transition: 0.25s;
}
@media (max-width: 1199px) {
  .menu-top--logo {
    flex-grow: 1;
    justify-content: center;
    margin-left: 140px;
  }
}
@media (max-width: 599px) {
  .menu-top--logo {
    margin-left: 0;
  }
}
@media (max-width: 576px) {
  .menu-top--logo img {
    height: 48px;
  }
}

.menu-top--nav {
  flex-grow: 1;
  display: flex;
  justify-content: space-between;
}
@media (max-width: 1199px) {
  .menu-top--nav {
    height: calc(100vh - 100px);
    background-color: white;
    display: flex;
    flex-direction: column;
    position: fixed;
    right: -200%;
    top: 100px;
    width: 100%;
    z-index: 11;
    padding: 0 20px 30px 20px;
    margin: 0;
    transition: 0.25s;
  }
  .menu-top--nav.active {
    right: 0;
    transition: 0.25s;
  }
}
@media (max-width: 576px) {
  .menu-top--nav {
    height: calc(100vh - 68px);
    top: 68px;
  }
}

.menu-top--nav-links {
  display: flex;
  align-self: center;
  justify-content: center;
  flex-grow: 1;
}
@media (max-width: 1199px) {
  .menu-top--nav-links {
    flex-direction: column;
    justify-content: flex-start;
    width: 100%;
    padding-bottom: 30px;
    margin-bottom: 30px;
  }
}
.menu-top--nav-links .menu-link {
  padding: 5px 0;
  margin: 0 30px;
  font-weight: 600;
  text-decoration: none;
  position: relative;
  cursor: pointer;
  transition: 0.25s;
}
@media (max-width: 1199px) {
  .menu-top--nav-links .menu-link {
    padding: 30px 0;
    margin: 0;
    font-size: 32px;
    color: rgba(39, 46, 38, 0.7);
    border-top: 1px solid rgba(59, 66, 59, 0.1);
  }
  .menu-top--nav-links .menu-link:last-child {
    border-bottom: 1px solid rgba(59, 66, 59, 0.1);
  }
}

@media (max-width: 1199px) {
  .menu-top--nav-buttons {
    display: flex;
    flex-direction: column;
    align-items: center;
  }
  .menu-top--nav-buttons .page-btn {
    margin-bottom: 25px;
    width: 100%;
  }
  .menu-top--nav-buttons .page-btn:last-child {
    margin-bottom: 0;
  }
}
@media (max-width: 599px) {
  .menu-top--nav-buttons {
    justify-content: center;
  }
}

.menu-top--contacts-phone {
  font-size: 22px;
  font-weight: 600;
  text-decoration: none;
}
.menu-top--contacts-address {
  font-size: 14px;
  font-weight: 500;
  color: #828282;
  margin-top: 4px;
}
@media (max-width: 1399px) {
  .menu-top--contacts {
    display: flex;
    align-items: center;
  }
  .menu-top--contacts-address {
    display: none;
  }
}
@media (max-width: 1199px) {
  .menu-top--contacts {
    display: none;
  }
  .menu-top--contacts-phone {
    text-indent: 0;
    width: 100%;
    background: none;
    color: #323242;
    text-align: center;
    justify-content: center;
  }
}

@media (min-width: 992px) {
  .show-mob,
  .js-mob-btn {
    display: none;
  }
}
@media (max-width: 1199px) {
  .show-mob,
  .js-mob-btn {
    display: inline-flex;
  }
}

@media (max-width: 1199px) {
  .js-mob-btn {
    width: 45px;
    height: 45px;
    padding: 12px;
  }
  .js-mob-btn .menu-open,
  .js-mob-btn .menu-close {
    display: none;
  }
  .js-mob-btn .menu-open.active,
  .js-mob-btn .menu-close.active {
    display: inline-flex;
  }
}
@media (max-width: 1199px) {
  body.menu-show {
    overflow: hidden;
  }
  body.menu-show .menu-top--nav {
    height: calc(100vh - 68px);
    right: 0;
    overflow-y: auto;
    transition: 0.25s;
  }
}
.menu-top--mobile-phone {
  display: none;
}
@media (max-width: 1199px) {
  .menu-top--mobile-phone {
    display: flex;
    padding: 12px;
  }
}

.menu-top--slides {
  display: none;
}
@media (max-width: 1199px) {
  .menu-top--slides {
    display: flex;
    flex-direction: column;
    padding: 12px;
  }
  .menu-top--slides .footer-slide._info {
    width: 100%;
    max-width: inherit;
    margin-bottom: 15px;
  }
  .menu-top--slides .footer-slide._rules {
    width: 100%;
    max-width: inherit;
  }
  .menu-top--slides .footer-slide .slide__text {
    padding-top: 10px;
  }
}

@media (max-width: 599px) {
  .menu-top--button .page-btn {
    padding: 10px;
    background: none;
    border: 0;
  }
  .menu-top--button .page-btn svg {
    margin: 0;
  }
  .menu-top--button .page-btn svg path {
    fill: #224738;
  }
  .menu-top--button .page-btn span {
    display: none;
  }
}

.burger {
  position: relative;
  border: none;
  background: transparent;
  width: 24px;
  height: 24px;
  margin-left: 8px;
}
.burger::before, .burger::after {
  content: "";
  left: 0;
  position: absolute;
  display: block;
  width: 100%;
  height: 2px;
  background: #224738;
  border-radius: 2px;
}
.burger::before {
  top: 8px;
  transition: box-shadow 0.3s 0.15s, top 0.3s 0.15s, transform 0.3s;
}
.burger::after {
  bottom: 8px;
  transition: bottom 0.3s 0.15s, transform 0.3s;
}
.burger.active::before {
  top: 11px;
  transform: rotate(45deg);
  box-shadow: 0 6px 0 rgba(0, 0, 0, 0);
  transition: box-shadow 0.15s, top 0.3s, transform 0.3s 0.15s;
}
.burger.active::after {
  bottom: 11px;
  transform: rotate(-45deg);
  transition: bottom 0.3s, transform 0.3s 0.15s;
}

/*end menu-top*/

/*start section-top*/
.section-top {
  position: relative;
  overflow: hidden;
}

.section-top__image {
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
}
@media (max-height: 850px) {
  .section-top__image {
    top: -30px;
  }
}
@media (max-height: 880px) {
  .section-top__image {
    top: -40px;
  }
}
@media (max-height: 750px) {
  .section-top__image {
    top: -50px;
  }
}
@media (max-height: 700px) {
  .section-top__image {
    top: -70px;
  }
}
.section-top__image:before {
  content: "";
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
  background-color: rgba(0, 0, 0, 0.2);
  z-index: 1;
}
.section-top__image img,
.section-top__image picture {
  min-height: 950px;
  width: 100%;
  object-fit: cover;
  display: flex;
}

.section-top__arrow {
  position: absolute;
  bottom: 15px;
  left: 50%;
  transform: translateX(-50%);
  z-index: 2;
}
.section-top__arrow a:hover svg path {
  fill: #578779;
}
.section-top__arrow a:hover svg rect {
  stroke: #578779;
}

.section-top__about {
  position: relative;
  color: #fff;
  height: 100vh;
  max-height: 950px;
  padding-top: 200px;
  display: flex;
  flex-direction: column;
  justify-content: center;
  z-index: 2;
}
.section-top__about ._title {
  font-size: 105px;
  line-height: 1;
  font-family: Montserrat, sans-serif;
  margin-bottom: 100px;
  font-weight: 400;
}
.section-top__about ._text {
  font-size: 32px;
  white-space: nowrap;
  font-weight: 400;
}
@media (max-width: 1499px) {
  .section-top__about ._title {
    font-size: 96px;
  }
  .section-top__about ._text {
    font-size: 29px;
  }
}
@media (max-width: 1299px) {
  .section-top__about ._title {
    font-size: 88px;
  }
  .section-top__about ._text {
    font-size: 28px;
  }
}
@media (max-width: 1199px) {
  .section-top__about ._text {
    white-space: normal;
    font-size: 26px;
  }
}
@media (max-width: 991px) {
  .section-top__about ._title {
    font-size: 80px;
  }
}
@media (max-width: 767px) {
  .section-top__about ._title {
    font-size: 64px;
  }
  .section-top__about ._text {
    font-size: 24px;
  }
}
@media (max-width: 576px) {
  .section-top__about {
    padding: 200px 0 100px;
  }
  .section-top__about ._title {
    font-size: 52px;
  }
  .section-top__about ._text {
    font-size: 17px;
  }
}
@media (max-height: 750px) {
  .section-top__about {
    justify-content: flex-end;
    padding: 150px 0;
    height: auto;
    min-height: 100vh;
  }
}
@media (max-height: 700px) {
  .section-top__about {
    padding: 150px 0 120px 0;
  }
}
@media (max-height: 650px) {
  .section-top__about {
    padding: 150px 0 80px 0;
  }
}
@media (max-height: 500px) {
  .section-top__about {
    height: 100%;
  }
}

/*end section-top*/

/*start quote*/
section.quote {
  padding: 120px 0;
  background-color: #EEF7F3;
}
@media (max-width: 1199px) {
  section.quote {
    padding: 80px 0;
  }
}
@media (max-width: 576px) {
  section.quote {
    padding: 40px 0;
  }
}
section.quote .quote-wrap {
  display: flex;
}
@media (max-width: 991px) {
  section.quote .quote-wrap {
    flex-direction: column;
  }
}

.quote__person {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  max-width: 320px;
  flex-shrink: 0;
}
@media (max-width: 1199px) {
  .quote__person {
    max-width: 250px;
  }
}
@media (max-width: 991px) {
  .quote__person {
    max-width: inherit;
    margin-bottom: 40px;
    flex-direction: row;
    align-items: center;
  }
}
@media (max-width: 576px) {
  .quote__person {
    margin-bottom: 20px;
  }
}
@media (max-width: 991px) {
  .quote__person__about {
    padding-left: 25px;
  }
}
.quote__person__photo {
  flex-shrink: 0;
  margin-bottom: 16px;
  width: 128px;
  height: 128px;
}
@media (max-width: 1199px) {
  .quote__person__photo {
    width: 104px;
    height: 104px;
  }
}
@media (max-width: 991px) {
  .quote__person__photo {
    margin-bottom: 0;
  }
}
@media (max-width: 576px) {
  .quote__person__photo {
    width: 96px;
    height: 96px;
  }
}
.quote__person__photo img {
  border-radius: 50%;
  width: 100%;
  height: 100%;
  object-fit: cover;
}
.quote__person__name {
  margin-bottom: 8px;
  font-size: 22px;
  font-weight: 600;
  font-family: Montserrat, sans-serif;
}
@media (max-width: 379px) {
  .quote__person__name {
    font-size: 18px;
  }
}
.quote__person__post {
  margin-bottom: 8px;
  font-size: 14px;
}
.quote__person__post:last-child {
  margin-bottom: 0;
}

.quote__text {
  /*padding-left: 120px;*/
  position: relative;
}
/*
.quote__text:before {
  content: "";
  background-image: url("data:image/svg+xml,%3Csvg width='104' height='104' viewBox='0 0 104 104' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M47.1251 81.25C45.3254 85.1094 41.2345 87.75 36.9688 87.75C29.6563 87.7683 22.3438 87.75 15.0313 87.75C13.335 87.7802 11.6524 87.442 10.0995 86.7587C6.13446 85.0362 3.37806 80.9067 3.32118 76.5801C3.31035 68.8614 3.31035 61.1386 3.32119 53.4117C3.33366 50.417 3.9305 47.4536 5.07822 44.6875C5.65915 43.288 6.41478 41.9717 7.12978 40.6372C11.1909 33.1148 15.2467 25.591 19.297 18.0659C25.0264 18.0659 30.7566 18.0659 36.4874 18.0659C34.5307 26.3169 32.5671 34.5671 30.5968 42.8167C32.7195 42.8167 34.8421 42.8167 36.9648 42.8167C39.7264 42.8641 42.3786 43.9046 44.4357 45.7478C45.6291 46.8167 46.5843 48.1247 47.2394 49.5867C47.8945 51.0488 48.2348 52.6323 48.2382 54.2344C48.249 61.5469 48.249 68.8594 48.2382 76.1719C48.2588 77.9273 47.878 79.6642 47.1251 81.25Z' fill='%23B8DDCE'/%3E%3Cpath d='M97.112 84.7235C95.0044 86.6678 92.2425 87.7482 89.375 87.75C82.0625 87.7595 74.754 87.7595 67.4497 87.75C64.804 87.7814 62.2292 86.8949 60.1636 85.2414C58.8325 84.1761 57.7556 82.8276 57.011 81.2939C56.2665 79.7602 55.8731 78.0799 55.8594 76.375C55.8594 68.7917 55.8594 61.2084 55.8594 53.625C55.8568 49.7727 56.8146 45.9804 58.6462 42.5913C63.0513 34.4135 67.4585 26.237 71.8676 18.0619C77.5958 18.0619 83.3246 18.0619 89.054 18.0619C87.0892 26.3129 85.1222 34.5631 83.1533 42.8127C85.4283 42.833 87.7033 42.7843 89.9783 42.8371C92.0364 42.9559 94.0248 43.6257 95.7354 44.7763C97.446 45.927 98.8159 47.5162 99.7019 49.3777C100.445 50.9599 100.82 52.6898 100.799 54.4375C100.799 61.7419 100.799 69.0456 100.799 76.3486C100.794 77.9214 100.464 79.4763 99.8296 80.9156C99.1955 82.355 98.2711 83.6479 97.114 84.7133' fill='%23B8DDCE'/%3E%3Cpath d='M40.625 76.375C40.625 68.9948 40.625 61.6146 40.625 54.2344C40.6657 52.2681 38.9472 50.4847 36.983 50.4583C31.6408 50.44 26.2966 50.4583 20.9544 50.4583C22.9139 42.2073 24.8774 33.9571 26.845 25.7075C25.8477 25.7075 24.8503 25.7075 23.853 25.7075C20.1724 32.5244 16.4965 39.3439 12.8253 46.1662C11.2653 48.9186 10.7636 52.13 10.916 55.2601L10.916 75.1562C10.916 76.0256 10.8408 76.9376 11.1942 77.7562C11.4837 78.4746 11.9852 79.0878 12.6318 79.5142C13.2784 79.9406 14.0396 80.1599 14.8139 80.1429C22.2016 80.1429 29.5892 80.1429 36.9749 80.1429C38.933 80.1206 40.6474 78.3473 40.6189 76.3912' fill='white'/%3E%3Cpath d='M93.1795 76.3872C93.1876 69.0016 93.1876 61.6166 93.1795 54.2323C93.2201 52.2742 91.5199 50.4948 89.5618 50.4502C84.2095 50.4319 78.8591 50.4502 73.5149 50.44C75.4758 42.1891 77.4393 33.9388 79.4055 25.6892C78.4102 25.6892 77.4149 25.6892 76.4176 25.6892C72.7139 32.5359 69.0191 39.3873 65.333 46.2434C64.1096 48.511 63.4721 51.0484 63.4785 53.625C63.4785 61.2083 63.4785 68.7917 63.4785 76.375C63.448 78.3717 65.2274 80.1653 67.2262 80.1369C74.6646 80.1369 82.1044 80.1369 89.5455 80.1369C91.4976 80.1064 93.2018 78.3392 93.1774 76.3892' fill='white'/%3E%3C/svg%3E%0A");
  background-position: 0 0;
  background-repeat: no-repeat;
  background-size: contain;
  position: absolute;
  left: 0;
  top: 0;
  transform: translateY(-40%);
  display: inline-flex;
  width: 104px;
  height: 104px;
}
*/
@media (max-width: 576px) {
  .quote__text {
    padding-left: 0;
  }
  .quote__text:before {
    display: none;
  }
}
.quote__text * {
  position: relative;
}
.quote__text *:last-child {
  padding-bottom: 0;
  margin-bottom: 0;
}

/*end quote*/
section.pathmap {
  padding: 120px 0 40px calc(50% - 640px);
  display: flex;
  justify-content: space-between;
  align-items: center;
}
@media (max-width: 1299px) {
  section.pathmap {
    padding: 80px 0 20px calc(50% - 550px);
  }
}
@media (max-width: 1199px) {
  section.pathmap {
    padding: 80px 0;
    flex-direction: column;
    align-items: flex-start;
  }
}
@media (max-width: 576px) {
  section.pathmap {
    padding: 40px 0;
  }
}
/*start about*/
section.about,.road-wrap {
  padding: 120px 0 120px calc(50% - 640px);
  display: flex;
  justify-content: space-between;
  align-items: center;
}
@media (max-width: 1299px) {
  section.about,.road-wrap {
    padding: 80px 0 80px calc(50% - 550px);
  }
}
@media (max-width: 1199px) {
  section.about,.road-wrap {
    padding: 80px 0;
    flex-direction: column;
    align-items: flex-end;
  }
}
@media (max-width: 576px) {
  section.about,.road-wrap {
    padding: 40px 0;
  }
}

.about__text {
  max-width: 390px;
  flex-shrink: 0;
}
@media (max-width: 1199px) {
  .about__text {
    max-width: inherit;
    padding: 0 calc(50% - 460px) 20px;
  }
}
@media (max-width: 991px) {
  .about__text {
    padding: 0 calc(50% - 340px) 20px;
  }
}
@media (max-width: 767px) {
  .about__text {
    padding: 0 calc(50% - 255px) 20px;
  }
}
@media (max-width: 576px) {
  .about__text {
    padding: 0 15px 20px 15px;
  }
}

.about__image {
	padding-left: 40px;
}

@media (max-width: 1199px) {
	.about__image {
		padding-left: 0;
		width: 100%;
	}
}
@media (max-width: 1199px) {
	.about__image img {
		width: 100%;
	}
}

/*end about*/
/*start infrastructure*/
section.infrastructure {
  padding: 120px 0;
}
@media (max-width: 1199px) {
  section.infrastructure {
    padding: 80px 0;
  }
}
@media (max-width: 576px) {
  section.infrastructure {
    padding: 40px 0;
  }
}

.infrastructure__top {
  display: flex;
  margin-bottom: 60px;
  flex-direction: column;
}
@media (max-width: 1199px) {
  .infrastructure__top {
    flex-direction: column;
    margin-bottom: 40px;
  }
}

.infrastructure__top__blocks {
  display: flex;
  padding-left: 20px;
  justify-content: space-evenly;
}
@media (max-width: 1199px) {
  .infrastructure__top__blocks {
    padding-left: 0;
    margin: 0 -12px;
    width: calc(100% + 24px);
  }
}
@media (max-width: 767px) {
  .infrastructure__top__blocks {
    margin: 0;
    flex-direction: column;
    width: auto;
  }
}

.infrastructure__top__block {
  display: flex;
  flex-direction: column;
  font-family: Montserrat, sans-serif;
  padding: 24px;
  margin: 0 6px;
  border-radius: 24px;
  box-shadow: 0px 1px 4px 0px rgba(0, 0, 0, 0.1019607843);
  border: 1px solid #fff;
  background-color: #fff;
  width: calc(33.3333333333% - 12px);
}
@media (max-width: 767px) {
  .infrastructure__top__block {
    margin: 5px 0;
    width: 100%;
    

  }
}
@media (max-width: 576px) {
  .infrastructure__top__block {
    padding: 15px;
  }
}
@media (max-width: 379px) {
  .infrastructure__top__block {
    flex-direction: column;
  }
}
.infrastructure__top__block ._title {
  font-size: 48px;
  line-height: 1.1;
  margin-bottom: 16px;
}
@media (max-width: 1399px) {
  .infrastructure__top__block ._title {
    font-size: 40px;
  }
}
@media (max-width: 1199px) {
  .infrastructure__top__block ._title {
    font-size: 54px;
  }
}
@media (max-width: 767px) {
  .infrastructure__top__block ._title {
    margin-right: 20px;
    margin-bottom: 10px;
    font-size: 50px;
    
    flex-shrink: 0;
  }
}
@media (max-width: 576px) {
  .infrastructure__top__block ._title {
    font-size: 40px;
    padding-left:22px;
  }
}
@media (max-width: 379px) {
  .infrastructure__top__block ._title {
    width: auto;
    margin-bottom: 10px;
    margin-right: 0;
  }
}
.infrastructure__top__block ._text {
  font-size: 15px;
  font-weight: 500;
}
@media (max-width: 576px) {
  .infrastructure__top__block ._text {
    font-size: 14px;
  }
}
@media (max-width: 379px) {
  .infrastructure__top__block ._text {
    text-align: center;
  }
}
.infrastructure__top__block small {
  font-size: 0.6em;
}

.infrastructure__list {
  display: flex;
  flex-wrap: wrap;
  margin: 0 -12px;
  width: calc(100% + 24px);
}
@media (max-width: 576px) {
  .infrastructure__list {
    margin: 0 -10px;
    width: calc(100% + 20px);
  }
}
@media (max-width: 379px) {
  .infrastructure__list {
    width: 100%;
    margin: 0;
  }
}
.infrastructure__list._mobile {
  display: none;
}

.infrastructure__list__point {
  display: flex;
  align-items: center;
  margin: 20px 12px;
  width: calc(33.3333333333% - 24px);
}
@media (max-width: 991px) {
  .infrastructure__list__point {
    width: calc(50% - 24px);
  }
}
@media (max-width: 767px) {
  .infrastructure__list__point {
    flex-direction: column;
    align-items: flex-start;
  }
}
@media (max-width: 576px) {
  .infrastructure__list__point {
    flex-direction: row;
    margin: 10px;
  }
  .infrastructure__list__point:last-child:nth-child(2n+1) {
    width: calc(100% - 24px);
  }
}
@media (max-width: 379px) {
  .infrastructure__list__point {
    width: 100%;
    margin: 0 0 15px 0;
  }
  .infrastructure__list__point:last-child {
    margin-bottom: 0;
  }
}
.infrastructure__list__point ._icon {
  flex-shrink: 0;
}
@media (max-width: 767px) {
  .infrastructure__list__point ._icon img {
    width: 50px;
    height: 50px;
    object-fit: contain;
  }
}
@media (max-width: 576px) {
  .infrastructure__list__point ._icon {
    margin-right: 20px;
  }
  .infrastructure__list__point ._icon img {
    width: 32px;
    height: 32px;
    object-fit: contain;
  }
}
@media (max-width: 450px) {
  .infrastructure__list__point ._icon {
    margin-right: 12px;
  }
}
.infrastructure__list__point ._text {
  font-size: 20px;
  padding: 0 24px 0 12px;
}
@media (max-width: 1399px) {
  .infrastructure__list__point ._text {
    font-size: 18px;
  }
}
@media (max-width: 767px) {
  .infrastructure__list__point ._text {
    font-size: 16px;
    padding: 12px 0 0 0;
  }
}
@media (max-width: 576px) {
  .infrastructure__list__point ._text {
    padding: 5px 0 0 0;
    font-size: 14px;
  }
}

/*end infrastructure*/

/*start visualization*/
section.visualization {
  padding: 120px 0;
}
@media (max-width: 1199px) {
  section.visualization {
    padding: 80px 0;
  }
}
@media (max-width: 576px) {
  section.visualization {
    padding: 40px 0;
  }
}

.visualization-slider .owl-stage-outer {
  margin-left: -40px;
}
.visualization-slider img, .roads-slider img {
  border-radius: 12px;
}

/*end visualization*/
/*start rooms*/
section.rooms {
  padding: 120px 0;
}
@media (max-width: 1199px) {
  section.rooms {
    padding: 80px 0;
  }
}
@media (max-width: 576px) {
  section.rooms {
    padding: 40px 0;
  }
}
section.rooms .section-title {
  margin-bottom: 0;
}
section.rooms .section-title ._star {
  display: inline-flex;
  align-items: flex-start;
  line-height: 1;
}
section.rooms .section-title ._star img {
  margin-left: 4px;
  margin-top: 6px;
  width: 24px;
}
@media (max-width: 1499px) {
  section.rooms .section-title ._star img {
    margin-top: 4px;
    width: 20px;
  }
}
@media (max-width: 1199px) {
  section.rooms .section-title ._star img {
    width: 16px;
  }
}

.rooms__top {
  display: flex;
  justify-content: space-between;
  align-items: center;
  margin-bottom: 40px;
}
@media (max-width: 1499px) {
  .rooms__top {
    margin-bottom: 30px;
  }
}
@media (max-width: 991px) {
  .rooms__top {
    flex-direction: column;
    align-items: stretch;
    margin-bottom: 0;
  }
  .rooms__top .tabs-nav {
    margin: 30px 0;
  }
  .rooms__top .tab-link {
    flex-grow: 1;
    text-align: center;
  }
}
@media (max-width: 767px) {
  .rooms__top .tabs-nav {
    margin: 20px 0;
  }
}
@media (max-width: 767px) {
  .rooms__top .tabs-nav {
    flex-wrap: wrap;
  }
  .rooms__top .tab-link {
    width: 50%;
  }
}
@media (max-width: 379px) {
  .rooms__top .tabs-nav {
    padding: 0;
    background-color: transparent;
  }
  .rooms__top .tab-link {
    width: 50%;
  }
}

.rooms-slider .owl-stage-outer, .sauna-slider .owl-stage-outer {
  margin-left: -40px;
}
.rooms-slider img, .sauna-slider img {
  border-radius: 12px;
}

/*end rooms*/
/*start news*/
section.news {
  padding: 120px 0;
}
@media (max-width: 1199px) {
  section.news {
    padding: 80px 0;
  }
}
@media (max-width: 576px) {
  section.news {
    padding: 40px 0;
  }
}

@media (max-width: 991px) {
  .news-slider .owl-nav [class*=owl-] {
    top: 20%;
  }
}
@media (max-width: 767px) {
  .news-slider .owl-nav [class*=owl-] {
    top: 15%;
  }
}
@media (max-width: 576px) {
  .news-slider .owl-nav [class*=owl-] {
    top: 27vw;
  }
}

.news__body {
  max-height: 415px;
  overflow: hidden;
  position: relative;
}
.news__body:before {
  content: "";
  position: absolute;
  left: 0;
  bottom: 0;
  width: 100%;
  height: 50px;
  background: linear-gradient(180deg, rgba(246, 246, 246, 0) 0%, #fff 77.5%);
}

.news__image {
  margin-bottom: 20px;
  height: 225px;
}
@media (max-width: 1299px) {
  .news__image {
    height: 200px;
  }
}
@media (max-width: 1299px) {
  .news__image {
    height: 160px;
  }
}
@media (max-width: 576px) {
  .news__image {
    height: auto;
  }
}
.news__image img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    border-radius: 12px;
}
.news__image .modal-btn {
  width: 100%;
  height: 100%;
  object-fit: cover;
  border-radius: 12px;
}
.news__image .modal-btn:not(:first-child) {
  display: none;
}

.news__title {
  font-size: 20px;
  font-weight: 700;
  margin-bottom: 4px;
}

.news__date {
  font-size: 14px;
  margin-bottom: 12px;
  opacity: 0.6;
}

.news__text {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
}
@media (min-width: 991px) {
  .news__text {
    font-size: 16px;
  }
}
.news__text > *:last-child {
  margin-bottom: 0;
  padding-bottom: 0;
}

.show-more {
  font-size: 16px;
  color: #007957;
  text-decoration: none;
}
.show-more:hover {
  color: #578779;
}

.share {
  margin-top: 24px;
}
.share__title {
  font-size: 22px;
  margin-bottom: 16px;
}
.share__body {
  display: flex;
  align-items: center;
}
.share__btn {
  font-size: 14px;
  text-decoration: none;
  background-color: #ECEDEC;
  border-radius: 12px;
  display: flex;
  align-items: center;
  justify-content: center;
  height: 32px;
  width: 32px;
  margin-right: 12px;
}
.share__btn._link {
  width: auto;
  padding: 6px 12px;
  margin-right: 0;
}
.share__btn:hover svg path {
  fill: #578779;
}

#newsModal .news__image {
  height: auto;
}
@media (max-width: 991px) {
  #newsModal .news__body-wrap {
    padding: 0 30px 30px 30px;
  }
}
@media (max-width: 576px) {
  #newsModal .modal-dialog {
    height: calc(100% - 60px);
  }
  #newsModal .modal-content {
    height: 100%;
  }
  #newsModal .modal-body {
    display: flex;
    flex-direction: column;
  }
  #newsModal .news__body-wrap {
    padding: 0 15px 35px 15px;
    flex-grow: 1;
    display: flex;
    flex-direction: column;
  }
  #newsModal .news__text {
    flex-grow: 1;
  }
}

.news-slider-modal {
  margin-bottom: 20px;
}
.news-slider-modal img {
    border-radius: 12px;
}
.news-slider-modal .owl-dots {
  margin-top: 10px;
}
.news-slider-modal .owl-dots .owl-dot span {
  width: 6px;
  height: 6px;
  border-radius: 3px;
  margin: 0 2px;
}
.news-slider-modal .owl-dots .owl-dot.active span {
  width: 24px;
}
.news-slider-modal.owl-loaded {
    opacity: 1;
    transition: 0.25s;
}

.modal-link-img {
    cursor: grab;
}
.modal-link-img:active {
    cursor: grabbing;
}

.modal .news__text iframe {
  width: 100%;
  height: 490px;
}
@media (max-width: 1199px) {
  .modal .news__text iframe {
    height: 52vw;
  }
}
@media (max-width: 991px) {
  .modal .news__text iframe {
    height: 51vw;
  }
}
@media (max-width: 767px) {
  .modal .news__text iframe {
    height: 50vw;
  }
}
@media (max-width: 420px) {
  .modal .news__text iframe {
    height: 48vw;
  }
}

body.list_item .news__text iframe {
  width: 100%;
  height: 720px;
}
@media (max-width: 1299px) {
  body.list_item .news__text iframe {
    height: 625px;
  }
}
@media (max-width: 1199px) {
  body.list_item .news__text iframe {
    height: 524px;
  }
}
@media (max-width: 991px) {
  body.list_item .news__text iframe {
    height: 391px;
  }
}
@media (max-width: 767px) {
  body.list_item .news__text iframe {
    height: 287px;
  }
}
@media (max-width: 576px) {
  body.list_item .news__text iframe {
    height: 54vw;
  }
}
@media (max-width: 420px) {
  body.list_item .news__text iframe {
    height: 52vw;
  }
}

body.list_item .news__body {
  max-height: unset;
  height: auto;
  padding: 120px 0 100px;
}
@media (max-width: 1199px) {
  body.list_item .news__body {
    padding: 80px 0 60px;
  }
}
body.list_item .news__body:before {
  display: none;
}
body.list_item .news__image {
  height: auto;
}

.item-news-slider {
    margin-bottom: 20px;
}
.item-news-slider .owl-dots {
  margin-top: 10px;
}
.item-news-slider .owl-dots .owl-dot span {
  width: 6px;
  height: 6px;
  border-radius: 3px;
  margin: 0 2px;
}
.item-news-slider .owl-dots .owl-dot.active span {
  width: 24px;
}
/*end news*/

/*start welcome*/
section.welcome {
  padding: 120px 0;
  background-color: #EEF7F3;
}
@media (max-width: 1199px) {
  section.welcome {
    padding: 80px 0;
  }
}
@media (max-width: 576px) {
  section.welcome {
    padding: 40px 0;
  }
}

.welcome-wrap {
  display: flex;
}
@media (max-width: 991px) {
  .welcome-wrap {
    flex-direction: column;
  }
}

.welcome__image {
  width: 50%;
}
@media (max-width: 991px) {
  .welcome__image {
    width: 100%;
  }
}
.welcome__image img {
  border-radius: 12px;
  display: block;
  height: 100%;
  object-fit: cover;
}
.welcome__info {
  width: 50%;
  flex-shrink: 0;
  padding-left: 40px;
  margin-top: -4px;
  display: flex;
  flex-direction: column;
  justify-content: space-between;
}
@media (max-width: 991px) {
  .welcome__info {
    width: 100%;
    padding-left: 0;
    padding-top: 20px;
    margin-top: 0;
  }
}
.welcome__info-text {
  flex-grow: 1;
}
.welcome__info-hh {
  text-decoration: none;
  display: flex;
  flex-direction: row-reverse;
  align-items: center;
  align-self: flex-start;
}
.welcome__info-hh img {
  margin-right: 10px;
}

.welcome .section-title {
  margin-bottom: 30px;
  line-height: 1.1;
}
@media (max-width: 767px) {
  .welcome .section-title {
    margin-bottom: 20px;
  }
}

.welcome-form {
  margin-top: 30px;
}
@media (max-width: 991px) {
  .welcome-form {
    margin-top: 20px;
  }
}
.welcome-form--input {
  width: 100%;
  margin-bottom: 15px;
}
.welcome-form--input input {
  width: 100%;
  border: 1px solid rgba(34, 71, 56, 0.3);
  padding: 18px 15px 18px 20px;
  background-color: #fff;
  border-radius: 12px;
  font-size: 16px;
  transition: 0.25s;
}
@media (max-width: 991px) {
  .welcome-form--input input {
    padding: 16px 15px;
  }
}
.welcome-form--input input:hover, .welcome-form--input input:focus {
  border-color: #224738;
  transition: 0.25s;
}
.welcome-form--input input::placeholder {
  color: rgba(34, 71, 56, 0.5);
  transition: 0.25s;
}
.welcome-form--input input.error {
  border-color: red;
}
.welcome-form--input--label {
  font-size: 14px;
  margin-bottom: 5px;
}
.welcome-form--button {
  display: flex;
  justify-content: center;
  position: relative;
  margin-bottom: 15px;
  height: 55px;
}
.welcome-form--button button:disabled {
  opacity: 0.5;
  transition: none;
}
.welcome-form--button button:disabled:after, .welcome-form--button button:disabled:before {
  display: none;
}
.welcome-form--check {
  display: flex;
  align-items: flex-start;
  font-size: 14px;
  margin-top: 15px;
}
@media (max-width: 650px) {
  .welcome-form--check {
    font-size: 14px;
  }
}
@media (max-width: 499px) {
  .welcome-form--check {
    font-size: 12px;
  }
}
.welcome-form--check.trembling {
  animation: 1.2s ease-in-out 0s normal none running trembling-animation;
}
.welcome-form input[type=checkbox] + label:before,
.welcome-form input[type=checkbox] + span:before {
  border: 1px solid rgba(34, 71, 56, 0.5);
}
.welcome-form input[type=checkbox] + label:hover:before,
.welcome-form input[type=checkbox] + span:hover:before {
  border-color: #224738;
}

.js-btn-submit.js-disabled:before {
  content: "";
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
  background-color: transparent;
  z-index: 10;
}

.label-agreement {
  display: flex;
  align-items: flex-start;
}

@media (max-width: 499px) {
  .modal-dialog.modal-sm .modal-body {
    padding: 0 15px 30px 15px;
  }
}
@keyframes trembling-animation {
  0%, 50%, 100% {
    transform: scale(1);
  }
  10%, 30% {
    transform: scale(1.1);
  }
  20%, 40% {
    transform: scale(1);
  }
}
.input-file {
  position: relative;
  display: flex;
  align-items: center;
  background-color: #fff;
  border-radius: 12px;
  transition: 0.25s;
}

.input-file-text {
    padding: 8px 15px 8px 20px;
    text-align: left;
    height: 100%;
    width: 100%;
    border-radius: 12px 0 0 12px;
    flex-grow: 1;
    overflow: hidden;
    opacity: 0.5;
    font-weight: normal;
    font-size: 16px;
    color: #224738;
    border: 1px solid rgba(34, 71, 56, 0.6);
    min-height: 56px;
    display: flex;
    align-items: center;
    transition: 0.25s;
}
.input-file:hover .input-file-text{
    border-color: #224738;
    opacity: 1;
}
.input-file-text._complete {
    opacity: 1;
    transition: 0.25s;
}

.input-file-btn {
  position: relative;
  display: flex;
  align-items: center;
  justify-content: center;
  cursor: pointer;
  outline: none;
  text-decoration: none;
  font-size: 14px;
  vertical-align: middle;
  color: rgb(255, 255, 255);
  text-align: center;
  border-radius: 0 10px 10px 0;
  background-color: #224738;
  line-height: 22px;
  padding: 10px 20px;
  box-sizing: border-box;
  border: none;
  margin: 0;
  white-space: nowrap;
  align-self: stretch;
  transition: background-color 0.2s;
}

.input-file input[type=file] {
  position: absolute;
  z-index: -1;
  opacity: 0;
  display: block;
  width: 0;
  height: 0;
}

/* Hover/active */
.input-file .input-file-btn:hover {
  background-color: #578779;
}

.input-file:active .input-file-btn {
  background-color: #2E703A;
}

/* Disabled */
.input-file input[type=file]:disabled + .input-file-btn {
  background-color: #eee;
}

input, textarea {
  font-family: "PT Root UI", sans-serif;
}

/*end welcome*/

/*start footer*/
.footer {
  position: relative;
}
.footer .map-wrap {
  height: 750px;
  display: flex;
}
@media (max-width: 1399px) {
  .footer .map-wrap {
    height: 600px;
  }
}
@media (max-width: 767px) {
  .footer .map-wrap {
    flex-direction: column;
    height: auto;
  }
}
.footer .map-area {
  width: 50%;
  height: 100%;
}
.footer .map-area--iframe {
  height: 100%;
}
@media (max-width: 767px) {
  .footer .map-area {
    width: 100%;
    height: 320px;
    min-height: 320px;
    margin-right: 0;
  }
}
.footer .map-info {
  width: 50%;
  padding: 120px;
  background-color: #171921;
  color: #fff;
  display: flex;
  flex-direction: column;
}
@media (max-width: 1399px) {
  .footer .map-info {
    padding: 60px;
  }
}
@media (max-width: 991px) {
  .footer .map-info {
    padding: 30px;
  }
}
@media (max-width: 767px) {
  .footer .map-info {
    width: 100%;
    padding: 30px 15px;
  }
}
@media (max-width: 576px) {
  .footer .map-info {
    display: flex;
    flex-direction: column;
    align-items: center;
    text-align: center;
  }
}

.map-info__head {
  margin-bottom: 30px;
}
@media (max-width: 576px) {
  .map-info__head img {
    height: 64px;
  }
}
.map-info__body {
  margin-bottom: 30px;
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  justify-content: center;
  font-size: 20px;
  max-width: 400px;
  flex-grow: 1;
}
@media (max-width: 1399px) {
  .map-info__body {
    font-size: 18px;
  }
}
@media (max-width: 767px) {
  .map-info__body {
    max-width: inherit;
    font-size: 16px;
  }
}
@media (max-width: 576px) {
  .map-info__body {
    align-items: center;
  }
}
.map-info__body__point {
  margin-bottom: 24px;
}
.map-info__body__point:last-child {
  margin-bottom: 0;
}
.map-info__body a {
  text-decoration: none;
}
.map-info__body ._social a {
  margin-right: 20px;
}
.map-info__body ._social a:last-child {
  margin-right: 0;
}
.map-info__body ._social a:hover svg path {
  fill: #578779;
}
.map-info__footer {
  font-size: 14px;
  color: rgba(255, 255, 255, 0.7);
}

#wrapMap {
    position: relative;
    cursor: help;
    overflow: hidden;
}

#wrapMap .mapTitle {
    position: absolute;
    z-index: 1000;
    display: none;
    padding: 5px 20px;
    border-radius: 5px;
    background: #fefefe;
}

#wrapMap.not-active:before {
    content: '';
    position: absolute;
    left: 0;
    top: 0;
    width: 100%;
    height: 100%;
    background-color: transparent;
    z-index: 1;
}
/*end footer*/

.road-wrap{
    padding:0;
}
.road-about {
    width:50%;
    flex-shrink: 0;
}
@media (max-width: 576px) {
    .road-about {
        width:100%;
    }
}
.road-picture-wrap{
    position:relative;
}

.road-picture-text{
    position: absolute;
    bottom: 0;
    padding: 10px;
    color: #fff;
}

.road-wrap{
    align-items: flex-start;

}
