/*!****************************************************************************************************************!*\
  !*** css ./node_modules/css-loader/dist/cjs.js!./node_modules/sass-loader/dist/cjs.js!./assets/sass/main.scss ***!
  \****************************************************************************************************************/
@import url(https://fonts.googleapis.com/css2?family=Montserrat:ital,wght@0,100..900;1,100..900&display=swap);
/*!********************************************************************************************************************!*\
  !*** css ./node_modules/css-loader/dist/cjs.js!./node_modules/sass-loader/dist/cjs.js!./assets/sass/main.scss (1) ***!
  \********************************************************************************************************************/
/*
    Mixins
-------------------------------------
*/
/*
    Variables
-------------------------------------
*/
/*
    Root
-------------------------------------
*/
:root {
  --navigation__background-color: transpartent;
  --navigation__width: 100%;
  --navigation__height: 98px;
  --navigation__fs: 1.063rem;
  --navigation-container__height: 100vh;
  --menu-item__space-s: 0.5rem;
  --menu-item__space-m: 1rem;
  --menu-item__space-l: 2rem;
  --menu-toggle__width: 2.5rem;
  --menu-toggle__height: 2rem;
  --menu-toggle-line__height: 4px;
  --menu-toggle-line__top: 0.75rem;
  --menu-icon-size: 1rem;
  --navigation__height--scrolled: 78px;
  --branding__max-width--scrolled: 199px;
  --branding__max-width: 249px;
  --section__space: 5.688rem;
  --section-content__space: 3rem;
  --section-cta__division: 30%;
  --section__gap: 2rem;
  --section__gap-space: 2rem;
  --content__spacing: 0 2rem;
  --content__space-xs: 0.5rem;
  --content__space-s: 1rem;
  --content__space-m: 2rem;
  --content__space-l: 3rem;
  --content-cta__space: 3rem;
  --page-title__top: -3rem;
  --page-title-image__height: 204px;
  --dropdown__width: 250px;
  --dropdown__height: auto;
  --dropdown__padding: 2rem;
  --dropdown-item__space: 1rem;
  --fs__global: 1.25rem;
  --fs__text-xs: 1.125rem;
  --fs__text-s: 1.25rem;
  --fs__text-l: 1.625rem;
  --fs__header-xs: 2.125rem;
  --fs__header-s: 2.75rem;
  --fs__header-m: 4.063rem;
  --fs__header-l: 5rem;
  --fs__header-xl: 6.25rem;
  --fs__header-op: 4.375rem;
  --table__fs: 1rem;
  --table__spacing: 0.625rem;
  --table-icon__size: 33px;
  --color-legend__size: 40px;
  --input__height: 63px;
  --textarea__height: 207px;
  --consent__fs: 0.75rem;
  --checkbox__size: 25px;
  --form-label__fs: 0.875rem;
  --tip__fs: 0.65rem;
  --button__height: 50px;
  --button__fs: 1.275rem;
  --button-icon__space: 1rem;
  --button__space: 1rem;
  --button-icon__size: 35px;
  --section-cta-link__fs: 1.375rem;
  --button-icon-primary__size: 38px;
  --hero-absolute-square__height: 329px;
  --hero-absolute-content__space: 4.25rem;
  --absolute-info__left: 3.5rem;
  --hero-item__space: 3rem;
  --hero-subheader__space: 1rem;
  --hero-absolute-info__space: 3rem;
  --hero-arrow__width: 26px;
  --hero-arrow__height: 58px;
  --splide-slide__height: 448px;
  --splide__space: calc((100vw - 1679px) / 2);
  --splide-arrow__size: 96px;
  --splide-arrow-prev__position: 16%;
  --gallery__grid: repeat(3, 1fr);
  --realizations-cta__space: 3rem;
  --realizations-single-gallery__height: 250px;
  --realizations-double-gallery__height: 215px;
  --map__height: 540px;
  --about-us-slogan-icon__size: 160px;
  --contact-item__space: 2rem;
  --contact-title__space: 2rem;
  --to-top__size: 45px;
  --to-top__bottom-position: 2rem;
  --to-top__right-position: 2rem;
  --footer-line__height: 278px;
}

/*
    Media queries
-------------------------------------
*/
@media screen and (max-width: 1750px) {
  :root {
    --navigation__background-color: #FFFFFF;
    --section__space: 5rem;
    --content__space-xs: 0.25rem;
    --content__space-s: 0.5rem;
    --content__space-m: 1rem;
    --content__space-l: 1.5rem;
    --fs__global: 1.125rem;
    --fs__text-xs: 1rem;
    --fs__text-s: 1.125rem;
    --fs__text-l: 1.475rem;
    --fs__header-xs: 2rem;
    --fs__header-s: 2.5rem;
    --fs__header-m: 3.75rem;
    --fs__header-l: 4.5rem;
    --fs__header-xl: 6.25rem;
    --fs__header-op: 4.063rem;
    --hero-absolute-square__height: 299px;
    --hero-absolute-content__space: 3.5rem;
    --hero-absolute-info__space: 2rem;
    --hero-arrow__width: 22px;
    --hero-arrow__height: 50px;
    --splide-slide__height: 420px;
    --splide__space: 2rem;
    --splide-arrow__size: 90px;
    --about-us-slogan-icon__size: 140px;
  }
}
@media screen and (max-width: 1450px) {
  :root {
    --section__space: 4.375rem;
    --section-content__space: 2rem;
    --section__gap: 1rem;
    --section__gap-space: 1rem;
    --content-cta__space: 2rem;
    --fs__text-l: 1.375rem;
    --fs__header-xs: 1.75rem;
    --fs__header-s: 2.25rem;
    --fs__header-m: 3.55rem;
    --fs__header-l: 4.25rem;
    --fs__header-xl: 5.75rem;
    --fs__header-op: 3.75rem;
    --color-legend__size: 35px;
    --input__height: 55px;
    --textarea__height: 177px;
    --section-cta-link__fs: 1.275rem;
    --button-icon-primary__size: 32px;
    --hero-absolute-square__height: 279px;
    --hero-absolute-content__space: 3rem;
    --map__height: 440px;
    --splide-slide__height: 375px;
    --splide-arrow__size: 80px;
    --about-us-slogan-icon__size: 120px;
    --contact-item__space: 1.5rem;
    --footer-line__height: 258px;
    --to-top__size: 40px;
  }
}
@media screen and (max-width: 1350px) {
  :root {
    --section__space: 3.75rem;
    --hero-absolute-content__space: 2rem;
    --hero-item__space: 2rem;
  }
}
@media screen and (max-width: 1200px) {
  :root {
    --navigation__height: 85px;
    --navigation-container__width: 50%;
    --navigation__fs: 1.75rem;
    --menu-item__space-s: 1rem;
    --navigation-cta-icon__size: 35px;
    --branding__max-width--scrolled: 159px;
    --navigation__height--scrolled: 70px;
    --branding__max-width: 189px;
    --section__space: 3.25rem;
    --section-cta__division: 40%;
    --content__space-s--mobile: 0.75rem;
    --content__space-m--mobile: 1rem;
    --page-title__top: -2rem;
    --page-title-image__height: 177px;
    --fs__global: 1rem;
    --fs__text-xs: 0.875rem;
    --fs__text-s: 1rem;
    --fs__text-l: 1.175rem;
    --fs__header-xs: 1.6rem;
    --fs__header-s: 2rem;
    --fs__header-m: 3rem;
    --fs__header-l: 3.75rem;
    --fs__header-xl: 5rem;
    --fs__header-op: 3.5rem;
    --table__fs: 0.875rem;
    --table__spacing: 0.375rem;
    --table-icon__size: 28px;
    --color-legend__size: 30px;
    --input__height: 50px;
    --textarea__height: 157px;
    --button__height: 40px;
    --button__fs: 1.125rem;
    --button__space: 0.75rem;
    --button-icon__size: 30px;
    --section-cta-link__fs: 1.125rem;
    --button-icon-primary__size: 26px;
    --hero-item__space: 1.5rem;
    --hero-absolute-info__space: 1.5rem;
    --absolute-info__left: 2rem;
    --hero-absolute-square__height: 249px;
    --map__height: 400px;
    --splide-slide__height: 350px;
    --splide__space: 0;
    --splide-arrow__size: 65px;
    --realizations-single-gallery__height: 185px;
    --realizations-double-gallery__height: 175px;
    --realizations-cta__space: 2rem;
    --about-us-slogan-icon__size: 100px;
    --gallery__grid: repeat(2, 1fr);
    --contact-title__space: 1rem;
    --footer-line__height: 218px;
    --to-top__size: 35px;
  }
}
@media screen and (max-width: 1050px) {
  :root {
    --fs__text-l: 1.125rem;
    --fs__header-xs: 1.375rem;
    --fs__header-s: 1.75rem;
    --fs__header-m: 2.75rem;
    --fs__header-l: 3.5rem;
    --fs__header-xl: 4.5rem;
    --fs__header-op: 3.25rem;
  }
}
@media screen and (max-width: 950px) {
  :root {
    --hero-absolute-info__space: 1rem;
    --hero-subheader__space: 0.5rem;
    --section__space: 3rem;
    --mobile-image__height: 400px;
  }
}
@media screen and (max-width: 767px) {
  :root {
    --navigation__height: 75px;
    --navigation-container__width: 100%;
    --navigation__fs: 1.5rem;
    --navigation-cta-icon__size: 30px;
    --menu-toggle__width: 2.25rem;
    --menu-toggle__height: 1.75rem;
    --branding__max-width--scrolled: 129px;
    --navigation__height--scrolled: 60px;
    --branding__max-width: 159px;
    --section__space: 2.75rem;
    --mobile-image__height: 350px;
    --page-title__top: -1.5rem;
    --page-title-image__height: 156px;
    --fs__header-xs: 1.275rem;
    --fs__header-s: 1.5rem;
    --fs__header-m: 2.5rem;
    --fs__header-l: 3rem;
    --fs__header-xl: 4rem;
    --fs__header-op: 2.75rem;
    --table__fs: 0.75rem;
    --table__spacing: 0.25rem;
    --table-icon__size: 23px;
    --color-legend__size: 20px;
    --button__fs: 1rem;
    --button__space: 0.5rem;
    --button-icon__space: 0.5rem;
    --button-icon__size: 25px;
    --section-cta-link__fs: 1rem;
    --button-icon-primary__size: 20px;
    --splide-arrow__size: 50px;
    --realizations-cta__space: 1rem;
    --about-us-slogan-icon__size: 80px;
    --gallery__grid: repeat(1, 1fr);
    --contact-item__space: 1rem;
    --footer-line__height: 178px;
    --to-top__bottom-position: 1rem;
    --to-top__right-position: 1rem;
  }
}
@media screen and (max-width: 550px) {
  :root {
    --menu-toggle__width: 2rem;
    --menu-toggle__height: 1.5rem;
    --mobile-image__height: 250px;
    --fs__header-xs: 1.175rem;
    --fs__header-s: 1.275rem;
    --fs__header-m: 2.25rem;
    --fs__header-l: 2.75rem;
    --fs__header-xl: 3rem;
    --fs__header-op: 2.125rem;
    --splide-arrow__size: 45px;
  }
}
/*
    Normalize
-------------------------------------
*/
body {
  background-color: #FFFFFF;
  font-family: "Montserrat", serif;
  font-size: var(--fs__global);
}

section.gallery-teaser {
  overflow: hidden;
}

p {
  font-weight: 300;
  color: #000000;
}

a {
  -webkit-transition: all 0.3s ease-in-out;
  -moz-transition: all 0.3s ease-in-out;
  -ms-transition: all 0.3s ease-in-out;
  -o-transition: all 0.3s ease-in-out;
  transition: all 0.3s ease-in-out;
}
a:visited, a:focus, a:active {
  color: #FFFFFF;
}
@media (hover: hover) {
  a:hover {
    color: #25921F;
  }
}

h3 {
  line-height: 1.4;
  font-weight: 600;
  font-size: var(--fs__text-l);
}

img {
  width: 100%;
  height: auto;
  object-fit: cover;
  -webkit-transition: all 0.3s ease-in-out;
  -moz-transition: all 0.3s ease-in-out;
  -ms-transition: all 0.3s ease-in-out;
  -o-transition: all 0.3s ease-in-out;
  transition: all 0.3s ease-in-out;
}

iframe {
  width: 100%;
}

svg {
  -webkit-transition: all 0.3s ease-in-out;
  -moz-transition: all 0.3s ease-in-out;
  -ms-transition: all 0.3s ease-in-out;
  -o-transition: all 0.3s ease-in-out;
  transition: all 0.3s ease-in-out;
}
svg path {
  -webkit-transition: all 0.3s ease-in-out;
  -moz-transition: all 0.3s ease-in-out;
  -ms-transition: all 0.3s ease-in-out;
  -o-transition: all 0.3s ease-in-out;
  transition: all 0.3s ease-in-out;
}

/*
    Buttons
-------------------------------------
*/
.btn {
  background-color: #25921F;
  display: flex;
  justify-content: center;
  align-items: center;
  color: #FFFFFF;
  padding: var(--button__space);
  border: 0;
  cursor: pointer;
  -webkit-transition: all 0.3s ease-in-out;
  -moz-transition: all 0.3s ease-in-out;
  -ms-transition: all 0.3s ease-in-out;
  -o-transition: all 0.3s ease-in-out;
  transition: all 0.3s ease-in-out;
}
.btn--primary {
  font-size: var(--button__fs);
  padding: calc(var(--button__space) + 0.125rem);
}
.btn--primary svg {
  width: var(--button-icon-primary__size);
  margin-right: var(--button-icon__space);
}
.btn:hover {
  background-color: #FFFFFF;
  color: #25921F;
  -webkit-box-shadow: 0 0 5px -2px rgb(0, 0, 0); /* Safari and older Chrome versions */
  -moz-box-shadow: 0 0 5px -2px rgb(0, 0, 0); /* Firefox */
  -ms-box-shadow: 0 0 5px -2px rgb(0, 0, 0); /* Internet Explorer */
  -o-box-shadow: 0 0 5px -2px rgb(0, 0, 0); /* Opera */
  box-shadow: 0 0 5px -2px rgb(0, 0, 0); /* Standard syntax */
}
.btn:hover svg path {
  stroke: #25921F;
}

.form__btn:hover svg path {
  stroke: #25921F;
}
.form__btn svg {
  margin-left: 0.5rem;
}

/*
    Form
-------------------------------------
*/
input[type=text],
input[type=email],
input[type=tel],
textarea {
  font-family: "Friends Normal";
  background-color: transparent;
  font-size: var(--fs__text-xs);
  color: #000000;
  border: 1px solid #DBDBDB;
  padding: 0.5rem;
  outline: 1px solid transparent;
  -webkit-transition: all 0.3s ease-in-out;
  -moz-transition: all 0.3s ease-in-out;
  -ms-transition: all 0.3s ease-in-out;
  -o-transition: all 0.3s ease-in-out;
  transition: all 0.3s ease-in-out;
}
input[type=text]:hover,
input[type=email]:hover,
input[type=tel]:hover,
textarea:hover {
  border: 1px solid transparent;
  -webkit-box-shadow: 0 0 5px -2px rgb(0, 0, 0); /* Safari and older Chrome versions */
  -moz-box-shadow: 0 0 5px -2px rgb(0, 0, 0); /* Firefox */
  -ms-box-shadow: 0 0 5px -2px rgb(0, 0, 0); /* Internet Explorer */
  -o-box-shadow: 0 0 5px -2px rgb(0, 0, 0); /* Opera */
  box-shadow: 0 0 5px -2px rgb(0, 0, 0); /* Standard syntax */
}
input[type=text]:focus,
input[type=email]:focus,
input[type=tel]:focus,
textarea:focus {
  padding: 0.5rem 1rem;
  color: #25921F;
  border: 1px solid transparent;
  -webkit-box-shadow: 0 0 5px -2px rgb(0, 0, 0); /* Safari and older Chrome versions */
  -moz-box-shadow: 0 0 5px -2px rgb(0, 0, 0); /* Firefox */
  -ms-box-shadow: 0 0 5px -2px rgb(0, 0, 0); /* Internet Explorer */
  -o-box-shadow: 0 0 5px -2px rgb(0, 0, 0); /* Opera */
  box-shadow: 0 0 5px -2px rgb(0, 0, 0); /* Standard syntax */
}
input[type=text]::placeholder,
input[type=email]::placeholder,
input[type=tel]::placeholder,
textarea::placeholder {
  color: #000000;
}
input[type=text]:focus-visible,
input[type=email]:focus-visible,
input[type=tel]:focus-visible,
textarea:focus-visible {
  outline: 1px solid #25921F;
}

input[type=text],
input[type=email],
input[type=tel] {
  width: 100%;
  height: var(--input__height);
  margin-bottom: 1.5rem;
}

textarea {
  width: 100%;
  height: var(--textarea__height);
  resize: none;
}

.wpcf7-list-item {
  line-height: 0.75;
  margin: 1rem 0.5rem 1rem 3rem;
  position: relative;
}
.wpcf7-list-item label {
  margin: 0;
}
.wpcf7-list-item .wpcf7-list-item-label {
  font-size: var(--consent__fs);
  color: #000000;
}
.wpcf7-list-item input[type=checkbox] {
  position: absolute;
  left: 0;
  width: 100%;
  height: 20px;
  opacity: 0;
}
.wpcf7-list-item input[type=checkbox] + span::before, .wpcf7-list-item input[type=checkbox] + span::after {
  content: "";
  position: absolute;
  left: -3rem;
  top: 0.375rem;
  height: var(--checkbox__size);
  width: var(--checkbox__size);
  cursor: pointer;
}
.wpcf7-list-item input[type=checkbox] + span::before {
  border: 1px solid #DBDBDB;
}
.wpcf7-list-item input[type=checkbox] + span::after {
  background: #DBDBDB none repeat scroll 0 0;
  opacity: 0;
  -webkit-transition: all 0.3s ease-in-out;
  -moz-transition: all 0.3s ease-in-out;
  -ms-transition: all 0.3s ease-in-out;
  -o-transition: all 0.3s ease-in-out;
  transition: all 0.3s ease-in-out;
}
.wpcf7-list-item input[type=checkbox]:checked + span::after {
  opacity: 1;
  -webkit-box-shadow: 0 0 5px -2px rgb(0, 0, 0); /* Safari and older Chrome versions */
  -moz-box-shadow: 0 0 5px -2px rgb(0, 0, 0); /* Firefox */
  -ms-box-shadow: 0 0 5px -2px rgb(0, 0, 0); /* Internet Explorer */
  -o-box-shadow: 0 0 5px -2px rgb(0, 0, 0); /* Opera */
  box-shadow: 0 0 5px -2px rgb(0, 0, 0); /* Standard syntax */
}

.wpcf7 form.invalid .wpcf7-response-output,
.wpcf7 form.unaccepted .wpcf7-response-output,
.wpcf7 form.payment-required .wpcf7-response-output,
.wpcf7-not-valid-tip,
.wpcf7 form.sent .wpcf7-response-output {
  font-size: var(--tip__fs);
}

.wpcf7 form.invalid .wpcf7-response-output,
.wpcf7 form.unaccepted .wpcf7-response-output,
.wpcf7 form.payment-required .wpcf7-response-output,
.wpcf7 form.sent .wpcf7-response-output {
  text-align: center;
  border: 0;
  padding: 0.5rem;
  margin: 1rem 0;
}

.wpcf7 form.invalid .wpcf7-response-output,
.wpcf7 form.unaccepted .wpcf7-response-output,
.wpcf7 form.payment-required .wpcf7-response-output {
  color: #dc3232;
}

.wpcf7 form.sent .wpcf7-response-output {
  color: #28a745;
}

.wpcf7-not-valid-tip {
  position: absolute;
  left: 0;
  top: 3rem;
}

/*
    Title
-------------------------------------
*/
.section-title {
  display: flex;
  justify-content: space-between;
  width: 100%;
  max-width: 1679px;
  margin: 0 auto;
}
.section-title__header {
  flex-basis: 50%;
}
.section-title .section-cta {
  display: flex;
  align-items: center;
  justify-content: space-between;
  flex-basis: var(--section-cta__division);
}
.section-title .section-cta__link {
  background-color: #25921F;
  width: 95px;
  height: 95px;
  display: flex;
  justify-content: center;
  align-items: center;
}
.section-title .section-cta__link:hover {
  background-color: #FFFFFF;
  -webkit-box-shadow: 0 0 10px -4px rgb(0, 0, 0); /* Safari and older Chrome versions */
  -moz-box-shadow: 0 0 10px -4px rgb(0, 0, 0); /* Firefox */
  -ms-box-shadow: 0 0 10px -4px rgb(0, 0, 0); /* Internet Explorer */
  -o-box-shadow: 0 0 10px -4px rgb(0, 0, 0); /* Opera */
  box-shadow: 0 0 10px -4px rgb(0, 0, 0); /* Standard syntax */
}
.section-title .section-cta__link:hover svg path {
  fill: #25921F;
}
.section-title .section-cta__description {
  flex-basis: 75%;
}

.page-title__content .page-title__header {
  margin-top: var(--page-title__top);
  padding: var(--content__spacing);
}
.page-title__content .page-title__image {
  height: var(--page-title-image__height);
}

/*
    Media queries
-------------------------------------
*/
@media screen and (max-width: 950px) {
  .section-title {
    flex-direction: column;
    justify-content: center;
  }
  .section-title .section-cta {
    margin-top: 2rem;
    justify-content: center;
  }
}
/*
    Scrolled
-------------------------------------
*/
.site-header {
  -webkit-transition: all 0.3s ease-in-out;
  -moz-transition: all 0.3s ease-in-out;
  -ms-transition: all 0.3s ease-in-out;
  -o-transition: all 0.3s ease-in-out;
  transition: all 0.3s ease-in-out;
}
.site-header.scrolled {
  background-color: rgba(255, 255, 255, 0.9);
  height: var(--navigation__height--scrolled);
  -webkit-box-shadow: 0 0 5px -2px rgb(0, 0, 0); /* Safari and older Chrome versions */
  -moz-box-shadow: 0 0 5px -2px rgb(0, 0, 0); /* Firefox */
  -ms-box-shadow: 0 0 5px -2px rgb(0, 0, 0); /* Internet Explorer */
  -o-box-shadow: 0 0 5px -2px rgb(0, 0, 0); /* Opera */
  box-shadow: 0 0 5px -2px rgb(0, 0, 0); /* Standard syntax */
}
.site-header.scrolled .site-branding img {
  max-width: var(--branding__max-width--scrolled);
}

/*
    Splide
-------------------------------------
*/
.gallery-teaser .splide__container {
  margin-top: var(--section-content__space);
  width: 100vw;
  padding-left: var(--splide__space);
}
.gallery-teaser .splide__container .splide__track .splide__list .splide__slide {
  height: var(--splide-slide__height) !important;
  margin-right: 2rem;
  -webkit-transition: all 0.3s ease-in-out;
  -moz-transition: all 0.3s ease-in-out;
  -ms-transition: all 0.3s ease-in-out;
  -o-transition: all 0.3s ease-in-out;
  transition: all 0.3s ease-in-out;
}
.gallery-teaser .splide__container .splide__track .splide__list .splide__slide .splide__link {
  display: flex;
  height: 100%;
}
.gallery-teaser .splide__container .splide__track .splide__list .splide__slide:hover {
  -webkit-box-shadow: 0 0 5px -2px rgb(0, 0, 0); /* Safari and older Chrome versions */
  -moz-box-shadow: 0 0 5px -2px rgb(0, 0, 0); /* Firefox */
  -ms-box-shadow: 0 0 5px -2px rgb(0, 0, 0); /* Internet Explorer */
  -o-box-shadow: 0 0 5px -2px rgb(0, 0, 0); /* Opera */
  box-shadow: 0 0 5px -2px rgb(0, 0, 0); /* Standard syntax */
  transform: scale(0.99);
  -o-transform: scale(0.99);
  -moz-transform: scale(0.99);
  -webkit-transform: scale(0.99);
}
.gallery-teaser .splide__container .splide__arrows .splide__arrow {
  background: #25921F;
  width: var(--splide-arrow__size);
  height: var(--splide-arrow__size);
  top: calc(-21% - 2px);
  opacity: 1;
  border-radius: 0;
  -webkit-transition: all 0.3s ease-in-out;
  -moz-transition: all 0.3s ease-in-out;
  -ms-transition: all 0.3s ease-in-out;
  -o-transition: all 0.3s ease-in-out;
  transition: all 0.3s ease-in-out;
}
.gallery-teaser .splide__container .splide__arrows .splide__arrow:hover {
  background-color: transparent;
  -webkit-box-shadow: 0 0 5px -2px rgb(0, 0, 0); /* Safari and older Chrome versions */
  -moz-box-shadow: 0 0 5px -2px rgb(0, 0, 0); /* Firefox */
  -ms-box-shadow: 0 0 5px -2px rgb(0, 0, 0); /* Internet Explorer */
  -o-box-shadow: 0 0 5px -2px rgb(0, 0, 0); /* Opera */
  box-shadow: 0 0 5px -2px rgb(0, 0, 0); /* Standard syntax */
}
.gallery-teaser .splide__container .splide__arrows .splide__arrow:hover svg path {
  stroke: #25921F;
}
.gallery-teaser .splide__container .splide__arrows .splide__arrow--prev {
  left: unset;
  right: var(--splide-arrow-prev__position);
  margin-right: 1rem;
}
.gallery-teaser .splide__container .splide__arrows .splide__arrow--prev svg {
  transform: unset;
}
.gallery-teaser .splide__container .splide__arrows .splide__arrow--next {
  right: 10%;
}

/*
    Media queries
-------------------------------------
*/
@media screen and (max-width: 767px) {
  .gallery-teaser .splide__container .splide__arrows .splide__arrow {
    top: unset;
    bottom: -27%;
  }
  .gallery-teaser .splide__container .splide__arrows .splide__arrow--prev {
    left: 25%;
  }
  .gallery-teaser .splide__container .splide__arrows .splide__arrow--next {
    right: 25%;
  }
}
/*
    To-top
-------------------------------------
*/
.to-top {
  background-color: #25921F;
  width: var(--to-top__size);
  height: var(--to-top__size);
  display: none;
  position: fixed;
  bottom: var(--to-top__bottom-position);
  right: var(--to-top__right-position);
  cursor: pointer;
  z-index: 9999;
  -webkit-transition: all 0.3s ease-in-out;
  -moz-transition: all 0.3s ease-in-out;
  -ms-transition: all 0.3s ease-in-out;
  -o-transition: all 0.3s ease-in-out;
  transition: all 0.3s ease-in-out;
}
.to-top:hover {
  background-color: transparent;
  -webkit-box-shadow: 0 0 10px -4px rgb(0, 0, 0); /* Safari and older Chrome versions */
  -moz-box-shadow: 0 0 10px -4px rgb(0, 0, 0); /* Firefox */
  -ms-box-shadow: 0 0 10px -4px rgb(0, 0, 0); /* Internet Explorer */
  -o-box-shadow: 0 0 10px -4px rgb(0, 0, 0); /* Opera */
  box-shadow: 0 0 10px -4px rgb(0, 0, 0); /* Standard syntax */
}
.to-top:hover svg path {
  fill: #25921F;
}
.to-top svg {
  width: var(--to-top-icon__width);
  height: var(--to-top-icon__height);
}

/*
    Global
-------------------------------------
*/
.section-cta {
  display: flex;
  justify-content: flex-end;
}
.section-cta__link {
  display: flex;
  align-items: center;
  font-size: var(--section-cta-link__fs);
  font-weight: 700;
  color: #25921F;
  margin-right: 1rem;
}
.section-cta__link:hover {
  color: #000000;
}
.section-cta__link:hover svg path {
  fill: #000000;
}
.section-cta--realizations {
  margin-top: var(--realizations-cta__space);
}
.section-cta--realizations svg {
  margin-left: 1rem;
}

.section-image__mask {
  position: absolute;
  z-index: -1;
}
.section-image__mask--primary {
  left: -0.75rem;
  top: -0.75rem;
  width: 20%;
}
.section-image__mask--secondary {
  right: -0.75rem;
  bottom: -0.75rem;
  width: 40%;
}
.section-image__mask--loc {
  left: calc(-1 * var(--section__space) / 2);
  bottom: calc(-1 * var(--section__space) / 2);
}
.section-image__mask--arch {
  right: calc(-1 * var(--section__space) / 2);
  bottom: calc(-1 * var(--section__space) / 2);
}

.gallery__image,
.gallery-item__image,
.section__image {
  -webkit-transition: all 0.3s ease-in-out;
  -moz-transition: all 0.3s ease-in-out;
  -ms-transition: all 0.3s ease-in-out;
  -o-transition: all 0.3s ease-in-out;
  transition: all 0.3s ease-in-out;
}
.gallery__image:hover,
.gallery-item__image:hover,
.section__image:hover {
  -webkit-box-shadow: 0 0 5px -2px rgb(0, 0, 0); /* Safari and older Chrome versions */
  -moz-box-shadow: 0 0 5px -2px rgb(0, 0, 0); /* Firefox */
  -ms-box-shadow: 0 0 5px -2px rgb(0, 0, 0); /* Internet Explorer */
  -o-box-shadow: 0 0 5px -2px rgb(0, 0, 0); /* Opera */
  box-shadow: 0 0 5px -2px rgb(0, 0, 0); /* Standard syntax */
  transform: scale(0.99);
  -o-transform: scale(0.99);
  -moz-transform: scale(0.99);
  -webkit-transform: scale(0.99);
}

.map {
  margin-bottom: var(--section__space);
}
.map .section__content .section__inner {
  display: flex;
}
.map .section__content .section__inner iframe {
  height: var(--map__height);
}

.table__icon {
  width: var(--table-icon__size);
  height: var(--table-icon__size);
}
.table__icon:hover path {
  stroke: #FFFFFF;
}

.text-value p {
  margin-bottom: 1rem;
}
.text-value strong {
  font-weight: 700;
}
.text-value ul {
  margin-left: 1.5rem;
}
.text-value ul li {
  list-style-type: disc;
  font-weight: 300;
  margin-bottom: 0.5rem;
}
.text-value ul li:last-of-type {
  margin-bottom: 0;
}

/*
    Navigation
-------------------------------------
*/
.site-header {
  background-color: var(--navigation__background-color);
  position: fixed;
  top: 0;
  left: 0;
  width: var(--navigation__width);
  height: var(--navigation__height);
  z-index: 99;
}
.site-header .navigation-container {
  display: flex;
  align-items: center;
  flex-basis: 65%;
  max-width: 1107px;
  gap: var(--menu-item__space-s);
}
.site-header .navigation-container .navigation-control .menu {
  display: flex;
}

.container-nav {
  display: flex;
  align-items: center;
}

.site-branding {
  flex-basis: 35%;
  max-width: 572px;
}
.site-branding a {
  display: flex;
}
.site-branding a img {
  max-width: var(--branding__max-width);
  -webkit-transition: all 0.3s ease-in-out;
  -moz-transition: all 0.3s ease-in-out;
  -ms-transition: all 0.3s ease-in-out;
  -o-transition: all 0.3s ease-in-out;
  transition: all 0.3s ease-in-out;
}
.site-branding a img:hover {
  transform: scale(0.97);
  -o-transform: scale(0.97);
  -moz-transform: scale(0.97);
  -webkit-transform: scale(0.97);
}

.menu-item {
  margin-right: var(--menu-item__space-l);
}
.menu-item:last-of-type {
  margin-right: 0;
}
.menu-item a {
  font-size: var(--navigation__fs);
  font-weight: 600;
  color: #000000;
  padding: 1rem 0.5rem;
  position: relative;
  -webkit-transition: all 0.3s ease-in-out;
  -moz-transition: all 0.3s ease-in-out;
  -ms-transition: all 0.3s ease-in-out;
  -o-transition: all 0.3s ease-in-out;
  transition: all 0.3s ease-in-out;
}
.menu-item a:hover {
  color: #25921F;
}
.menu-item a.active {
  color: #25921F;
}
.menu-item a::before {
  content: "";
  position: absolute;
  inset: 0;
  transform: scale(0);
  -o-transform: scale(0);
  -moz-transform: scale(0);
  -webkit-transform: scale(0);
  -webkit-transition: all 0.3s ease-in-out;
  -moz-transition: all 0.3s ease-in-out;
  -ms-transition: all 0.3s ease-in-out;
  -o-transition: all 0.3s ease-in-out;
  transition: all 0.3s ease-in-out;
}
.menu-item a.active::before, .menu-item a:hover::before {
  transform: scale(1);
  -o-transform: scale(1);
  -moz-transform: scale(1);
  -webkit-transform: scale(1);
  -webkit-box-shadow: 0 0 5px -2px rgb(0, 0, 0); /* Safari and older Chrome versions */
  -moz-box-shadow: 0 0 5px -2px rgb(0, 0, 0); /* Firefox */
  -ms-box-shadow: 0 0 5px -2px rgb(0, 0, 0); /* Internet Explorer */
  -o-box-shadow: 0 0 5px -2px rgb(0, 0, 0); /* Opera */
  box-shadow: 0 0 5px -2px rgb(0, 0, 0); /* Standard syntax */
}
.menu-item-17 {
  position: relative;
}

.sub-menu {
  background: rgba(255, 255, 255, 0.9);
  opacity: 0;
  visibility: hidden;
  transform: translateY(-10px);
  position: absolute;
  left: 0;
  top: 42px;
  width: var(--dropdown__width);
  height: var(--dropdown__height);
  padding: var(--dropdown__padding);
  transition: opacity 0.3s ease, transform 0.3s ease, top 0.3s ease;
  -webkit-box-shadow: 0 2px 6px -4px rgb(0, 0, 0); /* Safari and older Chrome versions */
  -moz-box-shadow: 0 2px 6px -4px rgb(0, 0, 0); /* Firefox */
  -ms-box-shadow: 0 2px 6px -4px rgb(0, 0, 0); /* Internet Explorer */
  -o-box-shadow: 0 2px 6px -4px rgb(0, 0, 0); /* Opera */
  box-shadow: 0 2px 6px -4px rgb(0, 0, 0); /* Standard syntax */
}
.sub-menu .menu-item {
  margin-bottom: var(--dropdown-item__space);
}
.sub-menu .menu-item:last-of-type {
  margin-bottom: 0;
}
.sub-menu .menu-item a {
  padding: 0.5rem;
}
.sub-menu.visible {
  opacity: 1;
  visibility: visible;
  transform: translateY(0);
}

.menu-item-has-children:hover .sub-menu,
.menu-item-17:hover .sub-menu {
  opacity: 1;
  visibility: visible;
  transform: translateY(0);
}

.menu-toggle {
  display: none;
}

.navigation-cta--mobile {
  display: none;
}

/*
    Media queries
-------------------------------------
*/
@media screen and (max-width: 1200px) {
  .site-header .navigation-container {
    justify-content: flex-end;
  }
  .site-header .navigation-control .menu-primary-container {
    position: absolute;
    top: 0;
    left: -100%;
    display: flex;
    justify-content: center;
    align-items: center;
    width: var(--navigation-container__width);
    height: var(--navigation-container__height);
    -webkit-box-shadow: 0 0 5px -2px rgb(0, 0, 0); /* Safari and older Chrome versions */
    -moz-box-shadow: 0 0 5px -2px rgb(0, 0, 0); /* Firefox */
    -ms-box-shadow: 0 0 5px -2px rgb(0, 0, 0); /* Internet Explorer */
    -o-box-shadow: 0 0 5px -2px rgb(0, 0, 0); /* Opera */
    box-shadow: 0 0 5px -2px rgb(0, 0, 0); /* Standard syntax */
    -webkit-transition: all 0.3s ease-in-out;
    -moz-transition: all 0.3s ease-in-out;
    -ms-transition: all 0.3s ease-in-out;
    -o-transition: all 0.3s ease-in-out;
    transition: all 0.3s ease-in-out;
    padding: 0 1rem;
    z-index: 98;
  }
  .site-header .navigation-control .menu-primary-container .menu {
    background-color: rgba(242, 242, 242, 0.95);
    justify-content: center;
    flex-direction: column;
    width: 100%;
    height: 100%;
    padding: 1rem;
  }
  .site-header .navigation-control.toggled .menu-primary-container {
    left: 0;
  }
  .site-header .navigation-control.toggled .menu-toggle__line:nth-of-type(1) {
    top: var(--menu-toggle-line__top);
    transform: rotate(135deg);
  }
  .site-header .navigation-control.toggled .menu-toggle__line:nth-of-type(2) {
    opacity: 0;
  }
  .site-header .navigation-control.toggled .menu-toggle__line:nth-of-type(3) {
    top: var(--menu-toggle-line__top);
    transform: rotate(-135deg);
  }
  .menu-item {
    margin: 0.5rem 0;
  }
  .menu-item a {
    display: flex;
    font-weight: 700;
    position: relative;
    padding-left: 1rem;
  }
  .menu-item a::after {
    content: "";
    background-color: #25921F;
    position: absolute;
    left: 0;
    top: 50%;
    transform: translateY(-50%);
    width: 4px;
    height: 100%;
  }
  .menu-item-17 {
    margin: 0;
  }
  .menu-item-44 {
    margin-top: 0;
  }
  .menu-item:last-of-type {
    margin-right: var(--menu-item__space-s);
  }
  .menu-toggle {
    background-color: transparent;
    display: block;
    width: var(--menu-toggle__width);
    height: var(--menu-toggle__height);
    border: 0;
    position: relative;
    outline: 0;
    z-index: 99;
    cursor: pointer;
    -webkit-transition: all 0.3s ease-in-out;
    -moz-transition: all 0.3s ease-in-out;
    -ms-transition: all 0.3s ease-in-out;
    -o-transition: all 0.3s ease-in-out;
    transition: all 0.3s ease-in-out;
  }
  .menu-toggle__line {
    background-color: #25921F;
    position: absolute;
    left: 0;
    display: block;
    width: 100%;
    height: var(--menu-toggle-line__height);
    -webkit-transition: all 0.3s ease-in-out;
    -moz-transition: all 0.3s ease-in-out;
    -ms-transition: all 0.3s ease-in-out;
    -o-transition: all 0.3s ease-in-out;
    transition: all 0.3s ease-in-out;
  }
  .menu-toggle__line:nth-of-type(1) {
    top: 0;
  }
  .menu-toggle__line:nth-of-type(2) {
    top: 44%;
  }
  .menu-toggle__line:nth-of-type(3) {
    bottom: 0;
  }
  .sub-menu {
    background-color: transparent;
    display: block;
    position: static;
    text-align: center;
    margin: var(--content__space-m--mobile) 0;
    opacity: 1;
    visibility: visible;
    box-shadow: none;
    transform: none;
    padding: 0;
  }
  .sub-menu .menu-item {
    margin: var(--content__space-s--mobile);
  }
  .sub-menu .menu-item a {
    font-size: calc(var(--navigation__fs) - 0.25rem);
    padding: 0.25rem 0.25rem 0.25rem 1rem;
  }
  .sub-menu .menu-item:last-of-type {
    margin-right: var(--menu-item__space-s);
  }
  .menu-item-has-children:hover .sub-menu {
    display: block;
  }
  .navigation-cta__link {
    display: flex;
  }
  .navigation-cta__icon {
    width: var(--navigation-cta-icon__size);
    height: var(--navigation-cta-icon__size);
  }
  .navigation-cta--mobile {
    display: block;
  }
}
/*
    Sections
-------------------------------------
*/
.section.hero .section__content, .section.about-place .section__content, .section.apartments-teaser .section__content, .section.location .section__content, .section.architecture .section__content {
  display: flex;
  justify-content: space-between;
}
.section.hero .section__content .section__inner .section__header, .section.about-place .section__content .section__inner .section__header, .section.apartments-teaser .section__content .section__inner .section__header, .section.location .section__content .section__inner .section__header, .section.architecture .section__content .section__inner .section__header {
  margin-bottom: var(--content__space-l);
}
.section.about-place, .section.architecture {
  border-bottom: 1px solid #DBDBDB;
}
.section.hero .section__content .section__inner {
  display: flex;
  position: relative;
}
.section.hero .section__content .section__inner:nth-of-type(1) {
  flex-basis: calc(36% + 2px);
}
.section.hero .section__content .section__inner:nth-of-type(1) .absolute-info {
  position: absolute;
  left: var(--absolute-info__left);
  top: 20%;
  z-index: 3;
}
.section.hero .section__content .section__inner:nth-of-type(1) .absolute-info .absolute__subheader {
  font-weight: 700;
  color: #25921F;
  margin-bottom: var(--hero-subheader__space);
}
.section.hero .section__content .section__inner:nth-of-type(1) .absolute-info .absolute__header {
  font-weight: 700;
  white-space: nowrap;
  margin-bottom: var(--hero-absolute-info__space);
}
.section.hero .section__content .section__inner:nth-of-type(1) .absolute-info .absolute-info__items {
  display: flex;
  text-align: center;
}
.section.hero .section__content .section__inner:nth-of-type(1) .absolute-info .absolute-info__items .absolute-info__item {
  margin-right: var(--hero-item__space);
}
.section.hero .section__content .section__inner:nth-of-type(1) .absolute-info .absolute-info__items .absolute-info__item:last-of-type {
  margin-right: 0;
}
.section.hero .section__content .section__inner:nth-of-type(1) .absolute-info .absolute-info__items .absolute-info__item .absolute-info__counter {
  font-size: calc(var(--fs__header-s) + 6px);
  font-weight: 300;
  line-height: 1;
  color: #25921F;
  margin-bottom: 0.5rem;
}
.section.hero .section__content .section__inner:nth-of-type(1) .absolute-info .absolute-info__items .absolute-info__item .absolute-info__description {
  font-size: calc(var(--fs__text-s) - 2px);
  font-weight: 700;
}
.section.hero .section__content .section__inner:nth-of-type(1) .absolute-square {
  position: absolute;
  top: 34%;
  left: 0;
  background-color: #F2F2F2;
  height: var(--hero-absolute-square__height);
  width: 150%;
}
.section.hero .section__content .section__inner:nth-of-type(1) .absolute-square .absolute-arrow {
  position: absolute;
  bottom: -2rem;
  left: var(--absolute-info__left);
  -webkit-transition: all 0.3s ease-in-out;
  -moz-transition: all 0.3s ease-in-out;
  -ms-transition: all 0.3s ease-in-out;
  -o-transition: all 0.3s ease-in-out;
  transition: all 0.3s ease-in-out;
}
.section.hero .section__content .section__inner:nth-of-type(1) .absolute-square .absolute-arrow:hover {
  bottom: -3rem;
}
.section.hero .section__content .section__inner:nth-of-type(1) .absolute-square .absolute-arrow svg {
  width: var(--hero-arrow__width);
  height: var(--hero-arrow__height);
}
.section.hero .section__content .section__inner:nth-of-type(2) {
  flex-basis: 70%;
}
.section.hero .section__content .section__inner:nth-of-type(2) .absolute-content {
  position: absolute;
  right: 0;
  bottom: calc(10% - 3px);
  background: linear-gradient(180deg, rgb(37, 146, 31) 0%, rgba(37, 146, 31, 0.9472163866) 0%);
  width: 48%;
  height: 280px;
  display: flex;
  justify-content: space-evenly;
  flex-direction: column;
  padding: var(--hero-absolute-content__space);
}
.section.hero .section__content .section__inner:nth-of-type(2) .absolute-content__header, .section.hero .section__content .section__inner:nth-of-type(2) .absolute-content__text {
  font-weight: 200;
  color: #FFFFFF;
}
.section.hero .section__content .section__inner:nth-of-type(2) .absolute-content__header {
  font-size: calc(var(--fs__header-s) + 6px);
  margin-bottom: 1rem;
}
.section.hero .section__content .section__inner:nth-of-type(2) .absolute-content__text {
  font-size: calc(var(--fs__text-s) + 6px);
}
.section.about-place {
  padding-bottom: var(--section__space);
}
.section.about-place .section__content .section__header {
  font-weight: 300;
}
.section.about-place .section__content .section__inner {
  display: flex;
}
.section.about-place .section__content .section__inner:nth-of-type(1) {
  flex-basis: calc(34% + 1px);
}
.section.about-place .section__content .section__inner:nth-of-type(2) {
  flex-direction: column;
  flex-basis: 66%;
  padding: var(--section__space);
}
.section.apartments-teaser {
  margin-top: var(--section__space);
}
.section.apartments-teaser .section__content {
  gap: 1rem;
  margin-top: var(--section-content__space);
}
.section.apartments-teaser .section__content .section__inner:nth-of-type(1) {
  background-color: #25921F;
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  flex-basis: 30%;
  padding: var(--content-cta__space);
  position: relative;
  -webkit-transition: all 0.3s ease-in-out;
  -moz-transition: all 0.3s ease-in-out;
  -ms-transition: all 0.3s ease-in-out;
  -o-transition: all 0.3s ease-in-out;
  transition: all 0.3s ease-in-out;
}
.section.apartments-teaser .section__content .section__inner:nth-of-type(1):hover {
  -webkit-box-shadow: 0 0 10px -4px rgb(0, 0, 0); /* Safari and older Chrome versions */
  -moz-box-shadow: 0 0 10px -4px rgb(0, 0, 0); /* Firefox */
  -ms-box-shadow: 0 0 10px -4px rgb(0, 0, 0); /* Internet Explorer */
  -o-box-shadow: 0 0 10px -4px rgb(0, 0, 0); /* Opera */
  box-shadow: 0 0 10px -4px rgb(0, 0, 0); /* Standard syntax */
}
.section.apartments-teaser .section__content .section__inner:nth-of-type(1) .section__header {
  color: #FFFFFF;
}
.section.apartments-teaser .section__content .section__inner:nth-of-type(1) .section-cta {
  display: flex;
  justify-content: flex-end;
  position: relative;
  z-index: 2;
}
.section.apartments-teaser .section__content .section__inner:nth-of-type(1) .section-cta__link:hover svg {
  transform: rotate(45deg);
}
.section.apartments-teaser .section__content .section__inner:nth-of-type(1) .section-cta__link:hover svg path {
  stroke: #DBDBDB;
}
.section.apartments-teaser .section__content .section__inner:nth-of-type(1) .absolute-mask {
  position: absolute;
  bottom: 0;
  right: 0;
  z-index: 1;
}
.section.apartments-teaser .section__content .section__inner:nth-of-type(2) {
  display: flex;
  flex-basis: 70%;
}
.section.location .section__content, .section.architecture .section__content {
  align-items: center;
}
.section.location .section__content .section__inner .section__text:first-of-type, .section.architecture .section__content .section__inner .section__text:first-of-type {
  font-weight: 600;
  color: #25921F;
}
.section.location {
  margin: var(--section__space) 0 calc(var(--section__space) + var(--section__space) / 2) 0;
}
.section.location .section__content .section__inner:nth-of-type(1) {
  flex-basis: 55%;
}
.section.location .section__content .section__inner:nth-of-type(2) {
  display: flex;
  flex-basis: 35%;
  position: relative;
}
.section.architecture {
  margin-top: var(--section__space);
  padding-bottom: calc(var(--section__space) + var(--section__space) / 2);
}
.section.architecture .section__content .section__inner:nth-of-type(1) {
  display: flex;
  flex-basis: 35%;
  position: relative;
}
.section.architecture .section__content .section__inner:nth-of-type(2) {
  flex-basis: 55%;
}
.section.gallery-teaser {
  padding: var(--section__space) 0;
}

/*
    Media queries
-------------------------------------
*/
@media screen and (max-width: 1350px) {
  .section.hero .section__content .section__inner:nth-of-type(2) .absolute-content {
    bottom: 0;
    width: 100%;
    height: auto;
  }
}
@media screen and (max-width: 950px) {
  .section.hero {
    margin: var(--navigation__height) 0 var(--section__space) 0;
  }
  .section.hero .section__content {
    flex-direction: column;
  }
  .section.hero .section__content .section__inner:nth-of-type(1) .absolute-info {
    background-color: #F2F2F2;
    position: static;
    width: 100%;
    padding: 2rem;
    margin-bottom: -9%;
  }
  .section.hero .section__content .section__inner:nth-of-type(1) .absolute-info .absolute__header {
    white-space: unset;
  }
  .section.hero .section__content .section__inner:nth-of-type(1) .absolute-square {
    display: none;
  }
  .section.hero .section__content .section__inner:nth-of-type(1) .absolute-square .absolute-arrow {
    display: none;
  }
  .section.hero .section__content .section__inner:nth-of-type(2) {
    flex-direction: column;
  }
  .section.hero .section__content .section__inner:nth-of-type(2) .absolute-content {
    background: #25921F;
    position: static;
    margin-top: -8%;
  }
  .section.about-place .section__content {
    flex-direction: column;
  }
  .section.about-place .section__content .section__inner {
    flex-basis: 100%;
  }
  .section.about-place .section__content .section__inner:nth-of-type(1) .section__icon {
    height: var(--mobile-image__height);
    object-position: 0 10%;
  }
  .section.about-place .section__content .section__inner:nth-of-type(2) {
    margin-top: 2rem;
    padding: 0;
  }
  .section.apartments-teaser .section__content {
    flex-direction: column;
  }
  .section.location .section__content .section__inner, .section.architecture .section__content .section__inner {
    flex-basis: 100%;
  }
  .section.location .section__content {
    flex-direction: column;
  }
  .section.location .section__content .section__inner:nth-of-type(1) {
    margin-bottom: 2rem;
  }
  .section.location .section__content .section__inner:nth-of-type(2) {
    width: 100%;
  }
  .section.location .section__content .section__inner:nth-of-type(2) .section__image {
    width: 100%;
    height: var(--mobile-image__height);
  }
  .section.location .section__content .section__inner:nth-of-type(2) .section-image__mask {
    display: none;
  }
  .section.architecture .section__content {
    flex-direction: column-reverse;
  }
  .section.architecture .section__content .section__inner:nth-of-type(2) {
    padding: 0;
    margin-bottom: 2rem;
  }
  .section.architecture .section__content .section__inner:nth-of-type(1) {
    width: 100%;
  }
  .section.architecture .section__content .section__inner:nth-of-type(1) .section__image {
    width: 100%;
    height: var(--mobile-image__height);
  }
  .section.architecture .section__content .section__inner:nth-of-type(1) .section-image__mask {
    display: none;
  }
}
@media screen and (max-width: 767px) {
  .section.gallery-teaser {
    padding: var(--section__space) 0 calc(var(--section__space) * 2) 0;
  }
}
/*
    Contact
-------------------------------------
*/
.contact__content {
  display: flex;
  justify-content: space-between;
  margin: var(--section__space) 0;
}
.contact__content .contact__inner {
  flex-basis: 45%;
}
.contact__content .contact__inner .contact-title {
  margin-bottom: var(--contact-title__space);
}
.contact__content .contact__inner .contact-title__header {
  font-weight: 800;
  font-size: calc(var(--fs__header-xs) - 0.25rem);
  color: #25921F;
}
.contact__content .contact__inner .contact__items .contact__item {
  display: flex;
  margin-bottom: var(--contact-item__space);
}
.contact__content .contact__inner .contact__items .contact__item:last-of-type {
  margin-bottom: 0;
}
.contact__content .contact__inner .contact__items .contact__item .contact__wrapper .contact__link {
  font-weight: 300;
  color: #000000;
}
.contact__content .contact__inner .contact__items .contact__item .contact__wrapper .contact__link:hover {
  color: #25921F;
}
.contact__content .contact__inner .contact__items .contact__item .contact__wrapper svg {
  margin-right: 1rem;
}
.contact__content .contact__inner .contact__items .contact__item .contact__wrapper:nth-of-type(1) {
  flex-basis: 10%;
}
.contact__content .contact__inner .contact__items .contact__item .contact__wrapper:nth-of-type(2) {
  flex-basis: 90%;
}
.contact__content .contact__inner .contact__form .form-cta {
  display: flex;
  align-items: center;
  margin-top: 1rem;
}

/*
    Media queries
-------------------------------------
*/
@media screen and (max-width: 767px) {
  .contact .contact__content {
    flex-direction: column-reverse;
  }
  .contact .contact__content .contact__inner {
    flex-basis: 100%;
  }
  .contact .contact__content .contact__inner:nth-of-type(2) {
    margin-bottom: 2rem;
  }
}
/*
    Footer
-------------------------------------
*/
.footer {
  border-top: 1px solid #DBDBDB;
  border-bottom: 1px solid #DBDBDB;
  padding: var(--section__space) 0;
  margin-bottom: var(--section__space);
}
.footer .footer__content {
  display: flex;
  justify-content: space-between;
  position: relative;
}
.footer .footer__content .footer__inner {
  flex-basis: 50%;
}
.footer .footer__content .footer__inner .footer__line {
  height: var(--footer-line__height);
}
.footer .footer__content .footer__inner:nth-of-type(1) {
  display: flex;
  align-items: center;
}
.footer .footer__content .footer__inner:nth-of-type(1) .footer__header,
.footer .footer__content .footer__inner:nth-of-type(1) .footer__text,
.footer .footer__content .footer__inner:nth-of-type(1) .footer__link {
  margin-bottom: var(--content__space-s);
}
.footer .footer__content .footer__inner:nth-of-type(1) .footer__link {
  display: flex;
  color: #000000;
  width: fit-content;
}
.footer .footer__content .footer__inner:nth-of-type(1) .footer__link:hover {
  color: #25921F;
}
.footer .footer__content .footer__inner:nth-of-type(1) .footer__link:nth-of-type(1) {
  font-weight: 600;
}
.footer .footer__content .footer__inner:nth-of-type(1) .footer__link:nth-of-type(2) {
  font-weight: 300;
}
.footer .footer__content .footer__inner:nth-of-type(1) svg {
  margin-right: 8%;
}
.footer .footer__content .footer__inner:nth-of-type(2) {
  display: flex;
  align-items: center;
}
.footer .footer__content .footer__inner:nth-of-type(2) .footer__menu-items {
  display: flex;
  flex-direction: column;
  flex-basis: 25%;
}
.footer .footer__content .footer__inner:nth-of-type(2) .footer__menu-items .footer__menu-item {
  color: #25921F;
  margin-bottom: var(--content__space-s);
}
.footer .footer__content .footer__inner:nth-of-type(2) .footer__menu-items .footer__menu-item:hover {
  color: #000000;
}
.footer .footer__content .footer__inner:nth-of-type(2) .footer__menu-items .footer__menu-item:last-of-type {
  margin-bottom: 0;
}
.footer .footer__content .company-info {
  position: absolute;
  left: 50%;
  transform: translateX(-50%);
  bottom: -2rem;
  text-align: center;
  width: 100%;
}
.footer .footer__content .company-info__link {
  font-size: 0.75rem;
  color: #DBDBDB;
}
.footer .footer__content .company-info__link:hover {
  color: #25921F;
}

/*
    Media queries
-------------------------------------
*/
@media screen and (max-width: 1350px) {
  .footer .footer__content .footer__inner:nth-of-type(2) {
    justify-content: center;
  }
  .footer .footer__content .footer__inner:nth-of-type(2) .footer__menu-items {
    flex-basis: 32%;
  }
}
@media screen and (max-width: 767px) {
  .footer .footer__content {
    flex-direction: column;
  }
  .footer .footer__content .footer__inner:nth-of-type(2) {
    margin: 2rem 0;
  }
}
/*
    Pages
-------------------------------------
*/
.pages.about-us {
  margin: var(--section__space) 0;
}
.pages.about-us .section__content .section__inner {
  margin-bottom: var(--content__space-l);
}
.pages.about-us .section__content .section__inner .section-slogan {
  display: flex;
  align-items: center;
  justify-content: space-between;
  max-width: 647.5px;
  margin: 0 auto;
}
.pages.about-us .section__content .section__inner .section-slogan__icon {
  flex-basis: 25%;
  width: var(--about-us-slogan-icon__size);
  height: var(--about-us-slogan-icon__size);
}
.pages.about-us .section__content .section__inner .section-slogan__text {
  flex-basis: 70%;
}
.pages.about-us .section__container {
  display: flex;
  justify-content: space-between;
  align-items: center;
}
.pages.about-us .section__container .section__inner:nth-of-type(1) {
  flex-basis: 45%;
  position: relative;
}
.pages.about-us .section__container .section__inner:nth-of-type(1) .section-absolute {
  position: absolute;
  left: 0;
  top: 50%;
  transform: translateY(-50%);
  background-color: #F2F2F2;
  width: 175%;
  height: 369px;
  z-index: -1;
}
.pages.about-us .section__container .section__inner:nth-of-type(1) .section__items {
  display: flex;
  justify-content: center;
}
.pages.about-us .section__container .section__inner:nth-of-type(1) .section__items .section__item {
  text-align: center;
  margin-right: 2rem;
}
.pages.about-us .section__container .section__inner:nth-of-type(1) .section__items .section__item .section__counter {
  font-weight: 300;
  color: #25921F;
}
.pages.about-us .section__container .section__inner:nth-of-type(1) .section__items .section__item .section__description {
  font-weight: 800;
}
.pages.about-us .section__container .section__inner:nth-of-type(1) .section__items .section__item:last-of-type {
  margin-right: 0;
}
.pages.about-us .section__container .section__inner:nth-of-type(2) {
  flex-basis: 55%;
}
.pages.about-us .section__container .section__inner:nth-of-type(2) .section-gallery__items .section-gallery__item {
  display: flex;
}
.pages.about-us .section__container .section__inner:nth-of-type(2) .section-gallery__items .section-gallery__item .gallery-item__link {
  display: flex;
}
.pages.about-us .section__container .section__inner:nth-of-type(2) .section-gallery__items .section-gallery__item:nth-of-type(1) {
  max-height: 266px;
  margin-bottom: var(--section__gap-space);
}
.pages.about-us .section__container .section__inner:nth-of-type(2) .section-gallery__items .section-gallery__item:nth-of-type(2) {
  justify-content: space-between;
  gap: var(--section__gap);
  max-height: 229px;
  min-height: 229px;
}
.pages.about-us .section__container .section__inner:nth-of-type(2) .section-gallery__items .section-gallery__item:nth-of-type(2) .gallery-item__link:nth-of-type(1) {
  flex-basis: 40%;
}
.pages.about-us .section__container .section__inner:nth-of-type(2) .section-gallery__items .section-gallery__item:nth-of-type(2) .gallery-item__link:nth-of-type(2) {
  flex-basis: 60%;
}
.pages.gallery {
  margin-bottom: var(--section__space);
}
.pages.gallery .section-navigation {
  display: flex;
  justify-content: center;
  margin: var(--section__space) 0;
}
.pages.gallery .section-navigation__btn {
  width: fit-content;
  font-weight: 700;
  cursor: pointer;
  margin: var(--content__space-m);
  padding-bottom: 0.5rem;
  border-bottom: 1px solid transparent;
  -webkit-transition: all 0.3s ease-in-out;
  -moz-transition: all 0.3s ease-in-out;
  -ms-transition: all 0.3s ease-in-out;
  -o-transition: all 0.3s ease-in-out;
  transition: all 0.3s ease-in-out;
}
.pages.gallery .section-navigation__btn:hover, .pages.gallery .section-navigation__btn.active {
  color: #25921F;
}
.pages.gallery .section-navigation__btn.active {
  display: flex;
  border-bottom: 1px solid #25921F;
}
.pages.gallery .gallery-content {
  display: none;
}
.pages.gallery .gallery-content.active {
  display: block;
}
.pages.gallery .gallery-content .gallery__items {
  display: grid;
  grid-template-columns: var(--gallery__grid);
  gap: var(--section__gap);
}
.pages.gallery .gallery-content .gallery__items .gallery__item .gallery__link {
  display: flex;
  width: 100%;
  height: 100%;
}
.pages.realizations {
  margin: var(--section__space) 0;
}
.pages.realizations .section__content .section__items .section__item {
  margin-bottom: var(--section__space);
}
.pages.realizations .section__content .section__items .section__item:last-of-type {
  margin-bottom: 0;
}
.pages.realizations .section__content .section__items .section__item .section-title {
  margin-bottom: 3rem;
}
.pages.realizations .section__content .section__items .section__item .section-container {
  display: flex;
  justify-content: space-between;
}
.pages.realizations .section__content .section__items .section__item .section-container .section__inner:nth-of-type(1) {
  flex-basis: 32%;
}
.pages.realizations .section__content .section__items .section__item .section-container .section__inner:nth-of-type(1) .section__gallery {
  display: flex;
  gap: var(--section__gap);
  position: relative;
}
.pages.realizations .section__content .section__items .section__item .section-container .section__inner:nth-of-type(1) .section__gallery .section__link {
  display: flex;
  width: 100%;
}
.pages.realizations .section__content .section__items .section__item .section-container .section__inner:nth-of-type(1) .section__gallery:nth-of-type(1) {
  margin-bottom: var(--section__gap-space);
}
.pages.realizations .section__content .section__items .section__item .section-container .section__inner:nth-of-type(1) .section__gallery:nth-of-type(1) .section__image {
  max-height: var(--realizations-single-gallery__height);
  min-height: var(--realizations-single-gallery__height);
}
.pages.realizations .section__content .section__items .section__item .section-container .section__inner:nth-of-type(1) .section__gallery:nth-of-type(2) {
  justify-content: space-between;
}
.pages.realizations .section__content .section__items .section__item .section-container .section__inner:nth-of-type(1) .section__gallery:nth-of-type(2) .section__image {
  max-height: var(--realizations-double-gallery__height);
  min-height: var(--realizations-double-gallery__height);
}
.pages.realizations .section__content .section__items .section__item .section-container .section__inner:nth-of-type(1) .section__gallery:nth-of-type(2) .section__link:nth-of-type(1) {
  flex-basis: 40%;
}
.pages.realizations .section__content .section__items .section__item .section-container .section__inner:nth-of-type(1) .section__gallery:nth-of-type(2) .section__link:nth-of-type(2) {
  flex-basis: 60%;
}
.pages.realizations .section__content .section__items .section__item .section-container .section__inner:nth-of-type(2) {
  flex-basis: 64%;
}
.pages.realizations .section__content .section__items .section__item .section-hidden-info {
  margin: calc(var(--section__space) / 2) 0;
}
.pages.apartments {
  margin: var(--section__space) 0 calc(var(--section__space) / 2) 0;
  overflow: hidden;
}
.pages.garages {
  margin: var(--section__space) 0;
}
.pages.garages .section__content .section__inner:nth-of-type(1) {
  margin-bottom: calc(var(--section__space) / 2);
}
.pages.privacy-policy, .pages.rodo-cookies {
  margin: var(--section__space) 0;
}
.pages.privacy-policy .section__content .section__inner .section__header, .pages.rodo-cookies .section__content .section__inner .section__header {
  font-weight: 700;
  color: #25921F;
  margin-bottom: 2rem;
}
.pages.privacy-policy .section__content .section-navigation, .pages.rodo-cookies .section__content .section-navigation {
  display: flex;
  justify-content: center;
  align-items: center;
  flex-wrap: wrap;
  gap: var(--section__gap);
  margin-top: var(--section__space);
}

.single-apartment {
  margin: var(--section__space) 0;
}
.single-apartment .section__content .section-navigation {
  display: flex;
  justify-content: space-between;
  margin-bottom: var(--section__space);
}
.single-apartment .section__content .section-navigation__btn svg {
  width: var(--button-icon__size);
  height: var(--button-icon__size);
}

/*
    Media queries
-------------------------------------
*/
@media screen and (max-width: 950px) {
  .pages.about-us .section__container {
    margin-top: var(--section__space);
    flex-direction: column;
  }
  .pages.about-us .section__container .section__inner:nth-of-type(1) .section-absolute {
    display: none;
  }
  .pages.about-us .section__container .section__inner:nth-of-type(1) .section__items {
    margin-bottom: 2rem;
  }
  .pages.realizations .section__content .section__items .section__item .section-container .section__inner:nth-of-type(1) .section__gallery:nth-of-type(2) {
    flex-direction: column;
  }
  .pages.gallery .section-navigation {
    flex-direction: column-reverse;
    align-items: center;
  }
  .pages.gallery .gallery-category .gallery__items {
    flex-direction: column;
  }
}
@media screen and (max-width: 650px) {
  .pages.realizations .section__content .section__items .section__item .section-container {
    flex-direction: column;
  }
  .pages.realizations .section__content .section__items .section__item .section-container .section__inner:nth-of-type(1) {
    margin-bottom: 2rem;
  }
}
/*
    Post
-------------------------------------
*/
.single .post,
.single .archive,
.blog .post,
.blog .archive {
  margin-top: var(--navigation__height);
}
.single .post .archive__item,
.single .archive .archive__item,
.blog .post .archive__item,
.blog .archive .archive__item {
  display: flex;
  justify-content: space-between;
  align-items: center;
}
.single .post .archive__item .archive__inner:nth-of-type(1),
.single .archive .archive__item .archive__inner:nth-of-type(1),
.blog .post .archive__item .archive__inner:nth-of-type(1),
.blog .archive .archive__item .archive__inner:nth-of-type(1) {
  flex-basis: 20%;
}
.single .post .archive__item .archive__inner:nth-of-type(2),
.single .archive .archive__item .archive__inner:nth-of-type(2),
.blog .post .archive__item .archive__inner:nth-of-type(2),
.blog .archive .archive__item .archive__inner:nth-of-type(2) {
  flex-basis: 75%;
}

/*
    Containers
-------------------------------------
*/
.container-s {
  margin: 0 auto;
  height: 100%;
  max-width: 1295px;
}

.container-m,
.container-nav {
  margin: 0 auto;
  height: 100%;
  max-width: 1679px;
}

.container-l {
  margin: 0 auto;
  height: 100%;
  max-width: 1920px;
}

.container-xl {
  margin: 0 auto;
  height: 100%;
  max-width: 100%;
}

/*
    Media queries
-------------------------------------
*/
@media screen and (max-width: 1750px) {
  .p-2 {
    padding: var(--content__spacing);
  }
}
.text-xs {
  font-size: var(--fs__text-xs);
  line-height: calc(var(--fs__text-xs) * 1.4);
}

.text-s {
  font-size: var(--fs__text-s);
  line-height: calc(var(--fs__text-s) * 1.4);
}

.text-l {
  font-size: var(--fs__text-l);
  line-height: calc(var(--fs__text-l) * 1.4);
}

.header-xs {
  font-size: var(--fs__header-xs);
  line-height: calc(var(--fs__header-xs) * 1.2);
}

.header-s {
  font-size: var(--fs__header-s);
  line-height: calc(var(--fs__header-s) * 1.2);
}

.header-m {
  font-size: var(--fs__header-m);
  line-height: calc(var(--fs__header-m) * 1.2);
}

.header-l {
  font-size: var(--fs__header-l);
  line-height: calc(var(--fs__header-l) * 1.2);
}

.header-xl {
  font-size: var(--fs__header-xl);
  line-height: calc(var(--fs__header-xl) * 1.2);
}

.header-op {
  font-size: var(--fs__header-op);
  line-height: calc(var(--fs__header-op) * 1.2);
}

@media screen and (max-width: 1200px) {
  .text-xs {
    font-size: var(--fs__text-xs);
    line-height: calc(var(--fs__text-xs) * 1.2);
  }
  .text-s {
    font-size: var(--fs__text-s);
    line-height: calc(var(--fs__text-s) * 1.2);
  }
  .text-l {
    font-size: var(--fs__text-l);
    line-height: calc(var(--fs__text-l) * 1.2);
  }
  .header-xs {
    font-size: var(--fs__header-xs);
    line-height: calc(var(--fs__header-xs) * 1.1);
  }
  .header-s {
    font-size: var(--fs__header-s);
    line-height: calc(var(--fs__header-s) * 1.1);
  }
  .header-m {
    font-size: var(--fs__header-m);
    line-height: calc(var(--fs__header-m) * 1.1);
  }
  .header-l {
    font-size: var(--fs__header-l);
    line-height: calc(var(--fs__header-l) * 1.1);
  }
  .header-xl {
    font-size: var(--fs__header-xl);
    line-height: calc(var(--fs__header-xl) * 1.1);
  }
  .header-op {
    font-size: var(--fs__header-op);
    line-height: calc(var(--fs__header-op) * 1.1);
  }
}
