* {
  padding: 0;
  margin: 0;
  border: 0;
}

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

:focus, :active {
  outline: none;
}

a:focus, a:active {
  outline: none;
}

nav, footer, header, aside {
  display: block;
}

html, body {
  width: 100%;
  font-size: 100%;
  line-height: 1;
  font-size: 14px;
  -ms-text-size-adjust: 100%;
  -moz-text-size-adjust: 100%;
  -webkit-text-size-adjust: 100%;
}

input, button, textarea {
  font-family: inherit;
}

input::-ms-clear {
  display: none;
}

button {
  cursor: pointer;
}

button::-moz-focus-inner {
  padding: 0;
  border: 0;
}

a, a:visited {
  text-decoration: none;
}

a:hover {
  text-decoration: none;
}

ul li {
  list-style: none;
}

img {
  vertical-align: top;
}

h1, h2, h3, h4, h5, h6 {
  font-size: inherit;
  font-weight: inherit;
}

:root {
  --app-height: 100%;
}

*,
*:before,
*:after {
  box-sizing: border-box;
  margin: 0;
  padding: 0;
  outline: none;
}

* {
  position: relative;
}

a {
  cursor: pointer;
}

html {
  font-size: 10px;
  background-color: #fff;
  scroll-behavior: smooth;
}

body {
  font-family: "Inter", sans-serif;
  display: flex !important;
  flex-direction: column;
  min-height: 100vh;
  overflow-x: hidden;
}
body.menu-open {
  overflow: hidden;
  height: 100vh;
}
body.scroll-disable {
  height: 100vh;
  overflow: hidden;
}

img {
  width: auto;
  height: auto;
}

section {
  overflow: hidden;
  z-index: 1;
  padding: 5rem 0 7.2rem;
}
@media only screen and (min-width: 992px) {
  section {
    padding: 8rem 0;
  }
}
section img {
  max-width: 100%;
  object-fit: cover;
  display: block;
}
section h2 {
  max-width: 80rem;
}
section h2 + .small-title {
  margin-top: 1.6rem;
}

.bg-grey {
  background-color: #f7f7f7;
}

main {
  flex: 1;
}

.container {
  margin: 0 auto;
  width: 100%;
  max-width: 122.6rem;
  padding: 0 1.3rem;
}

.tac {
  text-align: center;
  margin: 0 auto;
}

.hidden {
  display: none !important;
  visibility: hidden !important;
}

.float-message {
  position: fixed;
  right: 1.5rem;
  bottom: 2rem;
  display: block;
  z-index: 9;
  transition: 0.2s ease-in-out;
  border-radius: 50%;
  box-shadow: 0px 30px 30px rgba(0, 0, 0, 0.1);
  width: 6.5rem;
}
@media only screen and (min-width: 992px) {
  .float-message {
    width: 84px;
    right: 30px;
    bottom: 30px;
    box-shadow: 0px 30px 30px rgba(0, 0, 0, 0.1);
  }
}
.float-message img {
  max-width: 100%;
  max-height: 100%;
  height: auto;
}
.float-message:hover {
  transform: scale(1.1);
}

.cn-set-cookie.cn-button {
  display: block;
  background: #008246;
  color: #fff;
  padding: 0.3rem 1rem;
  border-radius: 0.4rem;
}

.bg-accent {
  background-color: #008246;
}

.otgs-development-site-front-end {
  display: none !important;
}

.menu-item.hr {
  border-top: 1px solid rgba(255, 255, 255, 0.5);
  padding-top: 0.8rem;
  margin-top: 0.8rem;
}

.wpml-ls-legacy-list-horizontal.wpml-ls-statics-footer {
  display: none !important;
}

.fslightbox-slide-number-container span,
.fslightbox-slide-number-container div {
  color: #d7d7d7;
}

.social {
  display: inline-flex;
  align-items: center;
  gap: 1.6rem;
}
@media only screen and (min-width: 992px) {
  .social {
    justify-content: flex-start;
  }
}
.social a {
  width: 36px;
  height: 36px;
  border-radius: 8px;
  display: flex;
  align-items: center;
  justify-content: center;
  background: rgba(242, 242, 242, 0.05);
  transition: 0.2s ease-in-out;
}
.social a:hover {
  background: rgba(0, 130, 70, 0.4);
}
.social a img {
  max-height: 1.4rem;
}
.social-header a {
  width: 28px;
  height: 28px;
}
.social-header a img {
  max-height: 1.2rem;
}
.social-single a {
  width: 36px;
  height: 36px;
}
.social-single a img {
  max-height: 1.4rem;
}

.grid,
.grid-2,
.grid-3,
.grid-4 {
  display: grid;
  grid-gap: 20px;
}
@media only screen and (min-width: 576px) {
  .grid,
  .grid-2,
  .grid-3,
  .grid-4 {
    grid-gap: 20px;
  }
  .grid .w100,
  .grid-2 .w100,
  .grid-3 .w100,
  .grid-4 .w100 {
    grid-column: span 2;
  }
}

@media only screen and (min-width: 576px) {
  .grid-2,
  .grid-3,
  .grid-4 {
    grid-template-columns: repeat(2, 1fr);
  }
}
@media only screen and (min-width: 992px) {
  .grid-3,
  .grid-4 {
    grid-template-columns: repeat(3, 1fr);
  }
}
@media only screen and (min-width: 1252px) {
  .grid-4 {
    grid-template-columns: repeat(4, 1fr);
  }
}
h1,
h2,
h3,
h4,
h5,
p,
span,
div,
a,
li,
textarea,
input,
button,
input::placeholder,
textarea::placeholder {
  font-size: 1.4rem;
  font-style: normal;
  line-height: 120%;
  font-weight: 300;
}

span {
  font-size: inherit;
  color: inherit;
}

.h2,
h2 {
  font-weight: 600;
  font-size: 2.4rem;
  line-height: 1;
  letter-spacing: -0.208rem;
  color: #23242a;
}
@media only screen and (min-width: 576px) {
  .h2,
  h2 {
    font-size: calc(2rem + 24 * (100vw - 375px) / 625);
  }
}
@media only screen and (min-width: 992px) {
  .h2,
  h2 {
    font-size: 5.2rem;
  }
}

.h3,
h3 {
  font-size: 2rem;
  line-height: 120%;
  font-weight: 500;
}
@media only screen and (min-width: 576px) {
  .h3,
  h3 {
    font-size: calc(2rem + 4 * (100vw - 375px) / 625);
  }
}
@media only screen and (min-width: 992px) {
  .h3,
  h3 {
    font-size: 2.4rem;
  }
}

.h4,
h4 {
  font-size: 1.8rem;
  line-height: 100%;
  font-weight: 500;
}
@media only screen and (min-width: 576px) {
  .h4,
  h4 {
    font-size: calc(1.8rem + 4 * (100vw - 375px) / 625);
  }
}
@media only screen and (min-width: 992px) {
  .h4,
  h4 {
    font-size: 2.4rem;
  }
}

h5 {
  font-size: 1.8rem;
  font-weight: 400;
  line-height: 1.3;
}
@media only screen and (min-width: 992px) {
  h5 {
    font-size: 2rem;
  }
}

p {
  font-size: 1.6rem;
  line-height: 120%;
  font-weight: 300;
}
@media only screen and (min-width: 992px) {
  p {
    font-size: 1.8rem;
  }
}

.bg-accent {
  color: #fff;
}
.bg-accent h1,
.bg-accent h2,
.bg-accent h3,
.bg-accent h4,
.bg-accent h5,
.bg-accent h6 {
  color: #fff;
}

.descr {
  font-weight: 300;
  font-size: 1.4rem;
  line-height: 140%;
  color: #23242a;
  margin-top: 0.4rem;
}
@media only screen and (min-width: 992px) {
  .descr {
    font-size: 1.8rem;
    margin-top: 1.6rem;
  }
}

.small-title {
  color: #23242a;
  font-size: 1.2rem;
  font-weight: 400;
  letter-spacing: -0.064rem;
}
@media only screen and (min-width: 992px) {
  .small-title {
    font-size: 3.2rem;
  }
}

.label-more:after {
  content: "i";
  display: inline-flex;
  border-radius: 4rem;
  background-color: #eee;
  margin-left: 0.6rem;
  width: 2rem;
  height: 2rem;
  align-items: center;
  justify-content: center;
}
.label-more .hide {
  background-color: #fff;
  border-radius: 0.4rem;
  width: 38rem;
  padding: 1.6rem;
  display: block;
  position: absolute;
  z-index: 1;
  left: 0;
  top: 3.2rem;
  box-shadow: 0px 5px 14px rgba(52, 52, 52, 0.07);
  color: #23242a;
  font-weight: 300;
  font-size: 1.4rem;
  line-height: 120%;
  opacity: 0;
  visibility: hidden;
  transition: 0.2s ease-in-out;
  transform: translateY(1rem);
}
@media only screen and (min-width: 992px) {
  .label-more .hide {
    left: 10rem;
  }
}
.label-more:hover .hide {
  opacity: 1;
  visibility: visible;
  transform: translateY(0);
}

select[multiple] {
  background: #fff;
  padding: 0;
}
select[multiple] option {
  padding: 1rem 1.8rem;
}

.bttn,
.bttn-outline,
.bttn-link,
.bttn-orange {
  cursor: pointer;
  user-select: none;
  min-height: 4.2rem;
  transition: 0.2s ease-in-out;
  border: none;
  padding: 1.6rem 3rem;
  font-size: 1.4rem;
  line-height: 120%;
  font-weight: 500;
  text-decoration: none;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  letter-spacing: 0.05em;
}

.bttn {
  color: #fff;
  background-color: #008246;
  border-radius: 4.6rem;
  font-size: 1.6rem;
  font-weight: 400;
  line-height: 120%;
  padding: 2rem 5.5rem;
  border: 1px solid #23242a;
}
@media only screen and (min-width: 992px) {
  .bttn {
    min-height: 6.2rem;
    font-size: 1.8rem;
  }
}
.bttn:hover {
  background-color: #004f2b;
}
.bttn-orange {
  text-transform: uppercase;
  color: #fff;
  background-color: #008246;
  border-radius: 1.2rem;
  font-size: 1.6rem;
  font-weight: 500;
  line-height: 120%;
  padding: 1.8rem 2.5rem;
  height: 5.4rem;
}
.bttn-orange:hover {
  background-color: #004f2b;
}
.bttn-white {
  background-color: #fff;
  color: #008246;
}
.bttn-white.bttn-arrow:after {
  background-color: #008246;
}
.bttn-white:hover {
  background-color: #008246;
  color: #fff;
}
.bttn-white:hover::after {
  background-color: #fff;
}
@media only screen and (min-width: 992px) {
  .bttn-big {
    min-width: 34.5rem;
    min-height: 6.2rem;
  }
}
.bttn-black {
  background-color: #23242a;
  color: #008246;
}
.bttn-black:hover {
  background-color: #0c0c0e;
}
@media only screen and (max-width: 576px) {
  .bttn {
    padding: 1.2rem 2rem;
    font-size: 1.4rem;
    height: auto;
  }
}

.bttn-outline {
  background-color: rgba(0, 130, 70, 0.15);
  color: #008246;
  box-shadow: none !important;
  border-radius: 8px;
}
.bttn-outline:hover {
  background-color: #008246;
  color: #fff;
}

.bttn[disabled] {
  opacity: 0.7;
  cursor: default;
}

.bttn-loading,
.wpcf7 .wpcf7-form.submitting .wpcf7-submit {
  background-repeat: no-repeat !important;
  background-position: center !important;
  text-shadow: none;
  color: transparent;
  transition: none;
}

.wpcf7 .wpcf7-form.submitting .wpcf7-submit {
  background-image: url("../img/general/spinner.svg");
}

.bttn-loading {
  background-image: url("../img/general/spinner-green.svg");
  background-color: rgba(0, 130, 70, 0.1);
}

.bttn-link {
  color: #008246;
  background-color: transparent;
  padding-left: 0;
  padding-right: 0;
  box-shadow: none !important;
  font-size: 1.6rem;
}
.bttn-link span {
  font-size: inherit;
  display: none;
  margin-right: 0.6rem;
}
@media only screen and (min-width: 992px) {
  .bttn-link span {
    display: inline;
  }
}
.bttn-link:after {
  content: "";
  display: block;
  margin-left: 1.2rem;
  background-image: url("data:image/svg+xml,%3Csvg width='13' height='13' viewBox='0 0 13 13' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M0.490159 11.0961C0.0996346 11.4866 0.0996346 12.1198 0.490159 12.5103C0.880683 12.9009 1.51385 12.9009 1.90437 12.5103L0.490159 11.0961ZM12.8039 1.19662C12.8039 0.644336 12.3562 0.196621 11.8039 0.196621L2.80387 0.196621C2.25158 0.19662 1.80387 0.644336 1.80387 1.19662C1.80387 1.74891 2.25158 2.19662 2.80387 2.19662L10.8039 2.19662L10.8039 10.1966C10.8039 10.7489 11.2516 11.1966 11.8039 11.1966C12.3562 11.1966 12.8039 10.7489 12.8039 10.1966L12.8039 1.19662ZM1.90437 12.5103L12.511 1.90373L11.0968 0.489514L0.490159 11.0961L1.90437 12.5103Z' fill='%23008246'/%3E%3C/svg%3E");
  background-repeat: no-repeat;
  background-position: center;
  width: 1.2rem;
  height: 1.2rem;
  background-size: contain;
  transition: 0.2s ease-in-out;
}
@media only screen and (min-width: 992px) {
  .bttn-link:after {
    width: 1.2rem;
    height: 1.2rem;
  }
}
.bttn-link:hover:after {
  transform: scale(1, -1);
}
.bttn-link.link-loading {
  transition: none;
  background-image: url("../img/general/spinner-green.svg");
  background-repeat: no-repeat !important;
  background-position: center !important;
  text-shadow: none;
  color: transparent;
  cursor: default;
}
.bttn-link.link-loading:after {
  display: none;
}

.bttn-submit {
  width: 43px !important;
  height: 43px !important;
  background: url("../img/icons/submit.svg") no-repeat center center;
  font-size: 0 !important;
  line-height: 0 !important;
  color: #008246;
  border-radius: 0.5rem !important;
  margin: 0.2rem !important;
}

.bttn-blue {
  border-radius: 1.2rem;
  font-size: 1.6rem;
  letter-spacing: 0.05em;
  text-transform: uppercase;
  font-weight: 700;
  line-height: 120%;
  padding: 1.8rem 2.5rem;
}

.bttn-arrow-input {
  display: flex;
  align-items: center;
  width: 100%;
  cursor: pointer;
}
.bttn-arrow-input > input[type=submit] {
  padding: 1.6rem 3.2rem 1.6rem;
  padding-right: 5rem;
  width: 100%;
  top: 0;
}
.bttn-arrow-input:hover:after {
  transform: translateY(-50%) rotate(45deg);
}
.bttn-arrow-input:has([disabled]):hover::after {
  transform: translateY(-50%) !important;
}
.bttn-arrow-input:after {
  content: "";
  display: block;
  position: absolute;
  right: 2.2rem;
  top: 50%;
  transform: translateY(-50%);
  min-width: 1.6rem;
  min-height: 1.6rem;
  background-image: url("../img/icons/icon-arrow-bttn-new.svg");
  background-repeat: no-repeat;
  background-position: center;
  background-size: cover;
  transform-origin: center;
  transition: transform 250ms ease-in-out;
  z-index: 5;
}

.bttn-arrow {
  position: relative;
}
.bttn-arrow:hover:after {
  transform: rotate(45deg);
}
.bttn-arrow:after {
  margin-left: 0.8rem;
  content: "";
  display: block;
  width: 1.6rem;
  height: 1.6rem;
  mask-image: url("../img/icons/icon-arrow-bttn-new.svg");
  mask-repeat: no-repeat;
  mask-position: center;
  mask-size: cover;
  background-color: #fff;
  transition: transform 250ms ease-in-out;
}

.wpcf7-form-control-wrap {
  display: flex;
  flex-direction: column;
  width: 100%;
}
.wpcf7-form-control-wrap:not(:last-child) {
  margin-top: 0;
}
.wpcf7-form-control-wrap.dynamic_CF7_URL {
  display: none;
}
.wpcf7-form label {
  font-weight: 500;
  font-size: 1.2rem;
  line-height: 2.2rem;
  color: #23242a;
  text-align: left;
}
.wpcf7-form label span {
  color: #babce0;
  font-size: inherit;
}
.wpcf7-form label .wpcf7-form-control-wrap {
  margin-top: 0.8rem;
}
.wpcf7-text, .wpcf7-textarea {
  font-weight: 400;
  font-size: 1.6rem;
  line-height: 100%;
  letter-spacing: -0.03em;
  color: #23242a;
  border: 1px solid rgba(114, 117, 152, 0.2);
  border-radius: 8px;
  background-color: transparent;
  width: 100%;
  min-height: 4.4rem;
  padding: 1.1rem 1.2rem;
  transition: 0.1s ease-in-out;
}
.wpcf7-text::placeholder, .wpcf7-textarea::placeholder {
  font-weight: 400;
  font-size: 1.6rem;
  letter-spacing: -0.03em;
  color: rgba(80, 80, 80, 0.4);
}
.wpcf7-text:hover, .wpcf7-text:focus, .wpcf7-textarea:hover, .wpcf7-textarea:focus {
  border-color: #030303;
}
.wpcf7-textarea {
  width: 100% !important;
  max-height: 16rem;
}
@media only screen and (min-width: 992px) {
  .wpcf7 .grid-span-3 .wpcf7-form-control-wrap {
    height: 100%;
  }
  .wpcf7 .grid-span-3 textarea {
    max-height: 20rem;
    height: 100%;
  }
}
.wpcf7 textarea {
  min-height: 4.9rem;
  width: 100% !important;
  max-height: 16rem;
}
.wpcf7-acceptance {
  display: block;
}
.wpcf7-acceptance span {
  margin: 0;
}
.wpcf7-acceptance label {
  display: inline-block;
  width: 100%;
  font-weight: 300;
  font-size: 13px;
  line-height: 17px;
}
.wpcf7-acceptance label a,
.wpcf7-acceptance label span {
  font-size: 13px;
  line-height: 17px;
  color: #23242a;
}
.wpcf7-acceptance label a {
  color: #23242a;
  text-decoration: underline;
  font-weight: 400;
}
.wpcf7-submit {
  width: 100%;
  height: 5rem;
  line-height: inherit;
}
@media only screen and (min-width: 992px) {
  .wpcf7-submit {
    width: auto;
    min-width: 20rem;
    display: block;
    padding: 1.6rem;
    height: 5.4rem;
  }
}
.wpcf7-spinner {
  display: none !important;
}
.wpcf7-response-output {
  display: none;
  text-align: center;
  font-size: 1.6rem;
  width: 100%;
  background: #f5f5f5;
  border-radius: 1.8rem;
  padding: 2rem 0.5rem;
  margin-top: 2rem;
}
@media only screen and (min-width: 992px) {
  .wpcf7-response-output {
    font-size: 1.8rem;
    padding: 2rem;
  }
}
.wpcf7 .screen-reader-response {
  display: none;
}
.wpcf7-not-valid-tip {
  font-size: 1.2rem;
  color: rgb(181, 0, 0) !important;
  margin-top: 0.4rem;
  display: block;
}
.wpcf7-checkbox {
  display: flex;
  gap: 1.4rem 3.6rem;
  justify-content: space-between;
}
@media only screen and (max-width: 992px) {
  .wpcf7-checkbox {
    flex-direction: column;
  }
}
.wpcf7-checkbox .wpcf7-list-item-label {
  display: flex;
  align-items: center;
  padding: 2px 0px;
  font-weight: 500;
  font-size: 16px;
  line-height: 120%;
  color: #008246;
}
.wpcf7 input[type=checkbox] {
  padding: 0;
  height: initial;
  width: initial;
  margin-bottom: 0;
  display: none;
}
.wpcf7 input[type=checkbox] + span:before {
  content: "";
  width: 24px;
  height: 24px;
  -webkit-appearance: none;
  border: 1px solid rgba(93, 95, 239, 0.2);
  border-radius: 4px;
  background-color: transparent;
  margin-right: 1rem;
  margin-bottom: 30px;
  cursor: pointer;
  float: left;
}
.wpcf7 input[type=checkbox]:checked + span:before {
  background: url("data:image/svg+xml,%3Csvg width='14' height='12' viewBox='0 0 10 8' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath opacity='1' d='M3.81338 7.24796C3.58938 7.24796 3.36538 7.16296 3.19438 6.99196L0.82138 4.61896C0.47938 4.27696 0.47938 3.72297 0.82138 3.38196C1.16338 3.03996 1.71638 3.03896 2.05838 3.38096L3.81338 5.13596L7.94138 1.00796C8.28338 0.665965 8.83638 0.665965 9.17838 1.00796C9.52038 1.34996 9.52038 1.90396 9.17838 2.24596L4.43238 6.99196C4.26138 7.16296 4.03738 7.24796 3.81338 7.24796Z' fill='%2323242A'/%3E%3C/svg%3E%0A") no-repeat center center !important;
}
.wpcf7 input[type=checkbox]:hover + span:before {
  border-color: rgba(93, 95, 239, 0.3);
  background: url("data:image/svg+xml,%3Csvg width='14' height='12' viewBox='0 0 10 8' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath opacity='0.3' d='M3.81338 7.24796C3.58938 7.24796 3.36538 7.16296 3.19438 6.99196L0.82138 4.61896C0.47938 4.27696 0.47938 3.72297 0.82138 3.38196C1.16338 3.03996 1.71638 3.03896 2.05838 3.38096L3.81338 5.13596L7.94138 1.00796C8.28338 0.665965 8.83638 0.665965 9.17838 1.00796C9.52038 1.34996 9.52038 1.90396 9.17838 2.24596L4.43238 6.99196C4.26138 7.16296 4.03738 7.24796 3.81338 7.24796Z' fill='%2323242A'/%3E%3C/svg%3E%0A") no-repeat center center;
}

.mail {
  width: 100%;
  max-width: 48rem;
}
.mail .wpcf7-text {
  background: #1b1b2d;
  color: #fff;
}
.mail .wpcf7-text::placeholder {
  font-weight: 400;
  font-size: 1.6rem;
  line-height: 140%;
  color: rgba(114, 117, 152, 0.5);
}
.mail .wpcf7-text:hover, .mail .wpcf7-text:focus {
  border-color: #008246;
}
.mail .wpcf7-acceptance .wpcf7-list-item-label {
  color: #9c9eba;
  font-weight: 400;
  font-size: 1.2rem;
  line-height: 1.6rem;
}
.mail .wpcf7-acceptance .wpcf7-list-item-label a {
  font-size: inherit;
  color: inherit;
}
.mail .wpcf7-not-valid-tip {
  color: #ff9494 !important;
}
.mail .wpcf7 input[type=submit] {
  -webkit-appearance: none;
  text-decoration: none;
  font-weight: 700;
  font-size: 1.2rem;
  line-height: 1.8rem;
  color: #fff;
  text-transform: uppercase;
  transition: all 0.2s;
  cursor: pointer;
  border: none;
  background-color: #008246;
  border-radius: 0 0.8rem 0.8rem 0;
  padding: 1.2rem 1.3rem;
  margin-top: 0;
  min-width: 14rem;
  height: 4.4rem;
  width: auto;
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
}
.mail .wpcf7 input[type=submit]:hover {
  background-color: #004f2b;
}
.mail .wpcf7-form-control-wrap:not(:last-child) {
  margin-top: 1.6rem;
}
@media only screen and (min-width: 992px) {
  .mail .wpcf7-form-control-wrap:not(:last-child) {
    margin-top: 2.4rem;
  }
}
.mail .bttn-arrow-input {
  top: 0;
}
.mail .bttn-arrow-input:after {
  display: none;
}
@media only screen and (max-width: 992px) {
  .mail .bttn-arrow-input {
    min-height: 4.4rem;
    height: 4.4rem;
  }
}
.mail .bttn {
  min-height: 4.4rem;
  height: 4.4rem;
  border: none;
  background-color: transparent;
}
.mail .wpcf7-text:focus,
.mail .wpcf7-text:hover {
  border-color: #008246;
}

.form__subscribe .wpcf7-form-control-wrap input {
  background: rgba(255, 255, 255, 0.05);
  border: 1px solid rgba(255, 255, 255, 0.2);
  border-radius: 0.6rem;
  width: 100%;
  height: 4.4rem;
  color: #fff;
  padding: 1rem 13rem 1rem 1.5rem;
}
@media only screen and (min-width: 992px) {
  .form__subscribe .wpcf7-form-control-wrap input {
    padding-right: 14rem;
    height: 5.8rem;
  }
}
.form__subscribe .wpcf7-form-control-wrap input::placeholder {
  color: rgba(255, 255, 255, 0.5);
}
.form__subscribe .wpcf7 input[type=submit] {
  font-weight: 400;
  font-size: 1.4rem;
  line-height: 1.8rem;
  color: #fff;
  background-color: rgba(255, 255, 255, 0.2);
  border: none;
  cursor: pointer;
  padding: 1rem 1.3rem;
  height: 4.4rem;
  letter-spacing: 0.06rem;
  max-width: 14rem;
  min-width: 12rem;
  width: auto;
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  margin-top: 0 !important;
  border-radius: 0 0.6rem 0.6rem 0;
}
@media only screen and (min-width: 992px) {
  .form__subscribe .wpcf7 input[type=submit] {
    font-size: 1.6rem;
    min-width: 16rem;
  }
}
.form__subscribe .wpcf7 input[type=submit]:hover {
  transform: none;
}
.form__subscribe .wpcf7-list-item {
  display: block;
  margin-top: 1.6rem;
  text-align: center;
}

.intl-tel-input.allow-dropdown input,
.intl-tel-input.allow-dropdown input[type=tel],
.intl-tel-input.allow-dropdown input[type=text], .intl-tel-input.separate-dial-code input,
.intl-tel-input.separate-dial-code input[type=tel],
.intl-tel-input.separate-dial-code input[type=text] {
  padding-left: 64px !important;
}
.intl-tel-input.allow-dropdown .selected-flag, .intl-tel-input.separate-dial-code .selected-flag {
  width: 54px !important;
  border-radius: 8px 0 0 8px;
  padding: 0 0 0 12px !important;
}
.intl-tel-input.allow-dropdown .selected-flag .iti-arrow, .intl-tel-input.separate-dial-code .selected-flag .iti-arrow {
  border: none !important;
  background: url("../img/icons/phone-select.svg") no-repeat center center !important;
  width: 7px !important;
  height: 7px !important;
  margin-top: -4px !important;
}
.intl-tel-input.allow-dropdown .flag-container {
  width: 100%;
}
.intl-tel-input.allow-dropdown .flag-container:hover .selected-flag {
  background-color: rgba(0, 130, 70, 0.08) !important;
  transition: 0.2s ease-in-out;
}
.intl-tel-input .country-list {
  background: #FFFFFF !important;
  border: 1px solid rgba(93, 95, 239, 0.2) !important;
  box-shadow: 0 23px 22px rgba(0, 10, 96, 0.15) !important;
  border-radius: 10px !important;
  margin-top: 6px !important;
}
@media only screen and (min-width: 992px) {
  .intl-tel-input .country-list {
    max-height: 180px !important;
  }
}
.intl-tel-input .country-list.dropup {
  margin-bottom: 6px !important;
}
.intl-tel-input .country-list::-webkit-scrollbar {
  width: 3px;
  height: 3px;
  background-color: transparent;
  border-radius: 8px;
}
.intl-tel-input .country-list::-webkit-scrollbar-thumb {
  background: #606492;
  border-radius: 8px;
  height: 70px;
}
.intl-tel-input .country-list::-webkit-scrollbar-track {
  background: transparent;
  margin: 10px;
}
.intl-tel-input .country-list .country {
  padding: 10px 12px !important;
}
.intl-tel-input .country-list .country.highlight {
  background-color: rgba(0, 130, 70, 0.08) !important;
}
.intl-tel-input .country-list .country.active {
  background-color: rgba(0, 130, 70, 0.12) !important;
}
.intl-tel-input .country-list .country-name {
  font-weight: 500 !important;
  font-size: 16px !important;
  line-height: 100% !important;
  letter-spacing: -0.03em !important;
  color: #23242a !important;
  margin-right: 10px !important;
}
.intl-tel-input .country-list .dial-code {
  font-weight: 500 !important;
  font-size: 16px !important;
  line-height: 100% !important;
  color: #008246 !important;
}

.wpml-ls-legacy-dropdown {
  position: absolute !important;
  top: 1.2rem;
  right: 7rem;
  width: auto !important;
  z-index: 500;
}
.wpml-ls-legacy-dropdown:not(:has(.wpml-ls-link)) {
  display: none;
}
@media only screen and (min-width: 992px) {
  .wpml-ls-legacy-dropdown {
    margin-left: 2rem;
    position: static !important;
  }
}
.wpml-ls-legacy-dropdown a:hover {
  color: #008246 !important;
  background-color: #f9f9fc !important;
}
.wpml-ls-legacy-dropdown a {
  display: block;
  text-decoration: none;
  background-color: #fff;
  border: 0 !important;
  font-weight: 600;
  font-size: 14px !important;
  line-height: 20px !important;
  color: #000000 !important;
  padding: 4px 1rem !important;
  letter-spacing: 0.02em;
  transition: none;
}
@media only screen and (max-width: 992px) {
  .wpml-ls-legacy-dropdown a {
    padding: 8px 0.8rem !important;
  }
}
@media only screen and (min-width: 992px) {
  .wpml-ls-legacy-dropdown a {
    color: #fff !important;
  }
}
.wpml-ls-legacy-dropdown a span {
  font-weight: 500;
  font-size: 14px;
}
.wpml-ls-legacy-dropdown a.wpml-ls-item-toggle:after {
  content: "";
  display: inline-block;
  vertical-align: middle;
  position: absolute;
  top: calc(50% - 0.175em);
  mask: url(../img/icons/lang.svg) no-repeat center center;
  width: 0.6rem;
  height: 0.5rem;
  border: none !important;
  right: auto !important;
  margin-left: 4px;
  background-color: #fff;
}
.wpml-ls-legacy-dropdown .wpml-ls-current-language:hover > a {
  color: #008246 !important;
}
.wpml-ls-legacy-dropdown .wpml-ls-current-language:hover > a:after {
  background-color: #008246;
}
.wpml-ls-legacy-dropdown .wpml-ls-current-language:hover .wpml-ls-sub-menu {
  visibility: visible;
}
.wpml-ls-legacy-dropdown .wpml-ls-sub-menu {
  visibility: hidden;
  position: absolute;
  top: 100%;
  right: 0;
  left: 0;
  list-style-type: none;
  z-index: 101;
  border: 1px solid #ececec !important;
  border-radius: 0.4rem;
  overflow: hidden;
  box-shadow: 0 5px 10px -5px rgba(0, 0, 0, 0.2);
  padding: 4px 0 !important;
  transition: none;
  background: #fff;
  transition: all 0.2s ease;
}
.wpml-ls-legacy-dropdown .wpml-ls-sub-menu a {
  color: #23242a !important;
  padding: 8px 1rem !important;
}
.wpml-ls-legacy-dropdown .wpml-ls-sub-menu a:hover {
  color: #008246 !important;
}
.wpml-ls-legacy-dropdown a.wpml-ls-item-toggle {
  background-color: transparent !important;
  padding-right: 2.2rem !important;
}
@media only screen and (max-width: 992px) {
  .wpml-ls-legacy-dropdown a.wpml-ls-item-toggle {
    padding-right: 1.2rem !important;
  }
}

.header {
  position: fixed;
  width: 100%;
  padding: 0.8rem 0;
  background: rgba(255, 255, 255, 0.9);
  z-index: 99;
  transition: 0.2s linear;
  border-bottom: 1px solid #ededed;
  -webkit-backdrop-filter: blur(30px);
  backdrop-filter: blur(30px);
  top: 0;
}
@media only screen and (min-width: 992px) {
  .header {
    padding: 0;
  }
}
.header.autoHide.header--hide {
  transform: translate(0, -100%);
}
.header--scrolled {
  background: rgba(255, 255, 255, 0.9);
}
.header .container {
  display: flex;
  align-items: center;
  justify-content: space-between;
}
@media only screen and (min-width: 992px) {
  .header .container {
    position: static;
  }
}
.header__logo {
  z-index: 101;
  transition: 0.5s linear;
  max-width: 9.2rem;
}
.header__logo img {
  max-width: 100%;
  height: auto;
}
@media only screen and (min-width: 992px) {
  .header__logo {
    max-width: 10.3rem;
  }
}
.header__burger {
  display: block;
  width: 3.2rem;
  height: 3.2rem;
  z-index: 200;
}
@media only screen and (min-width: 992px) {
  .header__burger {
    display: none;
  }
}
.header__burger:before, .header__burger:after {
  content: "";
  position: absolute;
  width: 2.4rem;
  height: 0.2rem;
  left: 50%;
  background-color: #23242a;
  transform: translate(-50%, -50%);
  transition: top 0.15s linear 0.15s, transform 0.15s linear, background 0.3s linear, -webkit-transform 0.15s linear;
}
.header__burger:before {
  top: calc(50% - 0.35rem);
}
.header__burger:after {
  top: calc(50% + 0.35rem);
}
.header__menu {
  position: fixed;
  top: 0;
  bottom: 0;
  left: 100%;
  width: 100vw;
  height: 100vh;
  height: var(--app-height);
  background-color: #fff;
  z-index: 100;
  transition: left 0.3s linear;
  padding: 7rem 1.5rem 0;
}
@media only screen and (min-width: 992px) {
  .header__menu {
    width: auto;
    height: auto;
    position: static;
    padding: 0;
    background-color: transparent;
    margin-left: auto;
    display: flex;
    align-items: center;
    width: 100%;
    margin-left: 7.3rem;
  }
}
.header__menu-scroll {
  position: static;
}
@media only screen and (min-width: 992px) {
  .header__menu-scroll {
    display: flex;
    align-items: center;
    width: 100%;
  }
}
.header__menu-scroll > div {
  position: static;
}
@media only screen and (min-width: 992px) {
  .header__menu-scroll > div {
    width: 100%;
    flex: 1;
    display: flex;
    justify-content: center;
    padding-right: 8rem;
  }
}
@media only screen and (max-width: 992px) {
  .header__menu-scroll {
    overflow: auto;
    height: 100%;
    padding-bottom: 3.2rem;
  }
}
.header__menu .bttn {
  width: 100%;
  margin-top: 2rem;
}
@media only screen and (min-width: 992px) {
  .header__menu .bttn {
    min-height: 4.1rem;
    padding: 1.2rem 2.6rem;
    font-weight: 500;
    font-size: 1.4rem;
    line-height: 120%;
    height: 3.8rem;
    width: auto;
    margin-left: 13px;
    margin-top: 0;
  }
}
.header__menu-list {
  list-style-type: none;
}
@media only screen and (min-width: 992px) {
  .header__menu-list {
    display: flex;
    position: static;
  }
}
.header__menu-list .menu-item {
  position: relative;
}
@media only screen and (min-width: 992px) {
  .header__menu-list .menu-item {
    position: static;
  }
}
.header__menu-list .menu-item a {
  display: block;
  text-decoration: none;
  color: #01050a;
  padding: 2.4rem 0;
  transition: 0.2s ease-in-out;
  font-weight: 500;
  font-size: 16px;
  line-height: 120%;
}
@media only screen and (min-width: 992px) {
  .header__menu-list .menu-item a {
    padding: 1rem 0;
    font-weight: 400;
  }
}
.header__menu-list .menu-item a:hover {
  color: #01050a;
}
.header__menu-list .menu-item.current-menu-ancestor a, .header__menu-list .menu-item.current-menu-parent a, .header__menu-list .menu-item.page_item a {
  color: #01050a;
}
.header__menu-list .menu-item.current-menu-ancestor a:after, .header__menu-list .menu-item.current-menu-parent a:after, .header__menu-list .menu-item.page_item a:after {
  opacity: 1;
  height: 1px;
}
.header__menu-list .menu-item.data-export {
  padding-top: 1.2rem;
  margin-top: 1.2rem;
  border-top: 1px solid #af87f8;
}
@media only screen and (min-width: 992px) {
  .header__menu-list .menu-item.data-export {
    grid-row: 3;
    margin-top: 0;
    padding-top: 1.6rem;
    border-top: none;
  }
  .header__menu-list .menu-item.data-export:before {
    content: "";
    display: block;
    position: absolute;
    width: 100%;
    height: 1px;
    background: #af87f8;
    margin-top: -1.6rem;
  }
}
@media only screen and (max-width: 992px) {
  .header__menu-list .menu-item-has-children:after {
    content: "";
    position: absolute;
    right: 1rem;
    top: 1.8rem;
    bottom: 0;
    width: 3.2rem;
    height: 3.2rem;
    background: url("../img/icons/plus.svg") no-repeat center center;
    transition: 0.2s ease-in-out;
  }
  .header__menu-list .menu-item-has-children.show:after {
    transform: rotate(45deg);
  }
  .header__menu-list .menu-item.menu-item-has-children > a {
    width: 50%;
    display: inline-block;
  }
  .header__menu-list .menu-item.menu-item-has-children.show > a {
    color: var(--color-accent);
  }
  .header__menu-list .menu-item.menu-item-has-children.show > a:after {
    opacity: 1;
    height: 1px;
  }
}
@media only screen and (min-width: 992px) {
  .header__menu-list .menu-item-has-children a {
    display: flex;
    align-items: center;
    flex-direction: row-reverse;
    gap: 0.4rem;
  }
  .header__menu-list .menu-item-has-children a::before {
    content: "";
    background: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='6' height='6' viewBox='0 0 6 6' fill='none'%3E%3Cpath d='M3.86603 5C3.48113 5.66667 2.51888 5.66667 2.13397 5L0.401923 2C0.0170231 1.33333 0.498149 0.5 1.26795 0.5L4.73205 0.499999C5.50185 0.499999 5.98298 1.33333 5.59808 2L3.86603 5Z' fill='black'/%3E%3C/svg%3E") no-repeat center center;
    width: 8px;
    height: 8px;
  }
  .header__menu-list .menu-item-has-children a + .sub-menu-container a {
    flex-direction: inherit;
    gap: inherit;
  }
  .header__menu-list .menu-item.menu-item-has-children:not(.hide-desk):hover > a {
    color: #01050a;
  }
  .header__menu-list .menu-item.menu-item-has-children:not(.hide-desk):hover > a:after {
    opacity: 1;
    height: 1px;
  }
  .header__menu-list .menu-item.menu-item-has-children:not(.hide-desk):hover .sub-menu-container {
    display: block;
  }
}
.header__menu-list .menu-item.hide-desk .sub-menu-wrap {
  display: none;
}
.header__menu-list .menu-item.hide-desk .sub-menu .menu-item a {
  align-items: center;
  padding: 0.4rem 0;
}
.header__menu-list .menu-item.hide-desk .sub-menu .menu-item a .menu-icon {
  display: flex;
  align-items: center;
}
.header__menu-list .menu-item .sub-menu-container {
  display: none;
  background: #fff;
  height: auto;
  overflow: visible;
  width: 100%;
  z-index: 99;
}
@media only screen and (min-width: 992px) {
  .header__menu-list .menu-item .sub-menu-container {
    position: absolute;
    left: 0;
    right: 0;
    width: 100%;
    padding: 5.6rem 0 5.6rem;
    border-top: 1px solid #eeeeee;
    box-shadow: 0px 20px 50px rgba(18, 17, 39, 0.08);
    z-index: -1;
  }
}
.header__menu-list .menu-item .sub-menu-container .container {
  align-items: flex-start;
  max-width: 112.2rem !important;
}
@media only screen and (max-width: 992px) {
  .header__menu-list .menu-item .sub-menu-container .container {
    padding: 0;
    flex-direction: column;
  }
}
.header__menu-list .menu-item .sub-menu {
  list-style-type: none;
  width: 100%;
}
@media only screen and (min-width: 992px) {
  .header__menu-list .menu-item .sub-menu {
    margin-left: 3.5rem;
    padding-left: 3.5rem;
    border-left: 1px solid #ededed;
    flex: 2;
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    grid-gap: 1.2rem 3.2rem;
  }
}
.header__menu-list .menu-item .sub-menu .menu-item a {
  max-width: 35rem;
  display: flex;
  align-items: flex-start;
  padding: 0.8rem 0;
  border: 1px solid transparent;
}
@media only screen and (min-width: 992px) {
  .header__menu-list .menu-item .sub-menu .menu-item a {
    padding: 1.6rem 1.6rem 1.6rem 3rem;
    border-radius: 8px;
  }
}
.header__menu-list .menu-item .sub-menu .menu-item a:before {
  content: "";
  display: block;
  position: absolute;
  height: 1.6rem;
  left: 1.4rem;
  top: 50%;
  transform: translateY(-50%);
  background-color: #000;
  width: 1px;
  border-radius: 0.2rem;
  transition: 0.2s ease-in-out;
  opacity: 0;
}
.header__menu-list .menu-item .sub-menu .menu-item a .menu-icon {
  width: 2.8rem;
  height: 2.8rem;
}
@media only screen and (min-width: 992px) {
  .header__menu-list .menu-item .sub-menu .menu-item a .menu-icon {
    width: 4.2rem;
    height: 4.2rem;
  }
}
.header__menu-list .menu-item .sub-menu .menu-item a .menu-icon svg {
  max-width: 100%;
  height: auto;
}
.header__menu-list .menu-item .sub-menu .menu-item a .menu-icon img {
  width: 100%;
}
.header__menu-list .menu-item .sub-menu .menu-item a .menu-wrap {
  flex: 1;
  margin-left: 1.4rem;
}
.header__menu-list .menu-item .sub-menu .menu-item a .menu-title {
  color: #01050a;
  font-weight: 600;
  font-size: 1.4rem;
  line-height: 120%;
  transition: 0.2s ease-in-out;
}
.header__menu-list .menu-item .sub-menu .menu-item a .menu-descr {
  font-weight: 400;
  font-size: 1rem;
  line-height: 130%;
  color: #606492;
  margin-top: 0.4rem;
  transition: 0.2s ease-in-out;
}
@media only screen and (min-width: 992px) {
  .header__menu-list .menu-item .sub-menu .menu-item a .menu-descr {
    font-size: 1.2rem;
  }
}
@media only screen and (min-width: 992px) {
  .header__menu-list .menu-item .sub-menu .menu-item a:hover {
    border-color: rgba(0, 130, 70, 0.5);
    background-color: rgba(0, 130, 70, 0.1);
  }
  .header__menu-list .menu-item .sub-menu .menu-item a:hover:before {
    opacity: 1;
  }
  .header__menu-list .menu-item .sub-menu .menu-item a:hover .menu-title,
  .header__menu-list .menu-item .sub-menu .menu-item a:hover .menu-descr {
    color: var(--color-black);
  }
  .header__menu-list .menu-item .sub-menu .menu-item a:hover .menu-descr {
    opacity: 0.7;
  }
}
@media only screen and (min-width: 992px) {
  .header__menu-list .menu-item .sub-menu-wrap {
    max-width: 32rem;
  }
}
.header__menu-list .menu-item .sub-menu-title {
  display: none;
}
@media only screen and (min-width: 992px) {
  .header__menu-list .menu-item .sub-menu-title {
    display: block;
    color: var(--color-black);
    font-size: 3.6rem;
    font-weight: 400;
    line-height: 130%;
    letter-spacing: -0.072rem;
  }
}
.header__menu-list .menu-item .sub-menu-descr {
  color: rgba(3, 3, 3, 0.7);
  font-size: 1.2rem;
  font-weight: 400;
  line-height: 140%;
  margin-bottom: 0.8rem;
}
@media only screen and (min-width: 992px) {
  .header__menu-list .menu-item .sub-menu-descr {
    font-size: 1.4rem;
    margin-top: 1.6rem;
    margin-bottom: 0;
  }
}
@media only screen and (max-width: 992px) {
  .header__menu-list > .menu-item:not(:first-of-type) {
    border-top: 0.1rem solid rgba(114, 117, 152, 0.2);
  }
}
@media only screen and (max-width: 992px) and (min-width: 992px) {
  .header__menu-list > .menu-item:not(:first-of-type) {
    border-top: 0;
  }
}
@media only screen and (min-width: 992px) {
  .header__menu-list > .menu-item > a {
    padding: 28px 18px;
  }
  .header__menu-list > .menu-item > a:after {
    content: "";
    display: block;
    position: absolute;
    bottom: 0;
    left: 50%;
    transform: translateX(-50%);
    width: 100%;
    height: 0;
    background-color: #008246;
    opacity: 0;
    transition: 0.2s ease-in-out;
  }
  .header__menu-list > .menu-item > a:hover:after {
    opacity: 1;
    height: 1px;
  }
}
.header__menu-list + .bttn {
  margin-left: 0;
  margin-top: 2.2rem;
  width: 100%;
  height: 5rem;
}
@media only screen and (min-width: 992px) {
  .header__menu-list + .bttn {
    margin-left: 4rem;
    margin-top: 0;
    width: auto;
    height: auto;
  }
}
.header__lang-desk {
  display: none;
}
@media only screen and (min-width: 992px) {
  .header__lang-desk {
    display: block;
    margin-left: 2rem;
  }
  .header__lang-desk a {
    font-weight: 600;
    font-size: 1.4rem;
    line-height: 4rem;
    text-decoration: none;
    color: #9c9eba;
    display: flex;
    align-items: center;
    padding: 0 1rem;
    letter-spacing: 0.02em;
  }
  .header__lang-desk a.active:after {
    content: "";
    background: url("../img/icons/lang.svg") no-repeat center center;
    width: 0.6rem;
    height: 0.4rem;
    margin-left: 0.4rem;
  }
  .header__lang-desk ul {
    transition: 0.2s linear;
    display: none;
    position: absolute;
    background-color: #fff;
    box-shadow: 0 0.5rem 0.5rem 0 #ddd;
  }
  .header__lang-desk ul li {
    transition: 0.2s ease-in-out;
  }
  .header__lang-desk ul li a {
    transition: 0.2s ease-in-out;
  }
  .header__lang-desk ul li:hover {
    background-color: rgb(236, 236, 236);
  }
  .header__lang-desk ul li:hover a {
    color: #000;
  }
}
@media only screen and (min-width: 992px) {
  .header[data-lang=en] .header__menu-list .menu-item .sub-menu {
    margin-left: 7rem;
  }
}
.header__contacts span {
  font-weight: 300;
  font-size: 1.2rem;
  line-height: 130%;
  color: #606492;
}
.header__contacts a {
  display: block;
  font-weight: 500;
  font-size: 1.4rem;
  line-height: 120%;
  color: #008246;
  padding: 0.8rem 0;
}
.header__contacts li:not(:first-child) {
  margin-top: 1.2rem;
}
@media only screen and (min-width: 992px) {
  .header__contacts {
    display: none;
  }
}
.header__contacts + a {
  margin-top: 2.4rem;
}
.header__social {
  position: absolute;
  top: 1.6rem;
  left: 1.3rem;
  display: flex;
  gap: 0.8rem;
}
@media only screen and (min-width: 992px) {
  .header__social {
    position: static;
    top: unset;
    left: unset;
    align-items: center;
    justify-content: center;
    margin-left: 24px;
    list-style-type: none;
  }
}
.header__social a {
  width: 28px;
  height: 28px;
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 0.2rem;
  border-radius: 6px;
  background-color: rgba(175, 179, 189, 0.1);
  transition: 0.2s ease-in-out;
}
.header__social a:hover {
  background-color: rgba(175, 179, 189, 0.4);
}
@media only screen and (max-width: 992px) {
  .header__social a {
    width: 32px;
    height: 32px;
  }
}
.header__social img {
  width: 2rem;
  height: 2rem;
}
.header__top {
  min-height: 4.6rem;
  padding: 0.9rem 0;
  background: #05050c;
  z-index: 400;
}
@media only screen and (max-width: 992px) {
  .header__top {
    width: calc(100% + 3rem);
    left: 50%;
    transform: translateX(-50%);
    padding: 1.6rem 0;
  }
  .header__top .container {
    padding: 0 2.4rem;
  }
}
.header__top-wrap {
  display: flex;
  align-items: center;
  justify-content: space-between;
  width: 100%;
  gap: 3.2rem;
}
.header__top-logo svg,
.header__top-logo img {
  max-width: 100%;
  width: 2.6rem;
  height: 2.6rem;
  display: block;
}
@media only screen and (min-width: 992px) {
  .header__top-logo svg,
  .header__top-logo img {
    width: 1.8rem;
    height: 1.8rem;
  }
}
.header__top-logo a {
  font-size: 1.3rem;
  color: rgba(255, 255, 255, 0.6);
  display: flex;
  align-items: center;
  gap: 0.8rem;
}
@media only screen and (min-width: 992px) {
  .header__top-logo a {
    font-size: 1.4rem;
  }
}
.header__top-logo a span {
  display: inline-block;
  color: inherit;
  font-size: inherit;
}
.header__top-navigation {
  display: flex;
  flex-wrap: wrap;
  margin-left: auto;
}
@media only screen and (max-width: 992px) {
  .header__top + .isHeaderTop {
    padding-top: 1.5rem;
    padding-bottom: 1.5rem;
  }
  .header__top + .isHeaderTop .header__menu {
    padding-top: 11.6rem;
  }
}

body.menu-open .header__menu {
  left: 0;
}
@media only screen and (min-width: 576px) {
  body.menu-open .header__menu {
    left: 50vw;
    width: 50vw;
  }
}
@media only screen and (max-width: 992px) {
  body.menu-open .header__burger::before, body.menu-open .header__burger::after {
    background-color: #000;
    -webkit-transition: top 0.15s linear, background 0.3s linear, -webkit-transform 0.15s linear 0.15s;
    transition: top 0.15s linear, background 0.3s linear, -webkit-transform 0.15s linear 0.15s;
    -o-transition: top 0.15s linear, transform 0.15s linear 0.15s, background 0.3s linear;
    transition: top 0.15s linear, transform 0.15s linear 0.15s, background 0.3s linear;
    transition: top 0.15s linear, transform 0.15s linear 0.15s, background 0.3s linear, -webkit-transform 0.15s linear 0.15s;
  }
  body.menu-open .header__burger:before {
    top: 50%;
    -webkit-transform: translate(-50%, -50%) rotate(45deg);
    -ms-transform: translate(-50%, -50%) rotate(45deg);
    transform: translate(-50%, -50%) rotate(45deg);
  }
  body.menu-open .header__burger:after {
    top: 50%;
    -webkit-transform: translate(-50%, -50%) rotate(-45deg);
    -ms-transform: translate(-50%, -50%) rotate(-45deg);
    transform: translate(-50%, -50%) rotate(-45deg);
  }
}

.footer {
  background-color: #000;
  z-index: 10;
  padding-top: 4.6rem;
  padding-bottom: 7.2rem;
  color: #fff;
  border-top: 1px solid;
  border-image-slice: 30;
  border-image-width: 1px;
  border-image-repeat: unset;
  border-image-source: radial-gradient(50% 13688% at 50% 50%, rgba(235, 235, 242, 0.25) -100%, rgba(235, 235, 242, 0) 90%);
  overflow: hidden;
}
@media only screen and (min-width: 992px) {
  .footer {
    z-index: 1;
    padding-top: 6.4rem;
    padding-bottom: 8rem;
  }
}
.footer::before {
  content: "";
  width: clamp(32rem, 70vw, 100rem);
  height: 30rem;
  position: absolute;
  top: -15rem;
  left: 50%;
  transform: translateX(-50%);
  background: radial-gradient(70.71% 70.71% at 50% 50%, rgba(0, 130, 70, 0.2) 0%, rgba(0, 130, 70, 0) 80%);
  pointer-events: none !important;
  z-index: 2;
}
.footer a:not([href]):hover {
  cursor: auto;
}
.footer a:not([href]):hover::after {
  content: none;
}
.footer__logo {
  display: flex;
  justify-content: center;
  grid-column: span 2;
}
@media only screen and (min-width: 768px) {
  .footer__logo {
    justify-content: flex-start;
  }
}
@media only screen and (min-width: 992px) {
  .footer__logo {
    margin-top: -2rem;
  }
}
.footer__logo img {
  display: block;
  margin-left: -1.6rem;
  max-width: 100%;
  width: 18.3rem;
}
@media only screen and (min-width: 768px) {
  .footer__logo img {
    margin-left: 0;
  }
}
@media only screen and (min-width: 992px) {
  .footer__logo img {
    margin: 0 auto;
    margin-left: 0;
  }
}
.footer .social {
  margin-top: 3.2rem;
  margin-left: 1.4rem;
}
@media only screen and (max-width: 992px) {
  .footer .social {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    grid-gap: 3.2rem;
    width: 10.4rem;
    margin: 0 auto;
  }
}
.footer__wrap {
  display: flex;
  flex-direction: column;
  gap: 4.6rem;
}
@media only screen and (min-width: 768px) {
  .footer__wrap {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    grid-gap: 32px 20px;
  }
}
@media only screen and (min-width: 992px) {
  .footer__wrap {
    grid-template-columns: 0.4fr 0.6fr 0.8fr;
    justify-content: space-between;
  }
}
@media only screen and (min-width: 1252px) {
  .footer__wrap {
    grid-template-columns: 20rem 55rem 20.7rem;
  }
}
.footer__wrap-first {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  grid-gap: 4.6rem 1rem;
}
@media only screen and (min-width: 768px) {
  .footer__wrap-first {
    order: 1;
    margin-bottom: auto;
  }
}
@media only screen and (min-width: 992px) {
  .footer__wrap-first {
    display: flex;
    flex-direction: column;
    grid-gap: unset;
    order: inherit;
    margin-bottom: inherit;
  }
}
.footer__wrap-first .footer__menu {
  margin-top: 2.5rem;
  margin-left: 1.4rem;
}
@media only screen and (min-width: 768px) {
  .footer__wrap-first .footer__menu {
    margin-top: 3.1rem;
  }
}
@media only screen and (min-width: 768px) {
  .footer__wrap-middle {
    order: 0;
    width: 55rem;
  }
}
@media only screen and (min-width: 992px) {
  .footer__wrap-middle {
    order: inherit;
  }
  .footer__wrap-middle .desk-nowrap {
    white-space: nowrap;
  }
}
.footer__wrap-middle .footer__menu > .menu-item-has-children > .sub-menu {
  column-count: 2;
  gap: 0 5.4rem;
}
.footer__wrap-middle .break-column {
  break-after: column;
}
.footer__wrap .sub-menu .menu-item-has-children {
  margin-bottom: 2rem;
}
.footer__wrap .sub-menu .menu-item-has-children > a {
  color: #fff !important;
  font-weight: 400 !important;
  margin-bottom: 0.8rem;
}
.footer__wrap .sub-menu .menu-item-has-children .sub-menu {
  padding-left: 1.2rem;
}
.footer__wrap-last {
  display: flex;
  flex-direction: column;
  gap: 3.2rem;
}
@media only screen and (min-width: 768px) {
  .footer__wrap-last {
    order: 2;
    grid-column: span 2;
    flex-direction: row;
  }
}
@media only screen and (min-width: 992px) {
  .footer__wrap-last {
    order: inherit;
    grid-column: inherit;
    flex-direction: column;
    gap: 5.1rem;
  }
}
@media only screen and (min-width: 992px) {
  .footer__menu {
    display: flex;
    justify-content: space-between;
  }
}
@media only screen and (max-width: 576px) {
  .footer__menu > li:not(:first-child) {
    margin-top: 2rem;
  }
}
.footer__menu a {
  display: inline-block;
  color: rgb(252, 253, 255);
  padding: 0.8rem 0;
}
.footer__menu a[href="#"] {
  cursor: text;
  pointer-events: none;
}
.footer__menu > li > a {
  font-weight: 400;
  font-size: 1.4rem;
  line-height: 120%;
  letter-spacing: -0.014rem;
  margin-bottom: 1.2rem;
  display: block;
}
@media only screen and (min-width: 768px) {
  .footer__menu > li > a {
    margin-bottom: 1.2rem;
  }
}
.footer__menu .sub-menu a {
  font-weight: 300;
  font-size: 1.4rem;
  line-height: 120%;
  letter-spacing: -0.014rem;
  color: rgba(252, 253, 255, 0.8);
}
@media only screen and (max-width: 768px) {
  .footer__menu .sub-menu a {
    padding: 0.8rem 0;
  }
}
.footer__menu .sub-menu a:after {
  content: "";
  width: 100%;
  height: 1px;
  display: block;
  position: absolute;
  bottom: 0;
  transition: 0.1s ease-in-out;
}
.footer__menu .sub-menu a:hover:after {
  background-color: #fff;
}
.footer__menu .accent a {
  color: #008246;
}
.footer__menu .accent a span {
  color: #fff;
  display: block;
}
@media only screen and (min-width: 992px) {
  .footer__menu .columns .sub-menu {
    display: grid;
    grid-auto-flow: column;
    grid-template-rows: repeat(4, 1fr);
    grid-gap: 0 3.2rem;
  }
}
.footer__menu-contacts {
  display: flex;
  flex-direction: column;
  justify-content: flex-end;
  gap: 0rem;
  padding-top: 3.2rem;
}
@media only screen and (min-width: 768px) {
  .footer__menu-contacts {
    padding-top: 3.6rem;
  }
}
.footer__menu-contacts li {
  display: inline-flex;
  flex-direction: column;
}
.footer__menu-contacts li span {
  color: #fcfdff;
}
.footer__menu-contacts li a {
  display: inline-flex;
  flex-direction: column;
  color: var(--accent-second);
  padding: 0.6rem 0;
}
.footer__menu-contacts li a:after {
  content: "";
  width: 100%;
  height: 1px;
  display: block;
  position: absolute;
  bottom: 0;
  transition: 0.1s ease-in-out;
}
.footer__menu-contacts li a:hover:after {
  background-color: #fff;
}
.footer__mail {
  width: 100%;
  max-width: 100%;
  display: flex;
  justify-content: start;
  align-items: center;
  border-top: 1px solid #3b3b3b;
  padding: 2rem;
  margin-top: 3rem;
}
@media only screen and (max-width: 768px) {
  .footer__mail {
    flex-direction: column;
    align-items: center;
    justify-content: center;
  }
}
@media only screen and (min-width: 768px) {
  .footer__mail {
    padding: 3.6rem 0;
    margin-top: 5.1rem;
  }
}
.footer__mail-title {
  font-weight: 400;
  font-size: 1.6rem;
  line-height: 120%;
  color: #fff;
  text-align: center;
  max-width: 40rem;
}
@media only screen and (min-width: 768px) {
  .footer__mail-title {
    text-align: left;
    font-size: 2.4rem;
  }
}
.footer__mail-title + div {
  margin-top: 1.6rem;
}
.footer__mail .flex {
  display: flex;
  gap: 0.8rem;
}
.footer__mail .wpcf7 input[type=checkbox]:checked + span:before {
  background-image: url('data:image/svg+xml,<svg xmlns="http://www.w3.org/2000/svg" width="13" height="10" viewBox="0 0 13 10" fill="none"><path d="M4.74183 9.14466C4.43878 9.14466 4.13574 9.0269 3.9044 8.79L0.694025 5.50254C0.231342 5.02875 0.231342 4.26126 0.694025 3.78885C1.15671 3.31505 1.90485 3.31367 2.36753 3.78746L4.74183 6.21877L10.3265 0.5C10.7892 0.0262064 11.5373 0.0262064 12 0.5C12.4627 0.973794 12.4627 1.74128 12 2.21508L5.57926 8.79C5.34791 9.0269 5.04487 9.14466 4.74183 9.14466Z" fill="white"/></svg>');
}
.footer__mail .wpcf7 {
  width: 45.2rem;
  max-width: 100%;
}
@media only screen and (min-width: 768px) {
  .footer__mail .wpcf7 {
    margin-left: auto;
  }
}
.footer__mail .wpcf7 .wpcf7-acceptance {
  margin-top: 1.6rem;
}
.footer__mail .wpcf7 .wpcf7-acceptance label span,
.footer__mail .wpcf7 .wpcf7-acceptance label a {
  color: #fff;
}
.footer__mail .wpcf7 .bttn {
  min-height: 5.2rem;
  width: unset;
  height: 5.2rem;
  border-radius: 0.8rem;
  border: 1px solid rgba(255, 255, 255, 0.3);
  background: rgba(255, 255, 255, 0.1);
  padding: 1rem 1.6rem;
  transition: all 0.2s ease;
}
.footer__mail .wpcf7 .bttn:hover {
  background: rgba(0, 0, 0, 0.2);
}
.footer__mail .wpcf7 .wpcf7-text {
  height: 5.2rem;
  padding: 1rem 1.3rem;
  border-radius: 0.8rem;
  border: 1px solid rgba(255, 255, 255, 0.3);
  color: #fff;
}
.footer__mail .wpcf7 .wpcf7-text::placeholder {
  color: rgba(255, 255, 255, 0.5);
}
.footer__mail .wpcf7 input[type=checkbox] + span:before {
  border-color: rgba(255, 255, 255, 0.2);
}
.footer__mail .wpcf7 input[type=checkbox]:checked + span:before {
  border-color: rgba(255, 255, 255, 0.4);
}
.footer__contacts {
  width: 100%;
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  grid-gap: 1rem;
}
@media only screen and (min-width: 992px) {
  .footer__contacts {
    display: flex;
    justify-content: space-between;
  }
}
.footer__copyright {
  margin-top: 1.6rem;
  color: rgba(252, 253, 255, 0.6);
  font-size: 1.2rem;
  font-weight: 500;
  letter-spacing: -0.012rem;
}
.footer hr {
  margin: 3rem 0 3rem;
  background-color: rgba(176, 176, 176, 0.15);
  height: 0.1rem;
}

.bg-dark {
  position: fixed;
  top: 0;
  left: 0;
  right: 0;
  background-color: rgba(0, 0, 0, 0.5);
  z-index: 50;
  padding: 2rem 1.5rem;
  display: none;
  overflow-y: auto;
  height: 100%;
}

.fslightbox-source {
  border-radius: 0.4rem;
  background: #FBFBFE;
}
@media only screen and (min-width: 992px) {
  .fslightbox-source {
    border-radius: 1.2rem;
  }
}
.fslightbox-slide-btn {
  background: rgba(255, 255, 255, 0.1) !important;
  box-shadow: 0 0 12px rgba(60, 63, 74, 0.1);
  border-radius: 50%;
}
@media only screen and (min-width: 992px) {
  .fslightbox-slide-btn {
    padding: 15px !important;
  }
}
.fslightbox-open {
  overflow: visible !important;
  height: auto !important;
}
.fslightbox-open body {
  overflow: hidden;
  height: 100vh;
}