@import url('https://fonts.googleapis.com/css2?family=Frank+Ruhl+Libre:wght@400;700&family=Rozha+One&display=swap');

@font-face {
    font-family: 'tt-hoves-pro';
    font-weight: 400;
    src: url(fonts/TT_Hoves_Pro_Regular.woff2) format('woff2');
}

@font-face {
    font-family: 'tt-hoves-pro';
    font-weight: 500;
    src: url(fonts/TT_Hoves_Pro_Medium.woff2) format('woff2');
}

* {
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
    -webkit-tap-highlight-color: rgb(0 0 0 / 0%);
}

html {
    scroll-behavior: smooth;
    scroll-padding-top: 7rem;
}

body {
    font-family: 'tt-hoves-pro', sans-serif;
    overflow-x: clip;
}

.h1, .h2, .h3, .h4, .h5, .h6, h1, h2, h3, h4, h5, h6 {
    font-weight: 400;
}

.page-template-page-serwis,
.page-template-page-ebook,
.page-template-page-galeria,
.page-template-page-kontakt,
.error404,
.page-template-page-inwestycje,
.page-template-default:not(.home),
.page-template-page-kariera,
.page-template-page-deweloper-moderna,
.archive,
.single:not(.single-inwestycje) {
    margin-top: 6.5rem;
}

.page-template-page-deweloper-moderna {
    @media (max-width: 991.98px) {
        margin-top: 60px;
    }
}

a:hover {
    text-decoration: none;
}

.backgroundWhite {
    background: #fff;
}

.backgroundGray {
    background: #eaebec;
}

.colorGreen {
    color: #023b3a;
}

.colorOrange {
    color: #b89a5b;
}

.colorYellow {
    color: #c26c30;
}

.colorWhite {
    color: #fff;
}

.colorGray {
    color: #dadada;
}

.colorDark {
    color: #000;
}

.colorDarkAlt {
    color: #3F4345;
}

.colorLight {
    color: #3f4345;
}

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

.font-weight-medium {
    font-weight: 500;
}

.font-weight-bold {
    font-weight: 700;
}

.object-fit-cover {
    object-fit: cover;
}

.btn {
    font-size: .75rem;
    line-height: 1.25;
    font-family: 'tt-hoves-pro', sans-serif;
    font-weight: 600;
    text-transform: uppercase;
    padding: 1rem 1.5rem;
}

.btn__icon {
    display: inline-flex;
    height: 1lh;
    align-items: center;
    vertical-align: top;
}

.z-n1 {
    z-index: -1;
}

.inset-0 {
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
}

.background-overlay {
    background-color: rgba(0, 0, 0, .3);
}

#script {
    margin-bottom: 30px;
}

#load {
    background: rgba(255, 255, 255, 0.8);
    animation: start 1s forwards;
    font-size: .875rem;
    z-index: 1031;
    top: 0;
}

@keyframes start {
    from {
        opacity: 1;
    }

    to {
        opacity: 0;
        visibility: hidden;
    }
}

#load.active {
    animation: end 1s forwards;
}

@keyframes end {
    from {
        opacity: 0;
        visibility: visible;
    }

    to {
        opacity: 1;
    }
}

#load svg {
    fill: #000;
    width: 15px;
    animation: svg 1s infinite;
}

@keyframes svg {
    100% {
        transform: rotate(360deg);
    }
}

header {
    transition: 0.15s;
    padding-bottom: 15px;
}

.page-template-page-serwis header,
.page-template-page-ebook header,
.page-template-page-intro header,
.page-template-page-podstrona-inwestycje header {
    z-index: 3;
    background: #fff;
}

header.active,
header.always-active {
    background: #fff;
    box-shadow: 0 0 1px rgba(63, 67, 69, 0.15);
}

header.slideDown {
    top: -75px !important;
}

header.slideUp {
    top: 0 !important;
}

.logo {
    height: 45px;
    margin-top: 15px;
    color: #fff;
    transition-property: color;
    transition-duration: 0.15s;
}

.page-template-page-serwis .logo,
.page-template-page-ebook .logo,
.page-template-page-intro .logo,
.page-template-page-galeria .logo,
.page-template-page-kontakt .logo,
.page-template-page-kariera .logo,
.page-template-page-podstrona-inwestycje .logo,
.error404 header:not(.active, .always-active) .logo,
.page-template-page-inwestycje .logo,
.page-template-default:not(.home) .logo,
.page-template-page-deweloper-moderna .logo,
.archive .logo,
.single .logo,
header.active .logo,
header.always-active .logo {
    color: #000;
}

#horizontal li,
.language {
    margin: 15px 30px 0 0;
}

#horizontal a {
    font-size: .875rem;
    transition: 0.15s;
    color: #fff;
}

.page-template-page-serwis #horizontal a,
.page-template-page-ebook #horizontal a,
.page-template-page-intro #horizontal a,
.page-template-page-galeria #horizontal a,
.page-template-page-kontakt #horizontal a,
.page-template-page-podstrona-inwestycje #horizontal a,
.error404 #horizontal a,
.page-template-page-inwestycje #horizontal a,
.page-template-default:not(.home) #horizontal a,
.page-template-page-kariera #horizontal a,
.page-template-page-deweloper-moderna #horizontal a,
.archive #horizontal a,
.single #horizontal a,
header.active #horizontal a,
header.always-active #horizontal a {
    color: #000;
}

#horizontal .current-menu-item a,
#horizontal .current-page-ancestor a,
#horizontal a:hover {
    color: #b89a5b !important;
}

.language a {
    transition: 0.15s;
    font-size: .75rem;
}

.language a + a {
    margin-left: 5px;
}

.page-template-page-serwis .language a,
.page-template-page-ebook .language a,
.page-template-page-intro .language a,
.page-template-page-galeria .language a,
.page-template-page-kontakt .language a,
.page-template-page-kariera .language a,
.page-template-page-podstrona-inwestycje .language a,
.error404 .language a,
.page-template-page-inwestycje .language a,
.page-template-default:not(.home) .language a,
.page-template-page-deweloper-moderna .language a,
.archive .language a,
.single .language a,
header.active .language a,
header.always-active .language a{
    color: #000;
}

.language a:hover {
    color: #b89a5b !important;
}

#show {
    margin-top: 15px;
}

#show span {
    width: 30px;
    height: 2px;
    background: #fff;
}

.page-template-page-serwis #show span,
.page-template-page-ebook #show span,
.page-template-page-intro #show span,
.page-template-page-galeria #show span,
.page-template-page-kontakt #show span,
.page-template-page-kariera #show span,
.page-template-page-podstrona-inwestycje #show span,
.error404 #show span,
.page-template-page-inwestycje #show span,
.page-template-default:not(.home) #show span,
.page-template-page-deweloper-moderna #show span,
.archive #show span,
.single #show span,
header.active #show span,
header.always-active #show span {
    background: #000;
}

#show span:nth-child(2) {
    margin: 5px 0;
    transition: 0.15s;
}

#show:hover span:nth-child(2) {
    margin-left: -5px;
}

#slider {
    min-height: 480px;
    padding: 75px 0 65px;
}

.slider {
    background-position: center;
    background-size: cover;
    top: 0;
}

.source {
    min-width: 100%;
    min-height: 100%;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
}

.ws-section-category {
    padding-bottom: 2rem;
}

.home .ws-section-category,
.page-template-page-deweloper-moderna .ws-section-category {
    margin-top: 30px;
}

.page-template-page-podstrona-rozwiazania-premium .ws-section-category,
.page-template-page-podstrona-aranzacje-model-m .ws-section-category,
.page-template-page-rozwiazania-premium .ws-section-category,
.page-template-page-aranzacje-model-m .ws-section-category {
    padding-top: 7rem;
}

.page-template-page-ebook .ws-section-category,
.page-template-page-intro .ws-section-category,
.page-template-page-podstrona-inwestycje .ws-section-category {
    padding: 12rem 0 6.75rem;
}

.container {
    padding: 0 1.5rem;
    max-width: 1280px;
}

.fillOrange {
    fill: #b89a5b;
}

.fillWhite {
    fill: #fff;
}

.fillLight {
    fill: #000;
}

.fillDark {
    fill: #adadad;
}

.btn:focus {
    box-shadow: none;
}

.btnWhite {
    font-size: .875rem;
    margin-top: 30px;
    border-color: #fff;
}

.btnWhite:hover {
    background: #fff;
    color: #000;
}

.btnDefault {
    font-size: .875rem;
}

.btnDefault img,
.btnDefault svg {
    width: 15px;
    margin-right: 10px;
}

.btnDefault span + svg,
.btnDefault span + img {
    margin-left: 10px;
    margin-right: 0;
}

.btnBorder {
    font-size: .875rem;
    border-bottom: 1px solid #b89a5b;
    margin-top: 30px;
}

.btnBorder:hover {
    color: #b89a5b;
}

.btnDark {
    font-size: .875rem;
    margin-top: 30px;
    border: 1px solid #000;
    background: #000;
}

.btnDark:hover {
    background: #4a4a4a;
    color: #fff;
    border-color: #4a4a4a;
}

.btnReset {
    margin-top: 30px;
    font-size: .875rem;
    padding: 1rem;
    background: #f4f4f4;
}

.btnReset:hover,
.btnMore:hover {
    background: #000;
    color: #fff;
}

.btnMore {
    font-size: .625rem;
    padding: .3125rem .625rem;
    background: #f4f4f4;
}

.file {
    background: #000;
    padding: .5rem .75rem;
    font-size: .875rem;
    margin: .5rem 0 0 1rem;
}

.file:hover {
    color: #fff;
}

.ask {
    margin: 30px 15px 0 0;
    background: #fff;
    font-size: .875rem;
    border: 1px solid #fff;
}

.ask:hover {
    background: #dbdbdb;
    border-color: #dbdbdb;
    color: #4a4a4a;
}

.thumbnail {
    margin-top: 30px;
}

.contents + .thumbnail {
    margin-top: 15px;
}

.outside {
    background: rgba(0, 0, 0, 0.5);
    transition: 0.15s;
}

.outside:not(.active) {
    opacity: 0;
}

.outside:hover {
    opacity: 1;
    background: rgba(0, 0, 0, 0.25);
}

.inside {
    padding: 0 30px 30px;
}

.inside img {
    max-width: 120px;
}

.ws-section-video .video {
    aspect-ratio: 16 / 9;
}

.ws-section-video iframe {
    width: 100%;
    height: auto;
    aspect-ratio: 16 / 9;
    display: block;
}

.video {
    margin-top: 30px;
}

.video .d-flex {
    z-index: 1;
    background-position: top;
    background-size: cover;
    transition: 0.15s;
}

.video .active {
    opacity: 0;
    visibility: hidden;
}

.video a {
    font-size: .875rem;
    margin: 30px;
    padding-bottom: 120px;
    background: url(images/video.svg) no-repeat bottom;
    background-size: auto 100px;
    transition: 0.15s;
    text-align: center;
}

.video a:hover {
    color: #b89a5b;
}

.group {
    transition: 0.15s;
    opacity: 0;
    font-size: .75rem;
    margin-top: 15px;
}

.outside:hover .group {
    opacity: 1;
}

.group a + a {
    margin-left: 15px;
}

.group svg {
    width: 15px;
    margin-right: 10px;
}

.header {
    margin-top: 30px;
    font-size: 1.125rem;
}

.header a {
    transition: 0.15s;
}

.header a:hover {
    color: #b89a5b;
}

#pagination {
    transform: translatey(-100%);
    margin-top: -30px;
}

#pagination .d-block {
    border-bottom: 5px solid rgba(255, 255, 255, 0.5);
    transition: 0.15s;
    padding-bottom: 15px;
    font-size: .75rem;
    color: rgba(255, 255, 255, 0.5);
}

#pagination .active,
#pagination .d-block:hover {
    border-color: #fff;
    color: #fff;
}

.subtitle h2 {
    margin: 30px 0 0;
    font-size: 1.875rem;
}

.on {
    margin-top: 30px;
    border-bottom: 2px solid #fff;
    transition: 0.15s;
}

.on:hover {
    border-color: #b89a5b;
}

.in {
    padding: 0 30px 30px;
}

.in svg {
    width: 15px;
    margin: 2px 0 0 10px;
    opacity: 0;
    transition: 0.15s;
}

.on:hover svg {
    opacity: 1;
}

#news {
    padding-bottom: 30px;
    background: #fafafa;
}

.news {
    padding-bottom: 15px;
    border-bottom: 1px solid #000;
    margin-top: 30px;
    transition: 0.15s;
}

.news:hover {
    border-color: #b89a5b;
}

.news svg {
    width: 15px;
    margin: 4px 0 0 10px;
}

#offer {
    margin-top: 30px;
    border: solid #000;
    border-width: 1px 0;
    padding: 0 30px 30px;
}

footer {
    background: #000;
    padding-bottom: 30px;
}

body:not(.page-template-page-rozwiazania-premium) footer {
    margin-top: 30px;
}

.footer-placeholder-spacer {
    margin-top: 30px;

    @media (min-width: 992px) {
        margin-top: 60px;
    }
}

.share a {
    margin: 15px 15px 0 0;
}

.share svg {
    fill: #fff;
    height: 15px;
    transition: 0.15s;
}

.share svg:hover {
    fill: #b89a5b;
}

.container-fluid {
    padding: 0 30px;
}

nav {
    background: #000;
    top: 0;
    z-index: 1030;
    display: none;
}

#nav {
    overflow: auto;
    padding-bottom: 30px;
}

#hide {
    width: 30px;
    height: 30px;
    margin-top: 30px;
}

#hide span {
    height: 2px;
    background: #fff;
    transform: rotate(45deg);
    top: 50%;
    transition: 0.15s;
}

#hide span + span {
    transform: rotate(-45deg);
}

#hide:hover span {
    transform: none;
}

#nav .navbar-nav {
    margin-top: 30px;
}

#nav li + li {
    margin-top: 15px;
}

#nav li a {
    transition: 0.15s;
}

#vertical a {
    font-size: 1.125rem;
    color: #fff;
}

#submenu a {
    font-size: 1.125rem;
    color: #a3a3a3;
}

#nav .navbar-nav a:hover {
    color: #b89a5b;
}

#blank,
#sheet {
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    background: #fff;
    z-index: 1030;
    padding: 30px 0;
    display: none;
}

#single,
#search,
#contact {
    background: #fff;
    top: 0;
    z-index: 1030;
    overflow: auto;
    padding: 30px 0;
    display: none;
}

.form-control {
    margin-top: 10px;
    padding: 15px;
    font-size: .875rem;
    border-color: #bcbdbe;
}

.bottom {
    padding: 30px 0 15px;
    border-width: 0 0 1px;
}

textarea.form-control {
    height: 67px;
    resize: none;
}

select.form-control {
    padding: 15px 40px 15px 11px;
    appearance: none;
    -moz-appearance: none;
    background: url(images/select.png) no-repeat right;
}

.form-control:focus {
    box-shadow: none;
    border-color: #b89a5b;
}

.invalid,
.invalid:focus {
    border-color: #dc3545;
}

.valid,
.valid:focus {
    border-color: #82ac8a;
}

.prop {
    margin-top: 15px;
}

.prop input {
    margin-top: 20px;
    cursor: pointer;
    width: 13px;
}

.checkbox {
    margin-top: 15px;
}

.checkbox input {
    margin-top: 20px;
    cursor: pointer;
    width: 13px;
}

label {
    font-size: .625rem;
    margin: 15px 0 0 -13px;
    cursor: pointer;
    width: 100%;
    padding-left: 23px;
    line-height: 23px;
}

.type {
    height: 76px;
    transition: 0.15s;
}

.type.active {
    height: auto;
}

.type:after {
    content: '';
    position: absolute;
    background: linear-gradient(transparent, #fff);
    top: 30px;
    right: 0;
    bottom: 0;
    left: 23px;
    transition: 0.15s;
}

.type.active:after {
    visibility: hidden;
    opacity: 1;
}

.toggle {
    margin-left: 23px;
}

.toggle img {
    width: 10px;
    transition: 0.15s;
}

.toggle.active img {
    transform: rotate(180deg);
}

.toggle span {
    margin-left: 10px;
    font-size: .625rem;
    line-height: 23px;
    cursor: pointer;
}

.toggle.active span,
.toggle span + span {
    display: none;
}

.toggle.active span + span {
    display: block;
}

.description {
    margin-top: 30px;
}

.description p {
    margin: 0;
    font-size: 1.125rem;
}

.description a {
    transition: 0.15s;
}

.description a:hover {
    color: #b89a5b;
}

.h3 {
    font-size: 1.5rem;
    padding-top: 30px;
}

.cross {
    width: 30px;
    height: 30px;
    border: 1px solid #000;
}

.cross span {
    height: 1px;
    background: #000;
    transform: rotate(45deg);
    top: 50%;
    transition: 0.15s;
    width: 20px;
    left: 50%;
    margin-left: -10px;
}

.cross span + span {
    transform: rotate(-45deg);
}

.cross:hover span {
    transform: none;
}

.post-type-archive-press-room #archive {
    padding-bottom: 30px;
    background: #fafafa;
    margin-bottom: -30px;
}

.single-press-room #archive {
    padding-bottom: 30px;
    background: #fafafa;
    margin: 30px 0 -30px;
}

.page-template-page-inwestycje #archive {
    padding-bottom: 30px;
    margin-top: 30px;
    background: #f4f4f4;
}

.page-template-page-aranzacje-model-m #page,
.page-template-page-podstrona-aranzacje-model-m #page {
    background: #f8f8f8;
    padding-bottom: 30px;
    margin: 30px 0 -30px;
}

#tab div {
    white-space: nowrap;
}

#tab div::-webkit-scrollbar {
    display: none;
}

#tab a {
    font-size: .75rem;
    color: #adadad;
    padding: 15px;
    border-bottom: 2px solid #fff;
    transition: 0.15s;
    margin-top: 30px;
}

#tab .active,
#tab a:hover {
    color: #000;
    border-color: #b89a5b;
}

.icon {
    width: 30px;
    margin: 4px 10px;
}

.contents {
    padding-top: 20px;
}

.smaller {
    font-size: .625rem;
    line-height: 18px;
}

.small {
    font-size: .75rem;
    line-height: 1.6;
}

.medium {
    font-size: .875rem;
    line-height: 1.6;
}

.large {
    font-size: 1.125rem;
    line-height: 1.6;
}

.larger {
    font-size: 1.5rem;
    line-height: 1.3;
}

.title {
    font-size: 2.25rem;
    line-height: 1;
}

.single .title {
    line-height: 1.3;
}

.single .contents h3 {
    line-height: 1.5;
}

.i {
    margin-right: 10px;
    width: 15px;
}

.excerpt h1,
.excerpt h2,
.excerpt h3 {
    margin: 0;
    padding-top: 30px;
    line-height: 1.8;
}

.excerpt p {
    font-size: .875rem;
    margin: 0;
    padding-top: 30px;
    line-height: 2;
}

.contents h1,
.contents h2,
.contents h3,
.contents p {
    margin: 10px 0 0;
}

.contents h1,
.excerpt h1 {
    font-size: 2.25rem;
}

.contents h2,
.excerpt h2 {
    font-size: 1.875rem;
}

.contents h3,
.excerpt h3 {
    font-size: 1.125rem;
}

.contents ul {
    list-style: none;
    margin: 0;
    padding: 0;
}

.contents li {
    margin-top: 10px;
    padding-left: 30px;
    position: relative;
}

.contents li:before {
    position: absolute;
    content: '';
    width: 15px;
    border-top: 1px solid #b89a5b;
    left: 0;
    top: .5lh;
}

.contents a {
    transition: 0.15s;
}

.contents a:not([class]) {
    color: #000;
    border-bottom: 2px solid #e6d3ab;
}

.contents a:hover {
    color: #b89a5b;
}

.contents a:not([class]):hover {
    background: #e6d3ab;
    color: #000;
}

.contents td {
    padding: 15px 0;
    border-bottom: 1px solid #bcbdbe;
}

.hr {
    margin-top: 30px;
    border-top: 1px solid #bcbdbe;
}

.tiny h2 {
    font-size: 1.875rem;
    margin: 0;
    padding-top: 30px;
    line-height: 1.8;
}

.tiny h3 {
    font-size: 1.125rem;
    margin: 0;
    padding-top: 30px;
    line-height: 1.8;
}

.tiny p {
    font-size: .875rem;
    margin: 0;
    padding-top: 30px;
    line-height: 2;
}

.tiny ul {
    margin: 15px 0 0;
    padding: 0;
    list-style-position: inside;
    font-size: .875rem;
    line-height: 2;
}

.finish {
    padding: 0 0 2rem;
    border-bottom: 1px solid #D0D0D0;

    @media (min-width: 992px) {
        padding: 0 2rem 2rem;
    }
}

.thead {
    padding: 15px;
    border-bottom: 1px solid #D0D0D0;
    border-top: 2px solid #000;
    margin-top: 30px;
    white-space: nowrap;
}

.thead [data-sort] {
    cursor: pointer;
    margin-left: 5px;
    width: 5px;
}

.stylesheet {
    max-height: 576px;
}

.tbody {
    padding: 15px;
    border-bottom: 1px solid #D0D0D0;
}

.tbody:nth-child(odd) {
    background: #fcfcfc;
}

.favorite {
    width: 15px;
    stroke: #3f4345;
    stroke-width: 1px;
    fill: rgba(63, 67, 69, 0.3);
    transition: 0.15s;
}

.tbody .favorite {
    cursor: pointer;
}

.favorite.active {
    fill: #3f4345;
}

#head a {
    margin-left: 30px;
}

#president {
    margin-top: 30px;
}

.pb {
    padding-bottom: 30px;
}

.px {
    padding-left: 30px;
    padding-right: 30px;
}

.ws-section-target {
    padding-bottom: 30px;
}

#entry {
    border-top: 5px solid #fafafa;
    margin-top: 30px;
}

.count {
    margin-top: 30px;
    font-size: .75rem;
}

.count a {
    width: 29px;
    height: 27px;
    background: url(images/count.svg);
    margin-left: 10px;
    transition: 0.15s;
    padding-bottom: 3px;
}

.count a:hover {
    color: #b89a5b;
}

.investment-bar-sticky {
    background: rgba(255, 255, 255, 0.15);
    color: #fff;
    top: 75px;
    z-index: 3;
    transition: 0.15s;
    padding-top: .75rem;
    font-size: .6875rem;
    line-height: 1.25;
    padding-bottom: .75rem;
    backdrop-filter: blur(6px) brightness(.9) saturate(1.5);
}

.investment-bar-sticky.active {
    background: rgba(88, 88, 88, 0.5);
}

.investment-bar-sticky svg.down {
    margin: 0;
}

.investment-bar-sticky__header {
    line-height: 1.35;
}

.investment-bar-sticky__header-title {
    font-size: .75rem;
    margin: 0;
    padding: 0;
    text-transform: uppercase;
}

.investment-bar-sticky__header-location {
    margin: 0;
    padding: 0;
}

.investment-bar-sticky__content .navbar-nav {
    @media (max-width: 991.98px) {
        margin-right: -1rem;
    }
}

.investment-bar-sticky__content .btn {
    @media (max-width: 991.98px) {
        margin-top: 1rem;
    }
}

.investment-bar-sticky.slideDown {
    top: 0;
}

.investment-bar-sticky.slideUp {
    top: 75px;
}

.investment-bar-sticky.background {
    background: rgba(88, 88, 88, 0.75);
}

.investment-bar-sticky .nav {
    font-size: .6875rem;
    line-height: 1.25;
    text-transform: uppercase;
}

.investment-bar-sticky li {
    margin: 0;
}

.investment-bar-sticky li a {
    display: block;
    color: #fff;
    transition: color 0.15s;
    padding: .75rem 1rem;
    line-height: 1;
}

.investment-bar-sticky li a:focus,
.investment-bar-sticky li a:hover {
    color: #b89a5b;
}

.rozha-one {
    font-family: 'Rozha One', serif;
}

#bookmark div {
    white-space: nowrap;
}

#bookmark div::-webkit-scrollbar {
    display: none;
}

#bookmark a {
    transition: 0.15s;
    color: #adadad;
    margin: 30px 15px 0;
}

#bookmark .active,
#bookmark a:hover {
    color: #000;
}

.gallery-button {
    display: flex;
    justify-content: center;
    align-items: center;
    margin-bottom: -50px;
}

.tr {
    margin-top: 30px;
}

.tr a {
    top: 50%;
    transition: 0.15s;
}

.tr .prev {
    left: 0;
    transform: translate(calc(-100% - 30px), -50%);
}

.tr .next {
    right: 0;
    transform: translate(calc(100% + 30px), -50%);
}

.tr a:hover {
    color: #b89a5b;
}

#table {
    width: 30px;
    height: 30px;
    border: 1px solid #838383;
    transition: 0.15s;
    fill: #838383;
    padding: 6px;
    margin: 30px 0;
}

#table:hover {
    fill: #b89a5b;
    border-color: #b89a5b;
}

#scroll {
    transform: translatey(-100%);
}

#scroll svg {
    margin: 15px 0 30px;
    height: 15px;
    fill: none;
    stroke: #fff;
}

#twentytwenty {
    margin-top: 15px;
}

.zoom {
    transition: 1s;
}

.before {
    width: 75%;
    margin-right: 30px;
}

.after + div {
    margin: 0 0 0 30px;
}

.after,
.zoom-container.active .before {
    width: 25%;
}

.zoom-container.active .after {
    width: 75%;
}

#locations {
    margin: 0 -120px;
}

#locations a {
    opacity: 0;
    transition: 0.15s;
}

#locations .slick-current a {
    opacity: 1;
}

#mapbox {
    height: 320px;
}

#mapbox:focus {
    outline: none;
}

.tablist {
    border: solid #bcbdbe;
    border-width: 1px 0;
    padding-bottom: 15px;
    margin-top: 15px;
}

.tablist p {
    margin: 15px 0 0;
}

.slick-slide,
.slick-slide a {
    outline: none;
}

#awards .next {
    margin-left: 15px;
}

#awards .prev svg,
#awards .next svg {
    width: 30px;
}

#posts {
    margin-top: 30px;
}

#posts a {
    top: 50%;
    margin-top: -30px;
    z-index: 1;
}

#posts .next {
    left: 60px;
}

#posts svg {
    width: 60px;
    height: 60px;
    padding: 15px;
    background: #fff;
}

#posts .large {
    background: url(images/news.jpg) repeat-x center;
}

#posts span {
    background: #fff;
    padding: 0 15px;
    margin-left: -15px;
}

.down {
    height: 15px;
    margin-top: 15px;
}

.button a {
    margin: 30px 30px 0 0;
}

.button a:last-child {
    margin-right: 0;
}

#info {
    margin-top: 30px;
}

#info li + li {
    margin-left: 30px;
}

#info a {
    font-size: .75rem;
    color: #dadada;
    transition: 0.15s;
}

#info a:hover {
    color: #b89a5b;
}

#maps {
    bottom: 30px;
    left: 30px;
    background: #000;
    padding: 10px 15px;
    font-size: .875rem;
}

#maps:hover {
    color: #fff;
}

#number {
    margin-top: 30px;
}

.shade {
    background: rgba(0, 0, 0, 0.3);
    top: 0;
}

.wp-block-image {
    margin-top: 30px;
}

.wp-block-image img {
    height: auto;
}

#navigation {
    margin-top: 30px;
}

#navigation div + div {
    margin-left: 30px;
    padding-left: 30px;
    border-left: 1px solid #bcbdbe;
}

#navigation a {
    transition: 0.15s;
}

#navigation a:hover {
    color: #b89a5b;
}

#pictures {
    margin: 30px -25% 0 -15px;
}

#pictures a {
    margin: 0 15px;
}

.word {
    margin-right: 30px;
}

.quotation {
    border-left: 2px solid #b89a5b;
    padding: 0 0 0 30px;
    margin-top: 30px;
}

.caption {
    bottom: 0;
    padding: 0 15px 15px;
    background: #eaebec;
    border-bottom: 2px solid #eaebec;
    transition: 0.15s;
}

.thumbnail:hover div {
    border-color: #b89a5b;
}

.caption svg {
    width: 15px;
    margin: 2px 0 0 10px;
    opacity: 0;
    transition: 0.15s;
}

.thumbnail:hover svg {
    opacity: 1;
}

.danger {
    display: none;
    color: #dc3545;
}

.error {
    display: none;
    color: #dc3545;
}

.success {
    display: none;
    color: #28a745;
}

.dots {
    padding-top: 15px;
}

.dots a {
    padding: 10px;
    border: 1px solid #a5a5a5;
    width: 45px;
    margin-top: 15px;
    color: #a5a5a5;
    transition: 0.15s;
    font-size: .875rem;
}

.dots .active {
    color: #3f4345;
    border-color: #3f4345;
}

#iframe {
    box-shadow: 0 3px 6px #00000029;
    padding: 0 30px 30px;
}

#iframe iframe {
    min-height: 1707px;
    height: 100%;
}

.life {
    padding: 15px;
    background: #130c7c;
    height: 70px;
}

.ws-section-life {
    margin-top: 60px;
    padding: 30px 0 60px;
    background: #130c7c;
}

.ws-section-life img {
    max-width: 240px;
}

.callback {
    top: 15px;
    right: 0;
    bottom: 0;
    left: 0;
    padding: 30px;
    transition: 0.15s;
    opacity: 0;
    visibility: hidden;
    background: #fff;
}

#form .callback {
    background: #eaebec;
}

.callback.disabled {
    opacity: 1;
    visibility: visible;
}

.callback svg {
    background: #f8f4ea;
    fill: #b89a5b;
    width: 40px;
    padding: 5px;
}

.tekst {
    margin: 15px 0;
    font-size: 1.125rem;
}

.obszar_tekstowy {
    font-size: .875rem;
}

@media (min-width: 576px) {
    #locations .slick-current a {
        opacity: 0;
    }

    #locations .slick-current + div a {
        opacity: 1;
    }
}

@media (min-width: 992px) {
    #pagination .d-block {
        border-bottom-width: 1px;
    }

    .quotation {
        padding-left: 60px;
    }

    #bookmark a {
        margin: 30px 30px 0;
    }

    #locations .slick-current + div a {
        opacity: 0;
    }

    #locations .slick-current + div + div a {
        opacity: 1;
    }

    #posts {
        margin-top: 60px;
    }

    #posts .prev {
        left: -60px;
    }

    #posts .next {
        left: 0;
    }

    .ws-section-life {
        padding: 60px 0 90px;
        margin-top: 90px;
    }

    .before {
        margin-right: 108px;
    }

    .after + div {
        margin-left: 108px;
    }

    .larger {
        font-size: 1.875rem;
        line-height: 1.3;
    }

    .title {
        font-size: 3rem;
        line-height: 1;
    }

    .single .title {
        line-height: 1.3;
    }

    .single .contents h3 {
        line-height: 1.5;
    }

    #offer {
        margin-top: 60px;
    }

    .post-type-archive-press-room #archive {
        margin-bottom: -60px;
        padding-bottom: 60px;
    }

    .single-press-room #archive {
        margin: 60px 0 -60px;
        padding-bottom: 60px;
    }

    .page-template-page-inwestycje #archive {
        padding: 30px 0 60px;
        margin-top: 60px;
    }

    .page-template-page-aranzacje-model-m #page,
    .page-template-page-podstrona-aranzacje-model-m #page {
        padding-bottom: 60px;
        margin: 60px 0 -60px;
    }

    #entry {
        padding-top: 30px;
        margin-top: 60px;
    }

    .line {
        border-right: 1px solid #D0D0D0;
        margin-right: 30px;
        padding-bottom: 30px;
    }

    .pt {
        padding-top: 30px;
    }

    .pb {
        padding-bottom: 60px;
    }

    .px {
        padding-left: 60px;
        padding-right: 60px;
    }

    .number {
        padding: 0 30px 30px;
    }

    .col-6 + div .number {
        border-left: 1px solid rgba(255, 255, 255, 0.3);
    }

    #mapbox {
        height: 480px;
    }

    #vertical {
        border-right: 1px solid #484848;
        margin-right: 30px;
    }

    #slider {
        padding: 6.5rem 0 8rem;
    }

    .ws-section-category {
        padding-bottom: 4rem;
    }

    .home .ws-section-category,
    .page-template-page-deweloper-moderna .ws-section-category {
        margin-top: 4rem;
        padding-top: 2rem;
    }

    .page-template-page-podstrona-rozwiazania-premium .ws-section-category,
    .page-template-page-podstrona-aranzacje-model-m .ws-section-category,
    .page-template-page-rozwiazania-premium .ws-section-category,
    .page-template-page-aranzacje-model-m .ws-section-category {
        padding-top: 12rem;
        padding-bottom: 6rem;
    }

    .page-template-page-ebook .ws-section-category,
    .page-template-page-intro .ws-section-category,
    .page-template-page-podstrona-inwestycje .ws-section-category {
        padding: 14rem 0 8.5rem;
    }

    #table {
        margin-bottom: 60px;
    }

    #news {
        padding-bottom: 60px;
    }

    .even {
        margin-top: 90px;
    }

    footer {
        padding-bottom: 60px;
    }

    body:not(.page-template-page-rozwiazania-premium) footer {
        margin-top: 60px;
    }

    .zoom-container {
        margin-top: 30px;
    }

    .ws-section-target {
        padding: 30px 0 60px;
    }

    .contents h1,
    .excerpt h1 {
        font-size: 3rem;
    }

    .tiny h2,
    .contents h2,
    .excerpt h2 {
        font-size: 2.25rem;
    }

    .tiny h3,
    .contents h3,
    .excerpt h3 {
        font-size: 1.25rem;
    }

    .section {
        padding-top: 30px;
    }

    body:not(.home) .section {
        padding-top: 60px;
    }
}

.zoom-container {
    @media (max-width: 991.98px) {
        height: fit-content !important;
        flex-flow: column nowrap !important;
    }
}

.zoom-container .after,
.zoom-container .before {
    @media (max-width: 991.98px) {
        width: 100% !important;
    }
}

#attachments {
    border-bottom: 1px solid #000;
    padding-bottom: 60px;
}

.text {
    padding: 30px 0 60px;
}

#form {
    padding: 30px 0 60px;
    background: #eaebec;
}

#form .form-control {
    background: none;
}

#form .type:after {
    background: linear-gradient(transparent, #eaebec);
}

#form .line {
    border-color: #bcbdbe;
}

#flats {
    border: solid #767676;
    border-width: 1px 1px 1px 0;
    margin-top: 30px;
    overflow: hidden;
}

#flats li {
    border: solid #767676;
    border-width: 0 0 1px 1px;
    width: 50%;
    margin-bottom: -1px;
}

#flats a {
    color: #767676;
    font-size: .875rem;
    transition: 0.15s;
    padding: 10px 30px;
}

#flats .active,
#flats a:hover {
    color: #3f4345;
}

.flat {
    margin-top: 30px;
    padding: 0 30px 30px;
    box-shadow: 0 3px 6px rgba(0, 0, 0, 0.16);
}

.flat .font-weight-bold {
    font-size: 1rem;
}

.permalink {
    border: 1px solid #707070;
    color: #3f4345;
    font-size: .875rem;
    margin-top: 30px;
}

.permalink:hover {
    background: #707070;
    color: #fff;
}

#top {
    background: #3f4345;
}

#top a {
    background: #eaebec;
    padding: 0 15px;
    line-height: 60px;
    font-size: .625rem;
    transition: 0.15s;
}

#top a:hover {
    color: #fff;
    background: #3f4345;
}

#top img {
    height: 30px;
    margin: 15px 30px;
}

#flat {
    border: 1px solid #eaebec;
    margin-top: 90px;
}

#left {
    padding: 0 30px 30px;
}

#left a {
    margin-bottom: 15px;
    color: #000;
}

#right {
    padding: 15px 30px 30px;
}

#right a {
    border: 1px solid #000;
    background: #000;
    padding: 15px;
    margin-top: 30px;
    font-size: .875rem;
    color: #fff;
}

#right a:hover {
    background: none;
    color: #000;
}

#right td {
    padding: 15px 0;
    border-top: 1px solid #cecece;
}

#right .w-50 + td {
    border-left: 1px solid #cecece;
    padding-left: 15px;
}

.value {
    font-size: .625rem;
}

.key {
    font-size: 1.125rem;
}

.tbody {
    transition: 0.15s;
    cursor: pointer;
}

.tbody:hover {
    background: #f8f8f8;
}

.item {
    border: solid #fff;
    border-width: 0 2px;
}

#items img {
    min-height: 240px;
    height: calc(100vh - 158px);
    object-fit: cover;
}

.vertical {
    margin-top: 30px;
}

.vertical img {
    max-height: calc(100vh - 277px);
    min-height: 240px;
}

.horizontal p {
    margin: 30px 0 0;
}

.outerouter {
    overflow-y: auto;
    overflow-x: hidden;
    padding-right: 30px;
}

.outerouter::-webkit-scrollbar,
.stylesheet::-webkit-scrollbar {
    width: 10px;
}

.outerouter::-webkit-scrollbar-track,
.stylesheet::-webkit-scrollbar-track {
    background: #f4f4f4;
}

.outerouter::-webkit-scrollbar-thumb,
.stylesheet::-webkit-scrollbar-thumb {
    background: #000;
}

.innerinner {
    margin-top: -30px;
}

#loop {
    padding: 60px 0;
}

#loop span {
    height: 45px;
    transition: 0.15s;
    cursor: pointer;
}

.arrow {
    background: #eaebec;
    width: calc(50% - 45px);
}

#loop.active .arrow {
    opacity: 0;
    visibility: hidden;
}

.arrow:hover {
    background: #c4c7ca;
}

.arrow svg {
    width: 30px;
}

.toggletoggle {
    margin: 0 15px;
    border: 1px solid #000;
    width: 60px;
}

.toggletoggle:hover {
    background: #000;
}

.toggletoggle svg {
    width: 15px;
    transition: 0.15s;
}

.toggletoggle:hover svg {
    fill: #fff;
}

.sailing span,
.sailing2 span {
    font-size: .75rem;
    color: #767676;
    cursor: pointer;
    margin: 30px 15px 0 0;
}

.sailing :hover,
.sailing .active,
.sailing2 :hover,
.sailing2 .active {
    color: #000;
    text-decoration: underline;
}

.photo h4 {
    margin: 30px 0 0;
    font-size: 1.125rem;
    color: #000;
    font-weight: 700;
}

#bookmark {
    padding: 0 30px 30px 0;
    background: url(images/bookmark.svg) no-repeat right;
    background-size: 30px auto;
}

#order {
    margin: 0 30px;
}

.image {
    margin-top: 30px;
}

.lg-object {
    background: #fff;
}

@media (min-width: 992px) {
    #flats li {
        width: auto;
    }

    #bookmark {
        padding-right: 0;
        background: none;
    }

    #right {
        border-left: 1px solid #eaebec;
    }

    .outerouter {
        max-height: calc(100vh - 277px);
        min-height: 240px;
        overflow-y: auto;
        overflow-x: hidden;
        margin-top: 30px;
    }
}

.page-template-page-inwestycje #future-investments {
    margin-top: 9rem;
}

.page-template-page-inwestycje .planowana {
    background: #f4f4f4;
    padding: 18px;
}

.page-template-page-inwestycje .planowana p {
    line-height: 33px;
    margin-bottom: 2px;
    font-size: .75rem;
    text-transform: uppercase;
    font-weight: 400;
}

@media (max-width: 992px) {
    .page-template-page-inwestycje #future-investments {
        margin-top: 4rem;
    }

    #search .container {
        padding: 0;
    }

    #search .col-sm-6 {
        padding: 0 30px;
    }

    #search thead {
        padding: 4px;
    }

    #search div.col {
        text-align: center;
        font-size: .625rem;
    }

    .search_invest div.col span {
        font-size: .625rem;
    }

    .search_invest .container {
        padding: 0;
    }

    .search_invest .col-12 {
        padding: 0 30px;
    }

    .search_invest .col-sm-6 {
        padding: 0 30px;
    }

    .search_invest thead {
        padding: 4px;
    }

    .search_invest div.col {
        text-align: center;
        font-size: .625rem;
    }

    .search_invest div.col span {
        font-size: .625rem;
    }

    .page-template-page-inwestycje .planowana {
        padding: 12px;
    }

    .page-template-page-inwestycje .planowana p {
        line-height: 23px;
    }
}

.page-template-page-podstrona-inwestycje section.section .btn {
    margin-bottom: 1.5rem;
}

@media (min-width: 1420px) and (max-width: 1450px) {
    .page-template-page-podstrona-inwestycje section.section .offset-xl-2 {
        margin-left: 5.666667%;
        max-width: 43.333333%;
        flex: 0 0 43.333333%;
    }

    .page-template-page-podstrona-inwestycje section.section .col-xl-6 {
        -ms-flex: 0 0 51%;
        flex: 0 0 51%;
        max-width: 51%;
    }
}

@media (min-width: 1559px) and (max-width: 1601px) {
    .page-template-page-podstrona-inwestycje section.section .offset-xl-2 {
        margin-left: 9.666667%;
        max-width: 39.333333%;
        flex: 0 0 39.333333%;
    }

    .page-template-page-podstrona-inwestycje section.section .col-xl-6 {
        -ms-flex: 0 0 51%;
        flex: 0 0 51%;
        max-width: 51%;
    }
}

@media (min-width: 1534px) and (max-width: 1536px) {
    .page-template-page-podstrona-inwestycje section.section .offset-xl-2 {
        margin-left: 7.666667%;
        max-width: 41.333333%;
        flex: 0 0 41.333333%;
    }

    .page-template-page-podstrona-inwestycje section.section .col-xl-6 {
        -ms-flex: 0 0 51%;
        flex: 0 0 51%;
        max-width: 51%;
    }
}

@media (min-width: 1360px) and (max-width: 1369px) {
    .page-template-page-podstrona-inwestycje section.section .offset-xl-2 {
        margin-left: 2.666667%;
        max-width: 46.333333%;
        flex: 0 0 46.333333%;
    }

    .page-template-page-podstrona-inwestycje section.section .col-xl-6 {
        -ms-flex: 0 0 51%;
        flex: 0 0 51%;
        max-width: 51%;
    }
}

@media (min-width: 2050px) {
    .page-template-page-podstrona-inwestycje section.section .offset-xl-2 {
        margin-left: 24.666667%;
        max-width: 25.333333%;
        flex: 0 0 25.333333%;
    }

    .page-template-page-podstrona-inwestycje section.section .col-xl-6 {
        -ms-flex: 0 0 49%;
        flex: 0 0 49%;
        max-width: 49%;
    }

    .page-template-page-podstrona-inwestycje section.section .col-xl-6 .contents .w-auto {
        width: 100% !important;
    }
}

section.galeria_container {
    padding-top: 0 !important;
}

section.galeria_container .contents {
    padding-top: 0 !important;
}

section.galeria_container .contents p {
    margin: 0 !important;
}

.lg-slide .lg-image {
    /* width: 80vw !important; */
    object-fit: contain !important;
    background-color: transparent !important;
}

.lg-object.lg-image {
    background-color: #fff !important;
}


/* Apartments list */
[x-cloak] {
    display: none !important;
}

.apartments-list {
    transition: opacity 0.2s;
}

.apartments-list.apartments-list--loading {
    opacity: 0.7;
    pointer-events: none;
}

.apartments-list .apartments-list__label {
    color: #888888;
}

.apartments-list .rooms-selector {
    display: flex;
    gap: 16px;
}

.apartments-list select.form-control {
    margin-top: 0;
}

.apartments-list .btn-reset {
    display: inline-flex;
    align-items: center;
    gap: 4px;
    font-size: .75rem;
    margin-bottom: 10px;
}

.apartments-list .btn-reset:hover {
    color: #666;
}

.apartments-list .btn-reset svg {
    position: relative;
    top: 1px;
    width: 16px;
    height: auto;
}

.apartments-list .btn-more {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    font-size: .875rem;
    border: 1px solid #3F4345;
    margin-top: 30px;
    color: #3F4345;
    padding: 12px 20px;
}

.apartments-list .btn-more:hover {
    background-color: #eee;
}

.apartments-list .btn-more svg {
    position: relative;
    top: 1px;
    width: 16px;
    height: auto;
}

.apartments-list .btn-action {
    font-size: 12px;
    border: 1px solid #707070;
    text-transform: none;
    font-weight: 500;
    padding: .5rem 16px;
}

.apartments-list .btn-action--primary {
    background-color: #000;
    border: 1px solid #000;
    color: white;
}

.apartments-list .btn-action:hover {
    background-color: #eee;
}

.apartments-list .btn-action--primary:hover {
    background-color: #666;
    border-color: #666;
}

.apartments-list .btn-room {
    border: 1px solid #bcbdbe;
    color: #bcbdbe;
    padding: 15px;
    font-size: .875rem;
    text-align: center;
    width: 52px;
    font-weight: 400;
}

.apartments-list .btn-room--active {
    border: 1px solid #212529;
    outline: 1px solid #212529;
    color: #212529;
    font-weight: 700;
}

.apartments-list .thead {
    padding: 12px 0;
    display: flex;
    gap: 16px;
    justify-content: end;
    align-items: center;
    border-bottom: none;
}

.apartments-list .thead span {
    display: flex;
    justify-content: center;
    align-items: center;
    width: 24px;
    height: 24px;
    color: #bcbdbe;
    cursor: pointer;
    transition: color 0.25s;
}

.apartments-list .thead span.active {
    color: #000000;
}

.apartments-list .select-wrapper {
    display: flex;
    gap: 24px;
}

.apartments-list select {
    color: #bcbdbe;
}

.apartments-list .select-wrapper select {
    max-width: 82px;
}

.apartments-list select.active {
    color: #212529;
    outline: 1px solid #212529;
}

.apartments-list .grid-item {
    box-shadow: 0 3px 6px #00000029;
    border-radius: 8px;
    padding: 24px 4px;
    margin-bottom: 32px;
}

.apartments-list .grid-item header {
    display: flex;
    text-align: center;
    margin-bottom: 6px;
    color: #3F4345;
}

.apartments-list .grid-item header > div {
    flex: 1;
}

.apartments-list .grid-item header > div div {
    margin-bottom: 4px;
    text-transform: uppercase;
    font-size: .625rem;
}

.apartments-list .grid-item header > div a {
    font-size: 1rem;
    color: inherit;
}

.apartments-list .grid-item header > div span {
    font-size: 1rem;
}

.apartments-list .grid-item img {
    display: block;
    margin: 0 auto;
    max-height: 212px;
    width: auto;
}

.apartments-list .grid-item .grid-item__details {
    display: flex;
    justify-content: space-between;
    gap: 24px;
    margin: 16px 30px 0;
}

.apartments-list .grid-item .grid-item__actions {
    display: flex;
    justify-content: center;
    align-items: center;
    gap: 10px;
    margin: 16px 30px 0;
}

.apartments-list .grid-item .grid-item__actions > * {
    margin-bottom: 0;
    flex: 1;
}

.apartments-list .list-item {
    margin-bottom: 10px;
    padding-bottom: 10px;
    border-bottom: 2px solid #ddd;
}

.apartments-list .list-item__content {
    display: flex;
    gap: 10px;
}

.apartments-list .list-item__actions {
    display: flex;
    flex-direction: column;
    align-items: end;
    gap: 10px;
    margin-right: 24px;
}

.apartments-list .list-item__actions > * {
    width: 140px;
}

.apartments-list .list-item__content > div {
    flex: 1;
}

.apartments-list .list-item-image {
    max-width: 180px;
}

.apartments-list .list-item__label {
    font-size: .625rem;
    text-transform: uppercase;
    color: #3F4345;
    margin-bottom: 6px;
}

.apartments-list .list-item__label + span {
    font-size: 1rem;
    color: #3F4345;
}

.apartments-list .list-item__value {
    color: inherit;
}

.apartments-list .list-item__value-small,
.price-small {
    display: block;
    font-size: 8px;
    font-weight: 400;
    color: #767676;
}

.apartments-list .list-item__value,
.status-badge {
    &.available,
    &.reserved,
    &.sold,
    &.unknown {
        display: inline-block;
        padding: 4px 16px;
        border-radius: 4px;
        font-size: 8px;
        font-weight: 500;
        text-transform: uppercase;
        text-align: center;
    }

    &.available {
        background-color: #D5E6CF;
        color: #3F4345;
    }

    &.reserved {
        background-color: #F5F2C8;
        color: #3F4345;
    }

    &.sold,
    &.unknown {
        background-color: #EAEBEC;
        color: #767676;
    }
}

.single-apartment__status {
    text-align: right;
}

.single-apartment__status div.text-right {
    padding-right: 10px;
}

.price-history-btn {
    padding: 0;
    margin: 0;
    border: 0;
    background: transparent;
    cursor: pointer;
    outline: none;
    box-shadow: none;
    font-size: 8px;
    font-weight: 400;
    text-decoration: underline;
    color: #767676;
}

.price-history-btn:hover,
.price-history-btn:focus-visible,
.price-history-btn:focus,
.price-history-btn:active {
    color: #3F4345;
    outline: none;
    box-shadow: none;
}

.contiguity-list-table .contiguity-type {
    font-size: 12px;
}

.contiguity-list-table tr:not(:last-child) {
    border-bottom: 1px solid #ddd;
}

.contiguity-list-table tr:first-child td {
    padding-top: 0 !important;
}

@media (max-width: 991.98px) {
    .apartments-list .rooms-selector {
        gap: 10px;
    }

    .apartments-list .btn-room {
        max-width: none;
        flex: 1;
    }

    .apartments-list .thead,
    .apartments-list .grid-item {
        margin-left: 15px;
        margin-right: 15px;
    }

    .apartments-list .list-item-image {
        max-width: 100%;
    }

    .apartments-list .list-item__actions {
        margin-right: 0;
    }
}

@media (max-width: 575px) {
    .apartments-list select {
        max-width: 100% !important;
    }

    .apartments-list .grid-item .grid-item__actions,
    .apartments-list .grid-item .grid-item__details {
        flex-flow: column nowrap;
        margin: 16px 20px 0;
    }

    .apartments-list .list-item__actions > * {
        width: auto;
    }

    .apartments-list .grid-item .grid-item__actions .btn {
        width: 100%;
    }
}


/* Form modal */
.job-offer-modal,
.form-modal {
    display: none;
    position: fixed;
    z-index: 1040;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: rgba(0, 0, 0, .5);
}

.job-offer-modal.active,
.form-modal.active {
    display: block;
}

.job-offer-modal .job-offer-modal__close,
.form-modal .form-modal__close {
    position: absolute !important;
    top: 24px;
    right: 24px;
    cursor: pointer;
}

.job-offer-modal .job-offer-modal__heading,
.form-modal .form-modal__heading {
    font-size: 1.5rem;
    line-height: 1.3;
    margin-bottom: 32px;
    text-align: center;
}

.job-offer-modal .job-offer-modal__content,
.form-modal .form-modal__content {
    display: flex;
    flex-direction: column;
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    background: white;
    padding: 80px 75px;
    border-radius: 8px;
    width: 720px;
    box-shadow: 0 3px 6px rgba(0, 0, 0, 0.3);
    max-height: 90vh;
    overflow: auto;
}

.job-offer-modal .job-offer-modal__content form,
.form-modal .form-modal__content form {
    flex: 1;
    overflow: auto;
    padding: 0 15px;
}

@media (max-width: 767px) {
    .job-offer-modal .job-offer-modal__content,
    .form-modal .form-modal__content {
        padding: 60px 20px;
        width: 90%;
    }
}

/* Forms */
.wpcf7-form .form-control--wrapper {
    position: relative;
    margin-bottom: 20px;
}

.wpcf7-form .form-control--wrapper label {
    position: absolute;
    top: 20px;
    left: 0;
    font-size: .875rem;
    line-height: 1.3;
    color: #767676;
    transition: all 0.25s;
    pointer-events: none;
    margin: 0;
    opacity: 1;
}

.wpcf7-form .form-control {
    border: 1px solid #707070;
    padding: 18px 20px;
}

.wpcf7-form .form-control.invalid {
    border: 1px solid #dc3545;
}

.wpcf7-form textarea.form-control {
    height: 60px;
}

.wpcf7-form .form-control:not(:placeholder-shown) + label,
.wpcf7-form .form-control:focus + label {
    top: 4px;
    color: #000000;
    opacity: 0.5;
    font-size: .625rem;
}

.wpcf7-form input[type="checkbox"] {
    display: none;
}

.wpcf7-form input[type="checkbox"] + label {
    position: relative;
    margin: 0;
    padding-left: 43px;
    font-size: .75rem;
}

.wpcf7-form input[type="checkbox"] + label::before {
    content: '';
    display: block;
    position: absolute;
    top: 3px;
    left: 0;
    width: 15px;
    height: 15px;
    border: 1px solid #B89A5B;
    opacity: 0.5;
    transition: opacity 0.25s;
    background: rgba(184, 154, 91, 0.1);
}

.wpcf7-form input[type="checkbox"]:checked + label::before {
    opacity: 1;
}

.wpcf7-form input[type="checkbox"] + label::after {
    content: '\2713';
    display: block;
    position: absolute;
    top: 4px;
    left: 3px;
    font-size: .75rem;
    line-height: 1;
    transform: scale(0);
    transition: transform 0.1s;
}

.wpcf7-form input[type="checkbox"]:checked + label::after {
    transform: scale(1);
}

.wpcf7-form .toggle {
    margin-left: 43px;
    margin-top: 10px;
}

.wpcf7-form .type {
    transition: opacity 0.25s;
    opacity: 0.7;
}

.wpcf7-form .type.active {
    opacity: 1;
}

.wpcf7-form .type .contents.smaller.error {
    padding-top: 0;
}

/* Map */
.map--wrapper {
    position: relative;
    max-width: 1280px;
    margin: 0 auto;
    padding-top: 40px;
}

.map#mapbox,
.map-box-wrapper {
    height: 580px;
    border-radius: 0;
    overflow: hidden;
}

.map-box-container {
    position: relative;
    z-index: 1;
}

.map-box-btn {
    position: absolute;
    bottom: 1rem;
    left: 1rem;
    right: 1rem;
    pointer-events: none;
}

.map-box-btn > * {
    pointer-events: auto;
}

.map--wrapper .btn#maps {
    display: flex;
    gap: 6px;
    align-items: center;
    font-size: .75rem;
    color: #000000;
    background-color: #FFFFFF;
    bottom: 20px;
    left: 0;
}

.map--wrapper .btn#maps:hover {
    background-color: #f1f1f1;
}

@media (max-width: 991.98px) {
    .map#mapbox {
        height: 480px;
    }

    .map--wrapper .btn#maps {
        left: 30px;
    }
}

.map--controls {
    margin: 1.25rem 0;
}

.map--controls-item {
    display: flex;
    align-items: center;
    transition: all 0.25s;
    padding: 10px;
    border-radius: 4px;
    background: rgba(255, 255, 255, 0);
    cursor: pointer;
}

.map--controls-item:hover {
    background: #f1f1f1;
}

.map--controls-item.disabled {
    opacity: 0.6;
}

.map--controls-image-wrapper {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 24px;
    height: 24px;
    margin-right: 10px;
    border-radius: 4px;
    overflow: hidden;
}

.map--controls-image {
    max-width: 100%;
    height: auto;
    object-fit: cover;
}

.map--controls-label {
    margin: 0;
    font-size: .75rem;
}

#map-section.dark {
    background-color: #000000;
}

#map-section.dark .map--controls-item:hover {
    background: rgba(255, 255, 255, 0.2);
}

#map-section.dark .map--controls-label {
    color: #FFFFFF;
}

.map--controls-wrapper {
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    gap: 10px;
}

.rent-list .rent-list--filters {
    margin-top: 40px;
    margin-bottom: 40px;
    display: flex;
    flex-wrap: wrap;
    gap: 10px;
}

.rent-list .rent-list__filters-item {
    padding-left: 16px;
    padding-right: 16px;
    padding-bottom: 22px;
    border-bottom: 2px solid transparent;
    cursor: pointer;
    color: #ADADAD;
    text-transform: uppercase;
    font-size: .75rem;

    @media (max-width: 991.98px) {
        padding-left: 8px;
        padding-right: 8px;
    }
}

.rent-list .rent-list__filters-item:hover {
    color: #444444;
}

.rent-list .rent-list__filters-item--active {
    border-bottom: 2px solid #B89A5B;
    color: #444444;
}


.rent-item > a {
    margin-top: 0;
}

.rent-item {
    display: flex;
    flex-direction: column;
    height: 100%;
    padding-bottom: 50px;

    @media (max-width: 991.98px) {
        padding-bottom: 30px;
    }
}

.rent-item--image {
    aspect-ratio: 16 / 9;
}

.rent-item--image img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.rent-item--bottom {
    flex: 1;
    display: flex;
    justify-content: space-between;
    margin-top: 16px;
    padding-bottom: 16px;
    border-bottom: 1px solid #CECECE;
    font-size: .875rem;
    color: #3F4345;
}

.rent-item--bottom > div {
    width: 33%;
}

.rent-item--bottom span {
    display: block;
    margin-bottom: 7px;
    font-size: .625rem;
}

.rent-single--meta {
    color: #3F4345;
    font-size: 1.5rem;
}

.rent-single--meta > div {
    margin-bottom: 22px;
    padding-bottom: 16px;
    border-bottom: 1px solid #CECECE;
}

.rent-single--meta span {
    display: block;
    margin-bottom: 4px;
    font-size: .625rem;
}

.rent-single--back {
    margin-bottom: 50px;

    @media (max-width: 991.98px) {
        margin-bottom: 30px;
    }
}

.rent-single--back span {
    cursor: pointer;
}

.rent-single--image {
    padding: 16px;
    border: 1px solid #EAEBEC;
    border-radius: 8px;

    @media (max-width: 991.98px) {
        margin-top: 30px;
    }
}

.rent-item--gallery {
    margin-top: 70px;
    margin-bottom: 20px;
}

.rent-item--gallery + hr {
    margin-top: 0;
}

.rent-item--gallery a {
    display: block;
    aspect-ratio: 16 / 9;
    overflow: hidden;
}

.rent-item--gallery a > img {
    object-fit: cover;
    width: 100%;
    height: 100%;
}

.rent-item--heading {
    margin-bottom: 16px;
    font-size: 1rem;
    font-weight: 600;
    color: #3F4345;
}

.rent-item--content {
    font-size: .875rem;
    line-height: 1.8;
    padding-top: 0;
}

.rent-item--gallery-item {
    margin-bottom: 24px;
}

.rent-item--line {
    border-color: #000000;
    margin-top: 40px;
    margin-bottom: 32px;
}

.rent-item--main-heading {
    margin-bottom: 30px;
    font-size: 1.5rem;
}

.rent-item--person {
    font-size: 1rem;
}

.rent-item--person--heading {
    margin-bottom: 34px;
    font-size: .875rem;
}

.rent-item--person > div:not(:last-child) {
    margin-bottom: 20px;
}

.rent-item--btn-icon {
    position: relative;
    top: 2px;
    margin-right: 4px;
    display: inline-flex;
    justify-content: center;
    align-items: center;
    width: 16px;
    height: 16px;
    transform: rotate(-90deg);
}

.rent-item--btn-icon svg {
    width: 100%;
    height: auto;
}

.rent-item--map {
    position: relative;
    border-radius: 8px;
}

.rent-item--map .btn#maps {
    display: flex;
    gap: 6px;
    align-items: center;
    font-size: .75rem;
    color: #000000;
    background-color: #FFFFFF;
    bottom: 20px;
    left: 15px;
}

.rent-item--map .btn#maps:hover {
    background-color: #f1f1f1;
}

.rent-single--form {
    margin-top: 100px;

    @media (max-width: 991.98px) {
        margin-top: 50px;
    }
}

/* Careers */
.career img {
    width: 100%;
}

.career__hero {
    margin-bottom: 76px;
}

.career__hero h1 {
    margin-bottom: 32px;
    font-size: 3rem;
    font-weight: 500;
}

.career__hero p {
    font-size: 1.125rem;
    font-weight: 500;
}

.career__hero img {
    margin-top: 63px;
}

.career__list {
    margin-bottom: 170px;

    @media (max-width: 991.98px) {
        margin-bottom: 70px;
    }
}

.career__list h2 {
    margin-bottom: 56px;
    font-size: 2rem;
    text-align: center;
}

.career__item {
    display: block;
    padding-bottom: 12px;
    margin-bottom: 32px;
    border-bottom: 1px solid #CECECE;
    transition: border 0.25s;
}

.career__item:last-child {
    margin-bottom: 0;
}

.career__item__title {
    margin-bottom: 12px;
    font-size: 1.125rem;
    font-weight: 500;
    color: #000000;
}

.career__item__info {
    display: flex;
    justify-content: space-between;
    color: #767676;
    font-size: .75rem;
    transition: color 0.25s;

    @media (max-width: 767px) {
        flex-direction: column;
        gap: 10px;
    }
}

.career__item__info > div {
    display: flex;
    align-items: center;
    gap: 10px;
}

.career__item__icon {
    display: flex;
    justify-content: center;
    align-items: center;
    width: 16px;
    height: 16px;
}

.career__item__icon svg {
    width: 100%;
    height: auto;
}

.career__item:hover {
    border-color: #000000;
}

.career__item:hover .career__item__info {
    color: #000000;
}

.career__section-1 {
    margin-bottom: 110px;
    font-weight: 500;
}

.career__section-1__title {
    margin-bottom: 36px;
    font-size: 2rem;
}

.career__section-1__desc {
    margin-bottom: 80px;
    font-size: 1.125rem;

    @media (min-width: 992px) {
        max-width: 40%;
    }
}

.career__section-2 {
    margin-bottom: 93px;
}

.career__section-2__title {
    margin-bottom: 36px;
    font-size: 2rem;
}

.career__section-2__desc {
    margin-bottom: 80px;
    font-size: .875rem;

    @media (min-width: 992px) {
        max-width: 40%;
    }
}

.career__section-3 {
    margin-bottom: 120px;
    text-align: center;
}

.career__section-3__title {
    margin-bottom: 36px;
    font-size: 2rem;
}

.career__section-3__desc {
    margin-bottom: 60px;
    font-size: .875rem;

    @media (min-width: 992px) {
        max-width: 40%;
        margin: 0 auto 60px;
    }
}

.single-job-offer__title {
    font-size: 2rem;
    text-align: center;
}

.single-job-offer__info {
    margin: 36px auto;
    padding: 32px 0 8px;
    border-top: 1px solid #CECECE;
    border-bottom: 1px solid #CECECE;
    color: #767676;
    font-size: .75rem;
}

.single-job-offer__info .mb-4 > div {
    display: flex;
    align-items: center;
    gap: 10px;
}

.single-job-offer__icon {
    display: flex;
    justify-content: center;
    align-items: center;
    width: 16px;
    height: 16px;
}

.single-job-offer__custom-icon {
    position: relative;
    top: -1px;
    width: 100%;
    height: 100%;
}

.single-job-offer__custom-icon > span {
    position: absolute;
}

.single-job-offer__custom-icon > span:nth-child(1) {
    top: -5px;
    left: 50%;
    transform: translateX(-50%);
}

.single-job-offer__custom-icon > span:nth-child(2) {
    bottom: -5px;
    left: 0;
}

.single-job-offer__custom-icon > span:nth-child(3) {
    bottom: -5px;
    right: 0;
}

.single-job-offer__icon svg {
    width: 100%;
    height: auto;
    max-height: 16px;
}

.single-job-offer__content {
    margin-bottom: 44px;
    font-size: .875rem;
    line-height: 1.8;
}

.single-job-offer__section h2 {
    margin-bottom: 24px;
    font-size: 1.125rem;
}

.single-job-offer__section div {
    font-size: .75rem;
}

.single-job-offer__section ul {
    margin: 24px 0 44px;
    padding: 0;
    list-style: none;
}

.single-job-offer__section ul li {
    position: relative;
    padding-left: 32px;
    margin-bottom: 20px;
}

.single-job-offer__section ul li:last-child {
    margin-bottom: 0;
}

.single-job-offer__section ul li::before {
    content: '';
    display: block;
    position: absolute;
    top: 10px;
    left: 0;
    width: 16px;
    height: 1px;
    background: #B89A5B;
}

.single-job-offer__footer {
    margin-top: 64px;
    padding-top: 36px;
    border-top: 1px solid #CECECE;
    margin-bottom: 120px;
}

.single-job-offer__footer__team {
    font-size: .875rem;
}

.single-job-offer__footer__team a {
    color: #000000;
}

.single-job-offer__footer__team a:hover {
    color: #B89A5B;
}

.cursor-pointer {
    cursor: pointer;
}

/* Job offer modal */

.job-offer-modal .custom-label {
    display: block;
    font-size: .875rem;
    margin-bottom: 10px;
}

.job-offer-modal .custom-upload {
    position: relative;
    display: block;
    border: 1px solid #707070;
    height: 60px;
}

.job-offer-modal .custom-upload input {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    opacity: 0;
    cursor: pointer;
}

.job-offer-modal .custom-upload > div {
    display: flex;
    align-items: center;
    gap: 8px;
    font-size: .875rem;
    padding-left: 22px;
    padding-top: 15px;
}

.job-offer-modal .custom-upload > div > div:first-child {
    width: 20px;
    height: 22px;
}

.job-offer-modal .custom-upload > div > div:first-child svg {
    width: 100%;
    height: auto;
}

.job-offer-modal .custom-upload__info {
    margin: 10px 0;
    opacity: 0.5;
    font-size: .625rem;
}

.job-offer-modal .message {
    top: -2px;
}

.investment-box .wp-post-image {
    width: 100%;
}

.investment-box__label {
    position: absolute;
    bottom: 0;
    right: 0;
    padding: 20px 40px;
    background: #B89A5B;
    color: white;
    font-size: .75rem;
    font-weight: 400;
    text-transform: uppercase;
}

.btn-stage {
    align-self: start;
    width: auto !important;
    white-space: nowrap;
}

.select-wrapper--wrap {
    flex-wrap: wrap;

    button {
        flex: 0 !important;
    }
}

.title-label {
    display: block;
    font-size: .75rem;
    color: #B89A5B;
    text-transform: uppercase;
    margin-bottom: 24px;

    @media (max-width: 991.98px) {
        margin-bottom: 16px;
    }
}

.title {
    line-height: 1.208;
    margin-bottom: 32px;
    font-weight: 500;

    @media (max-width: 991.98px) {
        margin-bottom: 24px;
    }
}

.title.small {
    font-size: 2rem;
    line-height: 1.5;

    @media (max-width: 991.98px) {
        font-size: 1.5rem;
    }
}

.developer-text {
    display: flex;
    flex-direction: column;
    gap: 10px;
    font-size: 1.125rem;
    line-height: 1.77;
    font-weight: 400;
    margin: 0;
    padding: 0;
}

.developer-text p {
    margin: 0;
    padding: 0;
}

.developer-text.small {
    font-size: .875rem;
}

.developer-text.smaller {
    font-size: .5rem;
    line-height: 1.75;
}

body:not(.home) .section.developer-hero {
    @media (max-width: 991.98px) {
        padding-top: 30px;
    }
}

body:not(.home) .section.developer-hero__video {
    padding-top: 70px;

    @media (max-width: 991.98px) {
        padding-top: 30px;
    }
}

body:not(.home) .section.developer-hero__image {
    padding-top: 115px;

    @media (max-width: 991.98px) {
        padding-top: 30px;
    }
}

.developer-hero__video img {
    aspect-ratio: 1.9817;
}

body:not(.home) .section.developer-hero__text {
    padding-top: 108px;

    @media (max-width: 991.98px) {
        padding-top: 30px;
    }
}

.section.developer-hero__text .developer-text.small {
    @media (max-width: 991.98px) {
        padding-top: 32px;
    }
}

body:not(.home) .section.developer__image-and-text {
    padding-top: 96px;

    @media (max-width: 991.98px) {
        padding-top: 0;
    }
}

.section.developer__image-and-text .col-lg-7 {
    @media (max-width: 991.98px) {
        padding-top: 30px;
    }
}

body:not(.home) .section.developer__projects {
    padding-top: 145px;

    @media (max-width: 991.98px) {
        padding-top: 0;
    }
}

body:not(.home) .ws-section-category.developer__locations {
    margin-top: 150px;
    padding-top: 184px;
    padding-bottom: 94px;

    @media (max-width: 991.98px) {
        margin-top: 48px;
        padding-top: 48px;
        padding-bottom: 48px;
    }
}

.image-label {
    font-size: .75rem;
    text-transform: uppercase;
    color: #767676;
}

.dm-font {
    font-family: "DM Sans", sans-serif;
}

.ls-bigger {
    letter-spacing: 0.2em;
}

#locations .slick-slide:not(.slick-current) + div + div {
    @media (min-width: 992px) {
        opacity: 0.7;
    }
}

#locations .slick-slide .btnBorder {
    border-bottom: 1px solid white;
}

body:not(.home) .section.comfort__text {
    padding-top: 130px;

    @media (max-width: 991.98px) {
        padding-top: 48px;
    }
}

body:not(.home) .section.ceo {
    padding-top: 190px;

    @media (max-width: 991.98px) {
        padding-top: 30px;
    }
}

.section.ceo .ceo__image {
    @media (min-width: 992px) {
        padding-right: 48px;
    }
}

.section.ceo .ceo__content {
    padding-top: 96px;
    padding-bottom: 62px;
    border-top: 1px solid #707070;
    border-bottom: 1px solid #707070;

    @media (max-width: 991.98px) {
        padding-top: 30px;
        padding-bottom: 30px;
    }
}

.section.ceo .ceo__content .developer-text + .contents {
    padding-top: 148px;

    @media (max-width: 991.98px) {
        padding-top: 30px;
    }
}

body:not(.home) .section.team__heading {
    padding-top: 180px;

    @media (max-width: 991.98px) {
        padding-top: 60px;
    }
}

body:not(.home) .section.team__text {
    padding-top: 76px;

    @media (max-width: 991.98px) {
        padding-top: 0;
    }
}

body:not(.home) .section.team__gallery {
    padding-top: 110px;

    @media (max-width: 991.98px) {
        padding-top: 30px;
    }
}

body:not(.home) .section.awards {
    padding-top: 158px;

    @media (max-width: 991.98px) {
        padding-top: 30px;
    }
}

body:not(.home) .ws-section-category.section.awards__image {
    margin-top: 134px;

    @media (max-width: 991.98px) {
        margin-top: 30px;
    }
}

body:not(.home) .section.modern {
    @media (max-width: 991.98px) {
        padding-top: 30px;
    }
}

.section.modern .col-lg-5:not(:first-of-type) {
    @media (max-width: 991.98px) {
        padding-top: 30px;
    }
}

body:not(.home) .section.modern__gallery {
    padding-top: 96px;

    @media (max-width: 991.98px) {
        padding-top: 48px;
    }
}

.section.modern__gallery .col-lg-4:not(:first-of-type) {
    @media (max-width: 991.98px) {
        padding-top: 30px;
    }
}

body:not(.home) .ws-section-category.destiny__image {
    margin-top: 200px;

    @media (max-width: 991.98px) {
        margin-top: 60px;
    }
}

body:not(.home) .section.destiny__text {
    padding-top: 134px;

    @media (max-width: 991.98px) {
        padding-top: 30px;
    }
}

.section.destiny__text .developer-text {
    padding-top: 60px;

    @media (max-width: 991.98px) {
        padding-top: 0;
    }
}

body:not(.home) .section.destiny__gallery,
body:not(.home) .section.solutions {
    padding-top: 104px;

    @media (max-width: 991.98px) {
        padding-top: 30px;
    }
}

body:not(.home) .section.quality {
    padding-top: 148px;

    @media (max-width: 991.98px) {
        padding-top: 30px;
    }
}

body:not(.home) .section.quality .section__image {
    padding-top: 96px;

    @media (max-width: 991.98px) {
        padding-top: 0;
    }
}

body:not(.home) .section.quality .developer-text {
    padding-top: 103px;

    @media (max-width: 991.98px) {
        padding-top: 30px;
        padding-bottom: 30px;
    }
}

body:not(.home) .section.solutions .solutions__list {
    padding-top: 64px;

    @media (max-width: 991.98px) {
        padding-top: 30px;
    }
}

.section.solutions {
    overflow-x: hidden;
}

.section.solutions .slick-list {
    overflow: visible;
}

.section.solutions .slick-track {
    display: flex;
}

.section.solutions .solutions__item {
    height: auto;

    @media (min-width: 768px) {
        aspect-ratio: .808;
    }
}

.section.solutions .solutions__item > a {
    padding: 45px 25px 38px 25px;
    gap: 32px;
}

.section.solutions .solutions__item .developer-text {
    max-width: 90%;
    min-height: 76px;
}

.section.solutions .slick-navigation {
    display: flex;
    align-items: center;
    gap: 15px;
    padding: 48px 0 60px 0;

    @media (max-width: 991.98px) {
        padding: 30px 0 60px 0;
    }
}

.section.solutions .slick-navigation .prev,
.section.solutions .slick-navigation .next {
    width: 30px;
}


/**
 * Swiper 11.2.5
 * Most modern mobile touch slider and framework with hardware accelerated transitions
 * https://swiperjs.com
 *
 * Copyright 2014-2025 Vladimir Kharlampidi
 *
 * Released under the MIT License
 *
 * Released on: March 3, 2025
 */

:root {
    --swiper-theme-color: #007aff
}

:host {
    position: relative;
    display: block;
    margin-left: auto;
    margin-right: auto;
    z-index: 1
}

.swiper {
    margin-left: auto;
    margin-right: auto;
    position: relative;
    overflow: hidden;
    list-style: none;
    padding: 0;
    z-index: 1;
    display: block
}

.swiper-vertical > .swiper-wrapper {
    flex-direction: column
}

.swiper-wrapper {
    position: relative;
    width: 100%;
    height: 100%;
    z-index: 1;
    display: flex;
    transition-property: transform;
    transition-timing-function: var(--swiper-wrapper-transition-timing-function, initial);
    box-sizing: content-box
}

.swiper-android .swiper-slide, .swiper-ios .swiper-slide, .swiper-wrapper {
    transform: translate3d(0px, 0, 0)
}

.swiper-horizontal {
    touch-action: pan-y
}

.swiper-vertical {
    touch-action: pan-x
}

.swiper-slide {
    flex-shrink: 0;
    width: 100%;
    height: 100%;
    position: relative;
    transition-property: transform;
    display: block
}

.swiper-slide-invisible-blank {
    visibility: hidden
}

.swiper-autoheight, .swiper-autoheight .swiper-slide {
    height: auto
}

.swiper-autoheight .swiper-wrapper {
    align-items: flex-start;
    transition-property: transform, height
}

.swiper-backface-hidden .swiper-slide {
    transform: translateZ(0);
    -webkit-backface-visibility: hidden;
    backface-visibility: hidden
}

.swiper-fade.swiper-free-mode .swiper-slide {
    transition-timing-function: ease-out
}

.swiper-fade .swiper-slide {
    pointer-events: none;
    transition-property: opacity
}

.swiper-fade .swiper-slide .swiper-slide {
    pointer-events: none
}

.swiper-fade .swiper-slide-active {
    pointer-events: auto
}

.swiper-fade .swiper-slide-active .swiper-slide-active {
    pointer-events: auto
}

.swiper-button-prev,
.swiper-button-next {
    display: block;
    border-radius: 0;
    border: 0;
    padding: 0;
    margin: 0;
    background: transparent;
    color: inherit;
    cursor: pointer;
    outline-width: 0;
}

.swiper-button-prev:is(:hover,:focus,:focus-visible),
.swiper-button-next:is(:hover,:focus,:focus-visible) {
    color: #b89a5b;
    outline-width: 0;
}


.swiper-button-prev.swiper-button-disabled,
.swiper-button-next.swiper-button-disabled {
    color: #888;
}

.swiper-button-prev svg,
.swiper-button-next svg {
    display: block;
    width: 1.5rem;
    height: auto;
}

.swiper-button-disabled {
    cursor: not-allowed;
}

.btn--light {
    background: #fff;
    border-color: #fff;

    &:hover,
    &:focus-visible {
        background: #dbdbdb;
        border-color: #dbdbdb;
        color: #4a4a4a;
    }
}

.btn--light-outline {
    background: transparent;
    color: #fff;
    border-color: #fff;

    &:hover,
    &:focus-visible {
        background: #fff;
        border-color: #fff;
        color: #000;
    }
}

.tt-hoves-pro {
    font-family: 'tt-hoves-pro', 'tt-hoves-pro', sans-serif;
    font-weight: 400;
}

.m-accordion__toggle {
    cursor: pointer;
    user-select: none;
}

.m-accordion .m-accordion__content {
    overflow: hidden;
    visibility: hidden;
    height: 0;
}

.m-accordion[data-ws-accordion='active'] .m-accordion__content {
    visibility: visible;
    opacity: 1;
    height: auto;
}


:is(.alt-headings-size) h1,
:is(.alt-headings-size) .h1,
h1:is(.alt-headings-size),
.h1:is(.alt-headings-size) {
    font-size: 3rem;
    font-weight: 400;
    line-height: 1.1;

    @media (min-width: 992px) {
        font-size: 4rem;
    }
}

:is(.alt-headings-size) h2,
:is(.alt-headings-size) .h2,
h2:is(.alt-headings-size),
.h2:is(.alt-headings-size) {
    font-size: 2rem;
    font-weight: 400;
    line-height: 1.2;

    @media (min-width: 992px) {
        font-size: 2.625rem;
    }
}

:is(.alt-headings-size) h3,
:is(.alt-headings-size) .h3,
h3:is(.alt-headings-size),
.h3:is(.alt-headings-size) {
    font-size: 1.5rem;
    font-weight: 400;
    line-height: 1.3;

    @media (min-width: 992px) {
        font-size: 2rem;
    }
}

:is(.alt-headings-size) h4,
:is(.alt-headings-size) .h4,
h4:is(.alt-headings-size),
.h4:is(.alt-headings-size) {
    font-size: 1.75rem;
    font-weight: 400;
    line-height: 1.3;
}

:is(.alt-headings-size) h5,
:is(.alt-headings-size) .h5,
h5:is(.alt-headings-size),
.h5:is(.alt-headings-size) {
    font-size: 1.5rem;
    font-weight: 400;
    line-height: 1.3;
}

:is(.alt-headings-size) h6,
:is(.alt-headings-size) .h6,
h6:is(.alt-headings-size),
.h6:is(.alt-headings-size) {
    font-size: 1.25rem;
    font-weight: 400;
    line-height: 1.3;
}

.m-investment-header {
    margin-bottom: 3rem;
    text-wrap: pretty;

    @media (min-width: 992px) {
        margin-bottom: 4.5rem;
    }

    &:last-child {
        margin-bottom: 0;
    }
}

.m-investment-header__overline {
    text-transform: uppercase;
    margin-bottom: .5rem;
    font-weight: 400;
    font-size: .75rem;
    line-height: 1;
    letter-spacing: .2em;

    &:last-child {
        margin-bottom: 0;
    }
}

.m-investment-header__label {
    text-transform: uppercase;
    margin-bottom: .5rem;
    font-weight: 600;
    font-size: .625rem;
    line-height: 1;
    letter-spacing: .2em;
    color: #b89a5b;
}

.m-investment-header__label:last-child {
    margin-bottom: 0;
}

.m-investment-header__heading {
    padding: 0;
    margin: 0 0 1rem;
}

.m-investment-header__heading:last-child {
    margin-bottom: 0;
}

.m-investment-header__desc {
    margin-top: .5rem;
    max-width: 80ch;
    text-wrap: pretty;
}

.m-investment-header__desc > * {
    margin: 1rem 0;
}

.m-investment-header__desc:first-child,
.m-investment-header__desc > :first-child {
    margin-top: 0;
}

.m-investment-header__desc > :last-child {
    margin-bottom: 0;
}

.m-investment-header__desc :is(a) {
    color: inherit;
    transition: color .2s ease-in-out;
}

.m-investment-header__desc :is(a):is(:hover,:focus-visible) {
    color: #B89A5B;
}

.m-investment-header__buttons {
    margin-top: 1.5rem;
    display: flex;
    gap: 1.25rem;
    flex-wrap: wrap;
}

.m-investment-header__buttons .btn {
    flex: 0 0 auto;
    min-width: 0;
    max-width: 100%;
}

/* Section hero */

.b-hero {
    min-height: 100svh;
    position: relative;
    z-index: 1;
    background-color: #000;
    color: #fff;
    padding-top: 5rem;
    padding-bottom: 2.5rem;
    display: flex;
    flex-direction: column;
    justify-content: flex-end;
}

.b-hero .m-investment-header__label {
    color: inherit;
}

.b-hero__bg-image {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    z-index: -1;
    pointer-events: none;
    object-position: center;
    object-fit: cover;
    opacity: .8;
}

.b-hero .m-investment-header {
    max-width: 44rem;
}

/* Section content blocks icons */

.b-content-blocks-icons {
    margin-top: 5rem;
    margin-bottom: 5rem;
}

.b-content-blocks-icons__item {
    display: flex;
    align-items: flex-start;
    gap: 1rem;
}

.b-content-blocks-icons__item-icon {
    flex: 0 0 auto;
    min-width: 0;
    max-width: 100%;
}

.b-content-blocks-icons__item-icon img {
    display: block;
    width: 3rem;
    height: auto;
    object-fit: contain;
    object-position: center top;
}

.b-content-blocks-icons__item-content {
    flex: 1 1 auto;
    min-width: 0;
    max-width: min(100%, 20rem);
}

.b-content-blocks-icons__item-desc {
    line-height: 1.6;
    font-size: .875rem;
    text-wrap: balance;
    flex: 1 1 auto;
    min-width: 0;
    max-width: 100%;
}

.b-content-blocks-icons__item-desc p:first-child {
    margin-top: 0;
}

.b-content-blocks-icons__item-desc p:last-child {
    margin-bottom: 0;
}

/* Section content gallery slider */

.b-content-gallery-slider {
    margin-top: 5rem;
    margin-bottom: 5rem;
}

.b-content-gallery-slider__slider {
    overflow: visible;
}

.b-content-gallery-slider__slider-outer {
    container-name: gallery-slider;
    container-type: inline-size;
}

.b-content-gallery-slider__slider .swiper-slide {
    width: auto;
    max-width: 100%;
    height: auto;
    margin: 0;
}

.b-content-gallery-slider__slider .swiper-slide a {
    display: block;
    width: 100%;
    height: 100%;
    overflow: hidden;
    position: relative;
    z-index: 10;
}

.b-content-gallery-slider__slider .swiper-slide img {
    display: block;
    width: 100%;
    height: clamp(14rem, calc(60cqi - 10rem), max(28rem, calc(100svh - 6rem)));
    object-fit: cover;
    object-position: center;
    transition-property: transform;
    transition-timing-function: ease-in-out;
    transition-duration: .3s;
}

.b-content-gallery-slider__slider .swiper-slide a:is(:hover, :focus-visible) img {
    transform: scale(1.05);
}

.b-content-gallery-slider__navigation {
    display: flex;
    margin-top: 2rem;
    margin-left: -.75rem;
    margin-right: -.75rem;
}

.b-content-gallery-slider__navigation .swiper-button-prev,
.b-content-gallery-slider__navigation .swiper-button-next {
    padding: .75rem;
    display: block;
    flex: 0 0 auto;
    min-width: 0;
    max-width: 100%;
}

/* Section content blocks photos */

.b-content-blocks-photos {
    margin-top: 5rem;
    margin-bottom: 5rem;
}

.b-content-blocks-photos__list {
    margin-left: -.25rem;
    margin-right: -.25rem;
    row-gap: .5rem;
}

.b-content-blocks-photos__item {
    padding-left: .25rem;
    padding-right: .25rem;
}

.b-content-blocks-photos__item-wrapper {
    position: relative;
    z-index: 1;
    aspect-ratio: 42 / 53;
    overflow: hidden;
    background-color: #000;
    color: #fff;
    text-align: center;
    text-wrap: pretty;
    display: flex;
    flex-direction: column;
    justify-content: center;
    width: 100%;
    margin: 0 auto;
    max-width: 30rem;
    padding: 1rem;
}

.b-content-blocks-photos__item-content {
    flex: 0 0 auto;
    min-width: 0;
    max-width: 100%;
}

.b-content-blocks-photos__item-link {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    z-index: 1;
    background: transparent;
    border: 0;
    border-radius: 0;
    padding: 0;
    margin: 0;
}

.b-content-blocks-photos__item-desc {
    text-wrap: balance;
    font-size: .75rem;
    line-height: 1.6;
    max-width: 34ch;
    margin-left: auto;
    margin-right: auto;
}

.b-content-blocks-photos__item-bg-image {
    position: absolute;
    z-index: -1;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center;
    opacity: .6;
    margin: 0;
    padding: 0;
    transition-property: transform;
    transition-timing-function: ease-in-out;
    transition-duration: .3s;
}

.b-content-blocks-photos__item:has(.b-content-blocks-photos__item-link:is(:hover, :focus-visible)) .b-content-blocks-photos__item-bg-image {
    transform: scale(1.05);
}

.b-content-blocks-photos__item-spacer {
    flex: 1 1 0%;
    min-width: 0;
    max-width: 100%;
    display: flex;
    flex-direction: column;
    justify-content: center;
    opacity: 0;
    transition-property: opacity;
    transition-timing-function: ease-in-out;
    transition-duration: .3s;
}

.b-content-blocks-photos__item-link:is(:hover,:focus-visible) ~ .b-content-blocks-photos__item-spacer {
    opacity: 1;
}

.b-content-blocks-photos__iframe {
    display: block;
    width: 100%;
    height: calc(100svh - 60px);
    min-height: 20rem;
    border: 0;
    border-radius: 0;
}

/* Section content blocks photos */

.b-content-blocks-text {
    margin-top: 5rem;
    margin-bottom: 5rem;
}

.b-content-blocks-text__list {
    row-gap: 1.75rem;
}

.b-content-blocks-text__item-label {
    text-transform: uppercase;
    margin-bottom: .5rem;
    font-weight: 600;
    font-size: .625rem;
    line-height: 1;
    letter-spacing: .2em;
    color: #b89a5b;

    &:last-child {
        margin-bottom: 0;
    }
}

.b-content-blocks-text__item-desc {
    margin-top: .75rem;
    line-height: 1.6;
    font-size: .875rem;
    text-wrap: balance;
}

.b-content-blocks-text__item-desc p:first-child {
    margin-top: 0;
}

.b-content-blocks-text__item-desc p:last-child {
    margin-bottom: 0;
}


/* Section video */

.b-video.with-spacing {
    margin-top: 5rem;
    margin-bottom: 5rem;
}

/* Section mapbox 2 */

.b-mapbox-2 {
    margin-top: 5rem;
    margin-bottom: 5rem;
}

.b-mapbox-2__list {
    margin: 3rem 0 0;
    display: grid;
    grid-template-columns: repeat(auto-fill, minmax(10rem, 1fr));
    gap: 1.5rem 2rem;

    @media (min-width: 992px) {
        margin-top: 5rem;
    }

    &:first-child {
        margin-top: 0;
    }
}

.b-mapbox-2__item-wrapper {
    margin: 0;
}

.b-mapbox-2__item-value {
    display: block;
    line-height: 1;
    padding: 0;
    margin: 0;
}

.b-mapbox-2__item-label {
    display: block;
    padding: 0;
    margin: .5rem 0 0;
    font-size: 1rem;
    line-height: 1.25;
}

.c-modal {
    display: none;
    flex-direction: column;
    width: 100%;
    height: 100%;
    padding: 0;
    border: 0;
    margin: 0;
    color: inherit;
    opacity: 0;
    background: transparent;
    transition-timing-function: ease-in-out;
    transition-duration: .3s;
    transition-property: opacity, display, overlay;
    transition-behavior: allow-discrete;
    position: fixed;
    pointer-events: auto;
    inset: 0;
}

.c-modal::backdrop {
    opacity: 0;
    padding: 0;
    margin: 0;
    border: 0;
    inset: 0;
    background-color: rgba(0, 0, 0, .75);
    transition-timing-function: ease-in-out;
    transition-duration: .3s;
    transition-property: opacity, display, overlay;
    transition-behavior: allow-discrete;
}

.c-modal__btn-close {
    display: flex;
    align-items: center;
    justify-content: center;
    background-color: #fff;
    border: 0;
    box-shadow: .1rem .2rem .5rem rgba(0, 0, 0, .25);
    border-radius: .25rem;
    color: #000;
    grid-column-start: 1;
    grid-row-start: 1;
    height: 2.5rem;
    width: 2.5rem;
    padding: 0;
    outline: 0;
    position: absolute;
    top: 1rem;
    right: 1rem;
    z-index: 100;
    transition-property: background-color, color;
    transition-timing-function: ease-in-out;
    transition-duration: .3s;;
}

.c-modal__btn-close svg {
    display: block;
    width: 1.5rem;
    height: 1.5rem;
}

.c-modal__btn-close:is(:hover, :focus-visible) {
    background-color: #000;
    color: #fff;
}

.c-modal__btn-close-bg {
    display: block;
    background-color: transparent;
    border: 0;
    border-radius: 0;
    color: inherit;
    grid-column-start: 1;
    grid-row-start: 1;
    height: 100%;
    width: 100%;
    padding: 0;
    outline: 0;
}

.c-modal__btn-close-bg:focus {
    outline: 0;
}

.c-modal:popover-open,
.c-modal[open] {
    display: grid;
    grid-template-columns: 100%;
    opacity: 1;

    @starting-style {
        opacity: 0;
    }
}

.c-modal:popover-open::backdrop,
.c-modal[open]::backdrop {
    opacity: 1;

    @starting-style {
        opacity: 0;
    }
}


.c-modal__content {
    flex: 0 0 auto;
    margin: auto;
    padding: 30px;
    pointer-events: none;
    grid-column-start: 1;
    grid-row-start: 1;
    position: relative;
    z-index: 10;
}

.c-modal__content-wrapper {
    margin: auto;
    pointer-events: auto;
    position: relative;
    z-index: 1;
    padding: 0;
    color: #000;
    background-color: #fff;
    border: 0;
    transition-timing-function: ease-in-out;
    transition-duration: .3s;
    transition-property: background-color, color, border-color, box-shadow;

    @starting-style {
        transform: scale(0.9);
    }
}

html:has(.c-modal:popover-open, .c-modal[open]) {
    /* remove the main scrollbar when dialog is open */
    overflow: hidden;
}

ul.grid-cols-auto {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(min(100%, 19rem), 1fr));
    column-gap: .25rem;
}

.gallery-masonry {
    container-type: inline-size;
    container-name: gallery-masonry;
}


.gallery-masonry__grid {
    display: grid;
    grid-auto-flow: dense;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: .75rem;

    @media (min-width: 576px) {
        grid-template-columns: repeat(auto-fill, minmax(min(14rem, 100%), 1fr));
    }
}

.gallery-masonry__grid a {
    display: block;
    min-width: 0;
    max-width: 100%;
    margin: 0;
    grid-row-end: span var(--ratio);
    position: relative;
    z-index: 1;
    overflow: hidden;
}

.gallery-masonry__grid a:is(:hover, :focus-visible) img {
    transform: scale(1.05);
}

.gallery-masonry__grid a:nth-child(9n + 1):not(.gallery-item-long-vertical) {
    grid-column-end: span 2;
    grid-row-end: span calc(2 * var(--ratio));
}

.gallery-masonry__grid img {
    transition-duration: .3s;
    transition-property: transform;
    transition-timing-function: ease-in-out;
    display: block;
    margin: 0;
    width: 100%;
    height: 100%;
    object-position: center;
    object-fit: cover;
}

/* Section eco hero */

.b-eco-hero {
    min-height: min(70svh, 34rem);
    position: relative;
    z-index: 1;
    background-color: #000;
    color: #fff;
    padding-top: 5rem;
    padding-bottom: 2.5rem;
    display: flex;
    flex-direction: column;
    justify-content: flex-end;
}

.b-eco-hero__bg-image {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    z-index: -1;
    pointer-events: none;
    object-position: center;
    object-fit: cover;
    opacity: .8;
}

.b-eco-hero .m-investment-header {
    max-width: 44rem;
}

.b-eco-hero .m-investment-header__label {
    margin-bottom: 1.5rem;
}

.b-eco-hero .m-investment-header__heading {
    font-weight: 500;

    @media (min-width: 992px) {
        font-size: 3rem;
    }
}

.b-eco-hero .m-investment-header__desc {
    @media (min-width: 992px) {
        font-weight: 500;
        font-size: 1.125rem;
    }
}


/* Section eco content blocks icons */

.b-eco-content-blocks-icons {
    margin-top: 5rem;
    margin-bottom: 5rem;
}

.b-eco-content-blocks-icons .m-investment-header {
    @media (min-width: 992px) {
        margin-bottom: 8rem;
    }
}

.b-eco-content-blocks-icons__item {
}

.b-eco-content-blocks-icons__item-icon {
    margin: 0 0 1.75rem;
}

.b-eco-content-blocks-icons__item-icon img {
    display: block;
    height: 3rem;
    width: auto;
    object-fit: contain;
    object-position: center top;
}

.b-eco-content-blocks-icons__item-content {
    flex: 1 1 auto;
    min-width: 0;
    max-width: min(100%, 20rem);
}

.b-eco-content-blocks-icons__item-heading {
    font-weight: 500 !important;
}

.b-eco-content-blocks-icons__item-desc {
    line-height: 1.6;
    font-size: .875rem;
    text-wrap: balance;
    margin-top: 1.25rem;
}

.b-eco-content-blocks-icons__item-desc p:first-child {
    margin-top: 0;
}

.b-eco-content-blocks-icons__item-desc p:last-child {
    margin-bottom: 0;
}


.b-eco-text-image {
    margin-top: 5rem;
    margin-bottom: 5rem;
}

.b-eco-text-image .row {
    row-gap: 3rem;
}

.b-eco-text-image .m-investment-header {
    margin: 0;
}

.b-eco-text-image .m-investment-header__desc {
    font-size: .875rem;
    line-height: 1.6;
}

.b-eco-text-image .m-investment-header__desc :is(.h1, .h2, .h3, .h4, .h5, .h6, h1, h2, h3, h4, h5, h6) {
    font-weight: 500;
}

.b-eco-text-image__image {
    width: 100%;
    height: auto;
    max-width: 25rem;
}

.b-eco-text-image-full {
    background-color: #98C0A5;
    overflow: hidden;
    position: relative;
    z-index: 1;
}

.b-eco-text-image-full .m-investment-header {
    margin: 0;
    padding-top: 4rem;
    padding-bottom: 4rem;
    max-width: 32rem;
}

.b-eco-text-image-full .m-investment-header__heading {
    font-weight: 500 !important;
}

.b-eco-text-image-full .m-investment-header__desc {
    color: #052D2D;
}

.b-eco-text-image-full__image-outer {
    @media (max-width: 991.98px) {
        width: calc(100% + 2rem);
        margin-left: -1rem;
        margin-right: -1rem;
    }
}

.b-eco-text-image-full__image {
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center;

    @media (min-width: 992px) {
        width: 50vw;
    }
}


/* Section accordions */

.b-eco-accordions {
    margin-top: 5rem;
    margin-bottom: 5rem;

    @media (min-width: 992px) {
        margin-top: 6.5rem;
        margin-bottom: 6.5rem;
    }
}

.b-eco-accordions .m-investment-header {
    @media (min-width: 992px) {
        margin-bottom: 6.5rem;
    }
}

.b-eco-accordions .m-investment-header__heading {
    font-weight: 500 !important;
}

.b-eco-accordions__item {
    --offset-left: 3rem;
    border-bottom: 1px solid #000;
    padding: 1rem 0;
    display: flex;
    column-gap: 2rem;
    justify-content: space-between;
    flex-direction: column;

    @media (min-width: 992px) {
        --offset-left: 5rem;
        flex-direction: row;
        padding: 1.5rem 0;
    }
}

.b-eco-accordions__item:first-child {
    border-top: 1px solid #000;
}

.b-eco-accordions__item-icon {
    width: var(--offset-left);
    display: block;
    flex: 0 0 auto;
}

.b-eco-accordions__item[data-ws-accordion="inactive"] .b-eco-accordions__item-icon-minus {
    display: none;
}

.b-eco-accordions__item[data-ws-accordion="active"] .b-eco-accordions__item-icon-plus {
    display: none;
}

.b-eco-accordions__item-icon svg {
    display: block;
    margin: .125rem auto;
    height: 1.25rem;
    width: auto;

    @media (min-width: 992px) {
        height: 1.5rem;
        margin: auto;
    }
}

.b-eco-accordions__item-toggle {
    padding: 1.5rem 0;
    display: flex;
    border-radius: 0;
    border: 0;
    appearance: none;
    margin: 0;
    width: 100%;
    text-align: left;
    font-size: 1.25rem;
    line-height: 1.5rem;
    font-weight: 500;
    background: transparent;
    color: inherit;
    outline: 0 !important;
    transition-property: color;
    transition-timing-function: ease-in-out;
    transition-duration: .3s;

    @media (min-width: 992px) {
        padding: 2rem 0;
    }
}

.b-eco-accordions__item-toggle:is(:hover, :focus-visible) {
    color: #b89a5b;
}

.b-eco-accordions__item-toggle-text {
    flex: 1 1 auto;
    min-width: 0;
    max-width: 100%;
}


.b-eco-accordions__item-toggle {
    padding: 1.5rem 0;

    @media (min-width: 992px) {
        padding: 2rem 0;
    }
}

.b-eco-accordions__item-content {
    flex: 1 1 auto;
    min-width: 0;
    max-width: 100%;

    @media (min-width: 992px) {
        max-width: 40rem;
    }
}

.b-eco-accordions__item-desc {
    padding-left: var(--offset-left);
}

.b-eco-accordions__item-image-outer {
    flex: 0 0 auto;
    min-width: 0;
    width: 100%;

    @media (min-width: 992px) {
        padding: 2rem 1.5rem 2rem 0;
        width: 34%;
    }
}

.b-eco-accordions__item[data-ws-accordion='active'] .b-eco-accordions__item-image-outer {
    padding-top: 1.5rem;

    @media (min-width: 992px) {
        padding-top: 2rem;
    }
}

.b-eco-accordions__item-image {
    margin: 0;
    display: block;
    width: 100%;
    height: auto;
}


/* Section eco wysiwyg */

.b-eco-wysiwyg {
    margin-top: 5rem;
    margin-bottom: 5rem;
}

.b-eco-wysiwyg.has-bg {
    padding-top: 5rem;
    padding-bottom: 5rem;
    margin-top: 0;
    margin-bottom: 0;
}

/* Section eco blocks photos */

.b-eco-blocks-photos {
    margin-top: 5rem;
    margin-bottom: 5rem;
}

.b-eco-blocks-photos .m-investment-header {
    margin-bottom: 1.5rem;
}

.b-eco-blocks-photos .m-investment-header__heading {
    font-weight: 500 !important;
}

.b-eco-blocks-photos__list {
    overflow: visible;
}

.b-eco-blocks-photos__item-wrapper {
    position: relative;
    z-index: 1;
    aspect-ratio: 3 / 2;
    overflow: hidden;
    background-color: #000;
    color: #fff;
    text-align: left;
    text-wrap: pretty;
    display: flex;
    flex-direction: column;
    justify-content: flex-end;
    width: 100%;
}

.b-eco-blocks-photos__item-content {
    flex: 0 0 auto;
    min-width: 0;
    max-width: 100%;
    padding: 1.5rem;

    @media (min-width: 992px) {
        padding: 2rem;
    }
}

.b-eco-blocks-photos__item-link {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    z-index: 1;
    background: transparent;
    border: 0;
    border-radius: 0;
    padding: 0;
    margin: 0;
}

.b-eco-blocks-photos__item-heading {
    padding: 0;
    margin: 0;
    font-size: 1rem !important;
    line-height: 1.2;
    text-shadow: .1rem .2rem .5rem rgba(0, 0, 0, .25);
}

.b-eco-blocks-photos__item-bg-image {
    position: absolute;
    z-index: -1;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center;
    margin: 0;
    padding: 0;
    transition-property: transform;
    transition-timing-function: ease-in-out;
    transition-duration: .3s;
}

.b-eco-blocks-photos__item:has(.b-eco-blocks-photos__item-link:is(:hover, :focus-visible)) .b-eco-blocks-photos__item-bg-image {
    transform: scale(1.05);
}


.b-eco-blocks-photos__iframe {
    display: block;
    width: 100%;
    height: calc(100svh - 60px);
    min-height: 20rem;
    border: 0;
    border-radius: 0;
}

/* Section eco blocks videos */

.b-eco-blocks-videos {
    padding-top: 5rem;
    padding-bottom: 5rem;
    background: #EAEBEC;
    position: relative;
    z-index: 1;
    overflow: hidden;
}

.b-eco-blocks-videos .m-investment-header {
    margin-bottom: 4rem;
}

.b-eco-blocks-videos .m-investment-header__heading {
    font-weight: 500 !important;
}

.b-eco-blocks-videos .m-investment-header__desc {
    font-size: .875rem;
}

.b-eco-blocks-videos__list {
    overflow: visible;
}

.b-eco-blocks-videos__item {

}

.b-eco-blocks-videos__item-link {
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    justify-content: flex-end;
    position: relative;
    z-index: 1;
    aspect-ratio: 342 / 240;
    overflow: hidden;
    padding: 1.5rem;
    margin: 0;
    border: 0;
    border-radius: 0;
    background: #3F4345;
    color: #ffffff !important;
    text-align: left;
}

.b-eco-blocks-videos__item-heading {
    padding: 0;
    margin: 0;
    font-size: 1rem !important;
    line-height: 1.2;
    text-shadow: .1rem .2rem .5rem rgba(0, 0, 0, .25);
}

.b-eco-blocks-videos__item-icon {
    display: block;
    height: 2.625rem;
    width: auto;
    margin: 0 0 .75rem;
}

.b-eco-blocks-videos__item-icon path[stroke] {
    transform-origin: center;
    transform: rotateZ(0deg);
    transition-property: transform;
    transition-timing-function: ease-in-out;
    transition-duration: .3s;
}

.b-eco-blocks-videos__item-link:is(:hover, :focus-visible) .b-eco-blocks-videos__item-icon path[stroke] {
    transform: rotateZ(180deg);
}


.b-eco-blocks-videos__item-bg-image {
    position: absolute;
    z-index: -1;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center;
    margin: 0;
    padding: 0;
    transition-property: transform, opacity;
    transition-timing-function: ease-in-out;
    transition-duration: .3s;
    opacity: .6;
}

.b-eco-blocks-videos__item-link:is(:hover, :focus-visible) .b-eco-blocks-videos__item-bg-image {
    transform: scale(1.05);
    opacity: .8;
}

.b-eco-blocks-videos__navigation {
    display: flex;
    margin-top: 2rem;
    margin-left: -.75rem;
    margin-right: -.75rem;
}

.b-eco-blocks-videos__navigation .swiper-button-prev,
.b-eco-blocks-videos__navigation .swiper-button-next {
    padding: .75rem;
    display: block;
    flex: 0 0 auto;
    min-width: 0;
    max-width: 100%;
}


/* Section eco blocks videos */

.b-eco-press-room-articles {
    margin-top: 5rem;
    margin-bottom: 5rem;
    position: relative;
    z-index: 1;
    overflow: hidden;
}

.b-eco-press-room-articles .m-investment-header {
    margin-bottom: 4rem;
}

.b-eco-press-room-articles .m-investment-header__heading {
    font-weight: 500 !important;
}

.b-eco-press-room-articles .m-investment-header__desc {
    font-size: .875rem;
}

.b-eco-press-room-articles__list {
    overflow: visible;
}

.b-eco-press-room-articles__item {

}

.b-eco-press-room-articles__item-article {
    position: relative;
    z-index: 1;
}

.b-eco-press-room-articles__item-link {
    display: block;
    position: absolute;
    inset: 0;
    z-index: 50;
    margin: 0;
    border: 0;
    border-radius: 0;
}

.b-eco-press-room-articles__item-content {
    padding: 1.5rem 1.5rem 0;
}

.b-eco-press-room-articles__item-title {
    padding: 0;
    margin: 0;
    font-size: 1rem !important;
    line-height: 1.5;
    color: #000;
}

.b-eco-press-room-articles__item-link:is(:hover, :focus-visible) ~ .b-eco-press-room-articles__item-content .b-eco-press-room-articles__item-title {
    text-decoration: underline;
}

.b-eco-press-room-articles__item-time {
    padding: 0;
    display: block;
    margin: .75rem 0 0;
    font-size: .625rem;
    line-height: 1.2;
    color: #767676;
}

.b-eco-press-room-articles__item-desc {
    padding: 0;
    margin: .5rem 0 0;
    font-size: .875rem;
    line-height: 1.7;
    max-height: 2lh;
    overflow: hidden;
    text-overflow: ellipsis;
    display: -webkit-box;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
}

.b-eco-press-room-articles__item-thumbnail {
    position: relative;
    z-index: 1;
    aspect-ratio: 342 / 240;
    overflow: hidden;
    padding: 1.5rem;
    margin: 0;
    border: 0;
    border-radius: 0;
    background: #3F4345;
}

.b-eco-press-room-articles__item-thumbnail img {
    position: absolute;
    z-index: -1;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center;
    margin: 0;
    padding: 0;
    transition-property: transform;
    transition-timing-function: ease-in-out;
    transition-duration: .3s;
}

.b-eco-press-room-articles__item-link:is(:hover, :focus-visible) ~ .b-eco-press-room-articles__item-thumbnail img {
    transform: scale(1.05);
}

.b-eco-press-room-articles__navigation {
    display: flex;
    margin-top: 3rem;
    margin-left: -.75rem;
    margin-right: -.75rem;
}

.b-eco-press-room-articles__navigation .swiper-button-prev,
.b-eco-press-room-articles__navigation .swiper-button-next {
    padding: .75rem;
    display: block;
    flex: 0 0 auto;
    min-width: 0;
    max-width: 100%;
}


/* Section eco blocks videos */

.b-eco-cta {
    margin-top: 5rem;
    margin-bottom: 5rem;

    @media (min-width: 992px) {
        margin-bottom: 7rem;
    }
}

.b-eco-cta .m-investment-header {
    border-top: 1px solid #000;
    border-bottom: 1px solid #000;
    padding: 3.5rem 1.5rem;

    @media (min-width: 768px) {
        padding: 4.5rem 2.5rem;
    }
}

.b-eco-cta .m-investment-header__desc :is(.h1, .h2, .h3, .h4, .h5, .h6, h1, h2, h3, h4, h5, h6) {
    font-weight: 500;
}

.b-banner-2 {
    margin-top: 80px;

    @media (max-width: 991.98px) {
        padding: 0;
    }
}

.b-banner-2 #slider {
    min-height: 576px;
}

.b-banner-2__content {
    padding-bottom: 96px;

    @media (min-width: 992px) {
        padding-left: 2rem;
        padding-right: 2rem;
    }
}

.b-banner-pagination-2.container-fluid {
    @media (max-width: 991.98px) {
        padding-left: 0;
        padding-right: 0;
    }
}

.b-banner-pagination-2__wrapper {
    @media (min-width: 992px) {
        padding-left: 2rem;
        padding-right: 2rem;
    }
}

.b-banner-tiles {
    margin-top: 16px;
}

.b-banner-tiles__content {
    display: grid;
    gap: 16px;

    @media (min-width: 992px) {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }
}

.b-banner-tiles__tile {
    min-height: 320px;
}

.b-banner-tiles__tile-content {
    padding-top: 6px;
    padding-bottom: 42px;
    display: flex;
    flex-direction: column;

    @media (min-width: 992px) {
        max-width: 668px;
        padding-left: 60px;
        padding-right: 60px;
    }
}

.b-banner-tiles__tile:nth-child(odd) .b-banner-tiles__tile-content {
    @media (min-width: 992px) {
        margin-left: auto;
        margin-right: 0;
    }
}

.b-banner-tiles__tile:nth-child(even) .b-banner-tiles__tile-content {
    @media (min-width: 992px) {
        margin-left: 0;
        margin-right: auto;
    }
}

.b-banner-tiles__tile-content > * {
    flex-grow: 1;
}

.b-banner-tiles__tile-content .contents {
    margin-bottom: 32px;
}

.b-banner-tiles__tile-link {
    margin-top: auto;
}

.b-banner-tiles .contents h2 {
    font-size: 1.5rem;
}