@import"https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;600;700;800;900&family=Roboto:ital,wght@0,300;0,400;0,500;0,700;0,900;1,300;1,400;1,500;1,700;1,900&display=swap";

.visually-hidden {
    width: 1px;
    height: 1px;
    margin: -1px;
    padding: 0;
    position: absolute;
    white-space: nowrap;
    overflow: hidden;
    -webkit-clip-path: inset(0 0 0 0);
    clip-path: inset(0 0 0 0);
    border: 0
}

.visually-hidden.focusable:active,
.visually-hidden.focusable:focus {
    width: auto;
    height: auto;
    margin: 0;
    position: static;
    white-space: inherit;
    overflow: visible;
    clip: auto
}

@font-face {
    font-family: swiper-icons;
    src: url(data:application/font-woff;charset=utf-8;base64,\ d09GRgABAAAAAAZgABAAAAAADAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABGRlRNAAAGRAAAABoAAAAci6qHkUdERUYAAAWgAAAAIwAAACQAYABXR1BPUwAABhQAAAAuAAAANuAY7+xHU1VCAAAFxAAAAFAAAABm2fPczU9TLzIAAAHcAAAASgAAAGBP9V5RY21hcAAAAkQAAACIAAABYt6F0cBjdnQgAAACzAAAAAQAAAAEABEBRGdhc3AAAAWYAAAACAAAAAj//wADZ2x5ZgAAAywAAADMAAAD2MHtryVoZWFkAAABbAAAADAAAAA2E2+eoWhoZWEAAAGcAAAAHwAAACQC9gDzaG10eAAAAigAAAAZAAAArgJkABFsb2NhAAAC0AAAAFoAAABaFQAUGG1heHAAAAG8AAAAHwAAACAAcABAbmFtZQAAA/gAAAE5AAACXvFdBwlwb3N0AAAFNAAAAGIAAACE5s74hXjaY2BkYGAAYpf5Hu/j+W2+MnAzMYDAzaX6QjD6/4//Bxj5GA8AuRwMYGkAPywL13jaY2BkYGA88P8Agx4j+/8fQDYfA1AEBWgDAIB2BOoAeNpjYGRgYNBh4GdgYgABEMnIABJzYNADCQAACWgAsQB42mNgYfzCOIGBlYGB0YcxjYGBwR1Kf2WQZGhhYGBiYGVmgAFGBiQQkOaawtDAoMBQxXjg/wEGPcYDDA4wNUA2CCgwsAAAO4EL6gAAeNpj2M0gyAACqxgGNWBkZ2D4/wMA+xkDdgAAAHjaY2BgYGaAYBkGRgYQiAHyGMF8FgYHIM3DwMHABGQrMOgyWDLEM1T9/w8UBfEMgLzE////P/5//f/V/xv+r4eaAAeMbAxwIUYmIMHEgKYAYjUcsDAwsLKxc3BycfPw8jEQA/gZBASFhEVExcQlJKWkZWTl5BUUlZRVVNXUNTQZBgMAAMR+E+gAEQFEAAAAKgAqACoANAA+AEgAUgBcAGYAcAB6AIQAjgCYAKIArAC2AMAAygDUAN4A6ADyAPwBBgEQARoBJAEuATgBQgFMAVYBYAFqAXQBfgGIAZIBnAGmAbIBzgHsAAB42u2NMQ6CUAyGW568x9AneYYgm4MJbhKFaExIOAVX8ApewSt4Bic4AfeAid3VOBixDxfPYEza5O+Xfi04YADggiUIULCuEJK8VhO4bSvpdnktHI5QCYtdi2sl8ZnXaHlqUrNKzdKcT8cjlq+rwZSvIVczNiezsfnP/uznmfPFBNODM2K7MTQ45YEAZqGP81AmGGcF3iPqOop0r1SPTaTbVkfUe4HXj97wYE+yNwWYxwWu4v1ugWHgo3S1XdZEVqWM7ET0cfnLGxWfkgR42o2PvWrDMBSFj/IHLaF0zKjRgdiVMwScNRAoWUoH78Y2icB/yIY09An6AH2Bdu/UB+yxopYshQiEvnvu0dURgDt8QeC8PDw7Fpji3fEA4z/PEJ6YOB5hKh4dj3EvXhxPqH/SKUY3rJ7srZ4FZnh1PMAtPhwP6fl2PMJMPDgeQ4rY8YT6Gzao0eAEA409DuggmTnFnOcSCiEiLMgxCiTI6Cq5DZUd3Qmp10vO0LaLTd2cjN4fOumlc7lUYbSQcZFkutRG7g6JKZKy0RmdLY680CDnEJ+UMkpFFe1RN7nxdVpXrC4aTtnaurOnYercZg2YVmLN/d/gczfEimrE/fs/bOuq29Zmn8tloORaXgZgGa78yO9/cnXm2BpaGvq25Dv9S4E9+5SIc9PqupJKhYFSSl47+Qcr1mYNAAAAeNptw0cKwkAAAMDZJA8Q7OUJvkLsPfZ6zFVERPy8qHh2YER+3i/BP83vIBLLySsoKimrqKqpa2hp6+jq6RsYGhmbmJqZSy0sraxtbO3sHRydnEMU4uR6yx7JJXveP7WrDycAAAAAAAH//wACeNpjYGRgYOABYhkgZgJCZgZNBkYGLQZtIJsFLMYAAAw3ALgAeNolizEKgDAQBCchRbC2sFER0YD6qVQiBCv/H9ezGI6Z5XBAw8CBK/m5iQQVauVbXLnOrMZv2oLdKFa8Pjuru2hJzGabmOSLzNMzvutpB3N42mNgZGBg4GKQYzBhYMxJLMlj4GBgAYow/P/PAJJhLM6sSoWKfWCAAwDAjgbRAAB42mNgYGBkAIIbCZo5IPrmUn0hGA0AO8EFTQAA);
    font-weight: 400;
    font-style: normal
}

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

.swiper,
swiper-container {
    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-wrapper {
    transform: translateZ(0)
}

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

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

.swiper-slide,
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);
    backface-visibility: hidden
}

.swiper-3d.swiper-css-mode .swiper-wrapper {
    perspective: 1200px
}

.swiper-3d .swiper-wrapper {
    transform-style: preserve-3d
}

.swiper-3d {
    perspective: 1200px
}

.swiper-3d .swiper-cube-shadow,
.swiper-3d .swiper-slide,
.swiper-3d .swiper-slide-shadow,
.swiper-3d .swiper-slide-shadow-bottom,
.swiper-3d .swiper-slide-shadow-left,
.swiper-3d .swiper-slide-shadow-right,
.swiper-3d .swiper-slide-shadow-top {
    transform-style: preserve-3d
}

.swiper-3d .swiper-slide-shadow,
.swiper-3d .swiper-slide-shadow-bottom,
.swiper-3d .swiper-slide-shadow-left,
.swiper-3d .swiper-slide-shadow-right,
.swiper-3d .swiper-slide-shadow-top {
    position: absolute;
    left: 0;
    top: 0;
    width: 100%;
    height: 100%;
    pointer-events: none;
    z-index: 10
}

.swiper-3d .swiper-slide-shadow {
    background: rgba(0, 0, 0, .15)
}

.swiper-3d .swiper-slide-shadow-left {
    background-image: linear-gradient(to left, rgba(0, 0, 0, .5), rgba(0, 0, 0, 0))
}

.swiper-3d .swiper-slide-shadow-right {
    background-image: linear-gradient(to right, rgba(0, 0, 0, .5), rgba(0, 0, 0, 0))
}

.swiper-3d .swiper-slide-shadow-top {
    background-image: linear-gradient(to top, rgba(0, 0, 0, .5), rgba(0, 0, 0, 0))
}

.swiper-3d .swiper-slide-shadow-bottom {
    background-image: linear-gradient(to bottom, rgba(0, 0, 0, .5), rgba(0, 0, 0, 0))
}

.swiper-css-mode>.swiper-wrapper {
    overflow: auto;
    scrollbar-width: none;
    -ms-overflow-style: none
}

.swiper-css-mode>.swiper-wrapper::-webkit-scrollbar {
    display: none
}

.swiper-css-mode>.swiper-wrapper>.swiper-slide {
    scroll-snap-align: start start
}

.swiper-horizontal.swiper-css-mode>.swiper-wrapper {
    -ms-scroll-snap-type: x mandatory;
    scroll-snap-type: x mandatory
}

.swiper-vertical.swiper-css-mode>.swiper-wrapper {
    -ms-scroll-snap-type: y mandatory;
    scroll-snap-type: y mandatory
}

.swiper-css-mode.swiper-free-mode>.swiper-wrapper {
    -ms-scroll-snap-type: none;
    scroll-snap-type: none
}

.swiper-css-mode.swiper-free-mode>.swiper-wrapper>.swiper-slide {
    scroll-snap-align: none
}

.swiper-centered>.swiper-wrapper:before {
    content: "";
    flex-shrink: 0;
    order: 9999
}

.swiper-centered>.swiper-wrapper>.swiper-slide {
    scroll-snap-align: center center;
    scroll-snap-stop: always
}

.swiper-centered.swiper-horizontal>.swiper-wrapper>.swiper-slide:first-child {
    -webkit-margin-start: var(--swiper-centered-offset-before);
    margin-inline-start: var(--swiper-centered-offset-before)
}

.swiper-centered.swiper-horizontal>.swiper-wrapper:before {
    height: 100%;
    min-height: 1px;
    width: var(--swiper-centered-offset-after)
}

.swiper-centered.swiper-vertical>.swiper-wrapper>.swiper-slide:first-child {
    -webkit-margin-before: var(--swiper-centered-offset-before);
    margin-block-start: var(--swiper-centered-offset-before)
}

.swiper-centered.swiper-vertical>.swiper-wrapper:before {
    width: 100%;
    min-width: 1px;
    height: var(--swiper-centered-offset-after)
}

.swiper-lazy-preloader {
    width: 42px;
    height: 42px;
    position: absolute;
    left: 50%;
    top: 50%;
    margin-left: -21px;
    margin-top: -21px;
    z-index: 10;
    transform-origin: 50%;
    box-sizing: border-box;
    border: 4px solid var(--swiper-preloader-color, var(--swiper-theme-color));
    border-radius: 50%;
    border-top-color: transparent
}

.swiper-watch-progress .swiper-slide-visible .swiper-lazy-preloader,
.swiper:not(.swiper-watch-progress) .swiper-lazy-preloader,
swiper-container:not(.swiper-watch-progress) .swiper-lazy-preloader {
    animation: swiper-preloader-spin 1s infinite linear
}

.swiper-lazy-preloader-white {
    --swiper-preloader-color: #fff
}

.swiper-lazy-preloader-black {
    --swiper-preloader-color: #000
}

@keyframes swiper-preloader-spin {
    0% {
        transform: rotate(0)
    }

    to {
        transform: rotate(360deg)
    }
}

.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,
.swiper-fade .swiper-slide-active .swiper-slide-active {
    pointer-events: auto
}

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

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

*[hidden] {
    display: none
}

body {
    line-height: 1
}

menu,
ol,
ul {
    list-style: none
}

blockquote,
q {
    quotes: none
}

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

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

base-accordion,
[data-base-accordion] {
    display: block
}

base-accordion [data-accordion-trigger],
[data-base-accordion] [data-accordion-trigger] {
    cursor: pointer
}

base-accordion [data-accordion-item]:not(.is-open):not(.is-collapsed) [data-accordion-content],
[data-base-accordion] [data-accordion-item]:not(.is-open):not(.is-collapsed) [data-accordion-content] {
    display: none
}

.choices {
    position: relative;
    overflow: hidden;
    margin-bottom: 24px;
    font-size: 16px
}

.choices:focus {
    outline: none
}

.choices:last-child {
    margin-bottom: 0
}

.choices.is-open {
    overflow: visible
}

.choices.is-disabled .choices__inner,
.choices.is-disabled .choices__input {
    background-color: #eaeaea;
    cursor: not-allowed;
    -webkit-user-select: none;
    -ms-user-select: none;
    user-select: none
}

.choices.is-disabled .choices__item {
    cursor: not-allowed
}

.choices [hidden] {
    display: none !important
}

.choices[data-type*=select-one] {
    cursor: pointer
}

.choices[data-type*=select-one] .choices__inner {
    padding-bottom: 7.5px
}

.choices[data-type*=select-one] .choices__input {
    display: block;
    width: 100%;
    padding: 10px;
    border-bottom: 1px solid #ddd;
    background-color: #fff;
    margin: 0
}

.choices[data-type*=select-one] .choices__button {
    background-image: url(data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iMjEiIGhlaWdodD0iMjEiIHZpZXdCb3g9IjAgMCAyMSAyMSIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj48ZyBmaWxsPSIjMDAwIiBmaWxsLXJ1bGU9ImV2ZW5vZGQiPjxwYXRoIGQ9Ik0yLjU5Mi4wNDRsMTguMzY0IDE4LjM2NC0yLjU0OCAyLjU0OEwuMDQ0IDIuNTkyeiIvPjxwYXRoIGQ9Ik0wIDE4LjM2NEwxOC4zNjQgMGwyLjU0OCAyLjU0OEwyLjU0OCAyMC45MTJ6Ii8+PC9nPjwvc3ZnPg==);
    padding: 0;
    background-size: 8px;
    position: absolute;
    top: 50%;
    right: 0;
    margin-top: -10px;
    margin-right: 25px;
    height: 20px;
    width: 20px;
    border-radius: 10em;
    opacity: .25
}

.choices[data-type*=select-one] .choices__button:hover,
.choices[data-type*=select-one] .choices__button:focus {
    opacity: 1
}

.choices[data-type*=select-one] .choices__button:focus {
    box-shadow: 0 0 0 2px #00bcd4
}

.choices[data-type*=select-one] .choices__item[data-value=""] .choices__button {
    display: none
}

.choices[data-type*=select-one]:after {
    content: "";
    height: 0;
    width: 0;
    border-style: solid;
    border-color: #333 transparent transparent transparent;
    border-width: 5px;
    position: absolute;
    right: 11.5px;
    top: 50%;
    margin-top: -2.5px;
    pointer-events: none
}

.choices[data-type*=select-one].is-open:after {
    border-color: transparent transparent #333 transparent;
    margin-top: -7.5px
}

.choices[data-type*=select-one][dir=rtl]:after {
    left: 11.5px;
    right: auto
}

.choices[data-type*=select-one][dir=rtl] .choices__button {
    right: auto;
    left: 0;
    margin-left: 25px;
    margin-right: 0
}

.choices[data-type*=select-multiple] .choices__inner,
.choices[data-type*=text] .choices__inner {
    cursor: text
}

.choices[data-type*=select-multiple] .choices__button,
.choices[data-type*=text] .choices__button {
    position: relative;
    display: inline-block;
    margin: 0 -4px 0 8px;
    padding-left: 16px;
    border-left: 1px solid #008fa1;
    background-image: url(data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iMjEiIGhlaWdodD0iMjEiIHZpZXdCb3g9IjAgMCAyMSAyMSIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj48ZyBmaWxsPSIjRkZGIiBmaWxsLXJ1bGU9ImV2ZW5vZGQiPjxwYXRoIGQ9Ik0yLjU5Mi4wNDRsMTguMzY0IDE4LjM2NC0yLjU0OCAyLjU0OEwuMDQ0IDIuNTkyeiIvPjxwYXRoIGQ9Ik0wIDE4LjM2NEwxOC4zNjQgMGwyLjU0OCAyLjU0OEwyLjU0OCAyMC45MTJ6Ii8+PC9nPjwvc3ZnPg==);
    background-size: 8px;
    width: 8px;
    line-height: 1;
    opacity: .75;
    border-radius: 0
}

.choices[data-type*=select-multiple] .choices__button:hover,
.choices[data-type*=select-multiple] .choices__button:focus,
.choices[data-type*=text] .choices__button:hover,
.choices[data-type*=text] .choices__button:focus {
    opacity: 1
}

.choices__inner {
    display: inline-block;
    vertical-align: top;
    width: 100%;
    background-color: #f9f9f9;
    padding: 7.5px 7.5px 3.75px;
    border: 1px solid #ddd;
    border-radius: 2.5px;
    font-size: 14px;
    min-height: 44px;
    overflow: hidden
}

.is-focused .choices__inner,
.is-open .choices__inner {
    border-color: #b7b7b7
}

.is-open .choices__inner {
    border-radius: 2.5px 2.5px 0 0
}

.is-flipped.is-open .choices__inner {
    border-radius: 0 0 2.5px 2.5px
}

.choices__list {
    margin: 0;
    padding-left: 0;
    list-style: none
}

.choices__list--single {
    display: inline-block;
    padding: 4px 16px 4px 4px;
    width: 100%
}

[dir=rtl] .choices__list--single {
    padding-right: 4px;
    padding-left: 16px
}

.choices__list--single .choices__item {
    width: 100%
}

.choices__list--multiple {
    display: inline
}

.choices__list--multiple .choices__item {
    display: inline-block;
    vertical-align: middle;
    border-radius: 20px;
    padding: 4px 10px;
    font-size: 12px;
    font-weight: 500;
    margin-right: 3.75px;
    margin-bottom: 3.75px;
    background-color: #00bcd4;
    border: 1px solid #00a5bb;
    color: #fff;
    word-break: break-all;
    box-sizing: border-box
}

.choices__list--multiple .choices__item[data-deletable] {
    padding-right: 5px
}

[dir=rtl] .choices__list--multiple .choices__item {
    margin-right: 0;
    margin-left: 3.75px
}

.choices__list--multiple .choices__item.is-highlighted {
    background-color: #00a5bb;
    border: 1px solid #008fa1
}

.is-disabled .choices__list--multiple .choices__item {
    background-color: #aaa;
    border: 1px solid #919191
}

.choices__list--dropdown,
.choices__list[aria-expanded] {
    visibility: hidden;
    z-index: 1;
    position: absolute;
    width: 100%;
    background-color: #fff;
    border: 1px solid #ddd;
    top: 100%;
    margin-top: -1px;
    border-bottom-left-radius: 2.5px;
    border-bottom-right-radius: 2.5px;
    overflow: hidden;
    word-break: break-all;
    will-change: visibility
}

.is-active.choices__list--dropdown,
.is-active.choices__list[aria-expanded] {
    visibility: visible
}

.is-open .choices__list--dropdown,
.is-open .choices__list[aria-expanded] {
    border-color: #b7b7b7
}

.is-flipped .choices__list--dropdown,
.is-flipped .choices__list[aria-expanded] {
    top: auto;
    bottom: 100%;
    margin-top: 0;
    margin-bottom: -1px;
    border-radius: .25rem .25rem 0 0
}

.choices__list--dropdown .choices__list,
.choices__list[aria-expanded] .choices__list {
    position: relative;
    max-height: 300px;
    overflow: auto;
    -webkit-overflow-scrolling: touch;
    will-change: scroll-position
}

.choices__list--dropdown .choices__item,
.choices__list[aria-expanded] .choices__item {
    position: relative;
    padding: 10px;
    font-size: 14px
}

[dir=rtl] .choices__list--dropdown .choices__item,
[dir=rtl] .choices__list[aria-expanded] .choices__item {
    text-align: right
}

@media (min-width: 640px) {

    .choices__list--dropdown .choices__item--selectable,
    .choices__list[aria-expanded] .choices__item--selectable {
        padding-right: 100px
    }

    .choices__list--dropdown .choices__item--selectable:after,
    .choices__list[aria-expanded] .choices__item--selectable:after {
        content: attr(data-select-text);
        font-size: 12px;
        opacity: 0;
        position: absolute;
        right: 10px;
        top: 50%;
        transform: translateY(-50%)
    }

    [dir=rtl] .choices__list--dropdown .choices__item--selectable,
    [dir=rtl] .choices__list[aria-expanded] .choices__item--selectable {
        text-align: right;
        padding-left: 100px;
        padding-right: 10px
    }

    [dir=rtl] .choices__list--dropdown .choices__item--selectable:after,
    [dir=rtl] .choices__list[aria-expanded] .choices__item--selectable:after {
        right: auto;
        left: 10px
    }
}

.choices__list--dropdown .choices__item--selectable.is-highlighted,
.choices__list[aria-expanded] .choices__item--selectable.is-highlighted {
    background-color: #f2f2f2
}

.choices__list--dropdown .choices__item--selectable.is-highlighted:after,
.choices__list[aria-expanded] .choices__item--selectable.is-highlighted:after {
    opacity: .5
}

.choices__item {
    cursor: default
}

.choices__item--selectable {
    cursor: pointer
}

.choices__item--disabled {
    cursor: not-allowed;
    -webkit-user-select: none;
    -ms-user-select: none;
    user-select: none;
    opacity: .5
}

.choices__heading {
    font-weight: 600;
    font-size: 12px;
    padding: 10px;
    border-bottom: 1px solid #f7f7f7;
    color: gray
}

.choices__button {
    text-indent: -9999px;
    -webkit-appearance: none;
    appearance: none;
    border: 0;
    background-color: transparent;
    background-repeat: no-repeat;
    background-position: center;
    cursor: pointer
}

.choices__button:focus {
    outline: none
}

.choices__input {
    display: inline-block;
    vertical-align: baseline;
    background-color: #f9f9f9;
    font-size: 14px;
    margin-bottom: 5px;
    border: 0;
    border-radius: 0;
    max-width: 100%;
    padding: 4px 0 4px 2px
}

.choices__input:focus {
    outline: 0
}

.choices__input::-webkit-search-decoration,
.choices__input::-webkit-search-cancel-button,
.choices__input::-webkit-search-results-button,
.choices__input::-webkit-search-results-decoration {
    display: none
}

.choices__input::-ms-clear,
.choices__input::-ms-reveal {
    display: none;
    width: 0;
    height: 0
}

[dir=rtl] .choices__input {
    padding-right: 2px;
    padding-left: 0
}

.choices__placeholder {
    opacity: .5
}

* {
    outline: 0 !important;
    -webkit-tap-highlight-color: transparent !important
}

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

body {
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
    -webkit-text-size-adjust: 100%;
    text-size-adjust: 100%;
    background: #fff
}

@supports (overflow: clip) {
    body {
        overflow-x: clip
    }
}

.ajax-wrapper {
    display: flex;
    flex-direction: column;
    min-height: calc(var(--vh, 1vh) * 100);
    position: relative;
    background-color: inherit
}

.ajax-wrapper.is-loading {
    pointer-events: none
}

button {
    text-transform: inherit;
    cursor: pointer
}

img,
video,
svg {
    display: block;
    width: 100%;
    height: auto
}

[data-load-container].is-loading {
    pointer-events: none
}

#transition-overlay {
    width: 100vw;
    height: 100vh;
    position: fixed;
    top: 0;
    left: 0;
    z-index: 5995;
    visibility: hidden;
    -webkit-user-select: none;
    -ms-user-select: none;
    user-select: none;
    pointer-events: none;
    opacity: 0;
    background-color: #fff
}

.fb-xfbml-parse-ignore {
    visibility: hidden
}

body {
    --line-size: calc(1em * 1.5555555556);
    font-family: Roboto, sans-serif;
    font-size: 2.4rem;
    font-weight: 400;
    line-height: 1.5;
    color: #000
}

@media screen and (max-width: 767px) {
    body {
        font-size: 1.8rem;
        line-height: 2.8rem
    }
}

select,
input,
textarea {
    color: inherit
}

::selection {
    text-shadow: none;
    background: rgba(200, 200, 200, .25)
}

a {
    color: inherit;
    text-decoration: none
}

a:link {
    -webkit-tap-highlight-color: #24ff00
}

address {
    font-style: normal
}

small {
    font-size: inherit
}

@keyframes appear {
    0% {
        opacity: 0
    }

    to {
        opacity: 1
    }
}

@keyframes appear-up {
    0% {
        opacity: 0;
        transform: translateY(4rem)
    }

    to {
        opacity: 1;
        transform: translate(0)
    }
}

@keyframes appear-down {
    0% {
        opacity: 0;
        transform: translateY(-2rem)
    }

    to {
        opacity: 1;
        transform: translate(0)
    }
}

@keyframes blink {

    0%,
    to {
        opacity: 0
    }

    50% {
        opacity: 1
    }
}

@keyframes rotate {
    0% {
        transform: rotate(0)
    }

    to {
        transform: rotate(360deg)
    }
}

[data-in-viewport] {
    animation-duration: .7s;
    animation-timing-function: cubic-bezier(.23, 1, .32, 1);
    animation-fill-mode: forwards
}

[data-in-viewport][data-in-viewport-delay="1"] {
    animation-delay: .3s
}

[data-in-viewport][data-in-viewport-delay="2"] {
    animation-delay: .4s
}

[data-in-viewport][data-in-viewport-delay="3"] {
    animation-delay: .5s
}

[data-in-viewport][data-in-viewport-delay="4"] {
    animation-delay: .6s
}

[data-in-viewport][data-in-viewport-delay="5"] {
    animation-delay: .7s
}

[data-in-viewport][data-in-viewport-delay="6"] {
    animation-delay: .8s
}

[data-in-viewport][data-in-viewport-delay="7"] {
    animation-delay: .9s
}

[data-in-viewport][data-in-viewport-delay="8"] {
    animation-delay: 1s
}

[data-in-viewport][data-in-viewport-delay="9"] {
    animation-delay: 1.1s
}

[data-in-viewport][data-in-viewport-delay="10"] {
    animation-delay: 1.2s
}

[data-in-viewport][data-in-viewport-delay="11"] {
    animation-delay: 1.3s
}

[data-in-viewport][data-in-viewport-delay="12"] {
    animation-delay: 1.4s
}

[data-in-viewport][data-in-viewport-delay="13"] {
    animation-delay: 1.5s
}

[data-in-viewport][data-in-viewport-delay="14"] {
    animation-delay: 1.6s
}

[data-lazy-load],
[data-video-autoplay],
.media iframe {
    animation-duration: 1s;
    animation-timing-function: ease;
    animation-fill-mode: none;
    opacity: 0
}

[data-lazy-load].loaded,
[data-video-autoplay].loaded,
.media.has-started iframe {
    animation-name: appear;
    opacity: 1
}

[data-in-viewport=fade] {
    opacity: 0
}

[data-in-viewport=fade].is-in-viewport {
    animation-name: appear
}

[data-in-viewport=bottom] {
    opacity: 0
}

[data-in-viewport=bottom].is-in-viewport {
    animation-name: appear-up
}

[data-in-viewport=top] {
    opacity: 0
}

[data-in-viewport=top].is-in-viewport {
    animation-name: appear-down
}

input,
select,
button,
textarea {
    padding: 0;
    color: inherit;
    font: inherit;
    border: 0;
    border-radius: 0;
    background: none;
    -webkit-appearance: none;
    appearance: none;
    -webkit-font-smoothing: antialiased
}

textarea {
    resize: vertical
}

.choices {
    --choices-min-height: 4.8rem;
    --choices-max-height: 25rem;
    font-family: Roboto, sans-serif;
    font-size: 1.8rem;
    font-weight: 400;
    line-height: 1.5555555556;
    width: auto;
    min-width: 20rem;
    margin-bottom: 0;
    color: #fff;
    overflow: visible;
    border-radius: 10em;
    background-color: var(--color-text)
}

@media screen and (max-width: 767px) {
    .choices {
        --choices-min-height: 4rem;
        --choices-max-height: 20rem
    }
}

.choices.is-select-open .choices__list--single:after {
    transform: rotate(180deg)
}

.choices:after {
    display: none
}

.choices .choices__item.choices__item--choice.choices__placeholder {
    display: none
}

.choices[data-type*=select-one].is-select-open:after {
    transform: rotate(-180deg) translateZ(0)
}

.choices[data-type*=select-one] .choices__inner {
    padding: 0
}

.choices__placeholder {
    color: #fff;
    transition: color .25s ease-out
}

.choices__label {
    font-family: Roboto, sans-serif;
    font-size: 1.8rem;
    font-weight: 400;
    line-height: 1.5555555556
}

.choices__item--selectable,
.choices__placeholder {
    display: flex;
    align-items: center;
    text-align: left;
    opacity: 1
}

.choices__item--choice {
    color: var(--color-text);
    background-color: transparent
}

.choices__inner {
    min-height: 0;
    font-size: inherit;
    border: 0;
    border-radius: 0;
    background: transparent
}

.choices__list--single {
    display: flex;
    align-items: center;
    height: var(--choices-min-height);
    max-height: var(--choices-min-height);
    padding: .5rem 4.8rem .5rem 2.4rem;
    border: 0;
    border-radius: 2.4rem
}

.choices__list--single:after {
    content: "";
    width: 1.6rem;
    height: .9rem;
    position: absolute;
    top: calc(50% - .4rem);
    right: 1.6rem;
    transition: transform .25s ease-out;
    transform-origin: center center;
    background-image: url(/app/themes/grochowski-construction/_/dist/choices-arrow.svg);
    background-repeat: no-repeat;
    background-size: 100%
}

.choices__list--dropdown,
.choices__list[aria-expanded] {
    height: var(--choices-min-height);
    max-height: var(--choices-max-height);
    padding-top: var(--choices-min-height);
    top: 0;
    z-index: -1;
    text-align: left;
    visibility: visible;
    overflow: hidden;
    box-sizing: border-box;
    border: 0;
    border-radius: 2.4rem;
    background-color: var(--color-main)
}

@media screen and (max-width: 767px) {

    .choices__list--dropdown,
    .choices__list[aria-expanded] {
        max-height: 20rem
    }
}

.choices__list--dropdown.is-state-active,
.choices__list[aria-expanded].is-state-active {
    pointer-events: all
}

.choices__list--dropdown.is-state-active .choices__list,
.choices__list[aria-expanded].is-state-active .choices__list {
    visibility: visible;
    opacity: 1
}

.choices__list--dropdown .choices__item,
.choices__list[aria-expanded] .choices__item {
    font-family: Roboto, sans-serif;
    font-size: 1.8rem;
    font-weight: 400;
    line-height: 1.5555555556;
    padding: .5rem 2.4rem;
    text-align: left
}

.choices__list--dropdown .choices__item.is-highlighted,
.choices__list--dropdown .choices__item.is-selected,
.choices__list[aria-expanded] .choices__item.is-highlighted,
.choices__list[aria-expanded] .choices__item.is-selected {
    color: var(--color-additional);
    background-color: transparent
}

.choices__list--dropdown .choices__list,
.choices__list[aria-expanded] .choices__list {
    height: 100%;
    min-height: var(--choices-min-height);
    max-height: var(--choices-max-height);
    padding: .5rem 0;
    transition-delay: 0ms;
    transition-duration: .7s;
    transition-property: opacity;
    background-color: var(--color-main);
    scrollbar-width: thin;
    scrollbar-color: #fff transparent
}

.choices__list--dropdown .choices__list::-webkit-scrollbar,
.choices__list[aria-expanded] .choices__list::-webkit-scrollbar {
    width: 8px;
    border-left: .5px solid #fff;
    background: transparent
}

.choices__list--dropdown .choices__list::-webkit-scrollbar-track,
.choices__list[aria-expanded] .choices__list::-webkit-scrollbar-track {
    margin-top: 0;
    margin-bottom: 0;
    border-right: 1px solid transparent;
    border-left: 1px solid transparent;
    background-color: transparent;
    background-clip: padding-box
}

.choices__list--dropdown .choices__list::-webkit-scrollbar-thumb,
.choices__list[aria-expanded] .choices__list::-webkit-scrollbar-thumb {
    border-top: 2px solid transparent;
    border-right: 2px solid transparent;
    border-bottom: 3px solid transparent;
    border-left: 3px solid transparent;
    border-radius: 0;
    background-color: #fff;
    background-clip: content-box
}

.button,
.header__nav-toggle {
    font-family: Inter, sans-serif;
    font-size: 1.8rem;
    font-weight: 500;
    line-height: 1;
    letter-spacing: .01em;
    text-transform: uppercase;
    display: inline-flex;
    padding: 1.5rem 2.5rem 1.5rem 2.4rem;
    border-radius: 2.4rem
}

@media screen and (max-width: 767px) {

    .button,
    .header__nav-toggle {
        padding: 1.1rem 1.5rem 1.1rem 1.4rem;
        font-size: 1.4rem;
        border-radius: 1.8rem
    }
}

.button-icon {
    font-family: Inter, sans-serif;
    font-size: 1.8rem;
    font-weight: 500;
    line-height: 1;
    letter-spacing: .01em;
    text-transform: uppercase;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 4.8rem;
    height: 4.8rem;
    border-radius: 2.4rem
}

@media screen and (max-width: 767px) {
    .button-icon {
        width: 3.6rem;
        height: 3.6rem;
        font-size: 1.4rem
    }
}

.button-icon svg {
    display: block;
    width: 1.8rem;
    height: 1.8rem;
    margin-left: -1px
}

@media screen and (max-width: 767px) {
    .button-icon svg {
        width: 1.4rem;
        height: 1.4rem
    }
}

.button-icon svg rect,
.button-icon svg path {
    fill: currentcolor
}

.button--default {
    padding-top: 1.4rem;
    padding-bottom: 1.4rem;
    color: #bcbcbc;
    border: .1rem solid #bcbcbc
}

@media screen and (max-width: 767px) {
    .button--default {
        padding-top: 1rem;
        padding-bottom: 1rem
    }
}

.button--outline-adapt {
    padding-top: 1.4rem;
    padding-bottom: 1.4rem;
    color: var(--color-additional);
    border: .1rem solid var(--color-additional)
}

@media screen and (max-width: 767px) {
    .button--outline-adapt {
        padding-top: 1rem;
        padding-bottom: 1rem
    }
}

.button--adapted {
    color: var(--color-text);
    transition: color .25s ease-out;
    background: var(--color-main)
}

@media (hover: hover) and (pointer: fine) {
    .button--adapted:hover {
        color: var(--color-additional)
    }

    .button--adapted:hover svg [fill] {
        fill: var(--color-additional)
    }
}

.button--adapted:focus-visible {
    color: var(--color-additional)
}

.button--adapted:focus-visible svg [fill] {
    fill: var(--color-additional)
}

.button--adapted svg [fill] {
    fill: var(--color-text);
    transition: fill .25s ease-out
}

.button--adapted-reverse {
    color: var(--color-main);
    transition: background .25s ease-out;
    background: var(--color-text)
}

@media (hover: hover) and (pointer: fine) {
    .button--adapted-reverse:hover {
        background: var(--color-additional)
    }
}

.button--adapted-reverse:focus-visible {
    background: var(--color-additional)
}

.button--adapted-custom {
    color: var(--color);
    transition: color .25s ease-out;
    background: var(--background)
}

@media (hover: hover) and (pointer: fine) {
    .button--adapted-custom:hover {
        color: var(--additional)
    }
}

.button--adapted-custom:focus-visible {
    color: var(--additional)
}

.button--adapted-reverse-custom {
    color: var(--color);
    transition: background .25s ease-out;
    background: var(--background)
}

@media (hover: hover) and (pointer: fine) {
    .button--adapted-reverse-custom:hover {
        background: var(--additional)
    }
}

.button--adapted-reverse-custom:focus-visible {
    background: var(--additional)
}

.button--light {
    color: var(--color-text);
    transition: color .25s ease-out;
    background: #fff
}

@media (hover: hover) and (pointer: fine) {
    .button--light:hover {
        color: var(--color-additional)
    }
}

.button--light:focus-visible {
    color: var(--color-additional)
}

.button--dark {
    color: #fff;
    transition: color .25s ease-out, background .25s ease-out;
    background-color: #1c1c1c
}

@media (hover: hover) and (pointer: fine) {
    .button--dark:hover {
        color: #c7c7c7;
        background-color: #707070
    }
}

.button--dark:focus-visible {
    color: #c7c7c7;
    background-color: #707070
}

.button--small {
    display: inline-block;
    height: 2.5rem;
    padding: 0 1.5rem;
    position: relative;
    color: var(--color);
    font-size: 1.2rem;
    line-height: 2.5rem;
    vertical-align: top;
    text-transform: uppercase;
    transition: color .25s ease-out;
    border-radius: 1.3rem;
    background: var(--background)
}

@media screen and (max-width: 767px) {
    .button--small {
        height: 1.9rem;
        padding: 0 1rem;
        font-size: .9rem;
        line-height: 1.9rem;
        border-radius: 1rem
    }
}

@media (hover: hover) and (pointer: fine) {
    .button--small:hover {
        color: var(--additional)
    }
}

.button--small:focus-visible {
    color: var(--additional)
}

.button--small:before {
    content: "";
    display: block;
    width: 1.2rem;
    height: 1.2rem;
    position: absolute;
    bottom: -.6rem;
    left: 0;
    border-radius: .6rem;
    background: var(--background)
}

@media screen and (max-width: 767px) {
    .button--small:before {
        width: .9rem;
        height: .9rem;
        bottom: -.4rem;
        border-radius: .5rem
    }
}

.content-headline-text {
    display: flex;
    flex-direction: column;
    gap: 4rem;
    align-items: flex-start
}

@media screen and (min-width: 1366px) {
    .content-headline-text__title {
        display: flex;
        flex-wrap: wrap;
        justify-content: space-between;
        width: 100%;
        column-gap: 1ch
    }
}

@media screen and (min-width: 1366px) {
    .content-headline-text__title--short {
        max-width: calc((100% / var(--column-count) * 6) - (var(--column-count) - 6) / var(--column-count) * var(--gutter))
    }
}

.content-headline-text__copy {
    columns: 2;
    gap: var(--gutter)
}

.content-headline-media-grid {
    display: grid;
    grid-template-areas: "media title" "media copy";
    grid-template-columns: repeat(2, minmax(0, 1fr));
    grid-template-rows: auto auto;
    column-gap: var(--gutter);
    align-items: flex-start
}

.content-headline-media-grid--wide {
    grid-template-areas: "media media" "title copy"
}

.content-headline-media-grid__title {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    width: 100%;
    column-gap: 1ch;
    grid-area: title
}

.content-headline-media-grid__media {
    grid-area: media;
    min-height: 40.5rem
}

.content-headline-media-grid__copy {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    grid-area: copy;
    margin-top: auto;
    gap: var(--gutter)
}

.content-headline-media-grid__item:nth-child(odd):last-child {
    grid-column: 2
}

.content-headline-media-grid__item-title {
    margin-bottom: .5rem
}

.content-headline-text p+p,
.content-headline-media-grid p+p {
    margin-top: var(--line-size)
}

.cookies {
    display: none;
    align-items: flex-end;
    padding: 2rem 2.5rem;
    position: fixed;
    right: var(--margin);
    bottom: 2.5rem;
    left: var(--margin);
    z-index: 1000;
    visibility: hidden;
    transition: .25s ease-out;
    transition-property: opacity, visibility;
    opacity: 0;
    background-color: #24ff00;
    gap: var(--gutter)
}

.cookies.ovee-component {
    display: none
}

.no-js .cookies,
.cookies.is-visible {
    visibility: visible;
    opacity: 1
}

.dialog {
    display: none;
    position: fixed;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    z-index: 9000;
    color: #fff;
    visibility: hidden;
    -webkit-user-select: none;
    -ms-user-select: none;
    user-select: none;
    transition: opacity .5s ease, visibility 0ms .5s;
    pointer-events: none;
    opacity: 0;
    background-color: #fff
}

@supports (height: 100dvh) {
    .dialog {
        height: 100vh;
        bottom: unset
    }
}

.dialog.ovee-component {
    display: block
}

.dialog[aria-hidden=false] {
    visibility: visible;
    -webkit-user-select: auto;
    -ms-user-select: auto;
    user-select: auto;
    transition: opacity .5s ease, visibility 0ms .5s;
    transition-delay: 0ms;
    pointer-events: auto;
    opacity: 1
}

.dialog[aria-hidden=false] .dialog__inner {
    transition: opacity 1s ease .5s;
    opacity: 1
}

.dialog__inner {
    height: 100%
}

@supports (height: 100dvh) {
    .dialog__inner {
        height: 100dvh
    }
}

.footer {
    width: 100%;
    padding-right: var(--margin);
    padding-left: var(--margin);
    font-family: Roboto, sans-serif;
    font-size: 1.8rem;
    font-weight: 400;
    line-height: 1.5555555556;
    padding-top: 8rem;
    padding-bottom: 8rem;
    color: var(--color-text);
    background: var(--color-main)
}

@media screen and (max-width: 1023px) {
    .footer {
        padding-top: 4rem;
        padding-bottom: 4rem
    }
}

@media screen and (max-width: 767px) {
    .footer {
        padding-top: 4rem;
        padding-bottom: 2rem
    }
}

.footer__container {
    display: flex;
    flex-direction: column;
}

.footer__logo,
.footer__contact,
.footer__company-logo {
    grid-column-start: 1;
    grid-column-end: 5
}

@media screen and (max-width: 767px) {

    .footer__logo,
    .footer__contact,
    .footer__company-logo {
        grid-column-start: 1;
        grid-column-end: 3
    }
}

.footer__media,
.footer__nav {
    grid-column-start: 7;
    grid-column-end: 13
}

@media screen and (max-width: 1023px) {
    .footer__media {
        grid-column-start: 5;
        grid-column-end: 13
    }
}

@media screen and (max-width: 767px) {
    .footer__media {
        grid-column-start: 3;
        grid-column-end: 7
    }
}

.footer__title {
    font-family: Inter, sans-serif;
    font-size: 4.8rem;
    font-weight: 500;
    line-height: 1.3333333333;
    display: block
}

@media screen and (max-width: 1023px) {
    .footer__title {
        font-size: 3.6rem;
        line-height: 5.2rem
    }
}

@media screen and (max-width: 767px) {
    .footer__title {
        font-size: 1.8rem;
        line-height: 2.8rem
    }
}

.footer__socials:not(:first-child) {
    margin-top: 3rem
}

@media screen and (max-width: 767px) {
    .footer__socials:not(:first-child) {
        margin-top: 1.5rem
    }
}

.footer__contact:not(:first-child),
.footer__nav:not(:first-child) {
    margin-top: 9rem
}

@media screen and (max-width: 1023px) {

    .footer__contact:not(:first-child),
    .footer__nav:not(:first-child) {
        margin-top: 6rem
    }
}

@media screen and (max-width: 767px) {

    .footer__contact:not(:first-child),
    .footer__nav:not(:first-child) {
        margin-top: 4rem
    }
}

@media screen and (max-width: 1023px) {
    .footer__contact {
        grid-column-start: 1;
        grid-column-end: 11;
        font-size: 2.4rem;
        line-height: 3.6rem
    }
}

@media screen and (max-width: 767px) {
    .footer__contact {
        grid-column-start: 1;
        grid-column-end: 7
    }
}

.footer__nav {
    margin-bottom: 4rem
}

@media screen and (max-width: 1023px) {
    .footer__nav {
        grid-column-start: 1;
        grid-column-end: 13;
        margin-bottom: 4rem
    }
}

@media screen and (max-width: 767px) {
    .footer__nav {
        display: none
    }
}

.footer__desc {
    margin-bottom: 3rem;
    color: var(--color-text)
}

@media screen and (max-width: 767px) {
    .footer__desc {
        margin-bottom: 2rem;
        font-size: 1.4rem;
        line-height: 2.1rem
    }
}

.footer__company-logo {
    grid-column-start: 1;
    grid-column-end: 5;
    grid-row: 4
}

@media screen and (max-width: 1023px) {
    .footer__company-logo {
        grid-column-start: 1;
        grid-column-end: 7;
        grid-row: 5/span 1;
        padding-right: 2rem
    }
}

@media screen and (max-width: 767px) {
    .footer__company-logo {
        grid-column-start: 1;
        grid-column-end: 5;
        grid-row: 4;
        margin-bottom: 3.2rem;
        padding-right: 1.2rem
    }
}

.footer__company-logo img,
.footer__company-logo svg {
    max-width: 45.2rem
}

.footer__links {
    grid-column-start: 7;
    grid-column-end: 13;
    margin-bottom: 3rem
}

@media screen and (max-width: 1023px) {
    .footer__links {
        grid-column-start: 1;
        grid-column-end: 13;
        margin-bottom: 6rem
    }
}

@media screen and (max-width: 767px) {
    .footer__links {
        grid-column-start: 1;
        grid-column-end: 7;
        margin-top: 4rem;
        margin-bottom: 4rem
    }
}

.footer__text {
    font-family: Roboto, sans-serif;
    font-size: 2.4rem;
    font-weight: 400;
    font-size: 1.4rem;
    line-height: 1.5;
    grid-column-start: 7;
    grid-column-end: 13;
    align-self: end;
    padding-right: 25%
}

@media screen and (max-width: 767px) {
    .footer__text {
        font-size: 1.8rem;
        line-height: 2.8rem
    }
}

@media screen and (max-width: 767px) {
    .footer__text {
        font-size: 1.4rem;
        line-height: 2.1rem
    }
}

@media screen and (max-width: 1023px) {
    .footer__text {
        padding-right: 12rem
    }
}

@media screen and (max-width: 767px) {
    .footer__text {
        grid-column-start: 1;
        grid-column-end: 5;
        grid-row: 5;
        padding-right: 0;
        font-size: 1.2rem;
        line-height: 1.8rem
    }
}

.footer__text:not(:first-child) {
    margin-top: 4rem
}

@media screen and (max-width: 1023px) {
    .footer__text:not(:first-child) {
        margin-top: 0
    }
}

@media screen and (max-width: 767px) {
    .footer__logo {
        display: flex;
        align-items: flex-start;
        padding-right: 1.2rem
    }
}

.footer__scroll-top {
    align-items: center;
    min-height: 4.8rem;
    position: absolute;
    right: 0;
    bottom: 0
}

@media screen and (max-width: 767px) {
    .footer__scroll-top {
        min-height: 4rem
    }
}

.footer__scroll-top svg {
    width: 1.1rem
}

.form__input::-webkit-input-placeholder {
    color: currentcolor;
    opacity: .7
}

.form__input:-moz-placeholder {
    color: currentcolor;
    opacity: .7
}

.form__input::-moz-placeholder {
    color: currentcolor;
    opacity: .7
}

.form__input:-ms-input-placeholder {
    color: currentcolor;
    opacity: .7
}

.form__ajax-message {
    display: none
}

.form.loading {
    cursor: wait;
    opacity: .5
}

.form.loading>* {
    pointer-events: none
}

.header {
    padding-right: var(--margin);
    padding-left: var(--margin);
    width: 100%;
    padding-top: 6rem;
    position: absolute;
    top: 0;
    left: 0;
    z-index: 6000;
    font-size: 1.8rem
}

@media screen and (max-width: 1023px) {
    .header {
        padding-top: 4rem
    }
}

@media screen and (max-width: 767px) {
    .header {
        padding-top: 2rem
    }
}

.header__container {
    display: flex;
    flex-direction: row;
    align-items: start;
    justify-content: space-between;
    width: 100%;
}

.header__logo {
    grid-column-start: 1;
    grid-column-end: 3;
    z-index: 8000
}

@media screen and (max-width: 1023px) {
    .header__logo {
        grid-column-start: 1;
        grid-column-end: 4
    }
}

@media screen and (max-width: 767px) {
    .header__logo {
        grid-column-start: 1;
        grid-column-end: 3;
        max-width: 7.5rem
    }
}

.header__nav {
    display: flex;
    flex-direction: row;
    align-items: center;
    justify-content: end;
    width: 100%;
    gap: 30px;
}

@media screen and (max-width: 1023px) {
    .header__nav {
        width: 100%;
        padding-right: var(--margin);
        padding-left: var(--margin);
        display: grid;
        grid-template-columns: repeat(var(--column-count), 1fr);
        column-gap: var(--gutter);
        align-content: space-between;
        width: 100vw;
        max-width: 100vw;
        height: 100%;
        min-height: 100dvh;
        padding-top: 30rem;
        padding-bottom: 4rem;
        position: fixed;
        top: 0;
        left: 0;
        z-index: 6000;
        visibility: hidden;
        overflow-x: hidden;
        overflow-y: hidden;
        transition-delay: 0ms;
        transition-timing-function: cubic-bezier(.455, .03, .515, .955);
        transition-duration: 1s;
        transition-property: transform, visibility;
        transform: translate(-100%);
        background-color: #fff;
        will-change: transform
    }
}

@media screen and (max-width: 767px) {
    .header__nav {
        padding-top: 12rem
    }
}

.menu-visible .header__nav {
    visibility: visible;
    transform: translate(0);
    pointer-events: all
}

.menu-hidden.is-transitioning .header__nav,
.menu-hidden.transition-fade .header__nav {
    visibility: hidden;
    transition: opacity .7s cubic-bezier(.455, .03, .515, .955) .4s, visibility .7s cubic-bezier(.455, .03, .515, .955) .4s, transform 0ms cubic-bezier(.455, .03, .515, .955) 1.1s;
    transform: translate(0);
    opacity: 0
}

@media screen and (max-width: 1023px) {
    .menu-hide-immediately .header__nav {
        transition-duration: 0ms
    }
}

.header__nav-toggle {
    grid-column-start: 7;
    grid-column-end: 13;
    display: grid;
    grid-template-areas: "text";
    justify-items: center;
    margin-left: auto;
    position: relative;
    z-index: 8000;
    color: var(--color-text);
    transition: background-color .25s ease-out, color .25s ease-out;
    border: 1px solid var(--color-text);
    background: var(--color-main)
}

@media screen and (min-width: 1024px) {
    .header__nav-toggle {
        display: none
    }
}

@media screen and (max-width: 767px) {
    .header__nav-toggle {
        grid-column-start: 4;
        grid-column-end: 7;
        border-radius: 1.8rem
    }
}

.menu-visible .header__nav-toggle {
    color: var(--color-main);
    background: var(--color-text)
}

.page-template-front-page .header__nav-toggle {
    border: 0
}

.header__nav-toggle-text {
    grid-area: text;
    transition: opacity .5s ease, visibility 0ms .5s
}

.header__nav-toggle[aria-expanded=false] .header__nav-toggle-text--open {
    visibility: visible;
    transition-delay: 0ms
}

.header__nav-toggle[aria-expanded=true] .header__nav-toggle-text--open,
.header__nav-toggle[aria-expanded=false] .header__nav-toggle-text--close {
    visibility: hidden;
    opacity: 0
}

.header__nav-toggle[aria-expanded=true] .header__nav-toggle-text--close {
    visibility: visible;
    transition-delay: 0ms
}

.header__menu {
    display: flex
}

@media screen and (max-width: 1023px) {
    .header__menu {
        grid-column-start: 1;
        grid-column-end: 11;
        flex-direction: column;
        grid-row: 1
    }
}

@media screen and (max-width: 767px) {
    .header__menu {
        grid-column-start: 1;
        grid-column-end: 7
    }
}

.header__menu>.menu-item {
    height: 2.7rem
}

@media screen and (max-width: 1023px) {
    .header__menu>.menu-item {
        height: auto;
        margin-bottom: 1rem;
        color: var(--color-text);
        font-family: Inter, sans-serif;
        font-weight: 500;
        text-transform: uppercase;
        border-radius: 2.4rem;
        background: var(--color-main)
    }
}

@media screen and (max-width: 1023px) {
    .header__menu>.menu-item.is-active>a {
        color: var(--color-main);
        background: var(--color-text)
    }
}

.header__menu>.menu-item.is-active>a:after {
    background: var(--color-additional)
}

@media screen and (max-width: 1023px) {
    .header__menu>.menu-item.is-active>a:after {
        transform: rotate(180deg)
    }
}

.header__menu>.menu-item.is-active>.sub-menu {
    visibility: visible;
    pointer-events: auto;
    opacity: 1
}

@media screen and (max-width: 1023px) {
    .header__menu>.menu-item.is-active>.sub-menu {
        max-height: 20rem
    }
}

.header__menu>.menu-item>a {
    display: block;
    padding-right: 2.5rem;
    position: relative;
    transition: all .25s ease-out;
    border-radius: 2.4rem
}

@media screen and (max-width: 1023px) {
    .header__menu>.menu-item>a {
        padding-left: 2rem;
        line-height: 4.8rem
    }
}

@media screen and (max-width: 767px) {
    .header__menu>.menu-item>a {
        font-size: 1.4rem;
        line-height: 3.6rem
    }
}

.header__menu>.menu-item>a:after {
    content: "";
    display: block;
    width: 1.4rem;
    height: 100%;
    position: absolute;
    top: 0;
    right: 0;
    line-height: 1.8rem;
    transition: background .25s ease-out, transform .25s ease-out;
    background: var(--color-text);
    -webkit-mask-image: url(/app/themes/grochowski-construction/_/dist/dropdown.svg);
    mask-image: url(/app/themes/grochowski-construction/_/dist/dropdown.svg);
    -webkit-mask-repeat: no-repeat;
    mask-repeat: no-repeat;
    -webkit-mask-position: center;
    mask-position: center
}

@media screen and (max-width: 1023px) {
    .header__menu>.menu-item>a:after {
        right: 2.5rem
    }
}

@media screen and (max-width: 767px) {
    .header__menu>.menu-item>a:after {
        right: 2rem
    }
}

.header__menu>.menu-item:not(:last-child) {
    margin-right: 4rem
}

@media screen and (max-width: 1023px) {
    .header__menu>.menu-item:not(:last-child) {
        margin-right: 0
    }
}

.header__menu .sub-menu,
.header__options .sub-menu {
    padding: 3.6rem 1rem 1rem;
    position: absolute;
    visibility: hidden;
    transition: opacity .25s ease-out;
    pointer-events: none;
    opacity: 0
}

@media screen and (max-width: 1023px) {

    .header__menu .sub-menu,
    .header__options .sub-menu {
        max-height: 0;
        padding: 0 2.5rem 0 2rem;
        position: relative;
        overflow: hidden;
        transition: max-height .5s ease-out;
        opacity: 1
    }
}

.header__menu .sub-menu:before,
.header__options .sub-menu:before {
    content: "";
    display: block;
    position: absolute;
    top: 2.6rem;
    right: 0;
    bottom: 0;
    left: 0;
    z-index: -1;
    border: 1px solid var(--color-additional);
    border-radius: 3.2rem;
    background: var(--color-main)
}

@media screen and (max-width: 1023px) {

    .header__menu .sub-menu:before,
    .header__options .sub-menu:before {
        display: none
    }
}

.page-template-front-page .header__menu .sub-menu:before,
.page-template-front-page .header__options .sub-menu:before {
    border: 0
}

.header__menu .sub-menu .menu-item:not(:last-child),
.header__menu .sub-menu .lang-item:not(:last-child),
.header__options .sub-menu .menu-item:not(:last-child),
.header__options .sub-menu .lang-item:not(:last-child) {
    margin-bottom: 1rem
}

@media screen and (max-width: 1023px) {

    .header__menu .sub-menu .menu-item:not(:last-child),
    .header__menu .sub-menu .lang-item:not(:last-child),
    .header__options .sub-menu .menu-item:not(:last-child),
    .header__options .sub-menu .lang-item:not(:last-child) {
        margin-bottom: 0
    }
}

.header__menu .sub-menu .menu-item.current-menu-item a,
.header__menu .sub-menu .menu-item.current-lang a,
.header__menu .sub-menu .lang-item.current-menu-item a,
.header__menu .sub-menu .lang-item.current-lang a,
.header__options .sub-menu .menu-item.current-menu-item a,
.header__options .sub-menu .menu-item.current-lang a,
.header__options .sub-menu .lang-item.current-menu-item a,
.header__options .sub-menu .lang-item.current-lang a {
    color: var(--color-main);
    background: var(--color-text)
}

@media screen and (max-width: 1023px) {

    .header__menu .sub-menu .menu-item.current-menu-item a,
    .header__menu .sub-menu .menu-item.current-lang a,
    .header__menu .sub-menu .lang-item.current-menu-item a,
    .header__menu .sub-menu .lang-item.current-lang a,
    .header__options .sub-menu .menu-item.current-menu-item a,
    .header__options .sub-menu .menu-item.current-lang a,
    .header__options .sub-menu .lang-item.current-menu-item a,
    .header__options .sub-menu .lang-item.current-lang a {
        color: inherit;
        text-decoration: underline;
        background: inherit
    }
}

.header__menu .sub-menu .menu-item a,
.header__menu .sub-menu .lang-item a,
.header__options .sub-menu .menu-item a,
.header__options .sub-menu .lang-item a {
    display: block;
    width: 25rem;
    padding: 0 2rem;
    color: var(--color-text);
    font-family: Inter, sans-serif;
    font-weight: 500;
    line-height: 4.8rem;
    text-transform: uppercase;
    transition: all .25s ease-out;
    border-radius: 2.4rem
}

@media screen and (max-width: 1023px) {

    .header__menu .sub-menu .menu-item a,
    .header__menu .sub-menu .lang-item a,
    .header__options .sub-menu .menu-item a,
    .header__options .sub-menu .lang-item a {
        width: auto;
        padding: 0;
        color: inherit;
        border-radius: 0
    }
}

@media screen and (max-width: 767px) {

    .header__menu .sub-menu .menu-item a,
    .header__menu .sub-menu .lang-item a,
    .header__options .sub-menu .menu-item a,
    .header__options .sub-menu .lang-item a {
        font-size: 1.4rem;
        line-height: 3.6rem
    }
}

@media (hover: hover) and (pointer: fine) {

    .header__menu .sub-menu .menu-item a:hover,
    .header__menu .sub-menu .lang-item a:hover,
    .header__options .sub-menu .menu-item a:hover,
    .header__options .sub-menu .lang-item a:hover {
        color: var(--color-main);
        background: var(--color-additional)
    }
}

@media screen and (hover: hover) and (pointer: fine) and (max-width: 1023px) {

    .header__menu .sub-menu .menu-item a:hover,
    .header__menu .sub-menu .lang-item a:hover,
    .header__options .sub-menu .menu-item a:hover,
    .header__options .sub-menu .lang-item a:hover {
        color: inherit;
        text-decoration: underline;
        background: transparent
    }
}

.header__menu .sub-menu .menu-item a:focus-visible,
.header__menu .sub-menu .lang-item a:focus-visible,
.header__options .sub-menu .menu-item a:focus-visible,
.header__options .sub-menu .lang-item a:focus-visible {
    color: var(--color-main);
    background: var(--color-additional)
}

@media screen and (max-width: 1023px) {

    .header__menu .sub-menu .menu-item a:focus-visible,
    .header__menu .sub-menu .lang-item a:focus-visible,
    .header__options .sub-menu .menu-item a:focus-visible,
    .header__options .sub-menu .lang-item a:focus-visible {
        color: inherit;
        text-decoration: underline;
        background: transparent
    }
}

.header__options {
    display: flex
}

@media screen and (max-width: 1023px) {
    .header__options {
        grid-column-start: 7;
        grid-column-end: 13;
        grid-row: 2;
        align-self: flex-end;
        justify-content: flex-end
    }
}

@media screen and (max-width: 767px) {
    .header__options {
        grid-column-start: 5;
        grid-column-end: 7
    }
}

.header__options-item {
    height: 2.7rem;
    position: relative;
    cursor: pointer
}

@media screen and (max-width: 1023px) {
    .header__options-item {
        height: auto
    }
}

.header__options-item>a {
    display: flex;
    align-items: center;
    height: 100%;
    transition: background .25s ease-out
}

@media screen and (max-width: 1023px) {
    .header__options-item>a {
        justify-content: center;
        width: 4.8rem;
        height: 4.8rem;
        border-radius: 2.4rem;
        background: var(--color-main)
    }
}

.header__options-item:not(:last-child) {
    margin-right: 4rem
}

@media screen and (max-width: 1023px) {
    .header__options-item:not(:last-child) {
        margin-right: 1rem
    }
}

.header__options-item svg {
    display: block;
    width: 2rem;
    height: 2rem;
    color: var(--color-text);
    overflow: visible
}

@media (hover: hover) and (pointer: fine) {
    .header__options-item svg:hover {
        color: var(--color-additional)
    }
}

.header__options-item svg:focus-visible {
    color: var(--color-additional)
}

.header__options-item svg circle,
.header__options-item svg path,
.header__options-item svg line,
.header__options-item svg ellipse,
.header__options-item svg rect {
    transition: all .25s ease-out
}

.header__options-item.is-active>.sub-menu {
    visibility: visible;
    pointer-events: auto;
    opacity: 1
}

@media screen and (max-width: 1023px) {
    .header__options-item.is-active>a {
        background: var(--color-text)
    }
}

@media screen and (max-width: 1023px) {
    .header__options-item.is-active>a svg {
        color: var(--color-main)
    }
}

.header__options .sub-menu {
    right: 0
}

@media screen and (max-width: 1023px) {
    .header__options .sub-menu {
        flex-direction: column;
        max-height: none;
        padding: 0;
        position: absolute;
        bottom: 100%;
        transition: opacity .25s ease-out;
        opacity: 0
    }
}

@media screen and (max-width: 1023px) {
    .header__options .sub-menu .lang-item {
        margin-bottom: 1rem !important
    }
}

@media screen and (max-width: 1023px) {
    .header__options .sub-menu .lang-item a {
        width: 4.8rem;
        height: 4.8rem;
        position: relative;
        color: var(--color-text);
        font-size: 0;
        border-radius: 2.4rem;
        background: var(--color-main)
    }
}

@media screen and (max-width: 1023px) {
    .header__options .sub-menu .lang-item a:after {
        content: "";
        display: block;
        position: absolute;
        top: 0;
        right: 0;
        left: 0;
        font-size: 1.8rem;
        line-height: 4.8rem;
        text-align: center;
        text-transform: uppercase
    }
}

@media screen and (max-width: 767px) {
    .header__options .sub-menu .lang-item a:after {
        font-size: 1.4rem
    }
}

@media screen and (max-width: 1023px) {
    .header__options .sub-menu .lang-item.current-lang a {
        color: var(--color-text);
        text-decoration: none;
        background: var(--color-main)
    }
}

@media screen and (max-width: 1023px) {
    .header__options .sub-menu .lang-item a[hreflang=pl-PL]:after {
        content: "PL"
    }
}

@media screen and (max-width: 1023px) {
    .header__options .sub-menu .lang-item a[hreflang=en-GB]:after {
        content: "EN"
    }
}

.header__links {
    display: none !important
}

@media screen and (max-width: 1023px) {
    .header__links {
        grid-column-start: 1;
        grid-column-end: 7;
        display: flex !important;
        grid-row: 2
    }
}

@media screen and (max-width: 767px) {
    .header__links {
        grid-column-start: 1;
        grid-column-end: 5
    }
}

.media {
    border-radius: 2.4rem;
    width: 100%;
    height: 100%;
    position: relative;
    z-index: 0;
    overflow: hidden
}

@media screen and (max-width: 1023px) {
    .media {
        border-radius: 1.6rem
    }
}

@media screen and (max-width: 767px) {
    .media {
        border-radius: .8rem
    }
}

.media__image,
.media__video {
    width: 100%;
    height: 100%;
    position: absolute;
    top: 0;
    left: 0;
    -webkit-user-select: none;
    -ms-user-select: none;
    user-select: none;
    transform: scale(1.005);
    pointer-events: none;
    -o-object-fit: cover;
    object-fit: cover
}

.media__background {
    border-radius: 2.4rem;
    width: calc(100% - 2px);
    height: calc(100% - 2px);
    position: absolute;
    top: 1px;
    left: 1px;
    pointer-events: none;
    background-position: center;
    background-size: cover
}

@media screen and (max-width: 1023px) {
    .media__background {
        border-radius: 1.6rem
    }
}

@media screen and (max-width: 767px) {
    .media__background {
        border-radius: .8rem
    }
}

.media--auto .media__image,
.media--auto .media__video {
    height: auto;
    position: static
}

.media--iframe>div {
    contain: strict;
    width: 100%;
    height: 100%;
    position: absolute !important;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%) scale(1.001)
}

.media--iframe.media--auto {
    padding-top: calc(var(--media-h, 16) / var(--media-w, 9) * 100%)
}

.media--iframe iframe {
    width: 200vmax !important;
    height: 100vw !important;
    min-height: 100%;
    max-height: 100%;
    position: absolute;
    top: 0 !important;
    left: 50% !important;
    -webkit-user-select: none;
    -ms-user-select: none;
    user-select: none;
    transform: translate(-50%) scale(1.005);
    pointer-events: none
}

.nav {
    display: none
}

.wysiwyg-content ul.contact-us li {
    position: relative;
    padding-left: 4rem;
    margin-bottom: 1.2rem
}

@media screen and (max-width: 767px) {
    .wysiwyg-content ul.contact-us li {
        margin-bottom: .4rem;
        padding-left: 3rem
    }
}

.wysiwyg-content ul.contact-us li:before {
    content: "";
    display: block;
    position: absolute;
    width: 2rem;
    height: 2rem;
    border-radius: 50%;
    background: #1C1C1C;
    top: .8rem;
    left: 0
}

@media screen and (max-width: 767px) {
    .wysiwyg-content ul.contact-us li:before {
        top: .4rem
    }
}

.wysiwyg-content ul:not([class]) li {
    position: relative;
    padding-left: 4rem;
    margin-bottom: .8rem
}

@media screen and (max-width: 767px) {
    .wysiwyg-content ul:not([class]) li {
        margin-bottom: .4rem
    }
}

.wysiwyg-content ul:not([class]) li:before {
    content: "";
    display: block;
    position: absolute;
    width: 6px;
    height: 6px;
    border-radius: 50%;
    background: #1C1C1C;
    top: 1rem;
    left: 0
}

.wysiwyg-content ol {
    counter-reset: ol
}

.wysiwyg-content ol li {
    margin-bottom: .8rem;
    padding-left: 4rem;
    position: relative
}

@media screen and (max-width: 767px) {
    .wysiwyg-content ol li {
        margin-bottom: .4rem
    }
}

.wysiwyg-content ol li:before {
    content: counter(ol) ".";
    display: block;
    position: absolute;
    top: 0;
    left: 0;
    counter-increment: ol
}

.wysiwyg-content blockquote {
    padding-left: 1em;
    border-left: 1px solid currentcolor
}

.wysiwyg-content p,
.wysiwyg-content h1,
.wysiwyg-content h2,
.wysiwyg-content h3,
.wysiwyg-content h4,
.wysiwyg-content h5,
.wysiwyg-content h6,
.wysiwyg-content ol,
.wysiwyg-content ul,
.wysiwyg-content blockquote {
    margin-bottom: var(--line-size, 1em)
}

@media screen and (max-width: 767px) {

    .wysiwyg-content p,
    .wysiwyg-content h1,
    .wysiwyg-content h2,
    .wysiwyg-content h3,
    .wysiwyg-content h4,
    .wysiwyg-content h5,
    .wysiwyg-content h6,
    .wysiwyg-content ol,
    .wysiwyg-content ul,
    .wysiwyg-content blockquote {
        margin-bottom: 1rem
    }
}

.wysiwyg-content p:last-child,
.wysiwyg-content h1:last-child,
.wysiwyg-content h2:last-child,
.wysiwyg-content h3:last-child,
.wysiwyg-content h4:last-child,
.wysiwyg-content h5:last-child,
.wysiwyg-content h6:last-child,
.wysiwyg-content ol:last-child,
.wysiwyg-content ul:last-child,
.wysiwyg-content blockquote:last-child {
    margin-bottom: unset
}

.wysiwyg-content h2 {
    font-family: Inter, sans-serif;
    font-size: 3.6rem;
    font-weight: 500;
    line-height: 1.3333333333;
    margin-bottom: 6rem
}

@media screen and (max-width: 1023px) {
    .wysiwyg-content h2 {
        font-size: 3rem;
        line-height: 4.2rem
    }
}

@media screen and (max-width: 767px) {
    .wysiwyg-content h2 {
        font-size: 2.4rem;
        line-height: 3.4rem
    }
}

@media screen and (max-width: 767px) {
    .wysiwyg-content h2 {
        margin-bottom: 3rem
    }
}

.wysiwyg-content h3 {
    font-family: Roboto, sans-serif;
    font-size: 2.4rem;
    font-weight: 400;
    line-height: 1.5;
    margin-bottom: 1.6rem;
    font-weight: 500
}

@media screen and (max-width: 767px) {
    .wysiwyg-content h3 {
        font-size: 1.8rem;
        line-height: 2.8rem
    }
}

@media screen and (max-width: 767px) {
    .wysiwyg-content h3 {
        margin-bottom: .4rem
    }
}

.wysiwyg-content hr {
    margin-top: 0;
    margin-bottom: 2rem;
    display: block;
    height: 1px;
    background: #bcbcbc;
    border: 0
}

@media screen and (max-width: 767px) {
    .wysiwyg-content hr {
        margin-bottom: 1.4rem
    }
}

.wysiwyg-content hr:not(:first-child) {
    margin-top: 4.4rem
}

@media screen and (max-width: 1023px) {
    .wysiwyg-content hr:not(:first-child) {
        margin-top: 4rem
    }
}

@media screen and (max-width: 767px) {
    .wysiwyg-content hr:not(:first-child) {
        margin-top: 2rem
    }
}

.wysiwyg-content mark {
    background-color: #ff0
}

.wysiwyg-content strong {
    font-weight: bolder
}

.wysiwyg-content em,
.wysiwyg-content i {
    font-style: italic
}

.wysiwyg-content a {
    text-decoration: underline;
    text-decoration-color: currentColor;
    text-decoration-thickness: 1px;
    text-underline-offset: .15em;
    transition: text-decoration-color .15s ease
}

@media (hover: hover) and (pointer: fine) {
    .wysiwyg-content a:hover {
        text-decoration-color: transparent
    }
}

.wysiwyg-content a:focus-visible {
    text-decoration-color: transparent
}

sup {
    font-size: .63em;
    position: relative;
    top: -.5rem;
    padding-left: .1rem
}

.logo {
    pointer-events: none
}

.logo img,
.logo svg {
    max-width: 15rem;
    pointer-events: all
}

.socials {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 3rem
}

.socials__link {
    display: flex
}

@media (hover: hover) and (pointer: fine) {
    .socials__link:hover path {
        opacity: 1
    }
}

.socials__link:focus-visible path {
    opacity: 1
}

.socials__link img,
.socials__link svg {
    max-width: 2.4rem
}

.socials__link path {
    transition: opacity .25s ease-out, fill .25s ease-out;
    fill: var(--color-text);
    opacity: .355
}

.wysiwyg__socials {
    gap: 4.6rem;
    margin-top: 6rem
}

@media screen and (max-width: 1023px) {
    .wysiwyg__socials {
        margin-top: 4rem
    }
}

@media screen and (max-width: 767px) {
    .wysiwyg__socials {
        margin-top: 2rem;
        gap: 3rem
    }
}

@media (hover: hover) and (pointer: fine) {
    .wysiwyg__socials .socials__link:hover path {
        fill: var(--color-text)
    }
}

.wysiwyg__socials .socials__link:focus-visible path {
    fill: var(--color-text)
}

.wysiwyg__socials .socials__link img,
.wysiwyg__socials .socials__link svg {
    max-width: 3.6rem;
    width: 3.6rem
}

@media screen and (max-width: 767px) {

    .wysiwyg__socials .socials__link img,
    .wysiwyg__socials .socials__link svg {
        max-width: 2.4rem;
        width: 2.4rem
    }
}

.wysiwyg__socials .socials__link path {
    fill: var(--color-additional);
    opacity: 1
}

.footer-links {
    display: flex;
    flex-direction: column
}

@media screen and (max-width: 1023px) {
    .footer-links {
        display: grid;
        grid-template-columns: repeat(var(--column-count), 1fr);
        column-gap: var(--gutter)
    }
}

@media screen and (max-width: 1023px) {
    .footer-links__item {
        grid-column: span 6
    }
}

.footer-links__link {
    display: inline-block;
    padding-left: 3rem;
    position: relative;
    color: var(--color-text);
    transition: color .25s ease-out
}

@media (hover: hover) and (pointer: fine) {
    .footer-links__link:hover {
        color: var(--color-additional)
    }
}

.footer-links__link:focus-visible {
    color: var(--color-additional)
}

.footer-links__link:before {
    content: "";
    width: 2rem;
    height: 2rem;
    position: absolute;
    top: .25em;
    left: 0;
    border-radius: 50%;
    background: currentColor
}

.footer-menu {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    row-gap: 4rem;
    column-gap: var(--gutter);
    text-transform: lowercase
}

.footer-menu>.menu-item>a {
    color: var(--color-text);
    transition: opacity .25s ease-out;
    opacity: .9;
    display: inline-block;
    font-weight: 700
}

@media (hover: hover) and (pointer: fine) {
    .footer-menu>.menu-item>a:hover {
        opacity: 1
    }
}

.footer-menu>.menu-item>a:focus-visible {
    opacity: 1
}

.footer-menu>.menu-item>a:not(:last-child) {
    margin-bottom: 1.5rem;
    pointer-events: none
}

@media screen and (max-width: 1023px) {
    .footer-menu>.menu-item>a:not(:last-child) {
        margin-bottom: .3rem
    }
}

.footer-menu .sub-menu a {
    color: var(--color-text);
    transition: color .25s ease-out
}

@media (hover: hover) and (pointer: fine) {
    .footer-menu .sub-menu a:hover {
        color: var(--color-additional)
    }
}

.footer-menu .sub-menu a:focus-visible {
    color: var(--color-additional)
}

.accordion {
    border-bottom: 1px solid #bcbcbc
}

.accordion__item {
    border-top: 1px solid #bcbcbc
}

.accordion__item-heading {
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding: 3.8rem 0
}

@media screen and (max-width: 1023px) {
    .accordion__item-heading {
        padding: 3.2rem 0
    }
}

@media screen and (max-width: 767px) {
    .accordion__item-heading {
        padding: 2.5rem 0
    }
}

.accordion__item-heading-title {
    font-family: Inter, sans-serif;
    font-size: 3.6rem;
    font-weight: 500;
    line-height: 1.3333333333
}

@media screen and (max-width: 1023px) {
    .accordion__item-heading-title {
        font-size: 3rem;
        line-height: 4.2rem
    }
}

@media screen and (max-width: 767px) {
    .accordion__item-heading-title {
        font-size: 2.4rem;
        line-height: 3.4rem
    }
}

@media screen and (max-width: 1023px) {
    .accordion__item-heading-title {
        width: 85%
    }
}

@media screen and (max-width: 767px) {
    .accordion__item-heading-title {
        font-size: 2rem;
        line-height: 2.8rem
    }
}

.accordion__item-heading svg {
    transition: .25s ease-out
}

.accordion__item-desc>.wysiwyg-content {
    padding: 5rem 0 3.8rem;
    column-count: 2;
    column-gap: 4rem
}

@media screen and (max-width: 1023px) {
    .accordion__item-desc>.wysiwyg-content {
        column-count: 1;
        padding: 4rem 0
    }
}

@media screen and (max-width: 767px) {
    .accordion__item-desc>.wysiwyg-content {
        padding-top: 2rem
    }
}

.accordion__item-summary {
    display: grid;
    grid-template-columns: repeat(var(--column-count), 1fr);
    column-gap: var(--gutter);
    padding: 1.8rem 0 6rem
}

@media screen and (max-width: 1023px) {
    .accordion__item-summary {
        padding-top: 0
    }
}

@media screen and (max-width: 767px) {
    .accordion__item-summary {
        padding-bottom: 4rem
    }
}

.accordion__item-summary-image {
    grid-column-start: 1;
    grid-column-end: 7;
    border-radius: 2.4rem;
    overflow: hidden;
    aspect-ratio: 16/10
}

@media screen and (max-width: 1023px) {
    .accordion__item-summary-image {
        border-radius: 1.6rem
    }
}

@media screen and (max-width: 767px) {
    .accordion__item-summary-image {
        border-radius: .8rem
    }
}

@media screen and (max-width: 1023px) {
    .accordion__item-summary-image {
        grid-column-start: 1;
        grid-column-end: 13;
        margin-bottom: 4rem
    }
}

@media screen and (max-width: 767px) {
    .accordion__item-summary-image {
        grid-column-start: 1;
        grid-column-end: 7
    }
}

.accordion__item-summary-image img {
    width: 100%;
    height: 100%;
    -o-object-fit: cover;
    object-fit: cover
}

.accordion__item-summary-keypoints {
    grid-column-start: 7;
    grid-column-end: 13
}

@media screen and (max-width: 1023px) {
    .accordion__item-summary-keypoints {
        grid-column-start: 1;
        grid-column-end: 13
    }
}

@media screen and (max-width: 767px) {
    .accordion__item-summary-keypoints {
        grid-column-start: 1;
        grid-column-end: 7
    }
}

.accordion__item-summary-keypoints .button,
.accordion__item-summary-keypoints .header__nav-toggle {
    margin-top: 5rem
}

@media screen and (max-width: 767px) {

    .accordion__item-summary-keypoints .button,
    .accordion__item-summary-keypoints .header__nav-toggle {
        margin-top: 3.5rem
    }
}

.accordion__item--desc svg {
    width: 1.6rem;
    height: .9rem
}

.accordion__item--desc.is-open svg {
    transform: rotate(180deg)
}

.accordion__item--link svg {
    width: 2.6rem;
    height: 1.2rem
}

.accordion__item--download svg {
    width: 1.8rem;
    height: 1.8rem
}

.share {
    display: flex;
    justify-content: flex-end;
    pointer-events: none;
    position: relative
}

.share button {
    pointer-events: auto;
    position: relative;
    z-index: 10
}

.share svg {
    display: block;
    width: 1.8rem;
    height: 1.8rem;
    overflow: visible
}

@media screen and (max-width: 1023px) {
    .share svg {
        width: 1.4rem;
        height: 1.4rem
    }
}

.share ul {
    display: flex;
    gap: 1rem;
    padding-right: 1rem;
    overflow: hidden;
    pointer-events: none;
    opacity: 0;
    transition: opacity .25s ease-out
}

@media screen and (max-width: 767px) {
    .share ul {
        position: absolute;
        top: 0;
        right: 0;
        padding-right: 4.6rem;
        z-index: 1;
        background: var(--color-text);
        border-radius: 1.8rem;
        box-shadow: 0 0 0 .7rem var(--color-text)
    }
}

@media (hover: hover) and (pointer: fine) {
    .share:hover ul {
        opacity: 1;
        pointer-events: all
    }
}

.share:focus-visible ul {
    opacity: 1;
    pointer-events: all
}

.share.active ul {
    opacity: 1;
    pointer-events: all
}

.dialog-gallery {
    padding: 4rem;
    display: flex;
    align-items: center;
    justify-content: center;
    width: 100%;
    height: 100%;
    margin: 0;
    position: fixed;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    z-index: 10000;
    visibility: hidden;
    overflow: hidden;
    transition: .25s ease-out;
    transition-property: opacity, visibility;
    opacity: 0;
    background-color: #fff
}

@media screen and (max-width: 767px) {
    .dialog-gallery {
        padding: 2rem
    }
}

.dialog-gallery__close {
    width: 2.2rem;
    height: 2.2rem;
    position: absolute;
    top: 0;
    right: 0;
    z-index: 100;
    cursor: pointer;
    transition: transform .25s ease-out;
    transform-origin: center;
    backface-visibility: hidden
}

@media (hover: hover) {
    .dialog-gallery__close:hover {
        transform: rotate(-180deg)
    }
}

@media screen and (max-width: 1023px) {
    .dialog-gallery__close {
        top: unset;
        right: 50%;
        bottom: 0;
        transform: translate(50%)
    }
}

@media screen and (max-width: 767px) {
    .dialog-gallery__close {
        top: 0
    }
}

.dialog-gallery__close svg {
    width: 100%;
    height: 100%
}

.dialog-gallery__inner {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 100%;
    max-width: 100%;
    height: 100%;
    max-height: 100%;
    padding: 10rem 0;
    position: relative
}

@media screen and (max-width: 1023px) {
    .dialog-gallery__inner {
        padding-top: 0
    }
}

@media screen and (max-width: 767px) {
    .dialog-gallery__inner {
        align-items: flex-start;
        padding: 0 0 6rem
    }
}

.dialog-gallery__slider {
    width: 100%
}

.gallery-open .dialog-gallery {
    visibility: visible;
    opacity: 1
}

.nav-button {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    box-sizing: content-box;
    cursor: pointer;
    border-radius: 50%;
    transition: .25s ease-out;
    transition-property: opacity, background-color;
    opacity: 1;
    padding: 0
}

.nav-button.is-disabled,
.nav-button.swiper-button-disabled {
    pointer-events: none;
    opacity: .4
}

.nav-button__link {
    display: flex;
    width: 100%;
    height: 100%;
    pointer-events: all
}

.nav-button svg {
    width: 1.6rem;
    height: .9rem;
    pointer-events: none
}

@media screen and (max-width: 767px) {
    .nav-button svg {
        width: 1.2rem;
        height: .7rem
    }
}

.nav-button svg path {
    transition: .25s ease-out;
    transition-property: fill
}

.nav-button.button--prev svg {
    transform: rotate(90deg) translateY(.1rem)
}

.nav-button.button--next svg {
    transform: rotate(-90deg) translateY(.2rem)
}

.slider-navigation {
    display: flex;
    align-items: center;
    justify-content: space-between;
    width: 100%;
    height: -moz-fit-content;
    height: fit-content
}

.slider-gallery {
    grid-auto-rows: auto;
    width: 100%;
    max-width: 100%;
    height: 100%;
    max-height: 100%
}

@media screen and (max-width: 767px) {
    .slider-gallery {
        height: auto;
        margin-top: 4rem
    }
}

.slider-gallery__image {
    width: 100%;
    max-width: 100%;
    height: 100%;
    max-height: 100%;
    -o-object-fit: contain;
    object-fit: contain
}

@media screen and (max-width: 1023px) {
    .slider-gallery__image {
        -o-object-position: top;
        object-position: top
    }
}

@media screen and (max-width: 767px) {
    .slider-gallery__image {
        -o-object-position: center;
        object-position: center
    }
}

.slider-gallery__figcaption {
    max-width: 80%;
    margin: 1.8rem auto 0;
    font-style: normal;
    text-align: center
}

@media screen and (max-width: 1279px) {
    .slider-gallery__figcaption {
        max-width: 100%
    }
}

@media screen and (max-width: 1023px) {
    .slider-gallery__figcaption {
        max-height: 6.2rem;
        margin-top: 7.3rem;
        padding-top: 0;
        overflow: auto
    }
}

@media screen and (max-width: 767px) {
    .slider-gallery__figcaption {
        max-height: 14.5rem;
        margin-top: 5.6rem;
        padding-top: 0;
        position: absolute;
        top: 100%;
        overflow: auto
    }
}

@media screen and (max-width: 767px) and (orientation: landscape) {
    .slider-gallery__figcaption {
        width: 1px;
        height: 1px;
        margin: -1px;
        padding: 0;
        position: absolute;
        white-space: nowrap;
        overflow: hidden;
        -webkit-clip-path: inset(0 0 0 0);
        clip-path: inset(0 0 0 0);
        border: 0
    }
}

@media screen and (max-width: 767px) {
    .slider-gallery__figcaption:before {
        display: none
    }
}

.slider-gallery__figure {
    width: 100%;
    height: 100%;
    position: relative
}

@media screen and (max-width: 767px) {
    .slider-gallery__figure {
        height: calc(100vh - 14.5rem)
    }
}

.slider-gallery__navigation {
    width: 100%;
    height: 100%;
    position: absolute;
    top: 0;
    z-index: 100
}

@media screen and (max-width: 1023px) {
    .slider-gallery__navigation {
        position: absolute;
        z-index: 2
    }
}

.slider-gallery__navigation:after {
    bottom: -2rem
}

@media screen and (max-width: 767px) {
    .slider-gallery__navigation:after {
        display: none
    }
}

.slider-gallery__navigation.slider-navigation {
    height: 100%
}

@media screen and (max-width: 1023px) {
    .slider-gallery__navigation.slider-navigation {
        height: -moz-fit-content;
        height: fit-content;
        top: unset;
        bottom: 13.5rem
    }
}

@media screen and (max-width: 767px) {
    .slider-gallery__navigation.slider-navigation {
        bottom: 0
    }
}

.slider-gallery__navigation .slider__pagination {
    font-family: Inter, sans-serif;
    font-size: 1.8rem;
    font-weight: 500;
    line-height: 1;
    letter-spacing: .01em;
    text-transform: uppercase;
    position: absolute;
    top: 2.5rem;
    left: 50%;
    transform: translate(-50%)
}

@media screen and (max-width: 1023px) {
    .slider-gallery__navigation .slider__pagination {
        position: relative;
        top: unset;
        left: unset;
        transform: none
    }
}

.slider-gallery__slide {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 100%;
    max-width: 100%;
    height: 100%;
    max-height: 100%;
    visibility: hidden;
    overflow: auto;
    transition: .25s ease-out;
    transition-property: opacity, visibility;
    opacity: 0
}

@media screen and (max-width: 1023px) {
    .slider-gallery__slide {
        padding: 0 0 17.6rem;
        overflow: unset
    }
}

@media screen and (max-width: 767px) {
    .slider-gallery__slide {
        align-items: flex-start;
        padding: 0
    }
}

.gallery-open .slider-gallery__slide.swiper-slide-active {
    visibility: visible;
    opacity: 1
}

.slider-gallery .swiper {
    padding: 0 8rem;
    height: 100%
}

@media screen and (max-width: 1023px) {
    .slider-gallery .swiper {
        padding: 0
    }
}

.slider-gallery .swiper-container {
    width: 100%;
    max-width: 100%;
    height: 100%;
    max-height: 100%
}

.slider-gallery .swiper-wrapper {
    max-height: 100%
}

@media screen and (max-width: 767px) {
    .slider-gallery.slider .swiper-container {
        overflow: visible
    }
}

.real-estate-list__plan-view {
    margin-bottom: 4rem;
    overflow: hidden;
    border-radius: 2.4rem;
    position: relative
}

@media screen and (max-width: 1279px) {
    .real-estate-list__plan-view {
        border-radius: 1.8rem
    }
}

@media screen and (max-width: 767px) {
    .real-estate-list__plan-view {
        max-width: calc(100% + 2 * var(--margin));
        margin-right: calc(var(--margin) * -1);
        margin-left: calc(var(--margin) * -1);
        border-radius: 0
    }
}

.real-estate-list__plan-view-static {
    position: absolute;
    top: 0;
    left: 0
}

.real-estate-list__plan-view svg {
    position: relative;
    z-index: 10;
    border-radius: inherit
}

.real-estate-list__plan-view .house-root {
    -webkit-tap-highlight-color: transparent;
    cursor: pointer;
    opacity: 0;
    transition: opacity .25s ease-out
}

@media screen and (max-width: 767px) {

    .real-estate-list__plan-view .t3-house-s-sold,
    .real-estate-list__plan-view .t3-house-s-free,
    .real-estate-list__plan-view .t3-house-s-booked,
    .real-estate-list__plan-view .t3-house-s-soon {
        opacity: .5
    }
}

@media screen and (min-width: 768px) {

    .real-estate-list__plan-view .t3-house-s-sold:hover,
    .real-estate-list__plan-view .t3-house-s-free:hover,
    .real-estate-list__plan-view .t3-house-s-booked:hover,
    .real-estate-list__plan-view .t3-house-s-soon:hover {
        opacity: .5
    }
}

.real-estate-list__plan-view .t3-house-s-sold {
    stroke: red;
    fill: red
}

.real-estate-list__plan-view .t3-house-s-free {
    stroke: #04a339;
    fill: #04a339
}

.real-estate-list__plan-view .t3-house-s-booked {
    stroke: #f5e100;
    fill: #f5e100
}

.real-estate-list__plan-view .t3-house-s-soon {
    stroke: #fff;
    fill: #fff
}

.real-estate-list__filters {
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    margin-bottom: 3.7rem;
    position: relative;
    z-index: 1;
    gap: 2rem
}

.real-estate-list__filters:after {
    width: 100%;
    height: 1px;
    position: absolute;
    bottom: -2rem;
    left: 0;
    background-color: var(--color-additional)
}

@media screen and (max-width: 767px) {
    .real-estate-list__filters:after {
        content: ""
    }
}

.real-estate-list__filters-label {
    align-items: center;
    margin-right: auto;
    border-radius: 10em
}

@media screen and (max-width: 767px) {
    .real-estate-list__filters-label {
        display: none
    }
}

@media screen and (max-width: 767px) {
    .real-estate-list .choices {
        display: none
    }
}

.real-estate-list__filters-mobile {
    --list-filters: 4.8rem;
    width: auto;
    min-width: 22rem;
    height: var(--list-filters);
    color: var(--color-main);
    overflow: hidden;
    transition: background-color .25s ease-out, color .25s ease-out;
    border-radius: 2.4rem;
    background-color: var(--color-main)
}

@media screen and (max-width: 1023px) {
    .real-estate-list__filters-mobile {
        flex: 1
    }
}

@media screen and (max-width: 767px) {
    .real-estate-list__filters-mobile {
        --list-filters: 4rem;
        text-transform: uppercase;
        border-radius: 2rem
    }
}

.real-estate-list__filters-mobile.is-expanded {
    transition: background-color .25s ease-out .25s, color .25s ease-out .25s
}

.real-estate-list__filters-toggler {
    display: flex;
    align-items: center;
    justify-content: space-between;
    width: 100%;
    height: var(--list-filters);
    position: relative;
    color: var(--color-main);
    text-transform: lowercase;
    transition: background-color .25s ease-out, color .25s ease-out;
    border: 0
}

@media screen and (min-width: 768px) {
    .real-estate-list__filters-toggler {
        padding: .5rem 4.8rem .5rem 2.4rem;
        color: var(--color-main);
        background-color: var(--color-text)
    }
}

@media screen and (max-width: 767px) {
    .real-estate-list__filters-toggler {
        color: var(--color-text);
        text-transform: uppercase;
        background-color: var(--color-main)
    }
}

.real-estate-list__filters-toggler svg {
    width: 1.6rem;
    height: .9rem;
    position: absolute;
    top: calc(50% - .45rem);
    right: 1.6rem;
    transition: transform .25s ease-out;
    transform-origin: center center
}

.is-expanded .real-estate-list__filters-toggler svg {
    transform: rotate(180deg)
}

.real-estate-list__filters-toggler path {
    fill: currentcolor
}

.is-expanded .real-estate-list__filters-toggler {
    color: var(--color-main);
    background-color: var(--color-text)
}

.real-estate-list__filters-group {
    display: flex;
    flex-direction: column;
    padding: 1.5rem 2.4rem;
    position: relative;
    color: var(--color-text);
    gap: 1rem
}

@media screen and (min-width: 768px) {
    .real-estate-list__filters-group {
        font-family: Roboto, sans-serif;
        font-size: 1.8rem;
        font-weight: 400;
        line-height: 1.5555555556
    }
}

@media screen and (max-width: 767px) {
    .real-estate-list__filters-group {
        font-family: Roboto, sans-serif;
        font-size: 2.4rem;
        font-weight: 400;
        font-size: 1.4rem;
        line-height: 1.5;
        padding: 1.5rem
    }
}

@media screen and (max-width: 767px) and (max-width: 767px) {
    .real-estate-list__filters-group {
        font-size: 1.8rem;
        line-height: 2.8rem
    }
}

@media screen and (max-width: 767px) and (max-width: 767px) {
    .real-estate-list__filters-group {
        font-size: 1.4rem;
        line-height: 2.1rem
    }
}

.real-estate-list__filters-group input[type=radio] {
    width: 1px;
    height: 1px;
    margin: -1px;
    padding: 0;
    position: absolute;
    white-space: nowrap;
    overflow: hidden;
    -webkit-clip-path: inset(0 0 0 0);
    clip-path: inset(0 0 0 0);
    border: 0
}

.real-estate-list__filters-group input[type=radio]:checked~span {
    color: var(--color-additional)
}

.real-estate-list__filters-group label {
    cursor: pointer
}

@media (hover: hover) and (pointer: fine) {
    .real-estate-list__filters-group label:hover span {
        color: var(--color-additional)
    }
}

.real-estate-list__filters-group label:focus-visible span {
    color: var(--color-additional)
}

.real-estate-list__filters-group span {
    transition: color .25s ease-out
}

.real-estate-list__filters-group+.real-estate-list__filters-group:before {
    content: "";
    display: block;
    width: calc(100% - 3rem);
    height: 1px;
    position: absolute;
    top: 0;
    left: 1.5rem;
    background-color: var(--color-additional)
}

@media screen and (max-width: 1279px) {
    .real-estate-list__col span {
        display: none
    }
}

.real-estate-list__col--pdf {
    text-align: right
}

.real-estate-list__header,
.real-estate-list__item {
    --estate-list-item-grid: 1fr repeat(5, 2fr) 11rem;
    display: grid;
    gap: 1rem 4rem;
    grid-template-columns: var(--estate-list-item-grid);
    align-items: center
}

@media screen and (max-width: 1279px) {

    .real-estate-list__header,
    .real-estate-list__item {
        column-gap: 2rem
    }
}

@media screen and (max-width: 1023px) {

    .real-estate-list__header,
    .real-estate-list__item {
        --estate-list-item-grid: 1fr 2fr 2fr 1fr 2fr 2fr 6rem
    }
}

@media screen and (max-width: 767px) {

    .real-estate-list__header,
    .real-estate-list__item {
        --estate-list-item-grid: 1fr
    }
}

.real-estate-list__header--without-garden-area,
.real-estate-list__header--without-model,
.real-estate-list__item--without-garden-area,
.real-estate-list__item--without-model {
    --estate-list-item-grid: 1fr repeat(4, 2fr) 11rem
}

@media screen and (max-width: 1023px) {

    .real-estate-list__header--without-garden-area,
    .real-estate-list__header--without-model,
    .real-estate-list__item--without-garden-area,
    .real-estate-list__item--without-model {
        --estate-list-item-grid: 1fr repeat(4, 2fr) 6rem
    }
}

@media screen and (max-width: 767px) {

    .real-estate-list__header--without-garden-area,
    .real-estate-list__header--without-model,
    .real-estate-list__item--without-garden-area,
    .real-estate-list__item--without-model {
        --estate-list-item-grid: 1fr
    }
}

.real-estate-list__header--without-garden-and-model,
.real-estate-list__item--without-garden-and-model {
    --estate-list-item-grid: 1fr repeat(3, 3fr) 11rem
}

@media screen and (max-width: 1023px) {

    .real-estate-list__header--without-garden-and-model,
    .real-estate-list__item--without-garden-and-model {
        --estate-list-item-grid: 1fr repeat(3, 3fr) 6rem
    }
}

@media screen and (max-width: 767px) {

    .real-estate-list__header--without-garden-and-model,
    .real-estate-list__item--without-garden-and-model {
        --estate-list-item-grid: 1fr
    }
}

.real-estate-list__header {
    font-family: Roboto, sans-serif;
    font-size: 2.4rem;
    font-weight: 400;
    font-size: 1.4rem;
    line-height: 1.5;
    margin-bottom: 1.9rem;
    color: #707070;
    text-transform: lowercase
}

@media screen and (max-width: 767px) {
    .real-estate-list__header {
        font-size: 1.8rem;
        line-height: 2.8rem
    }
}

@media screen and (max-width: 767px) {
    .real-estate-list__header {
        font-size: 1.4rem;
        line-height: 2.1rem
    }
}

@media screen and (max-width: 1023px) {
    .real-estate-list__header {
        font-size: 1.4rem
    }
}

@media screen and (max-width: 767px) {
    .real-estate-list__header {
        display: none
    }
}

.real-estate-list__item {
    font-family: Roboto, sans-serif;
    font-size: 1.8rem;
    font-weight: 400;
    line-height: 1.5555555556;
    padding: 1.1rem 0 1rem;
    color: var(--color-text);
    border-radius: 10em;
    background-color: var(--color-main)
}

@media screen and (min-width: 768px) {
    .real-estate-list__item {
        height: auto !important
    }
}

@media screen and (max-width: 1023px) {
    .real-estate-list__item {
        font-size: 1.4rem
    }
}

@media screen and (max-width: 767px) {
    .real-estate-list__item {
        height: 4rem;
        padding: 0 1rem 1rem;
        position: relative;
        overflow: hidden;
        border-radius: 2rem;
        background-color: var(--color-main)
    }
}

.real-estate-list__item:before {
    display: block;
    width: 100%;
    height: 100%;
    position: absolute;
    top: 0;
    left: 0;
    transition: border-color .25s ease-out;
    pointer-events: none;
    border: 1px solid var(--color-main);
    border-radius: 2rem
}

@media screen and (max-width: 767px) {
    .real-estate-list__item:before {
        content: ""
    }
}

.real-estate-list__item:not(.is-visible) {
    display: none
}

.real-estate-list__item.is-sold {
    color: #c4b193
}

@media screen and (max-width: 767px) {
    .real-estate-list__item.is-expanded {
        height: auto
    }
}

.real-estate-list__item.is-expanded:before {
    border-color: var(--color-text)
}

@media screen and (max-width: 767px) {
    .real-estate-list__item.is-expanded:before {
        border-color: var(--color-main)
    }
}

.real-estate-list__item+.real-estate-list__item {
    margin-top: 1rem
}

.real-estate-list__mobile-wrapper {
    display: grid;
    grid-template-columns: 3.8rem 1fr 1fr;
    align-items: center;
    max-width: calc(100% + 2rem);
    height: 4rem;
    margin: 0 -1rem;
    padding-right: 4.8rem;
    position: relative;
    color: var(--color-text);
    cursor: pointer;
    -webkit-user-select: none;
    -ms-user-select: none;
    user-select: none;
    transition: .25s ease-out;
    transition-property: color, background-color;
    border-radius: 2.4rem;
    background-color: var(--color-main);
    gap: 1rem
}

@media screen and (min-width: 768px) {
    .real-estate-list__mobile-wrapper {
        display: none
    }
}

.is-sold .real-estate-list__mobile-wrapper {
    color: #c4b193
}

.is-expanded .real-estate-list__mobile-wrapper {
    color: var(--color-main);
    background-color: var(--color-text)
}

.is-expanded.is-sold .real-estate-list__mobile-wrapper {
    color: var(--color-main);
    background-color: #c4b193
}

.real-estate-list__mobile-wrapper:after {
    content: attr(data-status)
}

.real-estate-list__lp {
    padding-left: 3rem
}

@media screen and (max-width: 1279px) {
    .real-estate-list__lp {
        padding-left: 1.5rem
    }
}

@media screen and (max-width: 767px) {
    .real-estate-list__lp {
        padding-left: 0;
        text-align: center
    }
}

.real-estate-list__data-sheet {
    display: flex;
    justify-content: flex-end;
    padding-right: 3rem
}

@media screen and (max-width: 1279px) {
    .real-estate-list__data-sheet {
        padding-right: 1.5rem
    }
}

@media screen and (max-width: 767px) {
    .real-estate-list__data-sheet {
        align-items: baseline;
        justify-content: flex-start;
        padding-right: 0
    }
}

.real-estate-list__visualization {
    display: flex;
    gap: 3.2rem
}

@media screen and (max-width: 1279px) {
    .real-estate-list__visualization {
        gap: 2rem
    }
}

@media screen and (max-width: 767px) {
    .real-estate-list__visualization {
        gap: 0
    }
}

.real-estate-list__visualization svg {
    width: auto;
    height: 2.4rem
}

@media screen and (max-width: 767px) {
    .real-estate-list__visualization svg {
        height: 2rem
    }
}

.real-estate-list__flat-area svg {
    width: 1.6rem;
    height: .9rem;
    position: absolute;
    top: calc(50% - .4rem);
    right: 1.6rem;
    transition: transform .25s ease-out;
    transform-origin: center center
}

@media screen and (min-width: 768px) {
    .real-estate-list__flat-area svg {
        display: none
    }
}

.is-expanded .real-estate-list__flat-area svg {
    transform: rotate(180deg)
}

.real-estate-list__flat-area path {
    fill: currentcolor
}

.real-estate-list__pdf {
    display: inline-block;
    position: relative;
    line-height: 1
}

.real-estate-list__pdf:after {
    content: "";
    display: block;
    height: 1px;
    position: absolute;
    right: 0;
    bottom: 0;
    left: 0;
    z-index: 0;
    pointer-events: none;
    background: currentColor
}

.real-estate-list__virtual-tour,
.real-estate-list__model,
.real-estate-list__pdf {
    transition: color .25s ease-out
}

@media (hover: hover) and (pointer: fine) {

    .real-estate-list__virtual-tour:hover,
    .real-estate-list__model:hover,
    .real-estate-list__pdf:hover {
        color: var(--color-additional)
    }
}

.real-estate-list__virtual-tour:focus-visible,
.real-estate-list__model:focus-visible,
.real-estate-list__pdf:focus-visible {
    color: var(--color-additional)
}

@media screen and (max-width: 767px) {
    .real-estate-list__model {
        margin-right: 2rem
    }
}

.real-estate-list__virtual-tour,
.real-estate-list__model {
    position: relative
}

.real-estate-list__virtual-tour:after,
.real-estate-list__model:after {
    content: "";
    display: block;
    width: 4rem;
    height: 4rem;
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%)
}

.real-estate-list__virtual-tour[href="#"],
.real-estate-list__model[href="#"] {
    pointer-events: none;
    opacity: .2
}

@media screen and (max-width: 767px) {

    .real-estate-list__garden-area,
    .real-estate-list__floor,
    .real-estate-list__status,
    .real-estate-list__visualization,
    .real-estate-list__data-sheet {
        display: flex
    }
}

@media screen and (max-width: 767px) {

    .real-estate-list__garden-area:before,
    .real-estate-list__floor:before,
    .real-estate-list__status:before,
    .real-estate-list__visualization:before,
    .real-estate-list__data-sheet:before {
        content: attr(data-cell) ":";
        min-width: 50%;
        padding-right: 1rem;
        text-align: left
    }
}

@media screen and (max-width: 767px) {
    .real-estate-list__status {
        display: none
    }
}

@media screen and (max-width: 1023px) {
    .real-estate-list__status-desktop {
        display: none
    }
}

@media screen and (min-width: 1024px) {
    .real-estate-list__status-mobile {
        display: none
    }
}

.real-estate-list__no-results {
    display: none;
    padding: .8rem;
    color: var(--color-text);
    text-align: center
}

@media screen and (max-width: 1023px) {
    .real-estate-list__no-results {
        font-family: Roboto, sans-serif;
        font-size: 1.8rem;
        font-weight: 400;
        line-height: 1.5555555556;
        padding: 1rem
    }
}

.no-results .real-estate-list__no-results {
    display: block
}

.image-sequence {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 100%;
    height: calc(100dvh + (var(--image-sequence-frames, 0) * var(--image-sequence-frame-multipler, 50)));
    position: relative
}

.image-sequence__wrapper {
    grid-column-start: 2;
    grid-column-end: 12;
    display: flex;
    align-items: center;
    justify-content: center;
    width: 100%;
    height: calc(100dvh - 6rem);
    position: sticky;
    top: 3rem;
    bottom: 3rem
}

@media screen and (max-width: 1023px) {
    .image-sequence__wrapper {
        grid-column: 1/-1
    }
}

.image-sequence__scene {
    width: var(--canvas-width, auto);
    max-width: 100%;
    height: var(--canvas-height, auto);
    max-height: 100%;
    overflow: hidden;
    transform-origin: 0 0;
    pointer-events: none;
    aspect-ratio: var(--image-sequence-ratio, 16/9)
}

html {
    height: 100%;
    min-height: 100%;
    position: relative;
    overflow-x: hidden;
    overflow-y: scroll
}

html.is-non-interactive {
    cursor: wait !important;
    pointer-events: none !important
}

html.menu-visible,
html.dialog-open,
html.preloader-lock {
    overflow: hidden;
    -ms-scroll-chaining: none;
    overscroll-behavior: none;
    touch-action: none
}

:root {
    --margin: 8rem;
    --gutter: 4rem;
    --header-height: 4rem;
    --column-count: 12
}

@media screen and (max-width: 1023px) {
    :root {
        --margin: 4rem;
        --gutter: 2rem
    }
}

@media screen and (max-width: 767px) {
    :root {
        --margin: 2rem;
        --gutter: 1rem;
        --column-count: 6
    }
}

@supports (height: 100svh) {
    :root {
        --vh: 1svh
    }
}

.overlay-grid {
    height: 100vh;
    position: fixed;
    top: 0;
    right: var(--margin);
    left: var(--margin);
    z-index: 8999;
    pointer-events: none;
    background-image: repeating-linear-gradient(to right, rgba(0, 255, 224, .1) 0 calc((100% - (11 * var(--gutter))) / 12), transparent calc((100% - (11 * var(--gutter))) / 12) calc(calc((100% - (11 * var(--gutter))) / 12) + var(--gutter)))
}

@supports not selector(:has(a, b)) {
    .overlay-grid {
        display: none
    }
}

@media screen and (max-width: 424px) {
    .overlay-grid {
        background-image: repeating-linear-gradient(to right, rgba(0, 255, 224, .1) 0 calc((100% - (5 * var(--gutter))) / 6), transparent calc((100% - (5 * var(--gutter))) / 6) calc(calc((100% - (5 * var(--gutter))) / 6) + var(--gutter)))
    }
}

.overlay-grid label {
    display: flex;
    align-items: center;
    width: auto;
    min-height: var(--margin);
    padding: 0 calc(var(--gutter) / 2);
    position: absolute;
    top: 50%;
    left: calc(var(--margin) * -1);
    color: #fff;
    font-size: 1rem;
    text-transform: uppercase;
    cursor: pointer;
    -webkit-user-select: none;
    -ms-user-select: none;
    user-select: none;
    transform: rotate(-90deg) translate(-50%);
    transform-origin: top left;
    pointer-events: auto;
    background-color: #000
}

.overlay-grid label input {
    width: 1px;
    height: 1px;
    margin: -1px;
    padding: 0;
    position: absolute;
    white-space: nowrap;
    overflow: hidden;
    -webkit-clip-path: inset(0 0 0 0);
    clip-path: inset(0 0 0 0);
    border: 0
}

.overlay-grid:has(input[type=checkbox]:checked) {
    background-image: none
}

.section {
    max-width: calc(100% - 2 * var(--margin, 0));
    margin: 0 var(--margin);
    margin-bottom: var(--space-bottom, 12rem)
}

@media screen and (max-width: 1023px) {
    .section {
        margin-bottom: 9rem
    }
}

@media screen and (max-width: 767px) {
    .section {
        margin-bottom: 4rem
    }
}

.section-text {
    display: grid;
    grid-template-columns: repeat(var(--column-count), 1fr);
    column-gap: var(--gutter);
    margin-top: 4rem;
    margin-bottom: 6rem
}

@media screen and (max-width: 767px) {
    .section-text {
        margin-bottom: 4rem
    }
}

@media screen and (max-width: 767px) {
    .section-hero+.section-text {
        margin-top: 2rem;
        margin-bottom: 4rem
    }
}

.section-text__cta {
    grid-column-start: 1;
    grid-column-end: 7
}

@media screen and (max-width: 1023px) {
    .section-text__cta {
        grid-column-start: 1;
        grid-column-end: 13;
        order: 2;
        margin-top: 3rem
    }
}

@media screen and (max-width: 767px) {
    .section-text__cta {
        grid-column-start: 1;
        grid-column-end: 7;
        margin-top: 2rem
    }
}

.section-text__desc {
    grid-column-start: 7;
    grid-column-end: 13
}

@media screen and (max-width: 1023px) {
    .section-text__desc {
        grid-column-start: 1;
        grid-column-end: 13
    }
}

@media screen and (max-width: 767px) {
    .section-text__desc {
        grid-column-start: 1;
        grid-column-end: 7
    }
}

.section-image {
    display: grid;
    grid-template-columns: repeat(var(--column-count), 1fr);
    column-gap: var(--gutter);
    margin-top: 12rem;
    margin-bottom: 12rem
}

@media screen and (max-width: 1023px) {
    .section-image {
        margin-top: 6rem;
        margin-bottom: 6rem
    }
}

@media screen and (max-width: 767px) {
    .section-image {
        margin-top: 4rem;
        margin-bottom: 4rem
    }
}

.section-image__image {
    grid-column-start: 2;
    grid-column-end: 12;
    border-radius: 2.4rem;
    overflow: hidden;
    aspect-ratio: 16/10
}

@media screen and (max-width: 1023px) {
    .section-image__image {
        border-radius: 1.6rem
    }
}

@media screen and (max-width: 767px) {
    .section-image__image {
        border-radius: .8rem
    }
}

@media screen and (max-width: 1023px) {
    .section-image__image {
        grid-column-start: 1;
        grid-column-end: 13
    }
}

@media screen and (max-width: 767px) {
    .section-image__image {
        grid-column-start: 1;
        grid-column-end: 7
    }
}

.section-image__image img {
    width: 100%;
    height: 100%;
    -o-object-fit: cover;
    object-fit: cover
}

.section-image__image--100 {
    grid-column-start: 1;
    grid-column-end: 13
}

.section-quote {
    display: grid;
    grid-template-columns: repeat(var(--column-count), 1fr);
    column-gap: var(--gutter);
    margin-top: 12rem;
    margin-bottom: 12rem
}

@media screen and (max-width: 1023px) {
    .section-quote {
        margin-top: 9rem;
        margin-bottom: 9rem
    }
}

@media screen and (max-width: 767px) {
    .section-quote {
        margin-top: 4rem;
        margin-bottom: 4rem
    }
}

.section-quote__quote {
    grid-column-start: 2;
    grid-column-end: 12;
    border-radius: 2.4rem;
    color: var(--color-text);
    background: var(--color-main);
    padding: 8rem 12rem;
    text-align: center;
    font-family: Inter, sans-serif;
    font-size: 6rem;
    font-weight: 500;
    line-height: 1.3
}

@media screen and (max-width: 1023px) {
    .section-quote__quote {
        border-radius: 1.6rem
    }
}

@media screen and (max-width: 767px) {
    .section-quote__quote {
        border-radius: .8rem
    }
}

@media screen and (max-width: 1023px) {
    .section-quote__quote {
        font-size: 4.8rem;
        line-height: 6.2rem
    }
}

@media screen and (max-width: 767px) {
    .section-quote__quote {
        font-size: 2.4rem;
        line-height: 3.2rem
    }
}

@media screen and (max-width: 1023px) {
    .section-quote__quote {
        grid-column-start: 1;
        grid-column-end: 13;
        padding: 4rem;
        font-size: 4rem;
        line-height: 5.2rem
    }
}

@media screen and (max-width: 767px) {
    .section-quote__quote {
        grid-column-start: 1;
        grid-column-end: 7;
        padding: 3rem;
        padding: 2rem;
        font-size: 2.4rem;
        line-height: 3.2rem
    }
}

.section-slider {
    display: grid;
    grid-template-columns: repeat(var(--column-count), 1fr);
    column-gap: var(--gutter);
    margin-top: 12rem;
    margin-bottom: 12rem;
    position: relative
}

@media screen and (max-width: 1023px) {
    .section-slider {
        margin-top: 6rem;
        margin-bottom: 6rem
    }
}

@media screen and (max-width: 767px) {
    .section-slider {
        margin-top: 4rem;
        margin-bottom: 4rem
    }
}

.section-slider__slider {
    grid-column-start: 2;
    grid-column-end: 12
}

@media screen and (max-width: 767px) {
    .section-slider__slider {
        grid-column-start: 1;
        grid-column-end: 6
    }
}

.section-slider__slider .swiper {
    border-radius: 2.4rem;
    overflow: hidden
}

@media screen and (max-width: 1023px) {
    .section-slider__slider .swiper {
        border-radius: 1.6rem
    }
}

@media screen and (max-width: 767px) {
    .section-slider__slider .swiper {
        border-radius: .8rem
    }
}

@media screen and (max-width: 767px) {
    .section-slider__slider .swiper {
        overflow: visible
    }
}

.section-slider__slider .slider__slide {
    aspect-ratio: 16/10
}

.section-slider__slider .slider__slide img {
    width: 100%;
    height: 100%;
    -o-object-fit: cover;
    object-fit: cover
}

.section-slider__slider .slider__prev,
.section-slider__slider .slider__next {
    position: absolute;
    top: 50%;
    transform: translateY(-50%)
}

@media screen and (max-width: 767px) {

    .section-slider__slider .slider__prev,
    .section-slider__slider .slider__next {
        display: none
    }
}

.section-slider__slider .slider__prev svg,
.section-slider__slider .slider__next svg {
    width: 1.6rem;
    height: .9rem
}

.section-slider__slider .slider__prev {
    left: 0
}

.section-slider__slider .slider__prev svg {
    transform: rotate(90deg) translateY(.1rem)
}

.section-slider__slider .slider__next {
    right: 0
}

.section-slider__slider .slider__next svg {
    transform: rotate(-90deg) translateY(.2rem)
}

.section-gallery-text {
    display: grid;
    grid-template-columns: repeat(var(--column-count), 1fr);
    column-gap: var(--gutter);
    align-items: flex-start;
    margin-top: 6rem;
    margin-bottom: 12rem
}

@media screen and (max-width: 1023px) {
    .section-gallery-text {
        margin-bottom: 6rem
    }
}

@media screen and (max-width: 767px) {
    .section-gallery-text {
        margin-top: 4rem;
        margin-bottom: 4rem
    }
}

.section-gallery-text__image {
    grid-column-start: 1;
    grid-column-end: 7;
    border-radius: 2.4rem;
    overflow: hidden;
    aspect-ratio: 16/10
}

@media screen and (max-width: 1023px) {
    .section-gallery-text__image {
        border-radius: 1.6rem
    }
}

@media screen and (max-width: 767px) {
    .section-gallery-text__image {
        border-radius: .8rem
    }
}

@media screen and (max-width: 1023px) {
    .section-gallery-text__image {
        grid-column-start: 1;
        grid-column-end: 13;
        margin-bottom: 4rem
    }
}

@media screen and (max-width: 767px) {
    .section-gallery-text__image {
        grid-column-start: 1;
        grid-column-end: 7
    }
}

.section-gallery-text__image img {
    height: 100%;
    width: 100%;
    -o-object-fit: cover;
    object-fit: cover
}

.section-gallery-text__gallery {
    grid-column-start: 1;
    grid-column-end: 7;
    display: grid;
    grid-template-columns: repeat(var(--column-count), 1fr);
    column-gap: var(--gutter);
    row-gap: var(--gutter)
}

@media screen and (max-width: 1023px) {
    .section-gallery-text__gallery {
        grid-column-start: 1;
        grid-column-end: 13;
        margin-bottom: 4rem
    }
}

@media screen and (max-width: 767px) {
    .section-gallery-text__gallery {
        grid-column-start: 1;
        grid-column-end: 7;
        margin-bottom: 3rem
    }
}

.section-gallery-text__gallery-item {
    grid-column: span 6;
    border-radius: 2.4rem;
    overflow: hidden;
    aspect-ratio: 33/20;
    cursor: pointer
}

@media screen and (max-width: 1023px) {
    .section-gallery-text__gallery-item {
        border-radius: 1.6rem
    }
}

@media screen and (max-width: 767px) {
    .section-gallery-text__gallery-item {
        border-radius: .8rem
    }
}

@media screen and (max-width: 767px) {
    .section-gallery-text__gallery-item {
        grid-column: span 3
    }
}

.section-gallery-text__gallery-item.hidden {
    display: none;
    visibility: hidden
}

.section-gallery-text__gallery-item img {
    height: 100%;
    width: 100%;
    -o-object-fit: cover;
    object-fit: cover;
    pointer-events: none
}

.section-gallery-text__gallery-more {
    display: flex;
    align-items: center;
    justify-content: center;
    border-radius: 2.4rem;
    color: var(--color-text);
    background: var(--color-main);
    padding: 0 3rem;
    font-family: Inter, sans-serif;
    font-size: 6rem;
    font-weight: 500;
    line-height: 1.3;
    transition: color .25s ease-out;
    cursor: pointer
}

@media screen and (max-width: 1023px) {
    .section-gallery-text__gallery-more {
        border-radius: 1.6rem
    }
}

@media screen and (max-width: 767px) {
    .section-gallery-text__gallery-more {
        border-radius: .8rem
    }
}

@media screen and (max-width: 1023px) {
    .section-gallery-text__gallery-more {
        font-size: 4.8rem;
        line-height: 6.2rem
    }
}

@media screen and (max-width: 767px) {
    .section-gallery-text__gallery-more {
        font-size: 2.4rem;
        line-height: 3.2rem
    }
}

@media (hover: hover) and (pointer: fine) {
    .section-gallery-text__gallery-more:hover {
        color: var(--color-additional)
    }
}

.section-gallery-text__gallery-more:focus-visible {
    color: var(--color-additional)
}

.section-gallery-text__text {
    grid-column-start: 7;
    grid-column-end: 13
}

@media screen and (max-width: 1023px) {
    .section-gallery-text__text {
        grid-column-start: 1;
        grid-column-end: 13
    }
}

@media screen and (max-width: 767px) {
    .section-gallery-text__text {
        grid-column-start: 1;
        grid-column-end: 7
    }
}

.section-map-text {
    display: grid;
    grid-template-columns: repeat(var(--column-count), 1fr);
    column-gap: var(--gutter);
    align-items: flex-start;
    margin-top: 12rem;
    margin-bottom: 12rem
}

@media screen and (max-width: 1023px) {
    .section-map-text {
        margin-top: 6rem;
        margin-bottom: 6rem
    }
}

@media screen and (max-width: 767px) {
    .section-map-text {
        margin-top: 4rem;
        margin-bottom: 4rem
    }
}

.section-map-text__map {
    grid-column-start: 1;
    grid-column-end: 7;
    border-radius: 2.4rem;
    overflow: hidden;
    aspect-ratio: 16/10
}

@media screen and (max-width: 1023px) {
    .section-map-text__map {
        border-radius: 1.6rem
    }
}

@media screen and (max-width: 767px) {
    .section-map-text__map {
        border-radius: .8rem
    }
}

@media screen and (max-width: 1023px) {
    .section-map-text__map {
        grid-column-start: 1;
        grid-column-end: 13;
        margin-bottom: 4rem
    }
}

@media screen and (max-width: 767px) {
    .section-map-text__map {
        grid-column-start: 1;
        grid-column-end: 7
    }
}

.section-map-text__text {
    grid-column-start: 7;
    grid-column-end: 13
}

@media screen and (max-width: 1023px) {
    .section-map-text__text {
        grid-column-start: 1;
        grid-column-end: 13
    }
}

@media screen and (max-width: 767px) {
    .section-map-text__text {
        grid-column-start: 1;
        grid-column-end: 7
    }
}

.section-summary {
    display: grid;
    grid-template-columns: repeat(var(--column-count), 1fr);
    column-gap: var(--gutter);
    margin-top: 4rem;
    margin-bottom: 7rem;
    padding-top: 4rem;
    border-top: 1px solid #BCBCBC
}

@media screen and (max-width: 767px) {
    .section-summary {
        margin-bottom: 4rem
    }
}

.section-accordion+.section-summary,
.section-development+.section-summary {
    margin-top: 0;
    border-top: 0
}

.section-summary__tags {
    grid-column-start: 1;
    grid-column-end: 10;
    display: flex;
    flex-wrap: wrap;
    align-items: flex-start
}

@media screen and (max-width: 1023px) {
    .section-summary__tags {
        grid-column-start: 1;
        grid-column-end: 8
    }
}

@media screen and (max-width: 767px) {
    .section-summary__tags {
        grid-column-start: 1;
        grid-column-end: 6
    }
}

.section-summary__tags-item {
    margin-right: 1rem;
    margin-bottom: 1rem
}

.section-summary__share {
    grid-column-start: 10;
    grid-column-end: 13
}

@media screen and (max-width: 1023px) {
    .section-summary__share {
        grid-column-start: 8;
        grid-column-end: 13
    }
}

@media screen and (max-width: 767px) {
    .section-summary__share {
        grid-column-start: 6;
        grid-column-end: 7
    }
}

.section-hero {
    background: var(--color-main);
    margin-bottom: 4rem
}

@media screen and (max-width: 767px) {
    .section-hero {
        margin-bottom: 2rem
    }
}

.section-hero-container {
    max-width: calc(100% - 2 * var(--margin, 0));
    margin: 0 var(--margin);
    display: grid;
    grid-template-columns: repeat(var(--column-count), 1fr);
    column-gap: var(--gutter);
    padding-top: 31rem;
    padding-bottom: 4rem;
    grid-template-rows: auto 1fr auto
}

@media screen and (max-width: 1023px) {
    .section-hero-container {
        padding-top: 23rem
    }
}

@media screen and (max-width: 767px) {
    .section-hero-container {
        padding-top: 14rem
    }
}

.section-hero__image {
    grid-column-start: 1;
    grid-column-end: 7;
    aspect-ratio: 16/9;
    grid-row: 1/span 3
}

@media screen and (max-width: 1023px) {
    .section-hero__image {
        grid-column-start: 1;
        grid-column-end: 13;
        grid-row: 3;
        margin-top: 4rem
    }
}

@media screen and (max-width: 767px) {
    .section-hero__image {
        margin-top: 2rem;
        grid-column-start: 1;
        grid-column-end: 7
    }
}

.section-hero__top {
    grid-column-start: 7;
    grid-column-end: 13;
    margin-bottom: 4rem;
    display: flex;
    justify-content: space-between;
    grid-row: 1
}

@media screen and (max-width: 1023px) {
    .section-hero__top {
        grid-column-start: 1;
        grid-column-end: 13
    }
}

@media screen and (max-width: 767px) {
    .section-hero__top {
        grid-column-start: 1;
        grid-column-end: 7
    }
}

.section-hero__top-parent {
    white-space: nowrap
}

.section-hero__top-other {
    display: flex;
    align-items: flex-start
}

.section-hero__top-other-item {
    margin-left: 2rem
}

.section-hero__title {
    grid-column-start: 7;
    grid-column-end: 13;
    font-family: Inter, sans-serif;
    font-size: 7.2rem;
    font-weight: 500;
    line-height: 1.1388888889;
    grid-row: 2
}

@media screen and (max-width: 1023px) {
    .section-hero__title {
        font-size: 5.4rem;
        line-height: 6.2rem
    }
}

@media screen and (max-width: 767px) {
    .section-hero__title {
        font-size: 3.6rem;
        line-height: 4.8rem
    }
}

@media screen and (max-width: 1023px) {
    .section-hero__title {
        grid-column-start: 1;
        grid-column-end: 13
    }
}

@media screen and (max-width: 767px) {
    .section-hero__title {
        grid-column-start: 1;
        grid-column-end: 7
    }
}

.section-hero__tags {
    grid-column-start: 7;
    grid-column-end: 13;
    display: flex;
    flex-wrap: wrap;
    grid-row: 3
}

@media screen and (max-width: 1023px) {
    .section-hero__tags {
        grid-row: 4;
        grid-column-start: 1;
        grid-column-end: 13;
        margin-top: 3rem
    }
}

@media screen and (max-width: 767px) {
    .section-hero__tags {
        grid-column-start: 1;
        grid-column-end: 7;
        margin-top: 2rem
    }
}

.section-hero__tags-item {
    margin-right: 1rem;
    margin-top: 1rem
}

.section-hero__nav {
    grid-column-start: 7;
    grid-column-end: 13;
    display: flex;
    justify-content: space-between
}

@media screen and (max-width: 1023px) {
    .section-hero__nav {
        grid-column-start: 1;
        grid-column-end: 13;
        margin-top: 3rem
    }
}

@media screen and (max-width: 767px) {
    .section-hero__nav {
        grid-column-start: 1;
        grid-column-end: 7;
        margin-top: 2rem
    }
}

.section-accordion {
    margin-top: 4rem;
    margin-bottom: 0
}

.section-projects {
    display: grid;
    grid-template-columns: repeat(var(--column-count), 1fr);
    column-gap: var(--gutter);
    row-gap: var(--gutter)
}

.section-projects__project {
    display: block;
    grid-column: span 6;
    position: relative
}

@media (hover: hover) and (pointer: fine) {
    .section-projects__project:hover img {
        transform: scale(1.05)
    }
}

.section-projects__project:focus-visible img {
    transform: scale(1.05)
}

@media (hover: hover) and (pointer: fine) {
    .section-projects__project:hover .section-projects__project-title {
        opacity: 1
    }
}

.section-projects__project:focus-visible .section-projects__project-title {
    opacity: 1
}

.section-projects__project-image {
    border-radius: 2.4rem;
    overflow: hidden;
    aspect-ratio: 16/10;
    isolation: isolate
}

@media screen and (max-width: 1023px) {
    .section-projects__project-image {
        border-radius: 1.6rem
    }
}

@media screen and (max-width: 767px) {
    .section-projects__project-image {
        border-radius: .8rem
    }
}

.section-projects__project-image img {
    border-radius: 2.4rem;
    width: 100%;
    height: 100%;
    transition: transform .8s ease;
    transform: scale(1);
    -o-object-fit: cover;
    object-fit: cover
}

@media screen and (max-width: 1023px) {
    .section-projects__project-image img {
        border-radius: 1.6rem
    }
}

@media screen and (max-width: 767px) {
    .section-projects__project-image img {
        border-radius: .8rem
    }
}

.section-projects__project-title {
    display: flex;
    flex-direction: column;
    position: absolute;
    top: 2rem;
    left: 2rem;
    color: #6a5134;
    transition: all .25s ease-out;
    pointer-events: none;
    opacity: 0
}

@media screen and (max-width: 1023px) {
    .section-projects__project-title {
        top: 1rem;
        left: 1rem
    }
}

@media screen and (max-width: 1279px) {
    .section-projects__project-title {
        opacity: 1
    }
}

.section-projects__project-title h3 {
    width: max-content;
    position: relative;
    pointer-events: auto;
    border-radius: 1.2rem;
    background: #fdf5e3
}

@media screen and (max-width: 1023px) {
    .section-projects__project-title h3 {
        padding: 1.2rem 1.6rem 1.1rem;
        font-size: 1.2rem;
        border-radius: .8rem
    }
}

.section-projects__project-title:before {
    content: "";
    display: block;
    position: absolute;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    transition: opacity .25s ease-out;
    pointer-events: none;
    opacity: 0;
    border-radius: 1.2rem;
    background: #fdf5e3
}

@media screen and (max-width: 1023px) {
    .section-projects__project-title:before {
        border-radius: .8rem
    }
}

.section-projects__project-title ul {
    padding: 0 2rem 2rem;
    transition: opacity .25s ease-out;
    pointer-events: none;
    opacity: 0
}

.section-projects__project-title ul li {
    font-family: Inter, sans-serif;
    font-size: 1.8rem;
    font-weight: 500;
    line-height: 1;
    letter-spacing: .01em;
    text-transform: uppercase;
    margin-top: .6rem;
    padding-bottom: .2rem;
    padding-left: 1.6rem;
    position: relative;
    white-space: nowrap;
    text-transform: none
}

@media screen and (max-width: 767px) {
    .section-projects__project-title ul li {
        font-size: 1.2rem
    }
}

.section-projects__project-title ul li:first-child {
    margin-top: 0
}

.section-projects__project-title ul li:before {
    content: "";
    display: block;
    width: .7rem;
    height: .7rem;
    position: absolute;
    top: .4rem;
    left: 0;
    border-radius: 50%;
    background: currentcolor
}

@media screen and (max-width: 767px) {
    .section-projects__project-title ul li:before {
        width: .5rem;
        height: .5rem;
        top: .3rem
    }
}

.section-projects__project-title:hover:before {
    pointer-events: auto;
    opacity: 1
}

.section-projects__project-title:hover ul {
    pointer-events: auto;
    opacity: 1
}

.section-development {
    margin-top: 4rem;
    margin-bottom: 0
}

.section-home-text01 {
    display: flex;
    align-items: flex-end;
    min-height: 100svh;
    margin-bottom: 0;
    padding-top: 14rem;
    padding-bottom: 8rem
}

@media screen and (max-width: 1023px) {
    .section-home-text01 {
        padding-top: 23rem;
        padding-bottom: 5rem
    }
}

@media screen and (max-width: 767px) {
    .section-home-text01 {
        padding-top: 13rem;
        padding-bottom: 2rem
    }
}

.section-home-text01__container {
    display: grid;
    grid-template-columns: repeat(var(--column-count), 1fr);
    column-gap: var(--gutter);
    grid-row-gap: 7rem
}

@media screen and (max-width: 1023px) {
    .section-home-text01__container {
        grid-row-gap: 5rem
    }
}

@media screen and (max-width: 767px) {
    .section-home-text01__container {
        grid-row-gap: 3rem
    }
}

.section-home-text01__right {
    grid-column-start: 7;
    grid-column-end: 13;
    grid-row: 1
}

@media screen and (max-width: 767px) {
    .section-home-text01__right {
        grid-column-start: 1;
        grid-column-end: 7;
        grid-row: 3
    }
}

.section-home-text01__left {
    grid-column-start: 1;
    grid-column-end: 5;
    grid-row: 2
}

@media screen and (max-width: 1023px) {
    .section-home-text01__left {
        grid-column-start: 1;
        grid-column-end: 7;
        grid-row: 1
    }
}

@media screen and (max-width: 767px) {
    .section-home-text01__left {
        grid-row: 2
    }
}

.section-home-text01__headline {
    font-family: Inter, sans-serif;
    font-size: 4.8rem;
    font-weight: 500;
    line-height: 1.3333333333;
    margin-bottom: 3rem
}

@media screen and (max-width: 1023px) {
    .section-home-text01__headline {
        font-size: 3.6rem;
        line-height: 5.2rem
    }
}

@media screen and (max-width: 767px) {
    .section-home-text01__headline {
        font-size: 1.8rem;
        line-height: 2.8rem
    }
}

@media screen and (max-width: 1023px) {
    .section-home-text01__headline {
        margin-bottom: 2rem;
        font-size: 2.4rem;
        line-height: 3.6rem
    }
}

@media screen and (max-width: 767px) {
    .section-home-text01__headline {
        margin-top: 3rem;
        font-size: 1.8rem;
        line-height: 2.8rem
    }
}

.section-home-text01__description {
    font-family: Roboto, sans-serif;
    font-size: 1.8rem;
    font-weight: 400;
    line-height: 1.5555555556;
    margin-bottom: 3rem
}

@media screen and (max-width: 767px) {
    .section-home-text01__description {
        display: none
    }
}

.section-home-text01__cta {
    padding: .7rem 1.2rem;
    font-size: 1.2rem
}

.section-home-text01__scroll {
    display: none
}

@media screen and (max-width: 1023px) {
    .section-home-text01__scroll {
        grid-column-start: 10;
        grid-column-end: 13;
        display: flex;
        grid-row: 3;
        align-items: flex-end;
        justify-content: flex-end
    }
}

@media screen and (max-width: 767px) {
    .section-home-text01__scroll {
        display: none
    }
}

.section-home-text01__scroll-cta {
    padding: .7rem 1.2rem;
    color: #707070;
    font-size: 1.2rem;
    background: #f4f4f4
}

.section-home-text01__link {
    flex-grow: 2
}

.section-home-text01__image {
    grid-column-start: 7;
    grid-column-end: 13;
    border-radius: 2.4rem;
    grid-row: 2/span 2;
    overflow: hidden;
    aspect-ratio: 16/9
}

@media screen and (max-width: 1023px) {
    .section-home-text01__image {
        border-radius: 1.6rem
    }
}

@media screen and (max-width: 767px) {
    .section-home-text01__image {
        border-radius: .8rem
    }
}

@media screen and (max-width: 1023px) {
    .section-home-text01__image {
        grid-column-start: 1;
        grid-column-end: 11;
        display: flex;
        grid-row: 2/span 1;
        align-items: flex-end;
        justify-content: flex-end
    }
}

@media screen and (max-width: 767px) {
    .section-home-text01__image {
        grid-column-start: 1;
        grid-column-end: 7;
        grid-row: 4;
        margin-top: 2rem
    }
}

.section-home-text01__image img {
    width: 100%;
    height: 100%;
    -o-object-fit: cover;
    object-fit: cover
}

.section-home-text01__logotype {
    grid-column-start: 1;
    grid-column-end: 5;
    display: flex;
    grid-row: 3;
    align-items: flex-end
}

@media screen and (max-width: 1023px) {
    .section-home-text01__logotype {
        grid-column-start: 1;
        grid-column-end: 9
    }
}

@media screen and (max-width: 767px) {
    .section-home-text01__logotype {
        grid-column-start: 1;
        grid-column-end: 5;
        grid-row: 1
    }
}

.section-home-text02 {
    margin-top: 8rem;
    margin-bottom: 8rem
}

@media screen and (max-width: 1023px) {
    .section-home-text02 {
        margin-top: 6rem;
        margin-bottom: 6rem
    }
}

@media screen and (max-width: 767px) {
    .section-home-text02 {
        margin-top: 4rem;
        margin-bottom: 2rem
    }
}

.section-home-text02__image {
    width: 60%;
    height: 13rem;
    margin: 0 auto 7.5rem;
    position: relative;
    overflow: hidden;
    transition: -webkit-clip-path 1s cubic-bezier(.4, 0, .2, 1);
    transition: clip-path 1s cubic-bezier(.4, 0, .2, 1);
    transition: clip-path 1s cubic-bezier(.4, 0, .2, 1), -webkit-clip-path 1s cubic-bezier(.4, 0, .2, 1);
    border-radius: 6.5rem;
    -webkit-clip-path: inset(0% 30% 0% 30% round 6.5rem);
    clip-path: inset(0% 30% 0% 30% round 6.5rem);
    will-change: clip-path;
    contain: size
}

@media screen and (max-width: 1023px) {
    .section-home-text02__image {
        width: 66%
    }
}

@media screen and (max-width: 767px) {
    .section-home-text02__image {
        height: 5.2rem;
        margin-bottom: 4rem;
        border-radius: 2.6rem
    }
}

.section-home-text02__image img {
    width: 100%;
    height: 126%;
    position: absolute;
    top: -13%;
    left: 0;
    transition: transform 1s cubic-bezier(.4, 0, .2, 1);
    transform: scale(.8);
    -o-object-fit: cover;
    object-fit: cover;
    will-change: transform
}

.section-home-text02__image.is-in-viewport {
    transition-delay: .3s;
    transition-duration: 1.4s;
    -webkit-clip-path: inset(0% 0% 0% 0% round 6.5rem);
    clip-path: inset(0% 0% 0% 0% round 6.5rem)
}

.section-home-text02__image.is-in-viewport img {
    transition-delay: .3s;
    transition-duration: 1.4s;
    transform: scale(1)
}

.section-home-text02__title {
    font-family: Inter, sans-serif;
    font-size: 7.2rem;
    font-weight: 500;
    line-height: 1.1388888889;
    width: 90%;
    margin: 0 auto 4.5rem;
    text-align: center
}

@media screen and (max-width: 1023px) {
    .section-home-text02__title {
        font-size: 5.4rem;
        line-height: 6.2rem
    }
}

@media screen and (max-width: 767px) {
    .section-home-text02__title {
        font-size: 3.6rem;
        line-height: 4.8rem
    }
}

@media screen and (max-width: 1023px) {
    .section-home-text02__title {
        margin: 0 auto 7rem
    }
}

@media screen and (max-width: 767px) {
    .section-home-text02__title {
        width: 100%;
        margin-bottom: 4rem
    }
}

.section-home-text02__description {
    width: 60%;
    margin: 0 auto 8.5rem;
    text-align: center
}

@media screen and (max-width: 1023px) {
    .section-home-text02__description {
        width: 100%;
        margin-bottom: 4rem
    }
}

.section-home-text02__box {
    border-radius: 2.4rem;
    display: grid;
    grid-template-columns: repeat(var(--column-count), 1fr);
    column-gap: var(--gutter);
    overflow: hidden;
    background: #eee
}

@media screen and (max-width: 1023px) {
    .section-home-text02__box {
        border-radius: 1.6rem
    }
}

@media screen and (max-width: 767px) {
    .section-home-text02__box {
        border-radius: .8rem
    }
}

.section-home-text02__box-content {
    grid-column-start: 1;
    grid-column-end: 7;
    padding: 4rem 0 4rem 4rem
}

@media screen and (max-width: 1023px) {
    .section-home-text02__box-content {
        grid-column-start: 1;
        grid-column-end: 13;
        padding: 4rem
    }
}

@media screen and (max-width: 767px) {
    .section-home-text02__box-content {
        padding: 2rem
    }
}

.section-home-text02__box-headline {
    font-family: Inter, sans-serif;
    font-size: 4.8rem;
    font-weight: 500;
    line-height: 1.3333333333;
    margin-bottom: 3rem
}

@media screen and (max-width: 1023px) {
    .section-home-text02__box-headline {
        font-size: 3.6rem;
        line-height: 5.2rem
    }
}

@media screen and (max-width: 767px) {
    .section-home-text02__box-headline {
        font-size: 1.8rem;
        line-height: 2.8rem
    }
}

@media screen and (max-width: 1023px) {
    .section-home-text02__box-headline {
        font-size: 4.8rem;
        line-height: 6.4rem
    }
}

@media screen and (max-width: 767px) {
    .section-home-text02__box-headline {
        margin-bottom: 2.5rem;
        font-size: 2.4rem;
        line-height: 3.6rem
    }
}

.section-home-text02__box-description {
    font-family: Roboto, sans-serif;
    font-size: 1.8rem;
    font-weight: 400;
    line-height: 1.5555555556;
    width: 81%;
    margin-bottom: 4rem
}

@media screen and (max-width: 1023px) {
    .section-home-text02__box-description {
        width: 100%
    }
}

@media screen and (max-width: 767px) {
    .section-home-text02__box-description {
        margin-bottom: 2rem;
        font-size: 1.4rem;
        line-height: 2.1rem
    }
}

.section-home-text02__box-image {
    grid-column-start: 7;
    grid-column-end: 13;
    height: 64rem;
    overflow: hidden
}

@media screen and (max-width: 1023px) {
    .section-home-text02__box-image {
        grid-column-start: 1;
        grid-column-end: 13;
        height: 48rem
    }
}

@media screen and (max-width: 767px) {
    .section-home-text02__box-image {
        height: 19.5rem
    }
}

.section-home-text02__box-image img {
    width: 100%;
    height: 100%;
    -o-object-fit: cover;
    object-fit: cover
}

.section-home-slider01 {
    min-height: var(--min-height, 100lvh);
    background: #f4f4f4;
    contain: size
}

@media screen and (max-width: 1023px) {
    .section-home-slider01 {
        min-height: initial;
        contain: paint;
        width: 100%;
        padding-right: var(--margin);
        padding-left: var(--margin)
    }
}

.section-home-slider01__content {
    width: 100%;
    padding-top: 8rem;
    padding-bottom: 8rem;
    position: sticky;
    top: 0;
    height: 100%;
    contain: paint
}

@media screen and (max-width: 1023px) {
    .section-home-slider01__content {
        display: grid;
        grid-template-columns: repeat(var(--column-count), 1fr);
        column-gap: var(--gutter);
        padding-top: 6rem;
        padding-bottom: 6rem;
        contain: initial
    }
}

@media screen and (max-width: 767px) {
    .section-home-slider01__content {
        padding-top: 2rem;
        padding-bottom: 2rem
    }
}

.section-home-slider01__inner {
    max-width: calc(100% - 2 * var(--margin, 0));
    margin: 0 var(--margin)
}

@media screen and (max-width: 1023px) {
    .section-home-slider01__inner {
        margin: 0;
        max-width: none;
        grid-column-start: 1;
        grid-column-end: 12
    }
}

@media screen and (max-width: 767px) {
    .section-home-slider01__inner {
        grid-column-start: 1;
        grid-column-end: 6
    }
}

.section-home-slider01__slider {
    opacity: 0
}

.section-home-slider01__slider .swiper {
    overflow: visible
}

.section-home-slider01__slider.ovee-component {
    animation: appear 1s .1s cubic-bezier(.25, .46, .45, .94) forwards
}

.section-home-slider01__slide {
    border-radius: 2.4rem;
    display: flex;
    flex-direction: column;
    justify-content: flex-end;
    padding: 4rem;
    position: relative;
    overflow: hidden;
    gap: 2rem;
    aspect-ratio: 2.2
}

@media screen and (max-width: 1023px) {
    .section-home-slider01__slide {
        border-radius: 1.6rem
    }
}

@media screen and (max-width: 767px) {
    .section-home-slider01__slide {
        border-radius: .8rem
    }
}

@media screen and (min-width: 1024px) {
    .section-home-slider01__slide {
        height: calc(100svh - 16rem)
    }
}

@media screen and (max-width: 1023px) {
    .section-home-slider01__slide {
        aspect-ratio: 16/12;
        padding: 3rem
    }
}

@media screen and (max-width: 767px) {
    .section-home-slider01__slide {
        aspect-ratio: 1;
        padding: 2rem;
        gap: 1.5rem
    }
}

.section-home-slider01__background {
    position: absolute;
    inset: 0;
    z-index: 1
}

.section-home-slider01__background img {
    display: block;
    width: 100%;
    height: 100%;
    position: absolute;
    inset: 0;
    -o-object-fit: cover;
    object-fit: cover
}

.section-home-slider01__heading {
    font-family: Inter, sans-serif;
    font-size: 7.2rem;
    font-weight: 500;
    line-height: 1.1388888889;
    order: 2;
    max-width: 46rem;
    position: relative;
    z-index: 10;
    color: #fff
}

@media screen and (max-width: 1023px) {
    .section-home-slider01__heading {
        font-size: 5.4rem;
        line-height: 6.2rem
    }
}

@media screen and (max-width: 767px) {
    .section-home-slider01__heading {
        font-size: 3.6rem;
        line-height: 4.8rem
    }
}

@media screen and (max-width: 767px) {
    .section-home-slider01__heading {
        font-size: 2.4rem;
        line-height: 3.2rem;
        max-width: 15rem
    }
}

.section-home-slider01__link {
    order: 1;
    position: relative;
    z-index: 10
}

.section-home-slider02 {
    margin-top: 8rem;
    margin-bottom: 8rem
}

@media screen and (max-width: 1023px) {
    .section-home-slider02 {
        margin-top: 4rem;
        margin-bottom: 4rem
    }
}

@media screen and (max-width: 767px) {
    .section-home-slider02 {
        margin-top: 2rem;
        margin-bottom: 4rem
    }
}

.section-home-slider02__top {
    display: flex;
    justify-content: space-between;
    margin-bottom: 9.5rem
}

@media screen and (max-width: 1023px) {
    .section-home-slider02__top {
        margin-bottom: 8rem
    }
}

@media screen and (max-width: 767px) {
    .section-home-slider02__top {
        margin-bottom: 6rem
    }
}

.section-home-slider02__title {
    font-family: Inter, sans-serif;
    font-size: 7.2rem;
    font-weight: 500;
    line-height: 1.1388888889;
    text-align: center;
    width: 90%;
    margin: 0 auto 8rem
}

@media screen and (max-width: 1023px) {
    .section-home-slider02__title {
        font-size: 5.4rem;
        line-height: 6.2rem
    }
}

@media screen and (max-width: 767px) {
    .section-home-slider02__title {
        font-size: 3.6rem;
        line-height: 4.8rem
    }
}

@media screen and (max-width: 1023px) {
    .section-home-slider02__title {
        width: 100%;
        margin: 0 auto 10.5rem
    }
}

@media screen and (max-width: 767px) {
    .section-home-slider02__title {
        margin-bottom: 6rem
    }
}

.section-home-slider02__slider {
    display: block;
    padding-bottom: 6.4rem;
    position: relative
}

@media screen and (max-width: 1023px) {
    .section-home-slider02__slider .swiper {
        overflow: visible
    }
}

.section-home-slider02__slider .slider__pagination {
    position: absolute;
    bottom: 0;
    left: 50%;
    transform: translate(-50%);
    display: flex;
    justify-content: center;
    width: 100%;
    order: 2;
    margin-top: 4rem
}

.section-home-slider02__slider .slider__pagination .pagination__item {
    display: block;
    width: 2.4rem;
    height: 2.4rem;
    border-radius: 1.2rem;
    background: #F4F4F4;
    margin: 0 1rem;
    transition: background .25s ease-out
}

.section-home-slider02__slider .slider__pagination .pagination__item.is-active {
    background: #C7C7C7
}

.section-home-projects {
    padding-top: 8rem;
    padding-bottom: 8rem;
    background: #f4f4f4
}

@media screen and (max-width: 1023px) {
    .section-home-projects {
        padding-top: 4rem;
        padding-bottom: 4rem
    }
}

@media screen and (max-width: 767px) {
    .section-home-projects {
        padding-top: 2rem;
        padding-bottom: 4rem
    }
}

.section-home-projects__top {
    display: flex;
    justify-content: space-between;
    margin-bottom: 8rem
}

@media screen and (max-width: 1023px) {
    .section-home-projects__top {
        margin-bottom: 4rem
    }
}

.section-home-projects--content {
    max-width: calc(100% - 2 * var(--margin, 0));
    margin: 0 var(--margin)
}

.section-home-projects__projects {
    display: grid;
    grid-template-columns: repeat(var(--column-count), 1fr);
    column-gap: var(--gutter)
}

@media screen and (max-width: 1023px) {
    .section-home-projects__projects {
        display: none
    }
}

.section-home-projects__projects-list {
    grid-column-start: 1;
    grid-column-end: 5
}

.section-home-projects__projects-list-item {
    display: block;
    padding: 2rem;
    transition: all .7s cubic-bezier(.23, 1, .32, 1);
    transform: translateY(4rem);
    opacity: .5;
    border-radius: 2.4rem;
    background: #fff
}

@media screen and (max-width: 1023px) {
    .section-home-projects__projects-list-item {
        border-radius: 1.6rem
    }
}

@media screen and (max-width: 767px) {
    .section-home-projects__projects-list-item {
        border-radius: .8rem
    }
}

@media screen and (max-width: 1023px) {
    .section-home-projects__projects-list-item {
        flex-grow: 2;
        margin-top: 4rem;
        transform: none;
        opacity: 1
    }
}

@media screen and (max-width: 767px) {
    .section-home-projects__projects-list-item {
        margin-top: 2rem
    }
}

.section-home-projects__projects-list-item:not(:last-child) {
    margin-bottom: 2rem
}

.section-home-projects__projects-list-item-image {
    margin-bottom: 2rem;
    overflow: hidden;
    border-radius: 1.2rem;
    aspect-ratio: 16/11
}

.section-home-projects__projects-list-item-image img {
    width: 100%;
    height: 100%;
    -o-object-fit: cover;
    object-fit: cover
}

.section-home-projects__projects-list-item-number {
    font-family: Roboto, sans-serif;
    font-size: 2.4rem;
    font-weight: 400;
    font-size: 1.4rem;
    line-height: 1.5;
    margin-bottom: 6rem;
    color: #707070
}

@media screen and (max-width: 767px) {
    .section-home-projects__projects-list-item-number {
        font-size: 1.8rem;
        line-height: 2.8rem
    }
}

@media screen and (max-width: 767px) {
    .section-home-projects__projects-list-item-number {
        font-size: 1.4rem;
        line-height: 2.1rem
    }
}

@media screen and (max-width: 1023px) {
    .section-home-projects__projects-list-item-number {
        color: currentcolor
    }
}

@media screen and (max-width: 767px) {
    .section-home-projects__projects-list-item-number {
        margin-bottom: 2rem
    }
}

.section-home-projects__projects-list-item-title {
    font-family: Inter, sans-serif;
    font-size: 2.4rem;
    font-weight: 700;
    line-height: 1.5;
    margin-bottom: 2.5rem
}

@media screen and (max-width: 767px) {
    .section-home-projects__projects-list-item-title {
        font-size: 1.8rem;
        line-height: 2.8rem
    }
}

@media screen and (max-width: 767px) {
    .section-home-projects__projects-list-item-title {
        margin-bottom: 1rem
    }
}

.section-home-projects__projects-list-item-description {
    font-family: Roboto, sans-serif;
    font-size: 1.8rem;
    font-weight: 400;
    line-height: 1.5555555556
}

@media screen and (max-width: 767px) {
    .section-home-projects__projects-list-item-description {
        font-size: 1.4rem;
        line-height: 2.1rem
    }
}

.section-home-projects__projects-list-item .button,
.section-home-projects__projects-list-item .header__nav-toggle {
    margin-top: 5.5rem
}

@media screen and (max-width: 767px) {

    .section-home-projects__projects-list-item .button,
    .section-home-projects__projects-list-item .header__nav-toggle {
        margin-top: 3rem
    }
}

.section-home-projects__projects-list-item.is-active {
    opacity: 1
}

.section-home-projects__projects-list-item.is-in-viewport {
    transform: translate(0)
}

.section-home-projects__projects-slider {
    grid-column-start: 5;
    grid-column-end: 13
}

@media screen and (max-width: 1023px) {
    .section-home-projects__projects-slider {
        grid-column-start: 1;
        grid-column-end: 10
    }
}

@media screen and (max-width: 767px) {
    .section-home-projects__projects-slider {
        grid-column-start: 1;
        grid-column-end: 6
    }
}

.section-home-projects__projects-slider .swiper {
    border-radius: 2.4rem;
    position: sticky;
    top: var(--sticky-offset, 8rem);
    overflow: hidden;
    contain: paint
}

@media screen and (max-width: 1023px) {
    .section-home-projects__projects-slider .swiper {
        border-radius: 1.6rem
    }
}

@media screen and (max-width: 767px) {
    .section-home-projects__projects-slider .swiper {
        border-radius: .8rem
    }
}

.section-home-projects__projects-slider figure {
    aspect-ratio: 16/10
}

.section-home-projects__projects-slider figure img {
    width: 100%;
    height: 100%;
    -o-object-fit: cover;
    object-fit: cover
}

.section-home-projects__projects-mobile {
    display: none
}

@media screen and (max-width: 1023px) {
    .section-home-projects__projects-mobile {
        display: grid;
        grid-template-columns: repeat(var(--column-count), 1fr);
        column-gap: var(--gutter)
    }
}

.section-home-projects__projects-mobile .swiper {
    overflow: visible;
    border-radius: 0;
    contain: initial
}

.section-home-projects__projects-mobile .swiper .swiper-slide {
    display: flex;
    flex-direction: column;
    height: auto
}

.section-home-projects__projects-mobile .swiper figure {
    border-radius: 2.4rem;
    overflow: hidden
}

@media screen and (max-width: 1023px) {
    .section-home-projects__projects-mobile .swiper figure {
        border-radius: 1.6rem
    }
}

@media screen and (max-width: 767px) {
    .section-home-projects__projects-mobile .swiper figure {
        border-radius: .8rem
    }
}

html {
    font-size: .625vw
}

@media screen and (max-width: 1023px) {
    html {
        font-size: 10px
    }
}