@charset "UTF-8";
.content {
  padding-top: 84px;
}
.content__container {
  padding: 0 8px;
}
@media (max-width: 576px) {
  .content__container {
    padding: 0 15px;
  }
}
.content__main {
  margin-top: 8px;
  border-radius: 16px;
  background-color: #FFFFFF;
  padding: 20px;
}
@media (max-width: 576px) {
  .content__main {
    margin-top: 20px;
    padding: 15px;
  }
}

.advantages__list .advantages__item:not(:first-child) {
  border-top: 1px solid var(--header-border-color);
}
.advantages__list .advantages__item {
  background: #fff;
}
.advantages__list .advantages__item .advantages__row {
  align-items: center;
  padding: 40px 24px;
}
@media (max-width: 576px) {
  .advantages__list .advantages__item .advantages__row {
    padding: 20px 15px;
  }
}
.advantages__list .advantages__item .advantages__row .advantages__subtitle {
  padding-right: 40px;
  text-transform: uppercase;
  font-family: "FixelDisplay", Serif;
  font-weight: 400;
  font-size: 22px;
  line-height: normal;
  letter-spacing: -0.2px;
  color: var(--neutral-a-neutral-90-a);
}
@media (max-width: 576px) {
  .advantages__list .advantages__item .advantages__row .advantages__subtitle {
    font-size: 18px;
    margin: 16px 0;
  }
}
.advantages__list .advantages__item .advantages__row .advantages__number {
  font-family: "FixelDisplay", Serif;
  font-weight: 100;
  font-size: 40px;
  line-height: normal;
  letter-spacing: -0.2px;
  color: var(--green-primary);
}
.advantages__list .advantages__item .advantages__row .advantages__description {
  font-family: "FixelDisplay", Serif;
  font-weight: 400;
  font-size: 16px;
  line-height: 160%;
  letter-spacing: -0.2px;
  color: var(--neutral-a-neutral-90-a);
}
@media (max-width: 576px) {
  .advantages__list .advantages__item .advantages__row .advantages__description {
    font-size: 15px;
  }
}

.faq {
  padding: 8px;
}
@media (max-width: 576px) {
  .faq {
    padding: 40px 15px 10px 15px;
  }
}
.faq__container {
  background-color: #FFFFFF;
  border-radius: 24px;
  padding: 24px;
  display: flex;
  gap: 24px;
}
@media (max-width: 576px) {
  .faq__container {
    flex-direction: column;
    padding: 16px;
    border-radius: 16px;
  }
}
@media (max-width: 768px) {
  .faq__container {
    flex-direction: column;
  }
}
.faq__header {
  width: 100%;
  display: flex;
  flex-direction: column;
  gap: 16px;
}
.faq__title {
  text-transform: uppercase;
  vertical-align: middle;
  font-family: "FixelDisplay", Serif;
  font-weight: 500;
  font-size: 32px;
  line-height: 100%;
  letter-spacing: 0;
  color: #4A853E;
}
@media (max-width: 576px) {
  .faq__title {
    font-size: 24px;
  }
}
.faq__description {
  font-family: Arial, Serif;
  font-weight: 400;
  font-size: 16px;
  line-height: 20px;
  letter-spacing: -0.2px;
  color: #868686;
}
.faq__list {
  width: 100%;
  display: flex;
  flex-direction: column;
  gap: 8px;
}
@media (max-width: 576px) {
  .faq__list {
    margin-top: 16px;
  }
}
@media (max-width: 768px) {
  .faq__list {
    margin-top: 16px;
  }
}
.faq__item {
  padding: 24px;
  border: 1px solid #DCDCDC;
  background-color: #FDFDFD;
  border-radius: 20px;
  transition: all 0.3s ease;
  box-shadow: 0 2px 8px rgba(0, 0, 0, 0.05);
}
@media (max-width: 576px) {
  .faq__item {
    padding: 24px 16px;
  }
}
.faq__item:has(.faq__answer.active) {
  background-color: #FFFFFF;
  box-shadow: 0 4px 16px rgba(0, 0, 0, 0.1);
  border-color: #E0E0E0;
}
.faq__item:has(.faq__answer.active) .faq__icon--plus {
  opacity: 0;
  transform: translateY(-50%) rotate(90deg);
}
.faq__item:has(.faq__answer.active) .faq__icon--minus {
  opacity: 1;
  transform: translateY(-50%) rotate(0deg);
}
.faq__question {
  display: flex;
  justify-content: space-between;
  align-items: center;
  cursor: pointer;
  transition: all 0.3s ease;
  position: relative;
}
.faq__question:hover {
  opacity: 0.8;
}
.faq__question--text {
  width: 100%;
  font-family: Arial, Serif;
  font-weight: 700;
  font-size: 18px;
  line-height: 22px;
  letter-spacing: -0.4px;
  color: #000000;
}
@media (max-width: 576px) {
  .faq__question--text {
    flex: 12;
    font-size: 16px;
  }
}
.faq__icon {
  width: 32px;
  min-width: 32px;
  height: 32px;
  display: flex;
  align-items: center;
  justify-content: center;
  position: relative;
}
@media (max-width: 576px) {
  .faq__icon {
    flex: 1;
  }
}
.faq__icon--plus, .faq__icon--minus {
  position: absolute;
  top: 50%;
  right: 0;
  margin: auto;
  transform: translateY(-50%);
  width: 24px;
  height: 24px;
  display: flex;
  align-items: center;
  justify-content: center;
  pointer-events: none;
}
.faq__icon--plus {
  opacity: 1;
  transition: all 0.3s ease;
  transform: translateY(-50%) rotate(0deg);
}
.faq__icon--minus {
  opacity: 0;
  transition: all 0.3s ease;
  transform: translateY(-50%) rotate(90deg);
}
.faq__answer {
  font-family: Arial, Serif;
  font-weight: 400;
  font-size: 16px;
  line-height: 20px;
  letter-spacing: -0.2px;
  color: #868686;
  margin-top: 8px;
  max-height: 0;
  overflow: hidden;
  opacity: 0;
  transition: all 0.4s cubic-bezier(0.4, 0, 0.2, 1);
}
.faq__answer.active {
  max-height: 500px;
  opacity: 1;
  margin-top: 16px;
}
.faq__answer span {
  display: inline-block;
}
.faq__answer ul {
  margin: 8px 0 8px 16px;
}
.faq__answer ul li {
  list-style: disc;
}

.twigel-toggle-trigger {
  cursor: pointer;
}

.twigel-toggle-receiver {
  display: none;
}
.twigel-toggle-receiver.active {
  display: block;
}

.twigel-header-menu-trigger {
  cursor: pointer;
}

.twigel-header-menu-receiver {
  display: none;
}
.twigel-header-menu-receiver.active {
  display: block;
}

.visual-block table {
  border-spacing: 0 16px;
}
.visual-block table tr td {
  color: var(--neutral-a-neutral-70-a);
}
.visual-block table tr td:last-child {
  padding-left: 24px;
}
.visual-block h3 {
  margin-bottom: 16px;
  color: var(--neutral-a-neutral-90-a, rgba(28, 31, 34, 0.9));
  font-size: 22px;
  font-style: normal;
  font-weight: 500;
  line-height: 140%; /* 30.8px */
  text-transform: uppercase;
}
.visual-block img {
  margin-top: 8px;
  border-radius: 12px;
  width: 100%;
  height: 584px;
  object-fit: cover;
}
.visual-block h2 {
  margin-bottom: 16px;
  color: var(--neutral-a-neutral-90-a);
  font-size: 32px;
  font-weight: 500;
  line-height: normal;
  text-transform: uppercase;
}
.visual-block strong, .visual-block b {
  margin-top: 16px;
  margin-bottom: 0;
  color: var(--neutral-a-neutral-70-a);
  font-weight: 600;
}
.visual-block p {
  margin-bottom: 16px;
  color: var(--neutral-a-neutral-90-a);
  font-size: 16px;
  font-style: normal;
  font-weight: 400;
  line-height: 160%; /* 25.6px */
}
.visual-block p a {
  color: var(--green-light);
}
.visual-block p strong, .visual-block p b {
  color: var(--neutral-a-neutral-70-a);
  font-weight: 600;
}
.visual-block iframe {
  width: 100%;
  height: 584px;
  border-radius: 8px;
}
.visual-block ol {
  margin-bottom: 16px;
  color: var(--neutral-a-neutral-90-a);
  font-size: 16px;
  font-style: normal;
  font-weight: 400;
  line-height: 160%; /* 25.6px */
  margin-bottom: 16px;
  margin-left: 10px;
}
.visual-block ol li {
  color: var(--neutral-a-neutral-70-a);
  margin-bottom: 8px;
  position: relative;
  padding-left: 16px;
  margin-left: 12px;
}
.visual-block ol li strong, .visual-block ol li b {
  color: var(--neutral-a-neutral-70-a);
  font-weight: 600;
}
.visual-block ol li li::marker {
  content: "⬥  ";
  font-size: 18px;
}
.visual-block ol li a {
  color: var(--green-light);
}
.visual-block ul {
  margin-bottom: 16px;
  color: var(--neutral-a-neutral-90-a);
  font-size: 16px;
  font-style: normal;
  font-weight: 400;
  line-height: 160%; /* 25.6px */
  margin-bottom: 16px;
}
.visual-block ul li {
  color: var(--neutral-a-neutral-70-a);
  margin-bottom: 8px;
  position: relative;
  padding-left: 10px;
  margin-left: 12px;
}
.visual-block ul li strong, .visual-block ul li b {
  color: var(--neutral-a-neutral-70-a);
  font-weight: 600;
}
.visual-block ul li li::marker {
  content: "⬥  ";
  font-size: 18px;
}
.visual-block ul li a {
  color: var(--green-light);
}
.visual-block ul li:after {
  content: url("../icon/list-description.svg");
  position: absolute;
  font-size: 18px;
  top: 0%;
  left: -10px;
}

@media (max-width: 992px) {
  .visual-block .heading h2 {
    padding: 64px 32px;
    font-size: 32px;
  }
  .visual-block h3 {
    font-size: 18px;
  }
  .visual-block iframe {
    height: 406px;
  }
  .visual-block img {
    height: 406px;
  }
  .visual-block h2 {
    font-size: 24px;
  }
  .visual-block p {
    font-size: 15px;
  }
  .visual-block ul {
    font-size: 15px;
  }
  .visual-block ul li::marker {
    font-size: 16px;
  }
}
@media (max-width: 576px) {
  .visual-block .heading h2 {
    padding: 56px 24px;
    font-size: 24px;
  }
  .visual-block .heading h3 {
    padding: 56px 24px;
    font-size: 24px;
  }
  .visual-block p {
    margin-bottom: 10px;
  }
  .visual-block iframe {
    height: 158px;
  }
  .visual-block img {
    height: 158px;
  }
  .visual-block h2 {
    font-size: 20px;
  }
}
.main-call-btn {
  position: fixed;
  right: 24px;
  bottom: 80px;
  cursor: pointer;
  background: var(--green-dark);
  border-radius: 50%;
  transition: 0.5s;
  z-index: 1000;
  display: flex;
  align-items: center;
  justify-content: center;
  width: 44px;
  height: 44px;
  animation: bounce-out-down 2s ease infinite;
}
.main-call-btn:hover {
  background: var(--green-light);
}

.phones-block {
  background-color: #fff;
  padding: 16px;
  border-radius: 16px;
  position: fixed;
  bottom: 145px;
  right: 25px;
  box-shadow: 0 0 0 9999px rgba(0, 0, 0, 0.1);
  display: none;
  z-index: 1001;
}
.phones-block.active {
  display: block;
}
.phones-block-cities {
  padding: 10px 10px 0 10px;
  display: flex;
  justify-content: space-between;
  gap: 40px;
  border-bottom: 1px solid #D9D9D9;
}
.phones-block-cities p, .phones-block-cities a {
  color: var(--neutral-a-neutral-90-a, rgba(28, 31, 34, 0.9));
  font-size: 16px;
  font-style: normal;
  font-weight: 400;
  line-height: 160%;
}
.phones-block-cities:last-child {
  border-bottom: none;
}
.phones-block-phones p {
  margin-bottom: 10px;
}

a#bingc-phone-button svg.bingc-phone-button-circle circle.bingc-phone-button-circle-inside {
  fill: var(--green-dark) !important;
}

a#bingc-phone-button div.bingc-phone-button-tooltip {
  background: var(--green-dark) !important;
}

a#bingc-phone-button div.bingc-phone-button-tooltip svg.bingc-phone-button-arrow polyline {
  fill: var(--green-dark) !important;
}

a#bingc-phone-button:hover svg.bingc-phone-button-circle circle.bingc-phone-button-circle-inside {
  fill: var(--green-dark) !important;
}

div#bingc-passive div.bingc-passive-overlay div.bingc-passive-content div.bingc-passive-get-phone-form form.bingc-passive-get-phone-form a.bingc-passive-phone-form-button {
  background: var(--green-dark) !important;
}

div#bingc-passive div.bingc-passive-overlay div.bingc-passive-content div.bingc-passive-get-phone-form form.bingc-passive-get-phone-form a.bingc-passive-phone-form-button:hover {
  background: var(--green-light) !important;
  transition: all 0.4s ease;
}

.grecaptcha-badge {
  display: none;
}

@keyframes bounce-out-down {
  0% {
    transform: translateY(0);
  }
  20% {
    opacity: 1;
    transform: translateY(-10px);
  }
  100% {
    opacity: 1;
    transform: translateY(0px);
  }
}
.heading {
  border-top: 1px solid var(--neutral-neutral-16, #DADBDB);
  border-bottom: 1px solid var(--neutral-neutral-16, #DADBDB);
  background: linear-gradient(90deg, #fff 14px, transparent 1%) center, linear-gradient(#fff 14px, transparent 1%) center, rgba(0, 0, 0, 0.3019607843);
  background-size: 15px 15px;
  margin: 8px 0;
}
.heading h2, .heading p {
  padding: 80px 24px;
  font-style: normal;
  text-transform: uppercase;
  font-family: "Arial", Serif;
  font-weight: 500;
  font-size: 44px;
  line-height: normal;
  letter-spacing: -0.2px;
  color: var(--green-primary);
}
@media (max-width: 992px) {
  .heading h2, .heading p {
    padding: 64px 32px;
    font-size: 32px;
  }
}
@media (max-width: 576px) {
  .heading h2, .heading p {
    padding: 56px 24px;
    font-size: 24px;
  }
}
.heading h3 {
  padding: 80px 24px;
  font-style: normal;
  text-transform: uppercase;
  font-family: "Arial", Serif;
  font-weight: 500;
  font-size: 44px;
  line-height: normal;
  letter-spacing: -0.2px;
  color: var(--green-primary);
}

.catalog-banner__container {
  display: flex;
  gap: 8px;
}
@media (max-width: 768px) {
  .catalog-banner__container {
    flex-direction: column;
    gap: 25px;
  }
}
@media (max-width: 576px) {
  .catalog-banner__container {
    gap: 20px;
  }
}
.catalog-banner__header {
  padding: 24px;
  flex: 2;
  position: relative;
  border-radius: 24px;
}
@media (max-width: 768px) {
  .catalog-banner__header {
    flex: auto;
    height: 325px;
  }
}
.catalog-banner__header img {
  z-index: 0;
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  border-radius: 24px;
  object-fit: cover;
  filter: brightness(0.6);
}
.catalog-banner__title {
  z-index: 1;
  position: relative;
  vertical-align: middle;
  text-transform: uppercase;
  font-family: Arial, Serif;
  font-weight: 700;
  font-size: 48px;
  line-height: 56px;
  letter-spacing: -1px;
  color: #FFFFFF;
}
@media (max-width: 768px) {
  .catalog-banner__title {
    font-family: Arial, Serif;
    font-weight: 700;
    font-size: 24px;
    line-height: 56px;
    letter-spacing: -1px;
    color: #FFFFFF;
  }
}
.catalog-banner__form {
  padding: 60px 24px;
  flex: 1;
  background-color: #ffffff;
  border-radius: 24px;
}
@media (max-width: 768px) {
  .catalog-banner__form {
    align-self: center;
    flex: auto;
  }
}
@media (max-width: 768px) {
  .catalog-banner__form {
    padding: 0;
    background-color: transparent;
  }
}
.catalog-banner__form .wpcf7 {
  display: block;
}
@media (max-width: 768px) {
  .catalog-banner__form .wpcf7 {
    display: none;
  }
}
.catalog-banner__form .modal__button {
  display: none;
  background-color: #232323;
  width: 287px;
}
.catalog-banner__form .modal__button span {
  color: #FFFFFF;
}
@media (max-width: 768px) {
  .catalog-banner__form .modal__button {
    display: block;
  }
}
.catalog-banner__form .callback__form--title {
  color: #000000;
}

.typical-projects__list {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  grid-gap: 24px;
  margin-bottom: 20px;
}
@media (max-width: 576px) {
  .typical-projects__list {
    margin-bottom: 15px;
    grid-template-columns: 1fr;
    grid-gap: 16px;
  }
}
.typical-projects__link {
  text-decoration: none;
}

.project-card {
  border-radius: 12px;
  background-color: var(--card-bg);
  transition: 0.5s;
}
.project-card:hover {
  background-color: var(--green-primary-30);
}
.project-card__header {
  display: flex;
  justify-content: space-between;
  align-items: flex-end;
  padding: 19px 12px;
  border-bottom: 1px dotted var(--header-border-color);
}
@media (max-width: 992px) {
  .project-card__header {
    border: none;
    align-items: flex-start;
    padding: 16px 16px 0;
  }
}
@media (max-width: 576px) {
  .project-card__header img {
    padding-top: 5px;
  }
}
.project-card__header p {
  color: var(--green-light);
  font-size: 16px;
  font-weight: 600;
  text-transform: uppercase;
  margin: 0;
}
@media (max-width: 576px) {
  .project-card__header p {
    padding: 4px 10px;
  }
}
.project-card__body {
  padding: 8px 12px;
  display: flex;
  justify-content: space-between;
  gap: 16px;
}
@media (max-width: 992px) {
  .project-card__body {
    flex-direction: column-reverse;
    padding: 12px;
  }
}
@media (max-width: 576px) {
  .project-card__body {
    padding: 12px;
  }
}
.project-card__info {
  width: 100%;
  color: var(--neutral-a-neutral-60-a);
}
@media (max-width: 992px) {
  .project-card__info {
    padding-top: 12px;
  }
}
.project-card__item {
  padding: 8px 0;
  display: flex;
  justify-content: space-between;
  border-bottom: 1px dotted var(--header-border-color);
  font-size: 13px;
}
.project-card__item p {
  margin-bottom: 0;
}
.project-card__item p:last-child {
  color: var(--neutral-a-neutral-90-a, rgba(28, 31, 34, 0.9));
  font-weight: 500;
}
@media (max-width: 576px) {
  .project-card__item p:last-child {
    font-weight: 500;
  }
}
.project-card__item .project-card__unit {
  color: var(--neutral-a-neutral-60-a);
  font-size: 13px;
  font-weight: 500;
}
.project-card__item:last-child {
  border: none;
}
@media (max-width: 992px) {
  .project-card__item {
    font-size: 12px;
  }
}
.project-card__image {
  width: 100%;
  height: 209px;
  border-radius: 8px;
  overflow: hidden;
}
.project-card__image img {
  object-fit: cover;
  width: 100%;
  height: 100%;
}
@media (max-width: 992px) {
  .project-card__image {
    width: 100%;
  }
}
@media (max-width: 576px) {
  .project-card__image {
    margin-bottom: 12px;
  }
}
.project-card__icon {
  padding-left: 8px;
}

/*
* Prefixed by https://autoprefixer.github.io
* PostCSS: v8.4.14,
* Autoprefixer: v10.4.7
* Browsers: last 4 version
*/
#secondary {
  padding-right: 40px;
}
#secondary ul.wp-block-categories-list li.cat-item {
  padding: 12px 0;
}
#secondary ul.wp-block-categories-list li.cat-item a:first-child {
  color: var(--neutral-a-neutral-70-a);
  font-size: 16px;
  font-weight: 500;
  line-height: normal;
  text-transform: uppercase;
}
#secondary ul.wp-block-categories-list li.cat-item ul.children li.cat-item {
  padding: 4px 0 4px 16px;
}
#secondary ul.wp-block-categories-list li.cat-item ul.children li.cat-item a {
  text-transform: none;
  color: var(--green-light);
  font-size: 13px;
  font-style: normal;
  font-weight: 400;
  line-height: normal;
}

.sidebar ul:not(.wp-block-latest-posts__list):not(#category-list) {
  display: none;
}
.sidebar .article-title {
  margin-bottom: 24px;
  padding: 8px 0;
  border-bottom: 1px dotted var(--neutral-a-neutral-16-a, rgba(28, 31, 34, 0.16));
  display: flex;
  align-items: end;
}
.sidebar .article-title:after {
  content: url("../icon/link_arrow_green.svg");
}
.sidebar .article-title a {
  color: var(--green-light, #4A853E);
  font-size: 16px;
  font-weight: 500;
  text-transform: uppercase;
}

.sidebar, #category-list {
  padding-right: 10px;
}
.sidebar .parent-sidebar-element:not(.child-sidebar-element), #category-list .parent-sidebar-element:not(.child-sidebar-element) {
  margin-top: 24px;
}
.sidebar li.parent-sidebar-element > a, #category-list li.parent-sidebar-element > a {
  padding: 12px 0;
  color: var(--neutral-a-neutral-70-a);
  font-size: 16px;
  font-weight: 500;
  line-height: normal;
  text-transform: uppercase;
}
.sidebar li.child-sidebar-element, #category-list li.child-sidebar-element {
  padding: 4px 0 4px 16px;
}
.sidebar li.child-sidebar-element a, #category-list li.child-sidebar-element a {
  display: flex;
  text-transform: none;
  color: var(--green-light);
  font-size: 13px;
  font-style: normal;
  font-weight: 400;
  line-height: normal;
}
.sidebar li.child-sidebar-element a .post-number, #category-list li.child-sidebar-element a .post-number {
  display: inline-block;
  width: 28px;
  color: var(--neutral-a-neutral-40-a, rgba(28, 31, 34, 0.4));
  font-size: 13px;
  font-style: normal;
  font-weight: 400;
  line-height: normal;
}
.sidebar li.child-sidebar-element a .post-title, #category-list li.child-sidebar-element a .post-title {
  width: 100%;
}

.wp-block-latest-posts__list li {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -ms-flex-direction: column;
  flex-direction: column;
  padding: 24px 0;
  border-bottom: 1px dotted var(--neutral-a-neutral-16-a);
}
.wp-block-latest-posts__list li .wp-block-latest-posts__featured-image {
  -webkit-box-ordinal-group: 3;
  -ms-flex-order: 2;
  order: 2;
}
.wp-block-latest-posts__list li .wp-block-latest-posts__featured-image a {
  width: 100%;
}
.wp-block-latest-posts__list li .wp-block-latest-posts__featured-image a .wp-post-image {
  object-fit: cover;
  border-radius: 8px;
  height: 176px;
  width: 100%;
}
.wp-block-latest-posts__list li .wp-block-latest-posts__post-title {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-box-ordinal-group: 4;
  -ms-flex-order: 3;
  order: 3;
  color: var(--green-light);
  font-size: 16px;
  font-weight: 500;
  line-height: normal;
  text-transform: uppercase;
  padding: 12px 0 8px 0;
}
.wp-block-latest-posts__list li .wp-block-latest-posts__post-title:after {
  content: url("../icon/link_arrows/link_arrow_green.svg");
}
.wp-block-latest-posts__list li .wp-block-latest-posts__post-date {
  margin-bottom: 8px;
  -webkit-box-ordinal-group: 2;
  -ms-flex-order: 1;
  order: 1;
  color: var(--neutral-a-neutral-50-a);
  font-size: 13px;
  font-weight: 400;
  line-height: normal;
}

.nw-full-width {
  width: 100%;
  margin: 0 auto;
  padding-left: 40px !important;
  padding-right: 40px !important;
}

.bg {
  background-color: var(--gray);
}

.rating {
  display: none;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  text-align: center;
  margin: 40px auto 40px !important;
}
.rating .site-rating span {
  margin-right: 4px;
}

@media (max-width: 992px) {
  .rating {
    margin: 32px auto 16px !important;
  }
}
@media (max-width: 576px) {
  .nw-full-width {
    padding-left: 0 !important;
    padding-right: 0 !important;
  }
}
.banner-ct {
  padding: 70px 0 0 0;
}
.banner-ct .banner img {
  filter: brightness(0.5);
  width: 100%;
  border-radius: 16px;
}
.banner-ct .banner.banner-subpage-post .row .banner-side {
  position: relative;
}
.banner-ct .banner.banner-subpage-post .row .banner-side img {
  filter: brightness(0.5);
  height: 640px;
  object-fit: cover;
  border-radius: 16px;
}
.banner-ct .banner.banner-subpage-post .row .banner-side h1 {
  color: var(--white, #FFF) !important;
  margin-bottom: 90px !important;
}
.banner-ct .banner.banner-subpage-post .row .banner-side .link-btn {
  margin-top: 40px !important;
}
.banner-ct .banner.banner-subpage-post .row .banner-side .link-btn p {
  margin-top: 8px;
  color: var(--neutral-op-a-neutral-op-70-a, rgba(255, 255, 255, 0.7)) !important;
  text-align: center;
  font-size: 13px;
  font-style: normal;
  font-weight: 400;
  line-height: normal;
}
.banner-ct .banner.banner-subpage-post .row .banner-side .link-btn button {
  color: var(--white, #FFF) !important;
  border: 1px solid var(--white, #FFF) !important;
  transition: 0.5s;
}
.banner-ct .banner.banner-subpage-post .row .banner-side .link-btn button:after {
  transition: 0.5s;
  margin-right: 8px;
  content: url("../icon/link_arrows/link_arrow.svg") !important;
}
.banner-ct .banner.banner-subpage-post .row .banner-side .link-btn button:hover {
  border-color: var(--green-light, #4A853E) !important;
}
.banner-ct .banner.banner-subpage-post .row .banner-side-text {
  position: absolute;
  top: 40px;
  padding: 32px;
}
.banner-ct .banner.banner-subpage-post .row .banner-side-list {
  border-radius: 12px;
  background: rgba(0, 0, 0, 0.2);
  backdrop-filter: blur(20px);
  padding: 32px;
  width: max-content;
}
.banner-ct .banner.banner-subpage-post .row .banner-side-list ul {
  color: var(--neutral-op-a-neutral-op-70-a, rgba(255, 255, 255, 0.7)) !important;
}
.banner-ct .banner.banner-subpage .row .banner-side .link-btn, .banner-ct .banner.banner-subpage-post .row .banner-side .link-btn {
  margin-top: 30px;
  max-width: max-content;
}
.banner-ct .banner.banner-subpage .row .banner-side .link-btn p, .banner-ct .banner.banner-subpage-post .row .banner-side .link-btn p {
  margin-top: 8px;
  color: var(--neutral-a-neutral-50-a, rgba(28, 31, 34, 0.5));
  text-align: center;
  font-size: 13px;
  font-style: normal;
  font-weight: 400;
  line-height: normal;
}
.banner-ct .banner.banner-subpage .row .banner-side .link-btn button, .banner-ct .banner.banner-subpage-post .row .banner-side .link-btn button {
  color: var(--neutral-a-neutral-90-a);
  padding: 16px 20px 16px 24px;
  justify-content: center;
  align-items: center;
  border-radius: 16px;
  border: 1px solid var(--neutral-a-neutral-90-a);
  display: flex;
  transition: 0.5s;
}
.banner-ct .banner.banner-subpage .row .banner-side .link-btn button:after, .banner-ct .banner.banner-subpage-post .row .banner-side .link-btn button:after {
  width: 24px;
  height: 24px;
  margin-left: 8px;
  transition: 0.5s;
  margin-right: 8px;
  content: url("../icon/link_arrows/link_arrow_dark.svg");
}
.banner-ct .banner.banner-subpage .row .banner-side .link-btn button:hover, .banner-ct .banner.banner-subpage-post .row .banner-side .link-btn button:hover {
  border-color: var(--green-light, #4A853E);
  background: var(--green-light, #4A853E);
  color: #ffffff;
}
.banner-ct .banner.banner-subpage .row .banner-side .link-btn button:hover:after, .banner-ct .banner.banner-subpage-post .row .banner-side .link-btn button:hover:after {
  content: url("../icon/link_arrows/link_arrow.svg");
}
.banner-ct .banner.banner-subpage .row .banner-side h1, .banner-ct .banner.banner-subpage-post .row .banner-side h1 {
  color: var(--neutral-a-neutral-90-a, rgba(28, 31, 34, 0.9));
  font-size: 60px;
  font-style: normal;
  font-weight: 500;
  line-height: normal;
  text-transform: uppercase;
  margin-bottom: 32px;
}
.banner-ct .banner.banner-subpage .row .banner-side ul, .banner-ct .banner.banner-subpage-post .row .banner-side ul {
  margin-bottom: 16px;
  color: var(--neutral-a-neutral-90-a);
  font-size: 16px;
  font-style: normal;
  font-weight: 400;
  line-height: 160%; /* 25.6px */
  margin-bottom: 16px;
  padding-left: 10px;
}
.banner-ct .banner.banner-subpage .row .banner-side ul li::marker, .banner-ct .banner.banner-subpage-post .row .banner-side ul li::marker {
  content: "⬥";
  font-size: 18px;
}
.banner-ct .banner.banner-text {
  position: relative;
}
.banner-ct .banner.banner-text img {
  width: 100%;
  height: 560px;
  object-fit: cover;
  border-radius: 16px;
  filter: brightness(0.5);
  position: relative;
}
.banner-ct .banner.banner-text h1 {
  color: #fff;
  position: absolute;
  top: 40px;
  left: 40px;
}
.banner-ct .banner-text {
  padding: 16px 0;
  color: var(--neutral-a-neutral-90-a);
  font-size: 60px;
  font-weight: 500;
  line-height: normal;
  text-transform: uppercase;
}

.author  .banner-ct .banner-text{
  display: none;
}

@media (max-width: 992px) {
  .banner-ct .banner-text {
    font-size: 40px;
  }
  .banner-ct .banner.banner-text img {
    height: 400px;
  }
  .banner-ct .banner.banner-subpage .row, .banner-ct .banner.banner-subpage-post .row {
    flex-direction: column-reverse;
  }
  .banner-ct .banner.banner-subpage .row .banner-side h1, .banner-ct .banner.banner-subpage-post .row .banner-side h1 {
    font-size: 40px;
    margin-bottom: 40px !important;
  }
  .banner-ct .banner.banner-subpage .row .banner-side ul li, .banner-ct .banner.banner-subpage-post .row .banner-side ul li {
    font-size: 15px;
  }
  .banner-ct .banner.banner-subpage .row .banner-side img, .banner-ct .banner.banner-subpage-post .row .banner-side img {
    filter: brightness(0.5);
    margin-bottom: 24px;
  }
  .banner-ct .banner.banner-subpage .row .banner-side-list, .banner-ct .banner.banner-subpage-post .row .banner-side-list {
    width: 100%;
    backdrop-filter: blur(2px);
  }
}
@media (max-width: 576px) {
  .banner-ct .banner-text {
    padding: 16px 24px;
    font-size: 30px;
  }
  .banner-ct .banner.banner-text img {
    height: 650px;
  }
  .banner-ct .banner.banner-subpage, .banner-ct .banner.banner-subpage-post {
    padding: 0 24px;
  }
  .banner-ct .banner.banner-subpage .row .banner-side h1, .banner-ct .banner.banner-subpage-post .row .banner-side h1 {
    font-size: 30px;
  }
  .banner-ct .banner.banner-subpage .row .banner-side-text, .banner-ct .banner.banner-subpage-post .row .banner-side-text {
    padding: 12px;
  }
}
.breadcrumbs {
  padding: 16px 0;
}
.breadcrumbs .house_breadcrumbs span {
  color: var(--neutral-a-neutral-70-a);
}
.breadcrumbs .house_breadcrumbs span:nth-child(3):not(.kb_title) a {
  border-radius: 4px;
  padding: 4px;
  background: var(--neutral-a-neutral-4-a);
}
.breadcrumbs .house_breadcrumbs span:nth-child(3):not(.kb_title) a span {
  color: var(--green-light) !important;
}

@media (max-width: 576px) {
  .breadcrumbs {
    padding: 16px 24px;
  }
  .breadcrumbs .house_breadcrumbs {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    font-size: 12px;
    font-weight: 500;
  }
  .breadcrumbs .house_breadcrumbs span:not(:first-child) {
    padding: 3px 4.5px;
  }
}
.banner-ct .items .content-faq .faq-block.show .faq-block-answer {
  display: block;
}
.banner-ct .items .content-faq .faq-block.show .faq-block-question {
  color: var(--neutral-a-neutral-90-a, rgba(28, 31, 34, 0.9));
  font-size: 22px;
  font-style: normal;
  font-weight: 500;
  line-height: 140%; /* 30.8px */
  text-transform: uppercase;
}
.banner-ct .items .content-faq .faq-block {
  border-bottom: 1px solid var(--neutral-a-neutral-16-a, rgba(28, 31, 34, 0.16));
  padding: 16px 32px;
}
.banner-ct .items .content-faq .faq-block-question {
  margin: 0;
  cursor: pointer;
  display: flex;
  align-items: center;
  justify-content: space-between;
}
.banner-ct .items .content-faq .faq-block-question:after {
  transform: scale(1.5);
  content: url("../icon/vector_arrow.svg");
}
.banner-ct .items .content-faq .faq-block-answer {
  display: none;
  margin: 16px 0 0 0;
  padding: 0 40px 0 0;
}

.banner-ct .items .content-created-projects-card .created-projects-title {
  border-bottom: 1px solid var(--neutral-a-neutral-16-a, rgba(28, 31, 34, 0.16));
}
.banner-ct .items .content-created-projects-card .created-projects-title p {
  padding: 15px 0;
  margin-bottom: 0 !important;
  display: flex;
  justify-content: space-between;
  align-items: center;
  color: var(--green-light, #4A853E);
  font-size: 16px !important;
  font-style: normal;
  font-weight: 500 !important;
  line-height: normal;
  text-transform: uppercase;
}
.banner-ct .items .content-created-projects-card .created-projects-title p:after {
  content: url("../icon/link_arrows/link_arrow_green.svg");
  transform: rotate(90deg);
}
.banner-ct .items .content-created-projects-card .created-projects-content {
  display: none;
}
.banner-ct .items .content-created-projects-card.show {
  margin-bottom: 40px;
}
.banner-ct .items .content-created-projects-card.show .created-projects-title {
  margin-bottom: 24px;
}
.banner-ct .items .content-created-projects-card.show .created-projects-title p {
  display: flex;
  justify-content: space-between;
  align-items: center;
  color: var(--neutral-a-neutral-90-a, rgba(28, 31, 34, 0.9));
  font-size: 32px !important;
  font-style: normal;
  font-weight: 500 !important;
  line-height: normal;
  text-transform: uppercase;
}
.banner-ct .items .content-created-projects-card.show .created-projects-title p:after {
  transform: rotate(0);
  content: url("../icon/link_arrows/link_arrow_dark.svg");
}
.banner-ct .items .content-created-projects-card.show .created-projects-title img {
  width: 32px;
}
.banner-ct .items .content-created-projects-card.show .created-projects-content {
  display: block;
}
.banner-ct .items .content-created-projects-card.show .created-projects-content .row {
  margin-bottom: 24px;
}
.banner-ct .items .content-created-projects-card.show .created-projects-content .row .col-lg-4 {
  padding-left: 40px;
}
.banner-ct .items .content-created-projects-card.show .created-projects-content .row .col-lg-4 .created-projects-text .project-card-content-text-item:last-child {
  border: none;
}
.banner-ct .items .content-created-projects-card.show .created-projects-content .row .col-lg-4 .created-projects-text .project-card-content-text-item {
  display: flex;
  justify-content: space-between;
  padding: 8px 0;
  border-bottom: 1px dotted var(--neutral-a-neutral-16-a, rgba(28, 31, 34, 0.16));
}
.banner-ct .items .content-created-projects-card.show .created-projects-content .row .col-lg-4 .created-projects-text .project-card-content-text-item p {
  margin: 0;
}
.banner-ct .items .content-created-projects-card.show .created-projects-content-equipment {
  border-top: 1px dotted var(--neutral-a-neutral-16-a, rgba(28, 31, 34, 0.16));
  padding-top: 40px;
}

.banner-ct .items .content-certificates {
  padding: 40px 0;
  border-bottom: 1px solid var(--neutral-a-neutral-16-a, rgba(28, 31, 34, 0.16));
  border-top: 1px solid var(--neutral-a-neutral-16-a, rgba(28, 31, 34, 0.16));
}
.banner-ct .items .content-certificates .sertification-photos {
  margin-top: 32px;
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  grid-gap: 5px;
}
.banner-ct .items .content-certificates .sertification-photos img {
  max-width: 100%;
  height: auto;
}
.banner-ct .items .content-list-certificates {
  margin: 24px 0;
  display: flex;
  flex-wrap: wrap;
  gap: 40px;
}
.banner-ct .items .content-list-certificates-image img {
  width: 100%;
}

@media (max-width: 576px) {
  .banner-ct .items .content-list-certificates {
    flex-direction: column;
  }
}
.banner-ct .items .content-projects {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  grid-gap: 24px;
}
.banner-ct .items .content-projects .project-card {
  border-radius: 12px;
  background-color: var(--card-bg);
  transition: 0.5s;
}
.banner-ct .items .content-projects .project-card:hover {
  background-color: var(--green-primary-30);
}
.banner-ct .items .content-projects .project-card-header {
  display: flex;
  justify-content: space-between;
  align-items: flex-end;
  padding: 19px 12px;
  border-bottom: 1px dotted var(--header-border-color);
}
.banner-ct .items .content-projects .project-card-header p {
  color: var(--green-light);
  font-size: 16px;
  font-style: normal;
  font-weight: 600;
  line-height: normal;
  text-transform: uppercase;
}
.banner-ct .items .content-projects .project-card-content {
  padding: 8px 12px;
  display: flex;
  justify-content: space-between;
  gap: 16px;
}
.banner-ct .items .content-projects .project-card-content-text {
  color: var(--neutral-a-neutral-60-a);
  width: 100%;
}
.banner-ct .items .content-projects .project-card-content-text-item {
  padding: 8px 0;
  font-weight: 400;
  line-height: normal;
  display: flex;
  justify-content: space-between;
  border-bottom: 1px dotted var(--header-border-color);
}
.banner-ct .items .content-projects .project-card-content-text-item p:last-child {
  color: var(--neutral-a-neutral-90-a, rgba(28, 31, 34, 0.9));
  font-weight: 500;
}
.banner-ct .items .content-projects .project-card-content-text-item p {
  margin-bottom: 0;
  font-size: 13px;
}
.banner-ct .items .content-projects .project-card-content-text-item p .symbol {
  color: var(--neutral-a-neutral-60-a);
  font-size: 13px;
  line-height: normal;
  font-weight: 500;
}
.banner-ct .items .content-projects .project-card-content-text-item:last-child {
  border: none;
}
.banner-ct .items .content-projects .project-card-content-image {
  width: 100%;
  height: 209px;
  border-radius: 8px;
  overflow: hidden;
}
.banner-ct .items .content-projects .project-card-content-image img {
  object-fit: cover;
  width: 100%;
  height: 100%;
}

@media (max-width: 992px) {
  .banner-ct .items .content-projects .project-card-header {
    border: none;
    align-items: flex-start;
    padding: 16px 16px 0 16px;
  }
  .banner-ct .items .content-projects .project-card-content {
    padding: 12px;
    display: flex;
    flex-direction: column-reverse;
  }
  .banner-ct .items .content-projects .project-card-content-text {
    width: 100%;
    padding-right: 0;
    padding-top: 12px;
  }
  .banner-ct .items .content-projects .project-card-content-text-item {
    padding-font-size: 12px;
  }
  .banner-ct .items .content-projects .project-card-content-image {
    width: 100%;
  }
}
@media (max-width: 576px) {
  .banner-ct .items .content-projects {
    grid-template-columns: repeat(1, 1fr);
    grid-column-gap: 0;
  }
  .banner-ct .items .content-projects .project-card-content {
    padding: 12px;
  }
  .banner-ct .items .content-projects .project-card-content-image {
    margin-bottom: 12px;
  }
  .banner-ct .items .content-projects .project-card-content-text-item {
    font-size: 12px;
  }
  .banner-ct .items .content-projects .project-card-content-text-item p:last-child {
    font-weight: 500;
  }
  .banner-ct .items .content-projects .project-card-header p {
    padding: 4px 10px;
  }
  .banner-ct .items .content-projects .project-card-header img {
    padding-top: 5px;
  }
}
.banner-ct .items .content-steps {
  padding: 40px 0;
  border-bottom: 1px solid var(--neutral-a-neutral-16-a, rgba(28, 31, 34, 0.16));
  border-top: 1px solid var(--neutral-a-neutral-16-a, rgba(28, 31, 34, 0.16));
}
.banner-ct .items .content-steps .row .col-lg-6:last-child {
  align-self: end;
}
.banner-ct .items .content-steps .step-content {
  padding: 0 0 0 40px;
}
.banner-ct .items .content-steps .step-content .step-text p {
  margin-bottom: 0;
}
.banner-ct .items .content-steps .step-content .step-number {
  margin-bottom: 16px;
  display: inline-block;
  color: var(--neutral-a-neutral-20-a, rgba(28, 31, 34, 0.2));
  border-bottom: 2px solid var(--neutral-a-neutral-16-a, rgba(28, 31, 34, 0.16));
  font-size: 80px;
  font-style: normal;
  font-weight: 200;
  line-height: normal;
}

@media (max-width: 992px) {
  .banner-ct .items .content-steps {
    padding: 32px 0;
  }
  .banner-ct .items .content-steps .row {
    flex-direction: column-reverse;
  }
  .banner-ct .items .content-steps .row .col-lg-6 .step-content {
    padding: 0;
  }
  .banner-ct .items .content-steps .row .col-lg-6 .step-content .step-number {
    font-size: 40px;
    font-weight: 500;
  }
}
.banner-ct .items .content-reviews .heading:first-child {
  border-top-right-radius: 16px;
  border-top-left-radius: 16px;
  border: none;
}
.banner-ct .items .content-reviews .heading {
  padding: 40px 40px 32px 40px;
  border-bottom: none;
}
.banner-ct .items .content-reviews .heading h2 {
  padding: 0;
  color: var(--neutral-a-neutral-90-a);
  font-size: 32px;
  font-style: normal;
  font-weight: 500;
  line-height: normal;
  text-transform: uppercase;
}
.banner-ct .items .content-reviews .review-video-block {
  padding: 0 40px;
}
.banner-ct .items .content-reviews .review-video-block iframe {
  margin-bottom: 56px;
  width: 100%;
  height: 584px;
  border-radius: 8px;
}

@media (max-width: 992px) {
  .banner-ct .items .content-reviews .heading {
    padding: 40px 32px 24px;
  }
  .banner-ct .items .content-reviews .heading h2 {
    font-size: 24px;
  }
}
@media (max-width: 576px) {
  .banner-ct .items .content-reviews .heading {
    padding: 24px 16px 16px 16px;
  }
  .banner-ct .items .content-reviews .heading h2 {
    font-size: 24px;
  }
  .banner-ct .items .content-reviews .review-video-block {
    padding: 0 16px;
  }
  .banner-ct .items .content-reviews .review-video-block iframe {
    margin-bottom: 40px;
    height: 160px;
  }
}
.banner-ct .contact-subtitle {
  color: var(--neutral-a-neutral-50-a, rgba(28, 31, 34, 0.5));
  font-size: 16px;
  margin-bottom: 24px;
  text-transform: none;
}
.banner-ct .items .bottom-text.contacts-bottom-text {
  margin-right: 40px;
}
.banner-ct .items .bottom-text.contacts-bottom-text p {
  background-color: #FFFFFF;
}
.banner-ct .items .content-map-block:last-child {
  padding-bottom: 0;
  border-bottom: none;
}
.banner-ct .items .content-map-block {
  border-bottom: 1px solid var(--neutral-a-neutral-16-a);
  padding-bottom: 80px;
}
.banner-ct .items .content-map-block h2 {
  color: var(--green-light);
  font-size: 44px;
  font-weight: 500;
  line-height: normal;
  text-transform: uppercase;
  margin-bottom: 24px;
}
.banner-ct .items .content-map-block-info {
  padding: 32px 24px 24px 24px;
  background: var(--white, #FFF);
  border-radius: 16px;
}
.banner-ct .items .content-map-block-info address p a.phone-text {
  color: var(--neutral-a-neutral-70-a);
}
.banner-ct .items .content-map-block-info address p a.mail-text {
  color: var(--neutral-a-neutral-70-a);
}
.banner-ct .items .content-map-block-info p {
  display: flex;
  align-items: center;
  margin-bottom: 16px;
  color: var(--neutral-a-neutral-70-a);
  font-size: 16px;
  font-weight: 400;
  line-height: 160%; /* 25.6px */
}
.banner-ct .items .content-map-block-info p img {
  padding-right: 10px;
}
.banner-ct .items .content-map-block-info p:last-of-type {
  margin-bottom: 0;
}
.banner-ct .items .content-map-block-info iframe {
  margin-top: 24px;
  border-radius: 16px;
  width: 100%;
  height: 500px;
}
.banner-ct .items .content-map-block:not(:first-child) h2 {
  margin-top: 40px;
}

@media (max-width: 992px) {
  .contacts-row {
    flex-direction: column;
    gap: 34px;
  }
  .banner-ct .contact-subtitle {
    margin-bottom: 0 !important;
  }
  .banner-ct .items .bottom-text.contacts-bottom-text {
    margin-right: 0;
    padding-top: 32px;
  }
  .banner-ct .items .bottom-text.contacts-bottom-text p {
    padding: 32px;
    font-size: 15px;
  }
  .banner-ct .items .content-map-block {
    padding-top: 40px;
    padding-bottom: 40px;
    border-top: 1px dotted var(--neutral-a-neutral-16-a, rgba(28, 31, 34, 0.16));
  }
  .banner-ct .items .content-map-block h2 {
    font-size: 32px;
    margin-bottom: 32px;
  }
  .banner-ct .items .content-map-block-info p {
    font-size: 15px;
  }
  .banner-ct .items .content-map-block:not(:first-child) h2 {
    margin-top: 0;
  }
  .banner-ct .items .sidebar-form {
    position: relative;
    top: 0;
    margin-top: 0;
    display: flex;
    gap: 24px;
    margin-bottom: 40px;
  }
  .banner-ct .items .sidebar-form .form {
    width: 100%;
    margin-top: 0;
    padding-top: 0;
  }
  .banner-ct .items .sidebar-form .form-title {
    font-size: 24px;
  }
  .banner-ct .items .sidebar-form .form-subtitle {
    font-size: 12px;
    margin-bottom: 24px;
  }
  .banner-ct .items .sidebar-form-image {
    width: 100%;
  }
  .banner-ct .items .sidebar-form-image img {
    height: 100%;
    object-fit: cover;
  }
}
@media (max-width: 576px) {
  .banner-ct .items .content-map-block h2 {
    font-size: 24px;
    margin-bottom: 24px;
  }
  .banner-ct .items .content-map-block-info {
    padding: 32px 16px;
  }
  .banner-ct .items .content-map-block-info p img {
    padding-right: 10px;
  }
  .banner-ct .items .content-map-block-info iframe {
    height: 370px;
  }
  .banner-ct .items .bottom-text p {
    padding: 24px;
  }
  .banner-ct .items .bottom-text p a {
    color: var(--primary-primary-100, #4A853E);
    font-size: 15px;
  }
  .banner-ct .items .sidebar-form {
    padding: 16px;
    gap: 16px;
    flex-direction: column;
  }
  .banner-ct .items .sidebar-form .form-title {
    font-size: 20px;
  }
}
.banner-ct .items .projects-content.content .content-portfolio .portfolio-card-slider {
  padding: 0 40px 56px;
  border-bottom: 1px solid var(--header-border-color);
}
.banner-ct .items .projects-content.content .content-portfolio .portfolio-card-description {
  padding: 0 40px;
  margin-bottom: 16px;
}
.banner-ct .items .content-portfolio.solution-single-portfolio .portfolio-card-slider {
  padding: 0 0 40px;
  border-bottom: 1px dotted var(--header-border-color);
}
.banner-ct .items .content-portfolio .portfolio-card:last-child .portfolio-card-slider {
  border-bottom: none;
}
.banner-ct .items .content-portfolio .portfolio-card:first-child .portfolio-card-header.heading {
  border-top-right-radius: 16px;
  border-top-left-radius: 16px;
}
.banner-ct .items .content-portfolio .portfolio-card-header {
  border: none;
  display: flex;
  align-items: center;
  padding: 40px;
  margin-bottom: 24px;
  position: relative;
}
.banner-ct .items .content-portfolio .portfolio-card-header h2, .banner-ct .items .content-portfolio .portfolio-card-header p {
  padding: 0;
  font-size: 32px;
}
.banner-ct .items .content-portfolio .portfolio-card-header:after {
  content: url("../icon/arrow-link.svg");
  position: absolute;
  width: 24px;
  height: 24px;
  top: 50%;
  right: 5%;
  transform: translateY(-50%);
}
.banner-ct .items .content-portfolio .portfolio-card-description {
  padding: 0;
  margin-bottom: 56px;
}
.banner-ct .items .content-portfolio .portfolio-card-description p {
  color: var(--neutral-a-neutral-70-a);
  font-size: 16px;
  font-weight: 400;
  line-height: 160%; /* 25.6px */
}
.banner-ct .items .content-portfolio .portfolio-card-slider {
  padding: 0 0 24px 0;
  border: none;
}
.banner-ct .items .content-portfolio .portfolio-card-slider .portfolio-swiper {
  overflow: hidden;
}
.banner-ct .items .content-portfolio .portfolio-card-slider .portfolio-swiper .swiper-wrapper {
  margin-bottom: 16px;
}
.banner-ct .items .content-portfolio .portfolio-card-slider .portfolio-swiper .swiper-wrapper .swiper-slide {
  height: 584px;
}
.banner-ct .items .content-portfolio .portfolio-card-slider .portfolio-swiper .swiper-wrapper .swiper-slide img {
  border-radius: 8px;
  width: 100%;
  object-fit: cover;
  height: 100%;
}
.banner-ct .items .content-portfolio .portfolio-card-slider .portfolio-swiper .portfolio-thumbs .swiper-wrapper .swiper-slide:first-child {
  padding-left: 0;
}
.banner-ct .items .content-portfolio .portfolio-card-slider .portfolio-swiper .portfolio-thumbs .swiper-wrapper .swiper-slide:last-child {
  padding-right: 0;
}
.banner-ct .items .content-portfolio .portfolio-card-slider .portfolio-swiper .portfolio-thumbs .swiper-wrapper .swiper-slide {
  filter: brightness(0.5);
  padding: 0 5px;
  height: 160px;
}
.banner-ct .items .content-portfolio .portfolio-card-slider .portfolio-swiper .portfolio-thumbs .swiper-wrapper .swiper-slide.swiper-slide-thumb-active {
  filter: none;
}
.banner-ct .items .content-portfolio .portfolio-card-slider .portfolio-swiper .portfolio-swiper-button-container {
  margin: 24px 0 0 0;
  display: flex;
  justify-content: space-between;
}
.banner-ct .items .content-portfolio .portfolio-card-slider .portfolio-swiper .portfolio-swiper-button-container .portfolio-swiper-button-prev {
  color: var(--green-light);
  cursor: pointer;
}
.banner-ct .items .content-portfolio .portfolio-card-slider .portfolio-swiper .portfolio-swiper-button-container .portfolio-swiper-button-prev img {
  rotate: -135deg;
}
.banner-ct .items .content-portfolio .portfolio-card-slider .portfolio-swiper .portfolio-swiper-button-container .portfolio-swiper-button-next {
  color: var(--green-light);
  cursor: pointer;
}
.banner-ct .items .content-portfolio .portfolio-card-slider .portfolio-swiper .portfolio-swiper-button-container .portfolio-swiper-button-next img {
  rotate: 45deg;
}
.banner-ct .items .content-portfolio .portfolio-card-slider .portfolio-swiper .portfolio-swiper-button-container .portfolio-swiper-scrollbar {
  display: none;
}
.banner-ct .items .content-portfolio .portfolio-card-slider .portfolio-swiper .portfolio-swiper-button-container .portfolio-swiper-pagination {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 30%;
}
.banner-ct .items .content-portfolio .portfolio-card-slider .portfolio-swiper .portfolio-swiper-button-container .portfolio-swiper-pagination .swiper-pagination-bullet {
  border-radius: 50%;
  display: block;
  background-color: #e2e2e3;
  width: 8px;
  height: 8px;
}
.banner-ct .items .content-portfolio .portfolio-card-slider .portfolio-swiper .portfolio-swiper-button-container .portfolio-swiper-pagination .swiper-pagination-bullet.swiper-pagination-bullet-active {
  display: block;
  background-color: #bbbcbd;
  width: 12px;
  height: 12px;
}
.banner-ct .items .content-portfolio.solution-single-portfolio .portfolio-card-slider .portfolio-swiper .swiper-wrapper .swiper-slide {
  height: 420px;
}
.banner-ct .items .content-portfolio.solution-single-portfolio .portfolio-card-slider .portfolio-swiper .portfolio-thumbs .swiper-wrapper .swiper-slide {
  height: 100px;
}

@media (max-width: 992px) {
  .banner-ct .items .projects-single-content.content .content-portfolio .portfolio-card-description {
    margin-bottom: 40px;
  }
  .banner-ct .items .content-portfolio .portfolio-card-header {
    padding: 24px;
  }
  .banner-ct .items .content-portfolio .portfolio-card-header h2 {
    font-size: 24px;
  }
  .banner-ct .items .content-portfolio .portfolio-card-description {
    padding: 0 32px;
  }
  .banner-ct .items .content-portfolio .portfolio-card-description p {
    font-size: 15px;
  }
  .banner-ct .items .content-portfolio .portfolio-card-slider {
    padding: 0 32px 40px;
  }
  .banner-ct .items .content-portfolio .portfolio-card-slider .portfolio-swiper .swiper-wrapper .swiper-slide {
    height: 430px;
  }
  .banner-ct .items .content-portfolio .portfolio-card-slider .portfolio-swiper .portfolio-thumbs .swiper-wrapper .swiper-slide {
    height: 120px;
  }
}
@media (max-width: 576px) {
  .banner-ct .items .content-portfolio .portfolio-card-header {
    padding: 16px 0 16px 16px;
  }
  .banner-ct .items .content-portfolio .portfolio-card-header h2 {
    max-width: 80%;
    font-size: 20px;
  }
  .banner-ct .items .content-portfolio .portfolio-card-header img {
    width: 24px;
    height: 24px;
    margin-left: 50px;
  }
  .banner-ct .items .content-portfolio .portfolio-card-description {
    padding: 0 16px !important;
  }
  .banner-ct .items .content-portfolio .portfolio-card-slider {
    padding: 0 16px 40px !important;
  }
  .banner-ct .items .content-portfolio .portfolio-card-slider .portfolio-swiper .swiper-wrapper {
    margin-bottom: 4px;
  }
  .banner-ct .items .content-portfolio .portfolio-card-slider .portfolio-swiper .swiper-wrapper .swiper-slide {
    height: 158px;
  }
  .banner-ct .items .content-portfolio .portfolio-card-slider .portfolio-swiper .portfolio-thumbs .swiper-wrapper .swiper-slide {
    padding: 0 2px;
    height: 60px;
  }
  .banner-ct .items .content-portfolio .portfolio-card-slider .portfolio-swiper .portfolio-swiper-button-container .portfolio-swiper-button-prev span:last-child {
    display: none;
  }
  .banner-ct .items .content-portfolio .portfolio-card-slider .portfolio-swiper .portfolio-swiper-button-container .portfolio-swiper-button-next span:first-child {
    display: none;
  }
  .banner-ct .items .content-portfolio .portfolio-card-slider .portfolio-swiper .portfolio-swiper-button-container .portfolio-swiper-pagination {
    width: 80%;
  }
}
.banner-ct .items .content-title {
  margin-bottom: 16px;
  color: var(--neutral-a-neutral-90-a);
  font-size: 32px;
  font-weight: 500;
  line-height: normal;
  text-transform: uppercase;
}
.banner-ct .items .content-title.content-subtitle {
  margin-top: 40px;
  font-size: 22px;
}
.banner-ct .items .content-title.content-margined-title {
  margin-top: 40px;
}
.banner-ct .items .content-paragraph {
  margin-bottom: 16px;
  color: var(--neutral-a-neutral-90-a);
  font-size: 16px;
  font-style: normal;
  font-weight: 400;
  line-height: 160%; /* 25.6px */
}
.banner-ct .items .content-paragraph a {
  color: var(--green-light);
}
.banner-ct .items .content-paragraph span {
  margin: 8px 0;
  display: block;
  color: var(--neutral-a-neutral-70-a);
  font-weight: 600;
}
.banner-ct .items .content-paragraph.paragraph-strong {
  margin-top: 16px;
  margin-bottom: 0;
  color: var(--neutral-a-neutral-70-a);
  font-weight: 600;
}
.banner-ct .items .content-list-title {
  margin: 40px 0 20px;
  margin-bottom: 16px;
  color: var(--neutral-a-neutral-90-a);
  font-size: 16px;
  font-style: normal;
  font-weight: 400;
  line-height: 160%; /* 25.6px */
}
.banner-ct .items .content-list {
  margin-bottom: 16px;
  color: var(--neutral-a-neutral-90-a);
  font-size: 16px;
  font-style: normal;
  font-weight: 400;
  line-height: 160%; /* 25.6px */
  margin-bottom: 16px;
  padding-left: 10px;
  margin-left: 12px;
}
.banner-ct .items .content-list li::marker {
  content: "⬥  ";
  font-size: 18px;
}
.banner-ct .items .content-list-item {
  margin-bottom: 8px;
}
.banner-ct .items .content-list-item a {
  color: var(--green-light);
}
.banner-ct .items .content-image {
  margin-top: 8px;
  object-fit: cover;
  border-radius: 12px;
  width: 100%;
  height: 584px;
}

@media (max-width: 992px) {
  .banner-ct .items .content-title {
    font-size: 24px;
  }
  .banner-ct .items .content-list {
    font-size: 15px;
  }
  .banner-ct .items .content-list-item {
    margin-bottom: 0;
  }
  .banner-ct .items .content-list-item:first-child li {
    padding-top: 0;
  }
  .banner-ct .items .content-list li {
    padding-top: 12px;
    padding-left: 10px;
  }
  .banner-ct .items .content-paragraph {
    font-size: 15px;
  }
  .banner-ct .items .content-image {
    height: 400px;
  }
}
@media (max-width: 576px) {
  .banner-ct .items .content-title {
    font-size: 20px;
  }
  .banner-ct .items .content-title.content-subtitle {
    font-size: 18px;
  }
  .banner-ct .items .content-image {
    height: 158px;
  }
}
.banner-ct .items .content-links {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  grid-column-gap: 40px;
  grid-row-gap: 16px;
  margin-top: 40px;
}
.banner-ct .items .content-links-item {
  display: flex;
  justify-content: space-between;
  align-items: center;
  border-bottom: 1px dotted var(--header-border-color);
}
.banner-ct .items .content-links-item h2 {
  padding-bottom: 8px;
}
.banner-ct .items .content-links-item h2 a {
  color: var(--green-light);
  font-size: 16px;
  font-style: normal;
  font-weight: 500;
  line-height: normal;
  text-transform: uppercase;
}
.banner-ct .items .content-link-btn {
  margin-top: 30px;
  text-align: center;
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
}
.banner-ct .items .content-link-btn p, .banner-ct .items .content-link-btn span {
  margin-top: 8px;
  color: var(--neutral-a-neutral-50-a, rgba(28, 31, 34, 0.5));
  text-align: center;
  font-size: 13px;
  font-style: normal;
  font-weight: 400;
  line-height: normal;
}
.banner-ct .items .content-link-btn button {
  color: var(--neutral-a-neutral-90-a);
  padding: 16px 20px 16px 24px;
  border-radius: 16px;
  border: 1px solid var(--neutral-a-neutral-90-a);
  display: flex;
  align-items: center;
  transition: 0.5s;
}
.banner-ct .items .content-link-btn button:after {
  width: 24px;
  height: 24px;
  margin-left: 8px;
  transition: 0.5s;
  margin-right: 8px;
  content: url("../icon/link_arrows/link_arrow_dark.svg");
}
.banner-ct .items .content-link-btn button:hover {
  border-color: var(--green-light, #4A853E);
  background: var(--green-light, #4A853E);
  color: #ffffff;
}
.banner-ct .items .content-link-btn button:hover span {
  color: #ffffff;
}
.banner-ct .items .content-link-btn button:hover:after {
  content: url("../icon/link_arrows/link_arrow.svg");
}

@media (max-width: 992px) {
  .banner-ct .items .content-links {
    grid-template-columns: repeat(2, 1fr);
    grid-gap: 24px;
    margin-top: 24px;
  }
  .banner-ct .items .content-link-btn p {
    font-size: 12px;
  }
}
@media (max-width: 576px) {
  .banner-ct .items .content-links {
    grid-template-columns: repeat(1, 1fr);
    grid-gap: 16px;
  }
}
.banner-ct .items .content .advantages-two-card {
  border-top: 1px solid var(--header-border-color);
}
.banner-ct .items .content .advantages-two-card .row {
  align-items: center;
  padding: 40px 0;
}
.banner-ct .items .content .advantages-two-card .row .advantages-two-card-title {
  font-size: 22px;
  font-style: normal;
  font-weight: 400;
  line-height: normal;
  text-transform: uppercase;
  padding-right: 40px;
}
.banner-ct .items .content .advantages-two-card .row .advantages-two-card-number {
  color: var(--green-primary);
  font-size: 40px;
  font-style: normal;
  font-weight: 100;
  line-height: normal;
}
.banner-ct .items .content .advantages-two-card .row .advantages-two-card-text {
  margin-bottom: 16px;
  color: var(--neutral-a-neutral-90-a);
  font-size: 16px;
  font-style: normal;
  font-weight: 400;
  line-height: 160%; /* 25.6px */
}
.banner-ct .items .content .advantages-two-card .row .advantages-two-card-text a {
  color: var(--green-light);
}

.banner-ct .items .content-builds {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  grid-gap: 16px;
}
.banner-ct .items .content-builds .card {
  border-radius: 12px;
  background-color: var(--card-bg);
  padding: 8px;
  cursor: pointer;
}
.banner-ct .items .content-builds .card-content .card-image {
  border-radius: 8px;
  overflow: hidden;
}
.banner-ct .items .content-builds .card-content .card-image img {
  object-fit: cover;
  width: 100%;
  height: 200px;
}
.banner-ct .items .content-builds .card-content .card-title {
  display: flex;
  justify-content: space-between;
  align-items: flex-start;
  padding: 12px 0;
}
.banner-ct .items .content-builds .card-content .card-title p {
  text-transform: uppercase;
  color: var(--green-primary);
  font-weight: 500;
}
.banner-ct .items .content-builds .card:hover {
  background-color: var(--green-primary-30);
}

@media (max-width: 992px) {
  .banner-ct .items .content-builds {
    grid-template-columns: repeat(2, 1fr);
  }
}
@media (max-width: 576px) {
  .banner-ct .items .content-builds {
    grid-template-columns: repeat(1, 1fr);
  }
}
#modal {
  display: none;
  position: fixed;
  z-index: 1;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
  overflow: auto;
  background-color: rgba(0, 0, 0, 0.6);
}

/* Стилизация кнопки закрытия модального окна */
.close-modal {
  position: absolute;
  top: 15px;
  right: 15px;
  font-size: 30px;
  color: white;
  cursor: pointer;
}

/* Стилизация увеличенного изображения */
#modal-image {
  display: block;
  margin: 0 auto;
  max-width: 90%;
  max-height: 90%;
  position: relative;
  top: 53%;
  transform: translateY(-50%);
  border-radius: 24px;
  background: white;
}

.projects-visual-block {
  padding: 0 24px 24px;
}

.banner-ct .items .content .faq-visual-block, .faq .items .content .faq-visual-block {
  padding: 64px 0;
}
.banner-ct .items .content-visual-block .heading, .banner-ct .items .content .faq-visual-block .heading, .faq .items .content-visual-block .heading, .faq .items .content .faq-visual-block .heading {
  margin-bottom: 40px;
}
.banner-ct .items .content-visual-block .heading h2, .banner-ct .items .content .faq-visual-block .heading h2, .faq .items .content-visual-block .heading h2, .faq .items .content .faq-visual-block .heading h2 {
  padding: 80px 24px;
  color: var(--green-primary);
  font-size: 44px;
  font-style: normal;
  font-weight: 500;
  line-height: normal;
  text-transform: uppercase;
}
.banner-ct .items .content-visual-block table, .banner-ct .items .content .faq-visual-block table, .faq .items .content-visual-block table, .faq .items .content .faq-visual-block table {
  width: 100%;
  border-collapse: collapse;
  margin: 24px 0;
  border-radius: 12px;
  overflow: hidden;
  box-shadow: 0 2px 8px rgba(0, 0, 0, 0.1);
}
.banner-ct .items .content-visual-block table thead, .banner-ct .items .content .faq-visual-block table thead, .faq .items .content-visual-block table thead, .faq .items .content .faq-visual-block table thead {
  background-color: var(--green-primary);
}
.banner-ct .items .content-visual-block table thead th, .banner-ct .items .content .faq-visual-block table thead th, .faq .items .content-visual-block table thead th, .faq .items .content .faq-visual-block table thead th {
  padding: 16px 24px;
  color: white;
  font-size: 16px;
  font-weight: 600;
  text-align: left;
  text-transform: uppercase;
  letter-spacing: 0.5px;
}
.banner-ct .items .content-visual-block table tbody tr, .banner-ct .items .content .faq-visual-block table tbody tr, .faq .items .content-visual-block table tbody tr, .faq .items .content .faq-visual-block table tbody tr {
  border-bottom: 1px solid rgba(0, 0, 0, 0.05);
  transition: background-color 0.2s ease;
}
.banner-ct .items .content-visual-block table tbody tr:hover, .banner-ct .items .content .faq-visual-block table tbody tr:hover, .faq .items .content-visual-block table tbody tr:hover, .faq .items .content .faq-visual-block table tbody tr:hover {
  background-color: rgba(0, 0, 0, 0.02);
  cursor: pointer;
}
.banner-ct .items .content-visual-block table tbody tr:last-child, .banner-ct .items .content .faq-visual-block table tbody tr:last-child, .faq .items .content-visual-block table tbody tr:last-child, .faq .items .content .faq-visual-block table tbody tr:last-child {
  border-bottom: none;
}
.banner-ct .items .content-visual-block table tbody tr td, .banner-ct .items .content .faq-visual-block table tbody tr td, .faq .items .content-visual-block table tbody tr td, .faq .items .content .faq-visual-block table tbody tr td {
  padding: 16px 24px;
  color: var(--neutral-a-neutral-70-a);
  font-size: 15px;
  line-height: 1.5;
  vertical-align: top;
}
.banner-ct .items .content-visual-block table tbody tr td:first-child, .banner-ct .items .content .faq-visual-block table tbody tr td:first-child, .faq .items .content-visual-block table tbody tr td:first-child, .faq .items .content .faq-visual-block table tbody tr td:first-child {
  font-weight: 500;
  color: var(--neutral-a-neutral-90-a);
}
.banner-ct .items .content-visual-block table tbody tr td:last-child, .banner-ct .items .content .faq-visual-block table tbody tr td:last-child, .faq .items .content-visual-block table tbody tr td:last-child, .faq .items .content .faq-visual-block table tbody tr td:last-child {
  padding-left: 24px;
}
.banner-ct .items .content-visual-block h3, .banner-ct .items .content .faq-visual-block h3, .faq .items .content-visual-block h3, .faq .items .content .faq-visual-block h3 {
  margin-bottom: 16px;
  color: var(--neutral-a-neutral-90-a, rgba(28, 31, 34, 0.9));
  font-size: 22px;
  font-style: normal;
  font-weight: 500;
  line-height: 140%; /* 30.8px */
  text-transform: uppercase;
}
.banner-ct .items .content-visual-block img, .banner-ct .items .content .faq-visual-block img, .faq .items .content-visual-block img, .faq .items .content .faq-visual-block img {
  margin-top: 8px;
  border-radius: 12px;
  width: 100%;
  height: 584px;
  object-fit: cover;
}
.banner-ct .items .content-visual-block h2, .banner-ct .items .content .faq-visual-block h2, .faq .items .content-visual-block h2, .faq .items .content .faq-visual-block h2 {
  margin-bottom: 16px;
  color: var(--neutral-a-neutral-90-a);
  font-size: 32px;
  font-weight: 500;
  line-height: normal;
  text-transform: uppercase;
}
.banner-ct .items .content-visual-block strong, .banner-ct .items .content-visual-block b, .banner-ct .items .content .faq-visual-block strong, .banner-ct .items .content .faq-visual-block b, .faq .items .content-visual-block strong, .faq .items .content-visual-block b, .faq .items .content .faq-visual-block strong, .faq .items .content .faq-visual-block b {
  margin-top: 16px;
  margin-bottom: 0;
  color: var(--neutral-a-neutral-70-a);
  font-weight: 600;
}
.banner-ct .items .content-visual-block h4, .banner-ct .items .content .faq-visual-block h4, .faq .items .content-visual-block h4, .faq .items .content .faq-visual-block h4 {
  margin-bottom: 16px;
  color: var(--neutral-a-neutral-90-a);
  font-size: 16px;
  font-style: normal;
  font-weight: 400;
  line-height: 160%; /* 25.6px */
  font-size: 24px;
}
.banner-ct .items .content-visual-block p, .banner-ct .items .content .faq-visual-block p, .faq .items .content-visual-block p, .faq .items .content .faq-visual-block p {
  margin-bottom: 16px;
  color: var(--neutral-a-neutral-90-a);
  font-size: 16px;
  font-style: normal;
  font-weight: 400;
  line-height: 160%; /* 25.6px */
}
.banner-ct .items .content-visual-block p a, .banner-ct .items .content .faq-visual-block p a, .faq .items .content-visual-block p a, .faq .items .content .faq-visual-block p a {
  color: var(--green-light);
}
.banner-ct .items .content-visual-block p strong, .banner-ct .items .content-visual-block p b, .banner-ct .items .content .faq-visual-block p strong, .banner-ct .items .content .faq-visual-block p b, .faq .items .content-visual-block p strong, .faq .items .content-visual-block p b, .faq .items .content .faq-visual-block p strong, .faq .items .content .faq-visual-block p b {
  color: var(--neutral-a-neutral-70-a);
  font-weight: 600;
}
.banner-ct .items .content-visual-block iframe, .banner-ct .items .content .faq-visual-block iframe, .faq .items .content-visual-block iframe, .faq .items .content .faq-visual-block iframe {
  width: 100%;
  height: 584px;
  border-radius: 8px;
}
.banner-ct .items .content-visual-block .gallery, .banner-ct .items .content .faq-visual-block .gallery, .faq .items .content-visual-block .gallery, .faq .items .content .faq-visual-block .gallery {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 24px;
  margin: 24px 0;
}
.banner-ct .items .content-visual-block .gallery .gallery-item, .banner-ct .items .content .faq-visual-block .gallery .gallery-item, .faq .items .content-visual-block .gallery .gallery-item, .faq .items .content .faq-visual-block .gallery .gallery-item {
  margin: 0;
}
.banner-ct .items .content-visual-block .gallery .gallery-item .gallery-icon, .banner-ct .items .content .faq-visual-block .gallery .gallery-item .gallery-icon, .faq .items .content-visual-block .gallery .gallery-item .gallery-icon, .faq .items .content .faq-visual-block .gallery .gallery-item .gallery-icon {
  width: 100%;
  height: auto;
}
.banner-ct .items .content-visual-block .gallery .gallery-item .gallery-icon img, .banner-ct .items .content .faq-visual-block .gallery .gallery-item .gallery-icon img, .faq .items .content-visual-block .gallery .gallery-item .gallery-icon img, .faq .items .content .faq-visual-block .gallery .gallery-item .gallery-icon img {
  width: 100%;
  height: 300px;
  object-fit: cover;
  border-radius: 12px;
  transition: transform 0.3s ease, box-shadow 0.3s ease;
}
.banner-ct .items .content-visual-block .gallery .gallery-item .gallery-icon img:hover, .banner-ct .items .content .faq-visual-block .gallery .gallery-item .gallery-icon img:hover, .faq .items .content-visual-block .gallery .gallery-item .gallery-icon img:hover, .faq .items .content .faq-visual-block .gallery .gallery-item .gallery-icon img:hover {
  transform: scale(1.02);
  box-shadow: 0 8px 24px rgba(0, 0, 0, 0.15);
}
.banner-ct .items .content-visual-block .gallery .gallery-item .gallery-icon a, .banner-ct .items .content .faq-visual-block .gallery .gallery-item .gallery-icon a, .faq .items .content-visual-block .gallery .gallery-item .gallery-icon a, .faq .items .content .faq-visual-block .gallery .gallery-item .gallery-icon a {
  display: block;
  width: 100%;
  height: 100%;
}
.banner-ct .items .content-visual-block .gallery .gallery-item .gallery-icon a img, .banner-ct .items .content .faq-visual-block .gallery .gallery-item .gallery-icon a img, .faq .items .content-visual-block .gallery .gallery-item .gallery-icon a img, .faq .items .content .faq-visual-block .gallery .gallery-item .gallery-icon a img {
  width: 100%;
  height: 300px;
  object-fit: cover;
  border-radius: 12px;
  transition: transform 0.3s ease, box-shadow 0.3s ease;
}
.banner-ct .items .content-visual-block .gallery .gallery-item .gallery-icon a img:hover, .banner-ct .items .content .faq-visual-block .gallery .gallery-item .gallery-icon a img:hover, .faq .items .content-visual-block .gallery .gallery-item .gallery-icon a img:hover, .faq .items .content .faq-visual-block .gallery .gallery-item .gallery-icon a img:hover {
  transform: scale(1.02);
  box-shadow: 0 8px 24px rgba(0, 0, 0, 0.15);
}
.banner-ct .items .content-visual-block ol, .banner-ct .items .content .faq-visual-block ol, .faq .items .content-visual-block ol, .faq .items .content .faq-visual-block ol {
  margin-bottom: 16px;
  color: var(--neutral-a-neutral-90-a);
  font-size: 16px;
  font-style: normal;
  font-weight: 400;
  line-height: 160%; /* 25.6px */
  margin-bottom: 16px;
  margin-left: 10px;
}
.banner-ct .items .content-visual-block ol li, .banner-ct .items .content .faq-visual-block ol li, .faq .items .content-visual-block ol li, .faq .items .content .faq-visual-block ol li {
  color: var(--neutral-a-neutral-70-a);
  margin-bottom: 8px;
  position: relative;
  padding-left: 16px;
  margin-left: 12px;
}
.banner-ct .items .content-visual-block ol li strong, .banner-ct .items .content-visual-block ol li b, .banner-ct .items .content .faq-visual-block ol li strong, .banner-ct .items .content .faq-visual-block ol li b, .faq .items .content-visual-block ol li strong, .faq .items .content-visual-block ol li b, .faq .items .content .faq-visual-block ol li strong, .faq .items .content .faq-visual-block ol li b {
  color: var(--neutral-a-neutral-70-a);
  font-weight: 600;
}
.banner-ct .items .content-visual-block ol li li::marker, .banner-ct .items .content .faq-visual-block ol li li::marker, .faq .items .content-visual-block ol li li::marker, .faq .items .content .faq-visual-block ol li li::marker {
  content: "⬥  ";
  font-size: 18px;
}
.banner-ct .items .content-visual-block ol li a, .banner-ct .items .content .faq-visual-block ol li a, .faq .items .content-visual-block ol li a, .faq .items .content .faq-visual-block ol li a {
  color: var(--green-light);
}
.banner-ct .items .content-visual-block ul, .banner-ct .items .content .faq-visual-block ul, .faq .items .content-visual-block ul, .faq .items .content .faq-visual-block ul {
  margin-bottom: 16px;
  color: var(--neutral-a-neutral-90-a);
  font-size: 16px;
  font-style: normal;
  font-weight: 400;
  line-height: 160%; /* 25.6px */
  margin-bottom: 16px;
}
.banner-ct .items .content-visual-block ul li, .banner-ct .items .content .faq-visual-block ul li, .faq .items .content-visual-block ul li, .faq .items .content .faq-visual-block ul li {
  color: var(--neutral-a-neutral-70-a);
  margin-bottom: 8px;
  position: relative;
  padding-left: 10px;
  margin-left: 12px;
}
.banner-ct .items .content-visual-block ul li strong, .banner-ct .items .content-visual-block ul li b, .banner-ct .items .content .faq-visual-block ul li strong, .banner-ct .items .content .faq-visual-block ul li b, .faq .items .content-visual-block ul li strong, .faq .items .content-visual-block ul li b, .faq .items .content .faq-visual-block ul li strong, .faq .items .content .faq-visual-block ul li b {
  color: var(--neutral-a-neutral-70-a);
  font-weight: 600;
}
.banner-ct .items .content-visual-block ul li li::marker, .banner-ct .items .content .faq-visual-block ul li li::marker, .faq .items .content-visual-block ul li li::marker, .faq .items .content .faq-visual-block ul li li::marker {
  content: "⬥  ";
  font-size: 18px;
}
.banner-ct .items .content-visual-block ul li a, .banner-ct .items .content .faq-visual-block ul li a, .faq .items .content-visual-block ul li a, .faq .items .content .faq-visual-block ul li a {
  color: var(--green-light);
}
.banner-ct .items .content-visual-block ul li:after, .banner-ct .items .content .faq-visual-block ul li:after, .faq .items .content-visual-block ul li:after, .faq .items .content .faq-visual-block ul li:after {
  content: url("../icon/list-description.svg");
  position: absolute;
  font-size: 18px;
  top: 0%;
  left: -10px;
}

@media (max-width: 992px) {
  .banner-ct .items .content-visual-block .heading h2 {
    padding: 64px 32px;
    font-size: 32px;
  }
  .banner-ct .items .content-visual-block h3 {
    font-size: 18px;
  }
  .banner-ct .items .content-visual-block iframe {
    height: 406px;
  }
  .banner-ct .items .content-visual-block img {
    height: 406px;
  }
  .banner-ct .items .content-visual-block h2 {
    font-size: 24px;
  }
  .banner-ct .items .content-visual-block p {
    font-size: 15px;
  }
  .banner-ct .items .content-visual-block table {
    display: block;
    width: 100%;
    margin: 20px 0;
    border: none;
    border-radius: 0;
    box-shadow: none;
    background: none;
  }
  .banner-ct .items .content-visual-block table thead {
    display: none;
  }
  .banner-ct .items .content-visual-block table tbody {
    display: block;
  }
  .banner-ct .items .content-visual-block table tbody tr {
    display: block;
    margin-bottom: 20px;
    padding: 20px;
    background: white;
    border-radius: 12px;
    box-shadow: 0 2px 12px rgba(0, 0, 0, 0.08);
    border: 1px solid rgba(0, 0, 0, 0.05);
  }
  .banner-ct .items .content-visual-block table tbody tr:last-child {
    margin-bottom: 0;
  }
  .banner-ct .items .content-visual-block table tbody tr td {
    display: block;
    padding: 10px 0;
    font-size: 15px;
    line-height: 1.5;
    border: none;
    text-align: left;
  }
  .banner-ct .items .content-visual-block table tbody tr td:first-child {
    font-weight: 600;
    color: var(--green-primary);
    font-size: 18px;
    margin-bottom: 12px;
    padding-bottom: 12px;
    border-bottom: 1px solid rgba(0, 0, 0, 0.1);
  }
  .banner-ct .items .content-visual-block table tbody tr td:not(:first-child) {
    color: var(--neutral-a-neutral-70-a);
    font-size: 15px;
  }
  .banner-ct .items .content-visual-block table tbody tr td:last-child {
    padding-left: 0;
  }
  .banner-ct .items .content-visual-block ul {
    font-size: 15px;
  }
  .banner-ct .items .content-visual-block ul li::marker {
    font-size: 16px;
  }
  .banner-ct .items .content-visual-block .gallery {
    gap: 16px;
    margin: 20px 0;
  }
  .banner-ct .items .content-visual-block .gallery .gallery-item .gallery-icon a img {
    height: 250px;
  }
}
@media (max-width: 576px) {
  .banner-ct .items .content-visual-block .heading h2 {
    padding: 56px 24px;
    font-size: 24px;
  }
  .banner-ct .items .content-visual-block .heading h3 {
    padding: 56px 24px;
    font-size: 24px;
  }
  .banner-ct .items .content-visual-block p {
    margin-bottom: 8px;
  }
  .banner-ct .items .content-visual-block iframe {
    height: 158px;
  }
  .banner-ct .items .content-visual-block img {
    height: 158px;
  }
  .banner-ct .items .content-visual-block h2 {
    font-size: 20px;
  }
  .banner-ct .items .content-visual-block table {
    display: block;
    width: 100%;
    margin: 16px 0;
    border: none;
    border-radius: 0;
    box-shadow: none;
    background: none;
  }
  .banner-ct .items .content-visual-block table thead {
    display: none;
  }
  .banner-ct .items .content-visual-block table tbody {
    display: block;
  }
  .banner-ct .items .content-visual-block table tbody tr {
    display: block;
    margin-bottom: 16px;
    padding: 16px;
    background: white;
    border-radius: 12px;
    box-shadow: 0 2px 8px rgba(0, 0, 0, 0.1);
    border: 1px solid rgba(0, 0, 0, 0.05);
  }
  .banner-ct .items .content-visual-block table tbody tr:last-child {
    margin-bottom: 0;
  }
  .banner-ct .items .content-visual-block table tbody tr td {
    display: block;
    padding: 8px 0;
    font-size: 14px;
    line-height: 1.5;
    border: none;
    text-align: left;
  }
  .banner-ct .items .content-visual-block table tbody tr td:first-child {
    font-weight: 600;
    color: var(--green-primary);
    font-size: 16px;
    margin-bottom: 8px;
    padding-bottom: 8px;
    border-bottom: 1px solid rgba(0, 0, 0, 0.1);
  }
  .banner-ct .items .content-visual-block table tbody tr td:not(:first-child) {
    color: var(--neutral-a-neutral-70-a);
    font-size: 14px;
  }
  .banner-ct .items .content-visual-block table tbody tr td:last-child {
    padding-left: 0;
  }
  .banner-ct .items .content-visual-block .gallery {
    grid-template-columns: 1fr;
    gap: 16px;
    margin: 16px 0;
  }
  .banner-ct .items .content-visual-block .gallery .gallery-item .gallery-icon a img {
    height: 200px;
    border-radius: 8px;
  }
}
div.hint {
  border-radius: 16px;
  background: var(--card-bg);
  padding: 12px;
  margin-bottom: 16px;
  border-left: 2px solid #4A853E;
}
div.hint p {
  margin: 0 !important;
}

div.hint-grey {
  border-radius: 16px;
  background: var(--card-bg);
  padding: 12px;
  margin-bottom: 16px;
}
div.hint-grey p {
  margin: 0 !important;
}

.articles-projects .projects__item {
  height: 300px;
}

.toc-wrapper {
  margin: 20px 0;
  padding: 15px;
  background: var(--neutral-a-neutral-4-a);
  border-radius: 10px;
  border: 1px solid #ddd;
}

.toc-toggle {
  font-weight: 600;
  cursor: pointer;
  margin-bottom: 10px;
  color: var(--neutral-a-neutral-90-a);
}

.article-toc {
  display: none;
}

.article-toc.show {
  display: block;
}

.article-toc ul {
  margin: 0;
  padding-left: 20px;
}

.article-toc li {
  margin: 4px 0;
  cursor: pointer;
}

.article-toc li a {
  color: var(--green-light);
  text-decoration: none;
}

.toc-level-h3 {
  margin-left: 10px;
}

.toc-level-h4 {
  margin-left: 20px;
}

.toc-level-h5 {
  margin-left: 30px;
}

.toc-level-h6 {
  margin-left: 40px;
}

.banner-ct .items .content-article {
  display: flex;
  flex-direction: column;
  border-bottom: 1px solid var(--neutral-a-neutral-16-a, rgba(28, 31, 34, 0.16));
  padding: 24px 40px 40px;
}
.banner-ct .items .content-article .article-date {
  color: var(--neutral-a-neutral-50-a, rgba(28, 31, 34, 0.5));
  font-size: 13px;
  margin-bottom: 8px;
}
.banner-ct .items .content-article .article-block {
  display: flex;
  gap: 40px;
}
.banner-ct .items .content-article .article-block-image {
  width: 422px;
  height: 218px;
}
.banner-ct .items .content-article .article-block-image img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  border-radius: 8px;
}
.banner-ct .items .content-article .article-block-text {
  width: 100%;
}
.banner-ct .items .content-article .article-block-text-paragraph {
  color: var(--neutral-a-neutral-70-a, rgba(28, 31, 34, 0.7));
  font-size: 16px;
  font-weight: 400;
  line-height: 160%; /* 25.6px */
}
.banner-ct .items .content-article .article-block-text-title {
  color: var(--neutral-a-neutral-90-a, rgba(28, 31, 34, 0.9));
  font-size: 32px;
  font-weight: 500;
  text-transform: uppercase;
}

@media (max-width: 992px) {
  .banner-ct .items .content-article {
    padding: 16px 32px 32px;
  }
  .banner-ct .items .content-article .article-date {
    font-size: 12px;
  }
  .banner-ct .items .content-article .article-block {
    gap: 24px;
  }
  .banner-ct .items .content-article .article-block-image {
    width: 370px;
    height: 160px;
  }
  .banner-ct .items .content-article .article-block-text-paragraph {
    font-size: 15px;
  }
  .banner-ct .items .content-article .article-block-text-title {
    font-size: 24px;
  }
}
@media (max-width: 576px) {
  .banner-ct .items .content-article {
    padding: 32px 16px 40px;
  }
  .banner-ct .items .content-article .article-block {
    display: flex;
    flex-direction: column;
    gap: 16px;
  }
  .banner-ct .items .content-article .article-block-image {
    width: 100%;
  }
  .banner-ct .items .content-article .article-block-text-title {
    font-size: 20px;
    margin-bottom: 16px;
  }
}
.author-block-wrapper {
  margin: 48px 0;
}
.author-block-wrapper .author-desc p {
  word-wrap: break-word;
  width: 385px;
  color: var(--neutral-a-neutral-90-a);
  margin-top: 13px;
}
.author-block-wrapper .author-block {
  display: flex;
  gap: 13px;
}
.author-block-wrapper .author-block_info {
  display: flex;
  flex-direction: column;
  justify-content: space-around;
}
.author-block-wrapper .author-block_info-general {
  color: var(--neutral-a-neutral-90-a);
}
.author-block-wrapper .author-block_info-general a {
  color: var(--neutral-a-neutral-90-a);
  text-decoration: none;
}
.author-block-wrapper .author-block_info-secondary {
  color: #868686;
}

.banner-ct .items {
  padding: 16px 0 0 0;
}
.banner-ct .items .content-without-bg {
  margin-right: 40px;
  background: none !important;
  margin-top: 0 !important;
  padding: 0 !important;
}
.banner-ct .items .content.content-sideblock {
  margin-left: 24px;
  padding: 24px;
}
.banner-ct .items .content.content-sideblock.sidebar-form {
  margin-top: 24px;
}
.banner-ct .items .content.content-sideblock .sideblock-element {
  display: flex;
  justify-content: space-between;
  padding: 8px 0;
}
.banner-ct .items .content.content-sideblock .sideblock-element:not(:last-child) {
  border-bottom: 1px dotted var(--neutral-a-neutral-16-a);
}
.banner-ct .items .content.content-without-padding {
  padding: 0;
}
.banner-ct .items .content-block-about {
  height: max-content;
  padding: 15px 40px;
  background-color: #ffffff;
  border-radius: 16px;
}
.banner-ct .items .content-block-about .solutions-characteristics, .banner-ct .items .content-block-about .solutions-plan {
  border-bottom: 1px dotted var(--header-border-color);
  padding-bottom: 40px;
}
.banner-ct .items .content {
  height: max-content;
  padding: 40px 40px;
  background-color: #ffffff;
  border-radius: 16px;
}
.banner-ct .items .content .solutions-characteristics, .banner-ct .items .content .solutions-plan {
  border-bottom: 1px dotted var(--header-border-color);
  padding-bottom: 40px;
}
.banner-ct .items .content-block {
  margin-top: 56px;
}

@media (max-width: 992px) {
  .sidebar {
    display: none;
  }
  .banner-ct .items {
    margin-top: 0;
  }
  .banner-ct .items .content {
    padding: 32px;
  }
  .banner-ct .items .content.content-without-bg {
    margin-right: 0;
  }
  .banner-ct .items .content.content-sideblock {
    margin-left: 0;
  }
}
@media (max-width: 576px) {
  .main-call-btn {
    display: none;
  }
  .banner-ct .items {
    padding: 16px 24px;
    margin-top: 0;
  }
  .banner-ct .items .content {
    padding: 16px;
  }
  .banner-ct .items .content-sideblock {
    padding: 8px 16px;
  }
  .banner-ct .items .content-sideblock .sideblock-element p {
    font-size: 12px;
  }
}
.instruction_visual_block {
  margin-bottom: 16px;
}

.animated {
  opacity: 0;
  animation-duration: 1s;
  animation-fill-mode: forwards;
}

.animated.slide-left.animated-div {
  animation-name: slideFromLeft;
  animation-delay: 0.2s;
}

.animated.slide-right.animated-div {
  animation-name: slideFromRight;
  animation-delay: 0.2s;
}

@keyframes slideFromLeft {
  from {
    transform: translateX(-100%);
    opacity: 0;
  }
  to {
    transform: translateX(0);
    opacity: 1;
  }
}
@keyframes slideFromRight {
  from {
    transform: translateX(100%);
    opacity: 0;
  }
  to {
    transform: translateX(0);
    opacity: 1;
  }
}
@keyframes bounceIn {
  0% {
    opacity: 0;
    transform: scale(0.3);
  }
  50% {
    opacity: 1;
    transform: scale(1.05);
  }
  70% {
    transform: scale(0.9);
  }
  100% {
    opacity: 1;
    transform: scale(1);
  }
}
@keyframes slideInFromBottom {
  0% {
    opacity: 0;
    transform: translateY(50px);
  }
  100% {
    opacity: 1;
    transform: translateY(0);
  }
}
@keyframes pulse {
  0% {
    transform: scale(1);
  }
  50% {
    transform: scale(1.05);
  }
  100% {
    transform: scale(1);
  }
}
@keyframes shimmer {
  0% {
    background-position: -200px 0;
  }
  100% {
    background-position: calc(200px + 100%) 0;
  }
}
.bounce-in {
  animation: bounceIn 0.6s ease-out;
}

.slide-in-bottom {
  animation: slideInFromBottom 0.5s ease-out;
}

.pulse {
  animation: pulse 2s infinite;
}

.shimmer {
  background: linear-gradient(90deg, transparent, rgba(255, 255, 255, 0.4), transparent);
  background-size: 200px 100%;
  animation: shimmer 1.5s infinite;
}

.hover-lift {
  transition: transform 0.3s cubic-bezier(0.4, 0, 0.2, 1);
}
.hover-lift:hover {
  transform: translateY(-4px);
}

.hover-scale {
  transition: transform 0.3s cubic-bezier(0.4, 0, 0.2, 1);
}
.hover-scale:hover {
  transform: scale(1.05);
}

@keyframes fadeInUp {
  from {
    opacity: 0;
    transform: translateY(30px);
  }
  to {
    opacity: 1;
    transform: translateY(0);
  }
}
@keyframes fadeInDown {
  from {
    opacity: 0;
    transform: translateY(-30px);
  }
  to {
    opacity: 1;
    transform: translateY(0);
  }
}
@keyframes fadeInLeft {
  from {
    opacity: 0;
    transform: translateX(-30px);
  }
  to {
    opacity: 1;
    transform: translateX(0);
  }
}
@keyframes fadeInRight {
  from {
    opacity: 0;
    transform: translateX(30px);
  }
  to {
    opacity: 1;
    transform: translateX(0);
  }
}
.fade-in-up {
  animation: fadeInUp 0.6s ease-out;
}

.fade-in-down {
  animation: fadeInDown 0.6s ease-out;
}

.fade-in-left {
  animation: fadeInLeft 0.6s ease-out;
}

.fade-in-right {
  animation: fadeInRight 0.6s ease-out;
}

@media (max-width: 576px) {
  .mobile-bounce {
    animation: bounceIn 0.4s ease-out;
  }
  .mobile-slide-up {
    animation: slideInFromBottom 0.3s ease-out;
  }
  .mobile-pulse {
    animation: pulse 1.5s infinite;
  }
}
.popup-form {
  display: flex;
  flex-direction: column;
  gap: 24px;
}
@media (max-width: 576px) {
  .popup-form {
    gap: 16px;
  }
}
.popup-form .form-header {
  display: flex;
  flex-direction: column;
  gap: 12px;
}
.popup-form .form-header .form-title {
  text-align: center;
  text-transform: uppercase;
  vertical-align: middle;
  font-family: "FixelDisplay", Serif;
  font-weight: 500;
  font-size: 32px;
  line-height: 100%;
  letter-spacing: 0;
  color: #4A853E;
}
@media (max-width: 576px) {
  .popup-form .form-header .form-title {
    font-size: 20px;
  }
}
.popup-form .form-header .form-subtitle {
  text-align: center;
  font-family: Arial, Serif;
  font-weight: 400;
  font-size: 14px;
  line-height: 20px;
  letter-spacing: -0.4px;
  color: #868686;
}
.popup-form .form-group {
  display: flex;
  gap: 8px;
}
.popup-form .form-group-element {
  width: 100%;
}
.popup-form .form-group-element.form-button .wpcf7-spinner {
  display: none;
}
.popup-form .form-group-element.form-button input[type=submit] {
  width: 100%;
  padding: 12px 24px;
  background-color: #232323;
  border-radius: 12px;
  font-family: Arial, Serif;
  font-weight: 700;
  font-size: 16px;
  line-height: 20px;
  letter-spacing: -0.4px;
  color: #ffffff;
}
.popup-form .form-group-element-file {
  display: flex;
  flex-direction: column;
  gap: 10px;
}
@media (max-width: 576px) {
  .popup-form .form-group-element-file {
    flex-direction: column;
    gap: 10px;
  }
}
.popup-form .form-group-element-file p {
  width: 100%;
  font-family: Arial, Serif;
  font-weight: 400;
  font-size: 16px;
  line-height: 20px;
  letter-spacing: -0.4px;
  color: #000;
}
@media (max-width: 576px) {
  .popup-form .form-group-element-file p {
    font-size: 14px;
  }
}
.popup-form .form-group-element-file .form-control.file-input {
  width: 100%;
  position: relative;
  margin-bottom: 0;
}
.popup-form .form-group-element-file .form-control.file-input label {
  position: absolute;
  top: 0;
  left: 0;
  display: flex;
  align-items: center;
  justify-content: center;
  width: 100%;
  height: 100%;
  border: 1px solid #000000;
  border-radius: 12px;
}
.popup-form .form-group-element-file .form-control.file-input .wpcf7-form-control-wrap {
  opacity: 0;
}
.popup-form .form-group-element-file .file-upload-status {
  display: none;
  align-items: center;
  gap: 8px;
  padding: 12px 16px;
  background-color: #f8f9fa;
  border: 1px solid #e9ecef;
  border-radius: 12px;
}
.popup-form .form-group-element-file .file-upload-status .file-name {
  flex: 1;
  font-family: Arial, Serif;
  font-weight: 400;
  font-size: 14px;
  line-height: 18px;
  letter-spacing: -0.2px;
  color: #495057;
  word-break: break-all;
}
.popup-form .form-group-element-file .file-upload-status .file-remove {
  display: none;
  background: none;
  border: none;
  color: #dc3545;
  cursor: pointer;
  padding: 4px 8px;
  border-radius: 4px;
  font-size: 14px;
  font-weight: 600;
}
.popup-form .form-group-element-file .file-upload-status .file-remove:hover {
  background-color: #dc3545;
  color: white;
}
.popup-form .form-group-element-file .file-upload-status .preloader {
  display: none;
  width: 16px;
  height: 16px;
  border: 2px solid #f3f3f3;
  border-top: 2px solid #3498db;
  border-radius: 50%;
  animation: spin 1s linear infinite;
}
@media (max-width: 576px) {
  .popup-form .form-group-element-file .file-upload-status {
    margin-top: 8px;
    padding: 8px 12px;
  }
  .popup-form .form-group-element-file .file-upload-status .file-name {
    font-size: 12px;
    line-height: 16px;
  }
  .popup-form .form-group-element-file .file-upload-status .file-remove {
    font-size: 12px;
    padding: 2px 6px;
  }
}
.popup-form .form-group-element .form-control {
  display: flex;
  flex-direction: column;
  gap: 12px;
}
.popup-form .form-group-element .form-control label {
  font-family: Arial, Serif;
  font-weight: 400;
  font-size: 16px;
  line-height: 20px;
  letter-spacing: -0.4px;
  color: #000;
}
@media (max-width: 576px) {
  .popup-form .form-group-element .form-control label {
    font-size: 14px;
    line-height: 10px;
  }
}
.popup-form .form-group-element .form-control .wpcf7-form-control-wrap .wpcf7-form-control {
  width: 100%;
  border: 1px solid #C4C4C4;
  border-radius: 12px;
  background-color: #FBFBFB;
  padding: 12px 16px;
}
.popup-form .form-group-element .form-control .wpcf7-form-control-wrap .wpcf7-form-control.wpcf7-textarea {
  height: 106px;
  resize: none;
}

@keyframes spin {
  0% {
    transform: rotate(0deg);
  }
  100% {
    transform: rotate(360deg);
  }
}
.sidebar-form {
  height: -webkit-max-content;
  height: -moz-max-content;
  height: max-content;
  padding: 24px;
  border-radius: 16px;
  background: #FFF;
  position: sticky;
  top: 70px;
  margin-top: 85px;
  margin-bottom: 110px;
}
.sidebar-form img {
  width: 100%;
  height: 266px;
  border-radius: 12px;
  -o-object-fit: cover;
  object-fit: cover;
}
.sidebar-form .form {
  margin-top: 24px;
}

:root {
  --danger-danger-100: #FF381D;
  --header-border-color: #8c8c8c5e;
  --header-text-color: #FFFFFFE5;
  --link-color: #8c8c8c5e;
  --green-primary: #4A853E;
  --green-primary-30: #C1DBC1;
  --green-background: #536156;
  --green-background-op: #536156E8;
  --footer-main-background-color: #383A3D;
  --secondary-text: #1C1F22B2;
  --background-footer: #1C1F22;
  --neutral-a-neutral-4-a: rgba(28, 31, 34, 0.04);
  --neutral-a-neutral-8-a: rgba(28, 31, 34, 0.08);
  --neutral-a-neutral-16-a: rgba(28, 31, 34, 0.16);
  --neutral-a-neutral-50-a: rgba(28, 31, 34, 0.50);
  --neutral-a-neutral-60-a: rgba(28, 31, 34, 0.60);
  --neutral-a-neutral-70-a: rgba(28, 31, 34, 0.70);
  --neutral-a-neutral-90-a: rgba(28, 31, 34, 0.90);
  --neutral-op-a-neutral-op-50-a: rgba(255, 255, 255, 0.50);
  --neutral-op-a-neutral-op-90-a: rgba(255, 255, 255, 0.90);
  --neutral-op-a-neutral-op-12-a: rgba(255, 255, 255, 0.12);
  --neutral-op-neutral-op-12: #383A3D;
  --neutral-neutral-8: #EDEDEE;
  --neutral-neutral-16: #DADBDB;
  --card-bg: #F0F2F0;
  --primary-a-primary-16-a: rgba(50, 135, 51, 0.16);
  --neutral-a-neutral-2-a: rgba(28, 31, 34, 0.02);
  --gray: #f6f6f6;
  --green-light: #4A853E;
  --green-dark: #37602D;
}

.pagination {
  text-align: center;
  padding: 40px 0;
  line-height: 45px;
}
.pagination .page-numbers {
  padding: 10px 15px;
  border-radius: 4px;
  background: var(--neutral-a-neutral-6-a, rgba(28, 31, 34, 0.06));
  font-size: 16px;
  line-height: 25.6px;
  color: #000000;
  margin-right: 8px;
  transition: all 0.4s ease;
}
.pagination .page-numbers:hover {
  transition: all 0.4s ease;
  cursor: pointer;
  background: var(--card-bg-hover, #D2E1D2);
}
.pagination .current {
  border-radius: 4px;
  background: var(--card-bg-hover, #D2E1D2);
}
.pagination .pagination-first {
  margin-right: 8px;
}
.pagination .pagination-last, .pagination .pagination-first {
  padding: 10px 15px;
  border-radius: 4px;
  background: var(--neutral-a-neutral-6-a, rgba(28, 31, 34, 0.06));
  font-size: 16px;
  line-height: 25.6px;
  color: #000000;
  transition: all 0.4s ease;
}
.pagination .pagination-last:hover, .pagination .pagination-first:hover {
  transition: all 0.4s ease;
  cursor: pointer;
  background: var(--card-bg-hover, #D2E1D2);
}

section.error-404.not-found {
  padding: 250px 0;
}
section.error-404.not-found .error-404-items {
  width: max-content;
  margin: 0 auto;
  border-radius: 16px;
  background: var(--white, #FFF);
  box-shadow: 1px 0px 66px 1px rgba(0, 0, 0, 0.08);
  padding: 64px 40px;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
}
section.error-404.not-found .error-404-items .btn-container {
  border-top: 1px dotted var(--neutral-a-neutral-16-a, rgba(28, 31, 34, 0.16));
  padding-top: 40px;
  display: flex;
  gap: 24px;
}
section.error-404.not-found .error-404-items .btn-container a:first-child:before {
  content: url(../icon/link_arrows/link_arrow_dark.svg);
  transform: rotate(225deg);
  display: block;
  margin-right: 8px;
  width: 24px;
  height: 24px;
}
section.error-404.not-found .error-404-items .btn-container a:first-child:hover:before {
  content: url("../icon/link_arrows/link_arrow.svg");
}
section.error-404.not-found .error-404-items .btn-container a:last-child:after {
  margin-left: 8px;
  display: block;
  content: url("../icon/link_arrows/link_arrow_dark.svg");
  width: 24px;
  height: 24px;
}
section.error-404.not-found .error-404-items .btn-container a:last-child:hover:after {
  content: url("../icon/link_arrows/link_arrow.svg");
}
section.error-404.not-found .error-404-items .btn-container a {
  border-radius: 16px;
  border: 1px solid var(--neutral-a-neutral-90-a, rgba(28, 31, 34, 0.9));
  padding: 16px 24px;
  color: var(--neutral-a-neutral-90-a, rgba(28, 31, 34, 0.9));
  font-size: 16px;
  font-style: normal;
  font-weight: 500;
  line-height: normal;
  text-transform: uppercase;
  transition: 0.5s;
  display: flex;
  flex-direction: row;
  align-items: center;
  justify-content: center;
}
section.error-404.not-found .error-404-items .btn-container a:hover {
  color: #FFFFFF;
  border-color: var(--green-light);
  background-color: var(--green-light);
}
section.error-404.not-found .error-404-items h2 {
  color: var(--primary-primary-100, var(--green-light, #4A853E));
  font-size: 160px;
  font-style: normal;
  font-weight: 200;
  line-height: normal;
  margin-bottom: 40px;
}
section.error-404.not-found .error-404-items p {
  color: var(--neutral-a-neutral-90-a, rgba(28, 31, 34, 0.9));
  font-size: 22px;
  font-style: normal;
  font-weight: 500;
  line-height: 140%; /* 30.8px */
  text-transform: uppercase;
}
section.error-404.not-found .error-404-items span {
  color: var(--neutral-a-neutral-70-a, rgba(28, 31, 34, 0.7));
  font-size: 16px;
  font-style: normal;
  font-weight: 400;
  line-height: 160%; /* 25.6px */
  margin-bottom: 40px;
}

.site-header {
  padding: 8px;
  margin: 0 auto;
  position: fixed;
  z-index: 1000;
  width: calc(100% - 16px);
  left: 50%;
  transform: translateX(-50%);
  opacity: 1;
  transition: all 0.4s ease-in;
}
.site-header.header-hidden {
  opacity: 0;
}
@media (max-width: 992px) {
  .site-header {
    display: none;
  }
}
.site-header--mobile {
  display: none;
}
@media (max-width: 992px) {
  .site-header--mobile {
    display: block;
  }
}

.header__container {
  display: flex;
  justify-content: space-between;
  align-items: center;
  padding: 17px 8px 17px 24px;
  border-radius: 16px;
  background: #ffffff;
  box-shadow: -3px 6px 11px 1px rgba(0, 0, 0, 0.37);
  -webkit-box-shadow: -3px 6px 11px 1px rgba(0, 0, 0, 0.37);
  -moz-box-shadow: -3px 6px 11px 1px rgba(0, 0, 0, 0.37);
}
@media (max-width: 992px) {
  .header__container {
    padding: 15px 10px;
    border-radius: 10px;
  }
}
.header__logo {
  display: flex;
  align-items: center;
}
.header__logo img {
  width: 118px;
  background-color: transparent;
}
@media (max-width: 992px) {
  .header__logo img {
    width: 165px;
  }
}
.header__components {
  display: flex;
  justify-content: center;
  align-items: center;
  gap: 24px;
}
.header__menu .menu {
  display: flex;
  gap: 15px;
}
.header__menu .menu > .menu-item > .sub-menu {
  display: none;
  position: absolute;
}
.header__menu .menu > .menu-item > .sub-menu > .menu-item:not(.menu-item-object-catalog) a {
  display: flex;
  flex-direction: column;
  gap: 12px;
}
.header__menu .menu > .menu-item > .sub-menu > .menu-item:not(.menu-item-object-catalog) a .menu-item-thumbnail img {
  width: 250px;
  height: 150px;
  object-fit: cover;
  border-radius: 16px;
}
.header__menu .menu > .menu-item > .sub-menu > .menu-item:not(.menu-item-object-catalog) a .menu-item-title {
  color: #4c8840;
  text-transform: uppercase;
  font-size: 16px;
}
.header__menu .menu > .menu-item > .sub-menu > .menu-item-has-children > a, .header__menu .menu > .menu-item > .sub-menu > .menu-item > a {
  font-weight: 700;
}
.header__menu .menu > .menu-item > .sub-menu > .menu-item-has-children > a svg, .header__menu .menu > .menu-item > .sub-menu > .menu-item > a svg {
  display: none;
}
.header__menu .menu > .menu-item > .sub-menu .menu-item-object-available-buildings a {
  align-items: start;
}
.header__menu .menu > .menu-item > .sub-menu .menu-item-object-available-buildings a .menu-item-title {
  color: #000000 !important;
  font-weight: 700;
  font-size: 14px !important;
  text-transform: none !important;
}
.header__menu .menu > .menu-item > .sub-menu .menu-item {
  break-inside: avoid;
}
.header__menu .menu > .menu-item > .sub-menu .menu-item a {
  padding: 8px 16px;
  border-bottom: 1px solid #c8c8c8;
}
.header__menu .menu > .menu-item > .sub-menu.is-hovered {
  display: block;
  column-count: 4;
  padding: 40px;
  background: #fff;
  border-radius: 16px;
  width: 1250px;
  top: 50px;
  left: 50%;
  transform: translateX(-50%);
}
.header__menu .menu-item {
  padding: 0 9px;
  font-family: "Arial", Serif;
  font-weight: 400;
  font-size: 14px;
  line-height: 20px;
  letter-spacing: -0.2px;
  color: #FFFFFF;
}
.header__menu .menu-item a {
  font-family: "FixelDisplay", Serif;
  font-weight: 500;
  font-size: 14px;
  line-height: 20px;
  letter-spacing: -0.2px;
  color: #000000;
  display: flex;
  align-items: center;
}
.header__menu .menu-item a svg {
  width: 19px;
}
.header__menu .menu-item a svg path {
  stroke: #868686;
}
.header__search {
  position: relative;
}
.header__search .asl_w_container {
  min-width: auto;
}
.header__search_field {
  background: #fff;
  display: flex;
  justify-content: center;
  padding: 20px 0;
  transition: all 0.4s ease-in;
  position: absolute;
  width: calc(100% - 16px);
  left: 8px;
  top: 60px;
  border-radius: 0 0 16px 16px;
}
.header__search_field.hidden {
  opacity: 0;
  display: none;
}
.header__search_button {
  cursor: pointer;
  display: flex;
  align-items: center;
}
.header__search_button svg {
  width: 16px;
}
.header__info {
  display: flex;
  align-items: center;
  justify-content: space-evenly;
  width: 200px;
  height: 34px;
  border-radius: 6px;
  background: #F6F6F6;
}
.header__info .vertical-divider {
  color: #414141;
}
.header__info .header__phones {
  position: relative;
}
.header__info .header__phones .phones__toggle {
  display: flex;
  align-items: center;
}
.header__info .header__phones .phones__toggle svg {
  width: 12px;
}
.header__info .header__phones .phones__toggle svg path {
  stroke: #7F7F7F;
}
.header__info .header__phones .phones__toggle a {
  font-family: "FixelDisplay", Serif;
  font-weight: 600;
  font-size: 14px;
  line-height: 20px;
  letter-spacing: -0.2px;
  color: #414141;
}
.header__info .header__phones .phones__dropdown {
  display: none;
  z-index: 1;
  width: 240px;
}
.header__info .header__phones .phones__dropdown .phones__group {
  display: flex;
  gap: 8px;
  align-items: start;
  justify-content: space-between;
}
.header__info .header__phones .phones__dropdown .phones__group .phones__city {
  font-family: "Arial", Serif;
  font-weight: 400;
  font-size: 14px;
  line-height: 20px;
  letter-spacing: -0.2px;
  color: #000000;
}
.header__info .header__phones .phones__dropdown .phones__group .phones__list {
  display: flex;
  flex-direction: column;
}
.header__info .header__phones .phones__dropdown .phones__group .phones__list .phones__item a {
  font-family: "Arial", Serif;
  font-weight: 400;
  font-size: 14px;
  line-height: 20px;
  letter-spacing: -0.2px;
  color: #000000;
}
.header__info .header__phones .phones__dropdown.is-hovered {
  display: flex;
  flex-direction: column;
  gap: 8px;
  position: absolute;
  top: 32px;
  background: #fff;
  padding: 20px;
  left: -50px;
  border-radius: 16px;
}
.header__info .header__languages {
  position: relative;
}
.header__info .header__languages .languages__toggle {
  display: flex;
  align-items: center;
}
.header__info .header__languages .languages__toggle svg {
  width: 12px;
}
.header__info .header__languages .languages__toggle svg path {
  stroke: #7F7F7F;
}
.header__info .header__languages .languages__toggle span {
  font-family: "FixelDisplay", Serif;
  font-weight: 400;
  font-size: 14px;
  line-height: 20px;
  letter-spacing: -0.2px;
  color: #414141;
  text-transform: uppercase;
}
.header__info .header__languages .languages__list {
  display: none;
  z-index: 1;
}
.header__info .header__languages .languages__list .language-dropdown-items-list {
  display: flex;
  flex-direction: column;
  gap: 8px;
}
.header__info .header__languages .languages__list .language-dropdown-items-list .lang-item a {
  text-transform: uppercase;
  font-family: "Arial", Serif;
  font-weight: 400;
  font-size: 14px;
  line-height: 20px;
  letter-spacing: -0.2px;
  color: #4c8840;
}
.header__info .header__languages .languages__list.is-hovered {
  display: flex;
  flex-direction: column;
  position: absolute;
  top: 32px;
  background: #fff;
  padding: 20px;
  left: -20px;
  border-radius: 16px;
}

@media (max-width: 992px) {
  .header {
    position: relative;
  }
  .header__container {
    padding: 8px 10px;
    border-radius: 10px;
  }
  .header__logo img {
    width: 165px;
  }
  .header__info {
    width: auto;
    height: auto;
    background: none;
    gap: 12px;
  }
  .header__info .header__phones .phones__toggle {
    width: 42px;
    height: 42px;
    display: flex;
    align-items: center;
    justify-content: center;
    background: #4C8840;
    border-radius: 10px;
  }
  .header__info .header__phones .phones__toggle.active {
    background: #315629;
  }
  .header__info .header__phones .phones__toggle svg {
    width: 24px;
  }
  .header__info .header__phones .phones__dropdown.active {
    display: flex;
    flex-direction: column;
    gap: 20px;
    position: absolute;
    padding: 25px 20px;
    border-radius: 10px;
    background: #FFFFFF;
    width: auto;
    left: -60px;
    top: 50px;
  }
  .header__info .header__phones .phones__dropdown.active .phones__group .phones__link {
    font-family: Arial, Serif;
    font-weight: 700;
    font-size: 14px;
    line-height: 20px;
    letter-spacing: -0.4px;
    color: #000000;
  }
  .header__info .header-mobile-menu {
    position: absolute;
    left: -16px;
    top: -8px;
    width: 100vw;
    height: 100vh;
    background: #FFFFFF;
    overflow-y: scroll;
    z-index: 100;
  }
  .header__info .header-mobile-menu .header-mobile--top {
    padding: 16px;
    display: flex;
    align-items: center;
    justify-content: space-between;
  }
  .header__info .header-mobile-menu .header-mobile--top .language-block .language-dropdown-items-list {
    display: flex;
    align-items: center;
    gap: 8px;
  }
  .header__info .header-mobile-menu .header-mobile--top .language-block .language-dropdown-items-list .lang-item {
    width: 42px;
    height: 42px;
    border-radius: 10px;
    display: flex;
    align-items: center;
    justify-content: center;
    background-color: #4C8840;
  }
  .header__info .header-mobile-menu .header-mobile--top .language-block .language-dropdown-items-list .lang-item.active {
    background-color: #315629;
  }
  .header__info .header-mobile-menu .header-mobile--top .language-block .language-dropdown-items-list .lang-item a {
    text-transform: uppercase;
    color: #fff;
    font-weight: 500;
  }
  .header__info .header-mobile-menu .menu {
    padding: 20px;
  }
  .header__info .header-mobile-menu .menu .menu-item > a,
  .header__info .header-mobile-menu .menu .menu-item .sub-menu > .menu-item > a {
    padding: 5px 12px;
    display: flex;
    align-items: center;
    justify-content: space-between;
    border-bottom: 2px solid #232323;
  }
  .header__info .header-mobile-menu .menu .menu-item > a .menu-item-title,
  .header__info .header-mobile-menu .menu .menu-item .sub-menu > .menu-item > a .menu-item-title {
    font-family: "FixelDisplay", Serif;
    font-weight: 500;
    font-size: 16px;
    line-height: 20px;
    letter-spacing: -0.4px;
    color: #232323;
  }
  .header__info .header-mobile-menu .menu .menu-item > a svg path,
  .header__info .header-mobile-menu .menu .menu-item .sub-menu > .menu-item > a svg path {
    stroke: #232323;
  }
  .header__info .header-mobile-menu .menu .menu-item:not(.menu-item-has-children) > a {
    border-bottom: 1px solid rgba(35, 35, 35, 0.2);
  }
  .header__info .header-mobile-menu .menu .menu-item .sub-menu .menu-item {
    padding-left: 12px;
  }
  .header__info .header-mobile-menu .menu .menu-item .sub-menu .menu-item:not(.menu-item-has-children) a {
    border-bottom: 1px solid rgba(35, 35, 35, 0.2);
  }
  .header__info .header-mobile-menu .menu .menu-item .sub-menu .menu-item .menu-item-thumbnail {
    display: none;
  }
  .header__info .close-block {
    position: absolute;
    width: 42px;
    height: 42px;
    border-radius: 10px;
    background: rgba(0, 0, 0, 0.5411764706);
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    z-index: 101;
  }
  .header__info .close-block.active {
    z-index: -1;
  }
  .header__info .close-block .close-line {
    width: 23px;
    height: 1px;
    background-color: #FFFFFF;
  }
  .header__info .close-block .close-line:first-child {
    rotate: 45deg;
  }
  .header__info .close-block .close-line:last-child {
    rotate: 135deg;
  }
  .header__info .header__burger {
    width: 42px;
    height: 42px;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    gap: 5px;
    background: rgba(0, 0, 0, 0.5411764706);
    border-radius: 10px;
  }
  .header__info .header__burger .burger-line {
    width: 23px;
    height: 2px;
    background: #FFFFFF;
  }
  .header__info .header__burger .burger-line:last-child {
    width: 11px;
    margin-right: 11px;
  }
}
.footer {
  padding: 8px;
  height: 496px;
}
.footer__container {
  height: 100%;
  display: flex;
  border-radius: 24px;
  background: linear-gradient(161.29deg, #4C8840 -12.91%, #316028 87.35%);
}
.footer__top {
  width: 100%;
  padding: 32px;
  display: flex;
  flex-direction: column;
  justify-content: space-between;
}
.footer__top-content {
  display: flex;
}
.footer__about {
  width: 100%;
}
.footer__logo {
  margin-bottom: 24px;
}
.footer__description {
  font-family: "Arial", Serif;
  font-weight: 400;
  font-size: 14px;
  line-height: 20px;
  letter-spacing: -0.2px;
  color: #FFFFFF;
}
.footer__navigation {
  width: 100%;
  padding-left: 88px;
}
.footer__title {
  font-family: "Arial", Serif;
  font-weight: 400;
  font-size: 14px;
  line-height: 20px;
  letter-spacing: -0.2px;
  color: #EDEDED;
  margin-bottom: 16px;
}
.footer__menu li {
  margin-bottom: 12px;
}
.footer__menu li a {
  font-family: "Arial", Serif;
  font-weight: 400;
  font-size: 16px;
  line-height: 20px;
  letter-spacing: -0.2px;
  color: #FFFFFF;
}
.footer__social-list {
  display: flex;
  gap: 12px;
}
.footer__social-item {
  width: 40px;
  height: 40px;
  border: 1px solid #C4C4C4;
  border-radius: 12px;
  background: #FFFFFF;
}
.footer__social-link {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 100%;
  height: 100%;
}
.footer__link {
  color: #000000;
}
.footer__bottom {
  width: 100%;
  padding: 12px 12px 32px 12px;
  display: flex;
  flex-direction: column;
  justify-content: space-between;
}
.footer__info {
  border-radius: 24px;
  background: #FFFFFF;
  padding: 32px;
  display: flex;
  justify-content: space-between;
}
.footer__info .footer__title {
  font-family: "Arial", Serif;
  font-weight: 400;
  font-size: 14px;
  line-height: 20px;
  letter-spacing: -0.2px;
  color: #868686;
}
.footer__schedule {
  width: 100%;
}
.footer__contacts {
  width: 100%;
  display: flex;
  flex-direction: column;
  gap: 32px;
}
.footer__list {
  display: flex;
  flex-direction: column;
  gap: 12px;
}
.footer__list-item {
  font-family: "Arial", Serif;
  font-weight: 400;
  font-size: 16px;
  line-height: 20px;
  letter-spacing: -0.2px;
  color: #000000;
}
.footer__copyright {
  font-family: "Arial", Serif;
  font-weight: 400;
  font-size: 14px;
  line-height: 20px;
  letter-spacing: -0.2px;
  color: #FFFFFF;
}
.footer__copyright a {
  color: #FFFFFF;
}

@media (max-width: 992px) {
  .footer {
    height: auto;
  }
  .footer__container {
    flex-direction: column;
  }
  .footer__copyright {
    margin-top: 32px;
  }
}
@media (max-width: 576px) {
  .footer__top {
    padding: 20px;
  }
  .footer__top-content {
    flex-direction: column;
  }
  .footer__about {
    margin-bottom: 16px;
  }
  .footer__navigation {
    padding: 0;
  }
  .footer__social {
    margin-top: 8px;
  }
  .footer__bottom {
    padding: 8px 8px 16px 8px;
  }
  .footer__info {
    padding: 16px 17px;
    flex-direction: column;
    gap: 16px;
  }
  .footer__contacts {
    gap: 16px;
  }
  .footer__copyright {
    margin-top: 16px;
    text-align: center;
  }
}
.banner {
  padding-top: 84px;
}
@media (max-width: 992px) {
  .banner {
    padding-top: 75px;
  }
}
.banner__video-wrapper {
  position: relative;
  width: 100%;
  height: 592px;
  padding: 0 8px;
  display: flex;
  align-items: center;
}
@media (max-width: 576px) {
  .banner__video-wrapper {
    height: 377px;
    padding: 0 15px;
  }
}
.banner__video {
  position: absolute;
  width: calc(100% - 16px);
  height: 100%;
  object-fit: cover;
  z-index: 0;
  border-radius: 24px;
}
@media (max-width: 576px) {
  .banner__video {
    width: calc(100% - 30px);
    border-radius: 10px;
  }
}
.banner__content {
  position: relative;
  z-index: 1;
  padding: 0 24px;
  display: flex;
  flex-direction: column;
  gap: 16px;
}
@media (max-width: 576px) {
  .banner__content {
    padding: 0 16px;
  }
}
.banner__tagline {
  display: flex;
  align-items: center;
  gap: 8px;
  font-family: "FixelDisplay", Serif;
  font-weight: 600;
  font-size: 14px;
  line-height: 100%;
  letter-spacing: 0;
  color: #FFFFFF;
}
@media (max-width: 576px) {
  .banner__tagline {
    order: 1;
  }
}
.banner__title {
  font-family: "Arial", Serif;
  font-weight: 700;
  font-size: 48px;
  line-height: 56px;
  letter-spacing: -1px;
  color: #FFFFFF;
  text-transform: uppercase;
}
@media (max-width: 576px) {
  .banner__title {
    font-family: "Arial", Serif;
    font-weight: 300;
    font-size: 28px;
    line-height: 36px;
    letter-spacing: 0;
    color: #FFFFFF;
    order: 3;
  }
}
.banner__subtitle {
  font-family: "Arial", Serif;
  font-weight: 400;
  font-size: 16px;
  line-height: 20px;
  letter-spacing: -0.4px;
  color: rgba(255, 255, 255, 0.6392156863);
}
@media (max-width: 576px) {
  .banner__subtitle {
    font-family: "Arial", Serif;
    font-weight: 600;
    font-size: 13px;
    line-height: 100%;
    letter-spacing: 0;
    color: #FFFFFF;
    order: 2;
  }
}
.banner__button {
  background: #fff;
  width: 229px;
  height: 48px;
  display: flex;
  align-items: center;
  gap: 8px;
  border-radius: 12px;
  padding: 12px 16px;
}
.banner__button span {
  font-family: "Arial", Serif;
  font-weight: 700;
  font-size: 16px;
  line-height: 20px;
  letter-spacing: -0.4px;
  color: #000;
}
@media (max-width: 576px) {
  .banner__button {
    order: 4;
  }
}
.banner__info {
  margin-top: 8px;
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  grid-template-rows: 1fr;
  gap: 8px;
  padding: 0 8px;
}
@media (max-width: 768px) {
  .banner__info {
    flex-direction: column;
    grid-template-columns: repeat(1, 1fr);
  }
}
@media (max-width: 576px) {
  .banner__info {
    margin-top: 12px;
    padding: 0 15px;
    flex-direction: column;
  }
}
.banner__info-item {
  width: 100%;
  display: flex;
  flex-direction: column;
  gap: 16px;
  background-color: #FFFFFF;
  padding: 24px;
  border-radius: 24px;
  height: 100%;
}
@media (max-width: 576px) {
  .banner__info-item {
    flex-direction: row;
    align-items: center;
    padding: 15px;
    border-radius: 10px;
  }
}
.banner__info-number {
  font-family: "Arial", Serif;
  font-weight: 700;
  font-size: 40px;
  line-height: 44px;
  letter-spacing: -2px;
  color: #4C8840;
}
@media (max-width: 576px) {
  .banner__info-number {
    vertical-align: middle;
    text-transform: uppercase;
    font-family: "Arial", Serif;
    font-weight: 700;
    font-size: 28px;
    line-height: 32px;
    letter-spacing: -2px;
    color: #4C8840;
  }
}
.banner__info-text {
  font-family: "Arial", Serif;
  font-weight: 400;
  font-size: 16px;
  line-height: 24px;
  letter-spacing: -0.4px;
  color: #868686;
}
@media (max-width: 576px) {
  .banner__info-text {
    width: 100%;
  }
}

.heading {
  border-top: 1px solid var(--neutral-neutral-16, #DADBDB);
  border-bottom: 1px solid var(--neutral-neutral-16, #DADBDB);
  background: linear-gradient(90deg, #fff 14px, transparent 1%) center, linear-gradient(#fff 14px, transparent 1%) center, rgba(0, 0, 0, 0.3019607843);
  background-size: 15px 15px;
}
.heading h2 {
  padding: 80px 24px;
  color: var(--green-primary);
  font-size: 44px;
  font-style: normal;
  font-weight: 500;
  line-height: normal;
  text-transform: uppercase;
}
.heading h3 {
  padding: 80px 24px;
  color: var(--green-primary);
  font-size: 44px;
  font-style: normal;
  font-weight: 500;
  line-height: normal;
  text-transform: uppercase;
}

@media (max-width: 992px) {
  .heading h2 {
    padding: 64px 32px;
    font-size: 32px;
  }
}
@media (max-width: 576px) {
  .heading h2 {
    padding: 56px 24px;
    font-size: 24px;
  }
}
.trust-us {
  margin-top: 28px;
  margin-bottom: 20px;
  padding: 0 8px;
}
@media (max-width: 576px) {
  .trust-us {
    margin-top: 44px;
    margin-bottom: 0;
    padding: 0;
  }
}
.trust-us__container {
  background-color: #FFFFFF;
  padding: 30px 0;
}
@media (max-width: 576px) {
  .trust-us__container {
    padding-bottom: 50px;
  }
}
.trust-us__header {
  margin-bottom: 40px;
}
.trust-us__title {
  text-align: center;
  text-transform: uppercase;
  vertical-align: middle;
  font-family: "FixelDisplay", Serif;
  font-weight: 500;
  font-size: 32px;
  line-height: 100%;
  letter-spacing: 0;
  color: #4A853E;
}
@media (max-width: 576px) {
  .trust-us__title {
    font-size: 24px;
  }
}
.trust-us__items {
  align-items: center;
}
.trust-us__item {
  width: auto;
}
.trust-us__image-item {
  display: flex;
  justify-content: center;
}

.offer {
  padding: 8px;
  display: block;
}
@media (max-width: 992px) {
  .offer {
    padding: 0;
  }
}
.offer__toggle {
  background-color: #4C8840;
  border-radius: 24px;
}
@media (max-width: 992px) {
  .offer__toggle {
    border-radius: 0;
  }
}
.offer__title {
  padding: 60px 32px 24px 32px;
  text-transform: uppercase;
  vertical-align: middle;
  font-family: "FixelDisplay", Serif;
  font-weight: 500;
  font-size: 32px;
  line-height: 100%;
  letter-spacing: 0;
  color: #ffffff;
}
@media (max-width: 992px) {
  .offer__title {
    padding: 28px 0 10px;
    font-size: 24px;
    text-align: center;
  }
}
.offer__container {
  padding: 8px 16px 104px 8px;
  display: flex;
  align-items: stretch;
  gap: 8px;
}
@media (max-width: 992px) {
  .offer__container {
    padding: 0 16px 42px 16px;
  }
}
.offer__menu {
  width: 100%;
  flex: 1;
}
.offer__content {
  width: 100%;
  flex: 2;
}
@media (max-width: 992px) {
  .offer__content {
    overflow: scroll;
  }
}

.menu-list {
  display: flex;
  flex-direction: column;
  gap: 8px;
}
.menu-list__item {
  background: #FFFFFF;
  padding: 30px 40px;
  border-radius: 20px;
  font-family: "FixelDisplay", Serif;
  font-weight: 500;
  font-size: 20px;
  line-height: 22px;
  letter-spacing: -0.4px;
  color: #000000;
}
@media (max-width: 992px) {
  .menu-list__item {
    padding: 12px 30px;
    border-radius: 10px;
    font-size: 15px;
    display: flex;
    align-items: center;
    justify-content: space-between;
  }
}
.menu-list__item.active {
  font-family: "FixelDisplay", Serif;
  font-weight: 600;
  font-size: 20px;
  line-height: 22px;
  letter-spacing: -0.4px;
  color: #4C8840;
}
.menu-list__item.active svg {
  rotate: 180deg;
}
@media (max-width: 992px) {
  .menu-list__item.active {
    font-size: 15px;
  }
}

.content-block {
  padding: 32px;
  background-color: #FFFFFF;
  border-radius: 20px;
  flex-direction: column;
  gap: 16px;
  height: 100%;
}
@media (max-width: 992px) {
  .content-block {
    background: none;
    padding: 0;
  }
}
.content-block.active {
  display: flex;
}
.content-block__title:hover a {
  color: #4C8840;
}
.content-block__title a {
  text-transform: uppercase;
  font-family: Arial, Serif;
  font-weight: 700;
  font-size: 24px;
  line-height: 28px;
  letter-spacing: -1px;
  color: #000000;
}
.content-block__subtitle {
  vertical-align: middle;
  font-family: Arial, Serif;
  font-weight: 400;
  font-size: 16px;
  line-height: 22px;
  letter-spacing: -0.4px;
  color: #868686;
}
.content-block__items {
  display: flex;
  align-items: center;
  gap: 15px;
  height: 100%;
}
@media (max-width: 992px) {
  .content-block__items {
    width: 1400px;
  }
}
.content-block__item {
  position: relative;
  flex: 1;
  width: 100%;
  height: 100%;
  transition: all 0.4s ease-in;
}
.content-block__item:hover {
  flex: 4;
}
@media (max-width: 992px) {
  .content-block__item {
    height: 250px;
  }
}
.content-block__image {
  height: 100%;
  width: 100%;
  object-fit: cover;
  border-radius: 24px;
  filter: brightness(0.65);
  aspect-ratio: 16/9;
}
@media (max-width: 992px) {
  .content-block__image {
    border-radius: 16px;
  }
}
.content-block__text {
  position: absolute;
  bottom: 30px;
  left: 50%;
  transform: translateX(-50%);
  text-align: center;
  text-transform: uppercase;
  font-family: Arial, Serif;
  font-weight: 700;
  font-size: 14px;
  line-height: 16px;
  letter-spacing: -0.4px;
  color: #ffffff;
}

.mobility {
  padding: 0 8px;
}
@media (max-width: 576px) {
  .mobility {
    padding: 0 15px;
  }
}
.mobility__container {
  padding: 44px 24px 24px;
  border-radius: 24px;
  background-color: #FFFFFF;
  display: flex;
  flex-direction: column;
  gap: 24px;
}
@media (max-width: 576px) {
  .mobility__container {
    padding: 40px 15px;
    border-radius: 10px;
  }
}
.mobility__title {
  text-transform: uppercase;
  vertical-align: middle;
  font-family: "FixelDisplay", Serif;
  font-weight: 500;
  font-size: 32px;
  line-height: 100%;
  letter-spacing: 0;
  color: #4A853E;
}
@media (max-width: 576px) {
  .mobility__title {
    font-size: 24px;
  }
}
.mobility__description {
  font-family: "Open Sans", Serif;
  font-weight: 500;
  font-size: 16px;
  line-height: 28px;
  letter-spacing: 0;
  color: #000;
}
@media (max-width: 576px) {
  .mobility__description {
    font-size: 14px;
  }
}
.mobility__block {
  display: flex;
  flex-direction: column;
  gap: 24px;
}
.mobility__icon {
  width: 156px;
  height: 120px;
}
@media (max-width: 576px) {
  .mobility__icon {
    align-self: center;
  }
}
.mobility__label {
  display: flex;
  gap: 24px;
  align-items: center;
}
.mobility__label-text {
  text-transform: uppercase;
  font-family: "Open Sans", Serif;
  font-weight: 700;
  font-size: 18px;
  line-height: 28px;
  letter-spacing: 0;
  color: #000;
}
.mobility__list {
  display: flex;
  flex-direction: column;
  gap: 24px;
}
.mobility__item {
  display: flex;
  flex-direction: column;
  gap: 24px;
}
.mobility__item-title {
  font-family: "Open Sans", Serif;
  font-weight: 700;
  font-size: 16px;
  line-height: 28px;
  letter-spacing: 0;
  color: #000;
}
.mobility__item-description {
  font-family: "Open Sans", Serif;
  font-weight: 500;
  font-size: 16px;
  line-height: 28px;
  letter-spacing: 0;
  color: #000;
}
@media (max-width: 576px) {
  .mobility__item-description {
    font-size: 14px;
  }
}
.mobility__video-block {
  display: flex;
  flex-direction: column;
  gap: 24px;
}
.mobility__video-title {
  text-transform: uppercase;
  font-family: "Open Sans", Serif;
  font-weight: 700;
  font-size: 18px;
  line-height: 28px;
  letter-spacing: 0;
  color: #000;
}
.mobility__video {
  width: 100%;
  border-radius: 24px;
}

.video-box .video-box-ct .video-box-items .row {
  --bs-gutter-x: 0;
}

.video-box-video-container {
  padding: 40px 0;
  display: flex;
  flex-direction: column;
  width: 330px;
  margin-left: auto;
  margin-right: 40px;
}
.video-box-video-container video {
  border-radius: 8px;
  margin-bottom: 24px;
}
.video-box-video-container button {
  transition: 0.5s;
  display: flex;
  justify-content: space-between;
  max-width: 217px;
  padding: 16px 20px;
  border: 1px solid var(--neutral-a-neutral-90-a);
  border-radius: 16px;
  color: var(--neutral-a-neutral-90-a);
  font-size: 16px;
  font-weight: 500;
  text-transform: uppercase;
}
.video-box-video-container button span {
  display: flex;
  align-items: center;
}
.video-box-video-container button span:after {
  padding-left: 8px;
  width: 24px;
  height: 24px;
  content: url("../icon/link_arrows/link_arrow_dark.svg");
}
.video-box-video-container button:hover {
  background-color: var(--neutral-a-neutral-90-a);
  color: #FFFFFF;
}
.video-box-video-container button:hover span:after {
  padding-left: 8px;
  width: 24px;
  height: 24px;
  content: url("../icon/link_arrows/link_arrow.svg");
}

.video-box-item-video {
  border-top: 1px solid var(--neutral-neutral-16);
}

.video-box-item-header {
  padding: 64px 15% 40px 40px;
  border-left: 1px solid var(--neutral-neutral-16);
}
.video-box-item-header h2 {
  padding: 0;
  font-size: 32px;
  color: var(--neutral-a-neutral-90-a);
}

@media (max-width: 992px) {
  .video-box .video-box-ct .video-box-items .row {
    flex-direction: column-reverse;
  }
  .video-box-video-container {
    padding: 40px 24px;
    margin-left: 0;
  }
  .video-box-item-header {
    padding: 32px 15% 32px 40px;
  }
  .video-box-item-header h2 {
    font-size: 24px;
  }
}
@media (max-width: 576px) {
  .video-box-item-header {
    padding: 40px 24px;
  }
  .video-box-item-header h2 {
    font-size: 20px;
  }
}
.photo-box-item {
  height: 100%;
  background-image: url("../img/Image.svg");
  background-attachment: fixed;
  background-position: center;
  background-repeat: no-repeat;
  background-size: cover;
}

.benefits {
  padding: 8px;
}
@media (max-width: 576px) {
  .benefits {
    padding: 0;
    background-color: #FFFFFF;
  }
}
.benefits__container {
  display: flex;
  gap: 8px;
}
@media (max-width: 576px) {
  .benefits__container {
    flex-direction: column;
    padding: 40px 15px;
    height: 580px;
  }
}
@media (max-width: 768px) {
  .benefits__container {
    flex-direction: column;
  }
}
.benefits__item {
  padding: 24px;
  border-radius: 24px;
  background: #E9E9E9;
  height: 360px;
  width: 100%;
  display: flex;
  flex-direction: column;
  flex: 1;
  transition: all 0.4s ease;
}
@media (max-width: 576px) {
  .benefits__item {
    height: auto;
    border-radius: 16px;
    gap: 16px;
  }
}
.benefits__item--green {
  background: linear-gradient(161.29deg, #4C8840 -12.91%, #316028 87.35%);
  flex: 2;
}
.benefits__item--green .benefits__number {
  color: #FFFFFF;
}
.benefits__item--green .benefits__description {
  color: #FFFFFF;
}
.benefits__item--green .benefits__note {
  display: block;
  color: #FFFFFF;
}
.benefits__number {
  vertical-align: middle;
  text-transform: uppercase;
  font-family: Arial, Serif;
  font-weight: 700;
  font-size: 72px;
  line-height: 80px;
  letter-spacing: -2px;
  color: #4C8840;
}
@media (max-width: 576px) {
  .benefits__number {
    font-size: 32px;
    line-height: 40px;
    letter-spacing: -1px;
  }
}
.benefits__description {
  margin-top: 16px;
  font-family: Arial, Serif;
  font-weight: 400;
  font-size: 16px;
  line-height: 24px;
  letter-spacing: -0.4px;
  color: #868686;
}
@media (max-width: 576px) {
  .benefits__description {
    margin-top: 0;
    font-size: 14px;
    line-height: 20px;
  }
}
.benefits__note {
  margin-top: auto;
  display: none;
  font-family: Arial, Serif;
  font-weight: 400;
  font-size: 16px;
  line-height: 24px;
  letter-spacing: -0.4px;
  color: #FFFFFF;
}
@media (max-width: 576px) {
  .benefits__note {
    font-size: 14px;
    line-height: 20px;
  }
}

.about-us .about-us-ct {
  background: #fff;
  padding: 0 24px;
}
@media (max-width: 576px) {
  .about-us .about-us-ct {
    padding: 0 15px 15px 15px;
    border-radius: 24px;
  }
}
.about-us .about-us-ct .collapse-button {
  margin-bottom: 56px;
}
.about-us .about-us-ct .collapse-button p#read_more {
  display: none;
}
.about-us .about-us-ct .collapse-button p#read_more.show {
  display: flex;
  align-items: center;
}
.about-us .about-us-ct .collapse-button p#read_more.show:after {
  content: url("../icon/chevron-down.svg");
  height: 24px;
}
.about-us .about-us-ct .collapse-button p#collapse_text {
  display: none;
}
.about-us .about-us-ct .collapse-button p#collapse_text.show {
  display: flex;
}
.about-us .about-us-ct .collapse-button p#collapse_text.show:after {
  content: url("../icon/chevron-down.svg");
  transform: rotate(180deg);
}
.about-us .about-us-ct .collapse-button p {
  align-items: center;
  cursor: pointer;
  color: var(--primary-primary-100, var(--green-light, #4A853E));
  font-size: 16px;
  font-style: normal;
  font-weight: 400;
  line-height: normal;
}
.about-us .about-us-ct .about-us-items.show {
  height: auto;
}
.about-us .about-us-ct .about-us-items {
  position: relative;
  padding: 56px 0 0 0;
  height: 750px;
  overflow: hidden;
}
.about-us .about-us-ct .about-us-items a {
  color: var(--green-primary);
}
.about-us .about-us-ct .about-us-items .gradient {
  display: none;
  position: absolute;
  width: 100%;
  height: 100%;
  background: linear-gradient(180deg, rgba(255, 255, 255, 0) 35%, #FFF 100%);
  top: 0;
  left: 0;
}
.about-us .about-us-ct .about-us-items .gradient.show {
  display: block;
}
.about-us .about-us-ct .about-us-items .advantages-two {
  margin-bottom: 40px;
}
.about-us .about-us-ct .about-us-items .advantages-two-card:last-child {
  border-bottom: 1px solid var(--header-border-color);
}
.about-us .about-us-ct .about-us-items .advantages-two-card {
  border-top: 1px solid var(--header-border-color) !important;
}
.about-us .about-us-ct .about-us-items .about-us-item-last {
  margin-bottom: 0 !important;
}
.about-us .about-us-ct .about-us-items .about-us-item-last .text-block {
  margin-bottom: 0 !important;
}
.about-us .about-us-ct .about-us-items .about-us-item {
  margin-bottom: 56px;
}
.about-us .about-us-ct .about-us-items .about-us-item .text-block {
  margin-bottom: 56px;
}
.about-us .about-us-ct .about-us-items .about-us-item .text-block h2 {
  color: var(--neutral-a-neutral-90-a);
  font-size: 32px;
  font-style: normal;
  font-weight: 500;
  line-height: normal;
  text-transform: uppercase;
  margin-bottom: 16px;
}
.about-us .about-us-ct .about-us-items .about-us-item .text-block p {
  color: var(--neutral-a-neutral-70-a, rgba(28, 31, 34, 0.7));
  font-size: 16px;
  font-style: normal;
  font-weight: 400;
  line-height: 160%; /* 25.6px */
  margin-bottom: 16px;
}
.about-us .about-us-ct .about-us-items .about-us-item .text-block ul {
  margin-bottom: 16px;
  color: var(--neutral-a-neutral-90-a);
  font-size: 16px;
  font-style: normal;
  font-weight: 400;
  line-height: 160%; /* 25.6px */
  margin-bottom: 16px;
}
.about-us .about-us-ct .about-us-items .about-us-item .text-block ul li {
  color: var(--neutral-a-neutral-70-a, rgba(28, 31, 34, 0.7));
  margin-bottom: 8px;
  position: relative;
  padding-left: 10px;
  margin-left: 12px;
}
.about-us .about-us-ct .about-us-items .about-us-item .text-block ul li strong, .about-us .about-us-ct .about-us-items .about-us-item .text-block ul li b {
  color: var(--neutral-a-neutral-70-a);
  font-weight: 600;
}
.about-us .about-us-ct .about-us-items .about-us-item .text-block ul li li::marker {
  content: "⬥  ";
  font-size: 18px;
}
.about-us .about-us-ct .about-us-items .about-us-item .text-block ul li a {
  color: var(--green-light);
}

.bottom-text {
  margin-bottom: 40px !important;
  margin-top: 40px;
  padding-top: 40px;
  border-top: 1px solid var(--neutral-a-neutral-16-a, rgba(28, 31, 34, 0.16));
}
.bottom-text p {
  color: var(--neutral-a-neutral-90-a, rgba(28, 31, 34, 0.9));
  padding: 40px;
  border-radius: 12px;
  background-color: var(--card-bg);
}
.bottom-text p a {
  color: var(--green-light);
}

@media (max-width: 576px) {
  .bottom-text {
    margin-bottom: 0 !important;
    font-size: 15px;
  }
  .about-us-ct.nw .collapse-button {
    padding: 0 24px;
  }
  .about-us-items {
    padding-top: 40px;
  }
  .about-us-item.nw .text-block {
    margin-bottom: 40px;
  }
  .about-us-item.nw .text-block h2 {
    font-size: 20px !important;
  }
  .about-us-item.nw .text-block p {
    font-size: 15px !important;
  }
}
.callback {
  padding: 8px;
}
@media (max-width: 576px) {
  .callback {
    padding: 40px 15px 40px 15px;
  }
}
.callback__container {
  display: flex;
  gap: 8px;
}
@media (max-width: 576px) {
  .callback__container {
    height: auto;
  }
}
@media (max-width: 768px) {
  .callback__container {
    height: auto;
  }
}
.callback__image {
  width: 100%;
  background-color: #FFFFFF;
  border-radius: 24px;
  display: flex;
  align-items: center;
  justify-content: center;
}
@media (max-width: 576px) {
  .callback__image {
    display: none;
  }
}
@media (max-width: 768px) {
  .callback__image {
    display: none;
  }
}
.callback__image img {
  object-fit: scale-down;
  width: 100%;
}
.callback__form {
  width: 100%;
  background-color: #FFFFFF;
  border-radius: 24px;
  padding: 24px;
  display: flex;
  flex-direction: column;
  justify-content: center;
  gap: 24px;
}
@media (max-width: 576px) {
  .callback__form {
    padding: 29px 15px 39px 15px;
    gap: 0;
    border-radius: 10px;
  }
}
.callback__form .wpcf7-form-control.wpcf7-submit {
  background-color: #232323;
  color: #fff;
  font-family: Arial;
  font-weight: 700;
  font-size: 16px;
  line-height: 20px;
  letter-spacing: -0.4px;
  vertical-align: middle;
  font-variant-numeric-figure: lining-nums;
  font-variant-numeric-spacing: proportional-nums;
}
.callback__form--title {
  text-transform: uppercase;
  vertical-align: middle;
  font-family: "FixelDisplay", Serif;
  font-weight: 500;
  font-size: 32px;
  line-height: 100%;
  letter-spacing: 0;
  color: #4A853E;
}
@media (max-width: 576px) {
  .callback__form--title {
    margin-bottom: 20px;
    text-align: center;
    font-size: 24px;
  }
}
.callback__form--subtitle {
  font-family: Arial, Serif;
  font-weight: 400;
  font-size: 16px;
  line-height: 24px;
  letter-spacing: -0.4px;
  color: #868686;
  margin: 24px 0 24px 0;
}
@media (max-width: 576px) {
  .callback__form--subtitle {
    text-align: center;
    font-size: 14px;
    margin-bottom: 15px;
  }
}

.projects {
  padding: 8px;
  display: flex;
  flex-direction: column;
  gap: 8px;
}
@media (max-width: 576px) {
  .projects {
    padding: 0;
    background-color: #FFFFFF;
    gap: 0;
    border-radius: 24px;
    margin: 8px 0;
  }
}
.projects__item-link {
  display: block;
  text-decoration: none;
  color: inherit;
  width: 100%;
}
.projects__header {
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding: 44px 24px;
  border-radius: 24px;
  background-color: #FFFFFF;
}
@media (max-width: 576px) {
  .projects__header {
    padding: 20px;
    margin: 8px 0;
  }
}
.projects__title {
  text-transform: uppercase;
  vertical-align: middle;
  font-family: "FixelDisplay", Serif;
  font-weight: 500;
  font-size: 32px;
  line-height: 100%;
  letter-spacing: 0;
  color: #4A853E;
}
@media (max-width: 576px) {
  .projects__title {
    font-size: 24px;
  }
}
.projects__link {
  gap: 8px;
  border-radius: 12px;
  padding: 12px 103px;
  background: #232323;
  font-family: Arial, Serif;
  font-weight: 700;
  font-size: 16px;
  line-height: 20px;
  letter-spacing: -0.4px;
  color: #FFFFFF;
}
@media (max-width: 576px) {
  .projects__link {
    display: none;
  }
}
.projects__list {
  display: flex;
  align-items: center;
  gap: 8px;
}
@media (max-width: 576px) {
  .projects__list {
    flex-direction: column;
    padding: 0 20px 30px;
  }
}
.projects__item {
  width: 100%;
  height: 520px;
  position: relative;
  display: flex;
  flex-direction: column;
  justify-content: end;
}
@media (max-width: 576px) {
  .projects__item {
    height: 374px;
  }
}
.projects__image {
  width: 100%;
  height: 100%;
  object-fit: cover;
  border-radius: 24px;
  z-index: 0;
}
.projects__info {
  padding: 15px 20px;
  width: calc(100% - 16px);
  position: absolute;
  bottom: 8px;
  left: 8px;
  z-index: 1;
  backdrop-filter: blur(24px);
  border: 1px solid rgba(255, 255, 255, 0.3215686275);
  background: rgba(255, 255, 255, 0.1607843137);
  border-radius: 20px;
  display: flex;
  gap: 15px;
  align-items: center;
}
.projects__city {
  font-family: Arial, Serif;
  font-weight: 400;
  font-size: 16px;
  line-height: 20px;
  letter-spacing: -0.4px;
  color: #FFFFFF;
}
.projects__location {
  font-family: Arial, Serif;
  font-weight: 400;
  font-size: 14px;
  line-height: 18px;
  letter-spacing: -0.2px;
  color: rgba(255, 255, 255, 0.6392156863);
}

@media (max-width: 576px) {
  .content .projects {
    background-color: transparent;
  }
}
@media (max-width: 576px) {
  .content .projects__header {
    background-color: transparent;
  }
}
@media (max-width: 576px) {
  .content .projects__list {
    padding: 0;
    gap: 15px;
  }
}

.site-header.home-header #ajaxsearchlite1 .probox, .site-header.home-header div.asl_w .probox {
  background-color: rgba(0, 0, 0, 0.2) !important;
}

.site-header.home-header #ajaxsearchlite1.asl_w.asl_m.asl_m_1.asl_m_1_1 .probox .proinput form input.orig {
  color: var(--header-text-color) !important;
}

.site-header.home-header #ajaxsearchlite1.asl_w.asl_m.asl_m_1.asl_m_1_1 .probox .proinput form input.orig::placeholder {
  color: var(--header-text-color) !important;
}

.site-header #ajaxsearchlite1 .probox, .site-header div.asl_w .probox {
  background-color: rgba(28, 31, 34, 0.02) !important;
}

.site-header #ajaxsearchlite1.asl_w.asl_m.asl_m_1.asl_m_1_1 .probox .proinput form input.orig {
  color: var(--neutral-a-neutral-70-a) !important;
}

.site-header #ajaxsearchlite1.asl_w.asl_m.asl_m_1.asl_m_1_1 .probox .proinput form input.orig::placeholder {
  color: var(--neutral-a-neutral-70-a) !important;
}

#ajaxsearchlite1 .probox, div.asl_w .probox {
  border: none !important;
  border-radius: 10px !important;
  padding: 10px !important;
  backdrop-filter: blur(10px) !important;
}

#ajaxsearchlite1.asl_w.asl_m.asl_m_1.asl_m_1_1 .probox .proinput form input.orig {
  font-size: 16px !important;
  caret-color: #000000;
}

div.asl_w .probox .promagnifier {
  box-shadow: none !important;
}

.language-message {
  position: sticky;
  top: 0;
  left: 50%;
  padding: 20px;
  background: var(--neutral-a-neutral-2-a, rgba(28, 31, 34, 0.02));
  -webkit-backdrop-filter: blur(10px);
  backdrop-filter: blur(10px);
  height: 100vh;
  z-index: 9000;
  display: none;
}

.language-message.show {
  display: block;
}

.language-message_list {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  background: var(--green-background);
  padding: 24px;
  border-radius: 24px;
  width: 30%;
  height: 300px;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
}

@media (max-width: 567px) {
  .language-message_list {
    width: 100%;
    border-radius: 0;
  }
}
.language-message_list p {
  font-size: 42px;
  color: #FFFFFF;
  font-weight: 500;
  text-align: center;
  margin: 0 auto;
}

.language-message_list span {
  font-size: 24px;
  color: #FFFFFF;
  font-weight: 500;
  text-align: center;
  margin: 0 auto;
}

.language-message_list ul {
  margin-top: 24px;
  display: flex;
  gap: 8px;
}

.language-message_list ul li.lang-item a {
  font-size: 20px;
  font-weight: 500;
  padding: 8px;
  background-color: var(--neutral-op-a-neutral-op-50-a);
  border-radius: 8px;
  color: #e8e8e8;
  text-decoration: none;
  text-transform: uppercase;
}

.modal {
  position: fixed;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  background-color: rgba(0, 0, 0, 0.5);
  z-index: 200002;
}
.modal--hidden {
  display: none;
}
.modal--visible {
  display: flex;
  align-items: center;
  justify-content: center;
}
.modal__content {
  position: relative;
  margin: 10% auto;
  padding: 30px 24px;
  background-color: #fff;
  width: 80%;
  max-width: 877px;
  border-radius: 24px;
  box-shadow: 0 2px 10px rgba(0, 0, 0, 0.1);
  max-height: 100vh;
  overflow-y: auto;
}
@media (max-width: 576px) and (max-width: 576px) {
  .modal__content {
    width: 100%;
    height: 100%;
    max-height: 100vh;
    border-radius: 0;
    overflow-y: auto;
    padding: 24px 16px;
  }
}
.modal__close {
  position: absolute;
  top: 18px;
  right: 16px;
  font-size: 24px;
  border: none;
  cursor: pointer;
  color: #FFFFFF;
  border-radius: 10px;
  width: 33px;
  height: 33px;
  background: #C7C7C7;
}

.solutions-form {
  padding-top: 46px;
}

.site {
  background: #f6f6f6;
}

.input-error {
  border-color: red !important;
}

.table {
  position: absolute;
  width: 100%;
  height: 100%;
  display: -ms-grid;
  display: grid;
  -ms-grid-columns: 1fr [3];
  grid-template-columns: repeat(3, 1fr);
  z-index: 0;
  left: 50%;
  -webkit-transform: translateX(-50%);
  -ms-transform: translateX(-50%);
  transform: translateX(-50%);
}
.table-el {
  border-left: 2px solid var(--neutral-op-a-neutral-op-12-a, rgba(255, 255, 255, 0.12));
}
.table-el:last-child {
  border-right: 2px solid var(--neutral-op-a-neutral-op-12-a, rgba(255, 255, 255, 0.12));
}

.banner-home {
  padding: 0 !important;
}

.row {
  --bs-gutter-x: 0 !important;
}

.about-us .text-block b {
  margin-top: 16px;
  color: var(--neutral-a-neutral-70-a);
  font-weight: 600;
}
.about-us .text-block ul {
  margin-bottom: 16px;
  color: var(--neutral-a-neutral-90-a);
  font-size: 16px;
  font-style: normal;
  font-weight: 400;
  line-height: 160%; /* 25.6px */
  margin-bottom: 16px;
  padding-left: 10px;
}
.about-us .text-block ul li::marker {
  content: "⬥";
  font-size: 18px;
}

.catalog-en-image-block .link-btn {
  margin-top: 30px;
  max-width: max-content;
}
.catalog-en-image-block .link-btn p {
  margin-top: 8px;
  color: var(--neutral-a-neutral-50-a, rgba(28, 31, 34, 0.5));
  text-align: center;
  font-size: 13px;
  font-style: normal;
  font-weight: 400;
  line-height: normal;
}
.catalog-en-image-block .link-btn button {
  color: var(--neutral-a-neutral-90-a);
  padding: 16px 20px 16px 24px;
  justify-content: center;
  align-items: center;
  border-radius: 16px;
  border: 1px solid var(--neutral-a-neutral-90-a);
  display: flex;
  transition: 0.5s;
}
.catalog-en-image-block .link-btn button:after {
  width: 24px;
  height: 24px;
  margin-left: 8px;
  transition: 0.5s;
  margin-right: 8px;
  content: url("../icon/link_arrows/link_arrow_dark.svg");
}
.catalog-en-image-block .link-btn button:hover {
  border-color: var(--green-light, #4A853E);
  background: var(--green-light, #4A853E);
  color: #ffffff;
}
.catalog-en-image-block .link-btn button:hover:after {
  content: url("../icon/link_arrows/link_arrow.svg");
}

.catalog-en-image-block {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
}
.catalog-en-image-block iframe {
  width: 100%;
  height: 610px;
}

.open-popup .popup-header {
  margin-top: 34px;
}
.open-popup .popup-header-subtitle {
  font-size: 24px;
  font-weight: 400;
  margin-bottom: 34px;
  color: var(--neutral-a-neutral-70-a);
}
.open-popup .popup-header-title {
  font-size: 34px;
  font-weight: 500;
  margin-bottom: 34px;
}

.catalog-subtitle {
  font-size: 34px;
  font-weight: 500;
  margin-bottom: 34px;
}

@font-face {
  font-family: "FixelDisplay";
  font-style: normal;
  font-weight: 400;
  font-display: fallback;
  src: url("../fonts/FixelDisplay/FixelDisplay-Regular.ttf") format("opentype");
}
@font-face {
  font-family: "FixelDisplay";
  font-style: normal;
  font-weight: 100;
  font-display: fallback;
  src: url("../fonts/FixelDisplay/FixelDisplay-Thin.ttf") format("opentype");
}
@font-face {
  font-family: "FixelDisplay";
  font-style: normal;
  font-weight: 200;
  font-display: fallback;
  src: url("../fonts/FixelDisplay/FixelDisplay-ExtraLight.ttf") format("opentype");
}
@font-face {
  font-family: "FixelDisplay";
  font-style: normal;
  font-weight: 300;
  font-display: fallback;
  src: url("../fonts/FixelDisplay/FixelDisplay-Light.ttf") format("opentype");
}
@font-face {
  font-family: "FixelDisplay";
  font-style: normal;
  font-weight: 500;
  font-display: fallback;
  src: url("../fonts/FixelDisplay/FixelDisplay-Medium.ttf") format("opentype");
}
@font-face {
  font-family: "FixelDisplay";
  font-style: normal;
  font-weight: 600;
  font-display: fallback;
  src: url("../fonts/FixelDisplay/FixelDisplay-SemiBold.ttf") format("opentype");
}
@font-face {
  font-family: "FixelDisplay";
  font-style: normal;
  font-weight: 700;
  font-display: fallback;
  src: url("../fonts/FixelDisplay/FixelDisplay-Bold.ttf") format("opentype");
}
@font-face {
  font-family: "FixelDisplay";
  font-style: normal;
  font-weight: 800;
  font-display: fallback;
  src: url("../fonts/FixelDisplay/FixelDisplay-ExtraBold.ttf") format("opentype");
}
@font-face {
  font-family: "FixelDisplay";
  font-style: normal;
  font-weight: 900;
  font-display: fallback;
  src: url("../fonts/FixelDisplay/FixelDisplay-Black.ttf") format("opentype");
}


.wpcf7-submit {
  transition: opacity 0.2s;
}

.popup-form .form-group-element.form-button .wpcf7-spinner{
  display: block;
}

.wpcf7-submit.cf7-loading {
  opacity: 0.7;
  cursor: not-allowed;
  pointer-events: none;
}

.cf7-spinner {
  display: inline-block;
  width: 14px;
  height: 14px;
  margin-left: 8px;
  border: 2px solid currentColor;
  border-top-color: transparent;
  border-radius: 50%;
  animation: cf7-spin 0.6s linear infinite;
  vertical-align: middle;
}

.popup-form .form-group-element.form-button{
  position: relative;
  display: flex;
  align-items: center;
  justify-content: center;
}
.popup-form .form-group-element.form-button .cf7-loading{
  color: black;
}
.popup-form .form-group-element.form-button .wpcf7-spinner{
  position: absolute;
  border: 1px solid #ccc;
}
.gallery-page.gallery {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(370px, 1fr));
  align-items: center;
  justify-content: space-around;
  justify-items: center;
  align-content: center;
  gap: 10px;
}
.gallery-page.gallery img {
  object-fit: cover;
  width: 100%;
  max-height: 300px;
  max-width: 500px;
  border-radius: 10px;
}

@keyframes cf7-spin {
  to { transform: rotate(360deg); }
}

/*# sourceMappingURL=main.css.map */
