/* --- BASE --- */

* {
    font-size: inherit;
    line-height: inherit;
    font-style: inherit;
    font-weight: inherit;
    color: inherit;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
    margin: 0;
    padding: 0;
    outline: none !important;
    background-color: transparent;
    box-sizing: border-box;
}
*::-moz-focus-inner {
    border: none;
}
h1,
h2,
h3,
h4,
h5,
h6 {
    margin: 0;
}
figure.image {
    margin: 20px auto;
}
figcaption {
    font-size: 14px;
    font-style: italic;
}
html,
body {
    width: 100%;
    display: block;
    margin-top: 0 !important;
    background-color: #fff;
    position: relative;
    overflow-x: hidden;
}
body {
    font-family: "Work Sans", sans-serif;
    color: #2e2e2e;
    line-height: 1.2;
    font-style: normal;
    font-weight: 300;
    font-size: 10px;
    padding-top: 100px;
    background-color: #fff;
}
html {
    scroll-behavior: smooth;
}
main {
    position: relative;
}
section {
    position: relative;
    display: block;
    width: 100%;
}
ul,
ol {
    list-style-position: inside;
}
a {
    text-decoration: none;
    cursor: pointer;
}
a:hover {
}
span {
    font-size: inherit;
    font-weight: inherit;
    font-family: inherit;
    font-style: inherit;
    color: inherit;
}
b,
strong {
    font-weight: 700;
}
i,
em {
    font-style: italic;
}
p + p,
p + ul,
ul + p,
.value__content li {
    margin-top: 20px;
}

/* --- / BASE --- */

/* --- DEFAULTS --- */

.font-80 {
    font-size: 8em;
}
.font-72 {
    font-size: 7.2em;
}
.font-60 {
    font-size: 6em;
}
.font-50 {
    font-size: 5em;
}
.font-45 {
    font-size: 4.5em;
}
.font-36 {
    font-size: 3.2em;
}
.font-32 {
    font-size: 3.2em;
}
.font-30 {
    font-size: 3em;
}
.font-26 {
    font-size: 2.6em;
}
.font-24 {
    font-size: 2.4em;
}
.font-22 {
    font-size: 2.2em;
}
.font-20 {
    font-size: 2em;
}
.font-18 {
    font-size: 1.8em;
}
.font-16 {
    font-size: 1.6em;
}
.font-14 {
    font-size: 1.4em;
}
.font-12 {
    font-size: 1.2em;
}

.line-18 {
    line-height: 1.8em;
}
.line-16 {
    line-height: 1.6em;
}
.line-14 {
    line-height: 1.4em;
}
.line-12 {
    line-height: 1.2em;
}
.line-10 {
    line-height: 1em;
}

.font-secondary {
    font-family: "Montserrat", sans-serif;
}

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

.text-center {
    text-align: center;
}
.text-right {
    text-align: right;
}
.text-left {
    text-align: right;
}

.color-white {
    color: #fff;
}

.secondary-background {
    background-color: #f4f4f5;
}
.tertiary-background {
    background: #2e2e2e;
}
.quaternary-background {
    background: #cfc4b3;
}

.text-uppercase {
    text-transform: uppercase;
}

.wrapped-title {
    display: table;
    padding: 20px 75px;
    margin: 0 auto;
    border: 1px solid #2e2e2e;
}

.relative {
    position: relative;
}

.overflow-hidden {
    overflow: hidden;
}

.content {
    position: relative;
    display: block;
    width: 90%;
    height: 100%;
    margin: 0 auto;
    overflow: unset;
    max-width: 1170px;
}
.content--w-sidebar {
    max-width: 50%;
}
.content--xx-large {
    max-width: 1700px;
}
.content--x-large {
    max-width: 1600px;
}
.content--large {
    max-width: 1360px;
}
.content--medium {
    max-width: 1150px;
}
.content--small {
    max-width: 1000px;
}
.content--x-small {
    max-width: 880px;
}
.content--xx-small {
    max-width: 560px;
}

.img-fluid {
    display: block;
    max-width: 100%;
    width: auto;
    height: auto;
}

.clearfix::after {
    content: " ";
    font-size: 0;
    display: block;
    height: 0;
    clear: both;
    visibility: hidden;
}

.mx-auto {
    margin-left: auto;
    margin-right: auto;
}

.mt-200,
.my-200 {
    margin-top: 200px !important;
}
.mb-200,
.my-200 {
    margin-bottom: 200px !important;
}

.mt-100,
.my-100 {
    margin-top: 100px !important;
}
.mb-100,
.my-100 {
    margin-bottom: 100px !important;
}

.mt-60,
.my-60 {
    margin-top: 60px !important;
}
.mb-60,
.my-60 {
    margin-bottom: 60px !important;
}

.mt-50,
.my-50 {
    margin-top: 50px !important;
}
.mb-50,
.my-50 {
    margin-bottom: 50px !important;
}

.mt-30,
.my-30 {
    margin-top: 30px !important;
}
.mb-30,
.my-30 {
    margin-bottom: 30px !important;
}

.mt-20,
.my-20 {
    margin-top: 20px !important;
}
.mb-20,
.my-20 {
    margin-bottom: 20px !important;
}

.mt-10,
.my-10 {
    margin-top: 10px !important;
}
.mb-10,
.my-10 {
    margin-bottom: 10px !important;
}

.pt-200,
.py-200 {
    padding-top: 200px;
}
.pb-200,
.py-200 {
    padding-bottom: 200px;
}

.pt-100,
.py-100 {
    padding-top: 100px;
}
.pb-100,
.py-100 {
    padding-bottom: 100px;
}

.pt-50,
.py-50 {
    padding-top: 50px;
}
.pb-50,
.py-50 {
    padding-bottom: 50px;
}

.btn {
    display: table;
    padding: 15px 40px;
    border: 1px solid #2e2e2e;
    transition: all 300ms cubic-bezier(0.34, 1.1, 0.64, 1);
}
.btn:hover {
    background-color: #2e2e2e;
    color: #fff;
}

.btn-link {
    display: table;
}
.btn-link::after {
    content: " ";
    display: block;
    height: 2px;
    margin: 15px 0 0 0;
    background-color: #fff;
}
.btn-link--dark::after {
    background-color: #2e2e2e;
}
.btn-link__arrow-left {
    float: right;
    width: 8px;
    margin: 4px 0 0 10px;
    position: relative;
}
.btn-link__arrow-left::before,
.btn-link__arrow-left::after {
    content: " ";
    display: block;
    position: absolute;
    width: 100%;
    top: 0;
    right: 0;
    padding-bottom: 100%;
    transform: rotate(45deg);
    transform-origin: center center;
    box-sizing: content-box;
    border-top: 1px solid #fff;
    border-right: 1px solid #fff;
    transition: all 0.24s ease-out;
}
.btn-link__arrow-left::after {
    margin-right: 6px;
}
.btn-link:hover .btn-link__arrow-left::after {
    margin-right: 0;
}
.btn-link--dark .btn-link__arrow-left::before,
.btn-link--dark .btn-link__arrow-left::after {
    border-color: #2e2e2e;
}
.btn-white {
    border: solid 1px #fff;
    color: #fff;
}
.btn-white:hover {
    background: #fff;
    color: #2e2e2e;
}

.bg-dark {
    background-color: #2e2e2e;
}
.bg-striped {
    background: linear-gradient(180deg, #fff 45%, #2e2e2e 45%);
}
.bg-striped-new {
    background: linear-gradient(180deg, #fff 40%, #2e2e2e 40%);
}

.overflow-hidden {
    overflow: hidden;
}

.form__fieldset {
    padding: 0;
    margin: 0;
    border: 0;
}
.form__row {
    display: flex;
    width: 100%;
    flex-direction: row;
    justify-content: flex-start;
    align-items: flex-start;
    flex-wrap: nowrap;
    margin: 0 0 10px 0;
}
.form__group {
    flex-grow: 1;
    flex-basis: 0;
    margin: 0 5px;
}
.form__group:first-child {
    margin-left: 0;
}
.form__group:last-child {
    margin-right: 0;
}
.btn-download {
    display: flex;
    justify-content: center;
}
.btn-download .tabs__btn::after {
    height: 8px !important;
}
.form__control {
    color: #2e2e2e;
    font-size: 1.6em;
    display: block;
    width: 100%;
    height: 45px;
    padding: 0 25px;
    background-color: #fff;
    border: 1px solid #2e2e2e;
    border-radius: 0;
    box-shadow: none;
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
}
.form__control--area {
    height: auto;
    min-height: 130px;
    padding: 12px 25px;
    resize: vertical;
    line-height: 1.8em;
}
.form__control--file {
    position: absolute;
    width: 100%;
    height: 45px;
    transform: translateY(-45px);
    opacity: 0;
    cursor: pointer;
    z-index: 2;
}
.form__control--attach {
    position: absolute;
    transform: translateY(-45px);
    right: 0;
    color: #fff;
    width: 135px;
    background-color: #2e2e2e;
    transition: all 0.24s ease-out;
    display: flex;
    align-items: center;
    justify-content: center;
}
.form__control--file:hover + .form__control--attach {
    color: #2e2e2e;
    background-color: #fff;
}
.form__control--submit {
    color: #fff;
    width: 135px;
    background-color: #2e2e2e;
    margin: 40px auto 0;
    transition: all 0.24s ease-out;
    cursor: pointer;
}
.form__control--submit:hover {
    color: #2e2e2e;
    background-color: #fff;
}
.form__select--small .select2-selection--single {
    height: 35px;
}

.radios__wrapper {
    float: left;
    margin: 12px 35px 15px 0;
}
.radios__wrapper:last-child {
    margin-right: 0;
}
.radios__input {
    display: block;
    height: 0;
    width: 0;
    opacity: 0;
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
}
.radios__label {
    cursor: pointer;
    font-size: 1.6em;
    line-height: 18px;
}
.radios__label::before {
    content: " ";
    float: left;
    width: 18px;
    height: 18px;
    margin-right: 10px;
    border: 1px solid #2e2e2e;
    box-sizing: border-box;
    background-color: #2e2e2e;
    box-shadow: inset 0 0 0 9px #fff;
    -webkit-transition: all 0.15s ease-out;
    -moz-transition: all 0.15s ease-out;
    transition: all 0.15s ease-out;
}
.radios__wrapper:hover .radios__label::before {
    box-shadow: inset 0 0 0 3px #fff;
}
.radios__input:checked + .radios__label::before {
    box-shadow: inset 0 0 0 3px #fff;
    background-color: #2e2e2e;
}

@media only screen and (max-width: 768px) {
    .font-80 {
        font-size: 3.6em;
    }
    .font-72 {
        font-size: 3.4em;
    }
    .font-60 {
        font-size: 3.4em;
    }
    .font-50 {
        font-size: 3.2em;
    }
    .font-45 {
        font-size: 3em;
    }

    .mt-200,
    .my-200 {
        margin-top: 100px !important;
    }
    .mb-200,
    .my-200 {
        margin-bottom: 100px !important;
    }

    .pt-200,
    .py-200 {
        padding-top: 100px;
    }
    .pb-200,
    .py-200 {
        padding-bottom: 100px;
    }

    .bg-striped {
        background: linear-gradient(180deg, #fff 350px, #2e2e2e 350px);
    }
}

/* --- / DEFAULTS --- */

/* --- HEADER --- */

.header {
    position: fixed;
    width: 100%;
    height: 100px;
    top: 0;
    left: 0;
    background-color: #fff;
    box-shadow: 0 0 10px 0 rgba(0, 0, 0, 0.05);
    z-index: 100;
}
.menu {
    display: flex;
    height: 100%;
    flex-direction: row;
    justify-content: space-between;
    align-items: center;
}
.menu__navigation-container {
    display: flex;
    flex-direction: row;
    justify-content: flex-start;
    align-items: center;
}
.menu__navigation {
    opacity: 1;
    transition-property: margin, opacity;
    transition-duration: 0.3s, 0.24s;
    transition-timing-function: ease-out, ease-out;
    transition-delay: 0s, 0.3s;
    margin-right: 0;
}
.menu--searching .menu__navigation {
    opacity: 0;
    margin-right: -500px;
    transition-delay: 0.24s, 0s;
}
.menu__block + .menu__block {
    margin-left: 50px;
}
.menu__list {
    list-style-type: none;
    display: flex;
    flex-direction: row;
    align-items: center;
    justify-content: flex-start;
}
.menu__item {
    position: relative;
}
.menu__item + .menu__item {
    margin-left: 50px;
}
.menu__item--mobile {
    display: none;
}
.menu__item--separated + .menu__item--separated {
    display: flex;
    height: 38px;
    flex-direction: row;
    justify-content: center;
    align-items: center;
    padding-left: 50px;
    border-left: 1px solid #2e2e2e;
}
.menu__btn {
    color: #000;
    font-size: 1.6em;
    font-weight: 700;
    opacity: 0.8;
    transition: opacity ease-out 0.2s;
}
.menu__btn:hover {
    opacity: 1;
}
.menu__btn--highlight {
    font-size: 2em;
    font-weight: 300;
    text-transform: uppercase;
}
.menu__arrow-down {
    float: right;
    position: relative;
    width: 10px;
    height: 18px;
    margin: 0 0 0 10px;
}
.menu__arrow-down::before,
.menu__arrow-down::after {
    content: " ";
    display: block;
    position: absolute;
    width: 100%;
    padding-bottom: 100%;
    left: 50%;
    top: 0;
    box-sizing: content-box;
    transform: translateX(-50%) rotate(45deg);
    transform-origin: center;
    border-right: 1px solid #2e2e2e;
    border-bottom: 1px solid #2e2e2e;
    transition: margin 0.24s ease-out;
}
.menu__arrow-down::after {
    top: auto;
    bottom: 0;
}
.menu__btn:hover .menu__arrow-down::before {
    margin-top: 4px;
}
.menu__btn:hover .menu__arrow-down::after {
    margin-bottom: 4px;
}
.menu__search .form__fieldset {
    position: relative;
}
.menu__search .form__control {
    width: 0;
    opacity: 0;
    padding: 0 50px 0 0;
    transition-property: opacity, width, padding;
    transition-timing-function: ease, ease-out, ease-out;
    transition-duration: 0.24s, 0.3s, 0.3s;
    transition-delay: 0.3s, 0s, 0s;
    z-index: 10;
}
.menu--searching .menu__search .form__control {
    position: relative;
    width: 500px;
    padding: 0 50px 0 25px;
    opacity: 1;
    transition-delay: 0s, 0.24s, 0.24s;
}
.menu__search-btn {
    position: absolute;
    top: 50%;
    border: 0;
    border-radius: 0;
    box-shadow: none;
    cursor: pointer;
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
}
.menu__search-btn--go {
    position: absolute;
    display: block;
    right: 10px;
    width: 30px;
    height: 30px;
    margin-top: -15px;
    z-index: 15;
}
.menu__search-btn--clear {
    font-size: 4em;
    width: 16px;
    left: 0;
    opacity: 0;
    margin-left: 0;
    transform: translateY(-50%);
    transition-property: margin, opacity;
    transition-timing-function: ease, ease-out;
    transition-duration: 0s, 0.24s;
    transition-delay: 0s, 0s;
    z-index: 0;
}
.menu--searching .menu__search-btn--clear {
    opacity: 1;
    margin-left: -30px;
    transition-duration: 0s, 0.3s;
    transition-delay: 0s, 0.54s;
}
.menu__languages-list {
    list-style-type: none;
    display: flex;
    flex-direction: row;
    justify-content: flex-start;
    align-items: center;
}
.menu__languages-item + .menu__languages-item {
    margin-left: 5px;
    padding-left: 5px;
    border-left: 1px solid #b4b4b4;
}
.menu__languages-btn {
    font-size: 1.6em;
}
.menu__languages-btn.menu__languages-current {
    font-weight: 400;
    -webkit-text-stroke: 0.4px #000;
}

.submenu {
    background-color: #fff;
}
.submenu--full {
    display: none;
    position: fixed;
    width: 100%;
    top: 100px;
    left: 0;
}
.submenu__containment {
    display: flex;
    width: 100%;
    flex-wrap: wrap;
}
.submenu__wrapper {
    padding: 30px 0 40px;
}
.submenu__block {
    display: flex;
    flex-wrap: wrap;
    align-content: start;
}
.submenu__block:nth-child(1) {
    position: relative;
    width: 30%;
}
.submenu__block:nth-child(1)::after {
    content: "";
    position: absolute;
    right: 21%;
    width: 1px;
    height: 100%;
    background: #2e2e2e;
}
.submenu__block:nth-child(2) {
    width: 70%;
}
.submenu__title {
    width: 100%;
    font-size: 1.8em;
    font-weight: bold;
    margin-bottom: 7px;
    display: block;
}
.submenu__name {
    display: block;
    margin: 0.3em 0;
    font-size: 1.6em;
}
.submenu__name--active {
    font-weight: bold;
    color: #515151;
}
.submenu__column {
    margin-top: 10px;
}
.submenu__block:nth-child(1) .submenu__column {
    flex: 1 0 100%;
}
.submenu__see-more {
    position: relative;
    font-size: 1.3em;
    margin-top: 60px;
}
.submenu__see-more::before {
    content: "+";
    font-weight: 700;
    margin-right: 5px;
}
.submenu__block:nth-child(2) .submenu__column {
    flex: 1 0 50%;
    max-width: 50%;
}
.submenu__column + .submenu__title {
    margin-top: 50px;
}
.submenu__c-list {
    list-style-type: none;
    margin-top: 10px;
    margin-bottom: 15px;
    display: none;
}
.submenu__c-btn {
    font-size: 1.6em;
    margin-top: 5px;
    display: block;
    color: #515151;
}
.submenu--auto {
    position: absolute;
    top: 100%;
    left: 0;
}
.submenu--auto::before {
    content: " ";
    display: block;
    position: absolute;
    width: 100%;
    height: 50px;
    bottom: 100%;
    left: 0;
    background-color: transparent;
}
.submenu--auto .submenu__wrapper {
    padding: 30px;
}
.submenu-drop__list {
    list-style-type: none;
}
.submenu-drop__item + .submenu-drop__item {
    margin-top: 15px;
}
.submenu-drop__btn {
    font-size: 1.4em;
    line-height: 1.6em;
    white-space: nowrap;
}

/* --- MENU BUTTON --- */

.burguer-menu {
    text-indent: -40000px;
    position: absolute;
    display: none;
    right: 0;
    top: 50%;
    padding: 10px 0 10px 10px;
    z-index: 200;
    transform: translateY(-50%);
    background-color: transparent;
}
.burguer-menu .burguer-menu__containment {
    position: relative;
    width: 20px;
    height: 14px;
    -webkit-transition-delay: 0.5s;
    transition-delay: 0.5s;
    background-color: transparent;
}
.burguer-menu .burguer-menu__containment div {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    transition: all 0.3s ease;
    transition-delay: 0.4s;
    background-color: transparent;
}
.burguer-menu .burguer-menu__containment div span,
.burguer-menu .burguer-menu__containment div::before,
.burguer-menu .burguer-menu__containment div::after {
    position: absolute;
    display: block;
    width: 100%;
    height: 2px;
    background-color: #2e2e2e;
    transition: all 0.3s ease;
    left: 50%;
    transform: translateX(-50%);
}
.burguer-menu .burguer-menu__containment div span {
    transition:
        opacity 0.3s ease 0.3s,
        background-color 0.3s ease 0.01s;
}
.burguer-menu .burguer-menu__containment div span {
    top: 50%;
    margin-top: -1px;
    /*-webkit-transition-delay: .3s;*/
    /*transition-delay: .3s;*/
}
.burguer-menu .burguer-menu__containment div::before {
    content: " ";
    top: 0;
    transition-delay: 0.01s;
}
.burguer-menu .burguer-menu__containment div::after {
    content: " ";
    bottom: 0;
    -webkit-transition-delay: 0.01s;
    transition-delay: 0.01s;
}
.menu-shown .burguer-menu .burguer-menu__containment div {
    top: 50%;
    height: 2px;
    transition: all 0.3s ease;
    transition-delay: 0s;
    margin-top: -1px;
}
.menu-shown .burguer-menu .burguer-menu__containment div::before,
.menu-shown .burguer-menu .burguer-menu__containment div::after {
    transition-delay: 0.4s;
    background-color: #363636;
}
.menu-shown .burguer-menu .burguer-menu__containment div span {
    opacity: 0;
    transition-delay: 0s;
}
.menu-shown .burguer-menu .burguer-menu__containment div::before {
    transform: translateX(-50%) rotate(-45deg);
}
.menu-shown .burguer-menu .burguer-menu__containment div::after {
    transform: translateX(-50%) rotate(45deg);
}
.submenu-shown .burguer-menu .burguer-menu__containment div {
    top: 50%;
    height: 2px;
    transition: all 0.3s ease;
    transition-delay: 0s;
    margin-top: -1px;
}
.submenu-shown .burguer-menu .burguer-menu__containment div::before,
.submenu-shown .burguer-menu .burguer-menu__containment div::after {
    width: 10px;
    left: 0;
    transition-delay: 0;
    background-color: #363636;
}
.submenu-shown .burguer-menu .burguer-menu__containment div span {
    opacity: 1;
    background-color: #363636;
    -webkit-transition-delay: 0.3s;
    transition-delay: 0.3s;
}
.submenu-shown .burguer-menu .burguer-menu__containment div::before {
    transform: translateX(-50%) rotate(-45deg);
    margin: -3px 0 0 2px;
}
.submenu-shown .burguer-menu .burguer-menu__containment div::after {
    transform: translateX(-50%) rotate(45deg);
    margin: 0 0 -3px 2px;
}

/* --- / MENU BUTTON --- */
@media screen and (min-width: 921px) {
    .submenu--auto {
        margin: 40px 0 0 -30px;
        opacity: 0;
        visibility: hidden;
        transform: translateY(20px);
        transition: all 180ms ease-out;
    }
    .menu__item:hover .submenu--auto {
        transform: translateY(0);
        opacity: 1;
        visibility: visible;
    }
}

@media only screen and (max-width: 1180px) {
    .menu__item--separated + .menu__item--separated {
    }
    .menu__item + .menu__item {
        margin-left: 20px;
    }
    .menu__block + .menu__block {
        margin-left: 20px;
    }
}

@media only screen and (max-width: 920px) {
    body {
        padding-top: 80px;
    }
    .header {
        height: 80px;
    }
    .header__title {
        max-width: 120px;
    }
    .menu__navigation-container {
        position: fixed;
        display: block;
        width: 300px;
        height: 100%;
        top: 0;
        left: 100%;
        background-color: #f00;
        padding: 80px 20px 20px;
        background-color: #fff;
        transition: all 0.24s ease-out;
    }
    .menu-shown .menu__navigation-container {
        margin-left: -300px;
        box-shadow: -6px 0 9px 0 rgba(0, 0, 0, 0.2);
    }
    .submenu-shown .menu__navigation-container {
        margin-left: -100%;
        background-color: #efefef;
    }
    .menu__btn--highlight.menu__btn--submenu {
        display: block;
    }
    .menu__item--separated .menu__btn.menu__btn--submenu {
        position: absolute;
        right: 0;
        top: 0;
    }
    .menu__block + .menu__block {
        margin: 40px 0;
    }
    .menu__list {
        display: block;
    }
    .menu__item + .menu__item {
        margin: 20px 0 0 0;
    }
    .menu__item--mobile {
        display: block;
    }
    .menu__item--separated + .menu__item--separated {
        display: block;
        height: auto;
        padding: 0;
        border: 0;
    }
    .menu__btn {
        font-size: 2em;
    }
    .menu__arrow-down {
        height: auto;
        margin: 7px 0 0 0;
    }
    .menu__arrow-down::before,
    .menu__arrow-down::after {
        right: 0;
        left: auto;
        border-top: 1px solid #2e2e2e;
        border-left: 1px solid #2e2e2e;
        border-bottom: 0;
        border-left: 0;
    }
    .menu__arrow-down::before {
        margin: 0 6px 0 0;
    }
    .menu__arrow-down::after {
        top: 0;
        bottom: auto;
    }
    .menu__btn:hover .menu__arrow-down::before {
        margin: 0;
    }
    .menu__search .form__control {
        width: 100%;
        opacity: 1;
        padding: 0 50px 0 25px;
    }
    .menu__languages-list {
        justify-content: flex-start;
    }

    .submenu {
        color: inherit;
        position: fixed;
        display: block;
        width: 300px;
        height: 100%;
        top: 0;
        left: 100%;
        margin-top: 0;
        padding: 80px 0 20px 20px;
        background-color: #fff;
        z-index: 30;
        transition: all 0.24s ease-out;
    }
    .submenu-shown.submenu {
        margin-left: -300px;
        box-shadow: -6px 0 9px 0 rgba(0, 0, 0, 0.2);
    }
    .submenu__wrapper {
        height: 100%;
        padding: 0 20px 0 0 !important;
        overflow: auto;
    }

    .submenu__containment {
        width: 100%;
    }
    .submenu__block {
        display: block;
    }
    .submenu__column {
        width: 100%;
        padding: 0;
    }
    .submenu__column + .submenu__column {
        margin-top: 15px;
    }
    .submenu__c-list {
        display: none;
    }
    .submenu__name {
        margin: 0;
        line-height: 1.6em;
    }
    .submenu-drop__btn {
        font-size: 1.8em;
    }
    .burguer-menu {
        display: block;
    }
}

@media only screen and (max-width: 768px) {
    .submenu__block:nth-child(1) {
        display: none;
    }
    .submenu__block:nth-child(2) {
        width: 100%;
    }
    .submenu__block:nth-child(2) .submenu__column {
        max-width: 100%;
    }
    .submenu__name {
        line-height: 1.2;
        width: 100%;
    }
    .submenu__c-list {
        margin-top: 15px;
    }
    .submenu__c-btn {
        font-size: 1.5em;
        margin-top: 3px;
    }
}

/* --- / HEADER --- */

/* --- FOOTER --- */

.footer {
    position: relative;
    background-size: cover;
    background-position: center center;
    background-repeat: no-repeat;
    z-index: 2;
}
.footer__content {
    display: flex;
    flex-direction: row;
    justify-content: space-between;
    align-items: flex-start;
}
.footer__logo {
    display: block;
    margin-left: auto;
    margin-right: 0;
    filter: brightness(0) invert(1);
}
.sitemap {
    display: flex;
    flex-direction: row;
    justify-content: flex-start;
    align-items: flex-start;
}
.sitemap__column + .sitemap__column {
    margin-left: 170px;
}
.sitemap__list {
    list-style-type: none;
}
.sitemap__item + .sitemap__item {
    margin-top: 20px;
}

.footer__info-list {
    list-style: none;
}
.footer__info-item {
    text-align: right;
}
.footer__info-item + .footer__info-item {
    margin-top: 20px;
}

.social--horizontal {
    display: flex;
    flex-direction: row;
    justify-content: safe flex-start;
    align-items: flex-start;
}
.social__list {
    list-style-type: none;
}
.social--horizontal .social__item + .social__item {
    margin: 0 0 0 20px;
}
.social__btn {
    border: 1px solid #2e2e2e;
    width: 35px;
    height: 35px;
}

.social__btn img {
    width: 20px;
    height: 20px;
}

.social--inverse .social__btn {
    display: flex;
    align-items: center;
    justify-content: center;
    border-color: #fff;
}

.footer .social {
    display: flex;
    align-items: center;
}

.icons {
    display: flex;
}

@media only screen and (min-width: 1920px) {
    .img-fluid-banner {
        width: 100vw;
        height: 100%;
        max-height: 80vh;
        object-fit: cover;
    }
    .img-fluid-banner-pages {
        width: 100vw;
        height: 100%;
        max-height: 38vh;
        object-fit: cover;
    }
    .pb-90 {
        padding-bottom: 90px;
    }
    .carousel--home {
        .arrow-prev,
        .arrow-next {
            top: 85% !important;
        }
    }
    .carousel-overflow-left {
        clip-path: polygon(0% -9999%, 9999% -9999%, 9999% 9999%, 0% 9999%);
    }
}

@media only screen and (max-width: 1280px) {
    .footer__content {
        flex-direction: column;
    }
    .footer__contact {
        margin-top: 100px;
    }
    .footer__logo {
        margin-left: 0;
    }
    .footer__info-item {
        text-align: left;
    }
    .footer .social {
        float: none;
    }
}

@media only screen and (max-width: 1280px) {
    .sitemap {
        width: 100%;
        justify-content: space-between;
        flex-direction: row;
        flex-wrap: wrap;
    }
    .px-25 {
        padding-left: 25px !important;
        padding-right: 25px !important;
    }
    .sitemap__column + .sitemap__column {
        margin-left: 0;
    }
    .sitemap__column {
        width: 33.33%;
    }
}
@media only screen and (max-width: 640px) {
    .sitemap__column {
        width: 50%;
    }
    .contacts__list {
        display: flex;
        flex-direction: column;
        justify-content: center;
        align-items: center;
        gap: 10px !important;
    }
    .mx-17 {
        margin-left: 17px !important;
        margin-right: 17px !important;
    }
    .px-25 {
        padding-left: 25px !important;
        padding-right: 25px !important;
    }
    .font-3 {
        font-size: 3.5em !important;
    }
    .px-15 {
        padding-left: 15px !important;
        padding-right: 15px !important;
    }
    .sitemap__column__mobile {
        width: 100% !important;
    }
    .sitemap__column {
        margin: 100px 0 0 0;
        padding: 0 20px;
    }
    .sitemap__column:nth-child(-n + 2) {
        margin-top: 0;
    }

    .letter__spacing--redux {
        letter-spacing: -3px;
    }
}

/* --- / FOOTER --- */

/* --- HOME --- */

.carousel {
    position: relative;
}
.carousel--80 {
    max-width: 1350px;
    margin: auto;
}
.carousel__slide {
    position: relative;
}
.carousel__wrap {
    position: absolute;
    width: 100%;
    height: 100%;
    top: 0;
    left: 0;
}
.carousel__info {
    padding: 0 0 0 30px;
    margin: 100px 0 0 0;
    border-left: 5px solid #2e2e2e;
}
.carousel__info-containment {
    max-width: 350px;
}

.carousel__info-containment p {
    font-size: 1.6em;
}

.carousel__description {
    display: flex;
    flex-direction: row;
    justify-content: center;
    align-items: center;
    position: relative;
}
.carousel__description > div {
    width: 50%;
}
.carousel__keyword {
    font-size: 4.5em;
    text-align: right;
    text-transform: uppercase;
    padding-right: 60px;
}
.carousel__summary {
    font-size: 2.2em;
    padding-left: 60px;
}
.video_mobile {
    display: none !important;
}
.video_desktop {
    display: block;
}
.video__caption {
    position: absolute;
    top: 50%;
    left: 0;
    width: 100%;
    transform: translateY(-50%);
}
.video__caption .btn {
    border-color: #fff;
}
.video__caption .btn:hover {
    background-color: #fff;
    color: #2e2e2e;
}
.counter {
    position: absolute;
    width: auto !important;
    height: 100%;
    top: 0;
    left: 50%;
    padding-top: 50px;
    transform: translateX(-50%);
}
.counter::after {
    content: " ";
    display: block;
    height: 100%;
    width: 2px;
    background-color: #fff;
    margin: 0 auto;
}
.counter__number {
    font-size: 1.8em;
    font-weight: 700;
}

.arrows {
    position: absolute;
    width: 100%;
    left: 0;
    top: 50%;
    transform: translateY(-50%);
}
.arrows__arrow {
    color: #fff;
    text-indent: -40000px;
    position: relative;
    float: left;
    width: 30px;
    height: 30px;
}
.arrows--small .arrows__arrow {
    width: 20px;
    height: 20px;
}
.arrows__arrow::before,
.arrows__arrow::after {
    content: " ";
    display: block;
    position: absolute;
    width: 100%;
    top: 0;
    left: 0;
    padding-bottom: 100%;
    margin: 0 0 0 -5px;
    transform: rotate(45deg);
    transform-origin: center center;
    box-sizing: content-box;
}
.arrows__arrow--prev::before,
.arrows__arrow--prev::after {
    border-bottom: 2px solid #fff;
    border-left: 2px solid #fff;
}
.arrows__arrow--prev::after {
    margin-left: 20px;
}
.arrows--small .arrows__arrow--prev::before,
.arrows--small .arrows__arrow--prev::after {
    border-bottom: 1px solid #000;
    border-left: 1px solid #000;
}
.arrows.arrows--small.arrows--inside.arrows-white {
    .arrows__arrow--prev::before,
    .arrows__arrow--prev::after {
        border-bottom-color: #fff;
        border-left-color: #fff;
    }

    .arrows__arrow--next::before,
    .arrows__arrow--next::after {
        border-top-color: #fff;
        border-right-color: #fff;
    }
}
.arrows--small .arrows__arrow--prev::after {
    margin-left: 10px;
}
.arrows--inside .arrows__arrow--prev {
    margin-left: 30px;
}
.arrows--outside .arrows__arrow--prev {
    margin-left: -60px;
}
.arrows__arrow--next {
    float: right;
}
.arrows__arrow--next::before {
    margin: 0 -5px 0 0;
}
.arrows__arrow--next::before,
.arrows__arrow--next::after {
    left: auto;
    right: 0;
    border-top: 2px solid #fff;
    border-right: 2px solid #fff;
}
.arrows__arrow--next::after {
    margin-right: 20px;
}
.arrows--small .arrows__arrow--next::before,
.arrows--small .arrows__arrow--next::after {
    border-top: 1px solid #000;
    border-right: 1px solid #000;
}
.arrows--small .arrows__arrow--next::after {
    margin-right: 10px;
}
.arrows--inside .arrows__arrow--next {
    margin-right: 30px;
}
.arrows--outside .arrows__arrow--next {
    margin-right: -60px;
}

.featured {
    display: flex;
    flex-wrap: wrap;
    width: 100%;
}
.featured__preview {
    width: 55%;
}
.featured-img {
    width: 100%;
}
.featured-img {
    width: 100%;
    max-height: 600px;
    object-fit: cover;
}
.featured__wrapper {
    width: 45%;
}
.featured__text {
    margin-left: 60px;
    max-width: 315px;
    line-height: 1.2;
}

.title-wrapper {
    display: table;
    margin-left: auto;
    margin-right: auto;
}
.title-wrapper--full {
    width: 100%;
}
.title-wrapper__line {
    display: table;
    position: relative;
    left: 50%;
    padding-left: 30px;
    transform: translateX(-50%);
}
.title-wrapper__line--small {
    padding: 0 0 0 15px;
}
.title-wrapper__line--end {
    left: 0;
    transform: translateX(0);
    padding: 0 30px 0 0;
}
.title-wrapper__line::before {
    content: " ";
    display: block;
    position: absolute;
    width: 1000px;
    height: 4px;
    top: 50%;
    right: 100%;
    margin: -2px 0 0 0;
    background-color: #2e2e2e;
}
.title-wrapper__line--small::before {
    height: 2px;
    margin: -1px 0 0 0;
}
.title-wrapper__line--end::before {
    left: 100%;
}

.title-new {
    display: flex;
    justify-content: space-between;
    align-items: end;
}
.title-new p {
    line-height: 1.4;
}

.grid-new {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 35px;
}
.grid {
    display: flex;
    margin-left: -30px;
    margin-right: -30px;
    flex-direction: row;
    justify-content: flex-start;
    align-items: flex-start;
    flex-wrap: wrap;
}
.grid--small {
    margin-left: -25px;
    margin-right: -25px;
}
.grid__item {
    width: 33.33%;
    margin: 75px 0 0 0;
    padding: 0 30px;
}
.grid--small .grid__item {
    padding: 0 25px;
}
.grid__item:nth-child(-n + 3) {
    margin-top: 0;
}

.title-wrapper__line {
    text-align: center;
    transition: all 300ms cubic-bezier(0.34, 1.1, 0.64, 1);
}

.grid-new .grid__item {
    width: 100%;
    margin: 0;
    padding: 0;
}
.ambient {
    position: relative;
}

.ambient:hover .ambient__title {
    top: 25px;
    opacity: 1;
}
.ambient::before {
    content: "";
    position: absolute;
    inset: 0;
    background: #2e2e2e;
    opacity: 0;
    transition: all ease-out 0.2s;
}
.ambient:hover::before {
    opacity: 0.7;
}
.ambient::after {
    content: "+";
    position: absolute;
    display: flex;
    align-items: center;
    justify-content: center;
    color: #fff;
    font-size: 30px;
    font-weight: 100;
    width: 34px;
    height: 34px;
    border-radius: 17px;
    bottom: 35px;
    right: 50px;
    opacity: 0;
    border: solid 1px #fff;
    transition: all ease-out 0.2s;
}
.ambient:hover::after {
    opacity: 1;
}
.img-full {
    width: 100%;
}
.ambient__title {
    position: absolute;
    top: 10px;
    left: 50px;
    opacity: 0;
    width: calc(100% - 100px);
    transition: all ease-out 0.2s;
}
.ambient__products {
    position: absolute;
    bottom: 15px;
    left: 50px;
    width: 60%;
    list-style: none;
    opacity: 0;
    color: #fff;
    font-size: 1.4em;
    transition: all ease-out 0.2s;
}
.ambient:hover .ambient__products {
    bottom: 35px;
    opacity: 1;
}

.split--horizontal-new {
    display: flex;
    flex-wrap: wrap;
    position: relative;
}
.split-small-absolute {
    position: absolute;
}
.split-small {
    width: 100%;
}
.split-absolute {
    position: absolute;
    left: 0;
    width: 30%;
    max-width: 345px;
}
.split-large {
    width: 70%;
    margin-left: auto;
}
.split--horizontal-new .carousel__slides-new::before {
    content: none;
}
.split--horizontal-new .carousel__slides-new .slick-list {
    overflow: hidden;
}
.split-large .carousel {
    padding-left: 150px;
}
.split--horizontal-new
    .carousel__slides-new
    .carousel__slide
    .carousel__content {
    margin: 0 15px;
    height: 100%;
}
.split--horizontal-new
    .carousel__slides-new
    .carousel__slide
    .carousel-new--text {
    display: flex;
    flex-direction: column;
    min-height: 19%;
}
.split--horizontal-new
    .carousel__slides-new
    .carousel__slide.slick-active.slick-current
    .carousel__content
    .carousel-new--text {
    transform: scale(0.714);
    transform-origin: top left;
    margin-right: -40%;
    padding-bottom: 34%;
}
.split--horizontal-new
    .carousel__slides-new
    .carousel-new--text
    .carousel-new--description {
    display: -webkit-box;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 3;
    overflow: hidden;
    text-overflow: ellipsis;
    line-height: 1.3;
    letter-spacing: 0.3px;
}
.split--horizontal-new
    .carousel__slides-new
    .carousel__slide:not(.slick-active.slick-current)
    .carousel-new--description {
    height: 0;
    margin-bottom: 0 !important;
}
.split--horizontal-new
    .carousel__slides-new
    .carousel__slide.slick-active.slick-current
    .carousel__content {
    transform: scale(1.36);
}
.split--horizontal-new .carousel__slides-new .carousel-new-more {
    margin-top: auto;
}
.split--horizontal-new .carousel__slides-new .slick-track {
    display: flex !important;
}
.split--horizontal-new .carousel__slides-new .slick-slide {
    height: inherit !important;
}

.split--horizontal-new .carousel__new-arrow {
    bottom: auto;
    left: auto;
    top: 600px;
}
.split--horizontal-new .carousel__new-arrow.arrow-prev {
    right: 19%;
}
.split--horizontal-new .carousel__new-arrow.arrow-next {
    left: auto;
    right: calc(19% - 25px);
}
.split--horizontal-new .carousel__new-arrow::before {
    border-color: #fff;
}
.split--horizontal-new .carousel__new-arrow::after {
    background: #fff;
}

.split {
    display: flex;
}
.split--horizontal {
    flex-direction: row;
    align-items: stretch;
    flex-wrap: wrap;
}
.split--vertical {
    height: 100%;
    flex-direction: column;
    align-items: stretch;
}
.split__column {
}
.split__column {
    width: 50%;
    padding: 0 70px;
}
.split--x-large-columns .split__column {
    padding: 0 35px;
}
.split--xx-large-columns .split__column {
    padding: 0 25px;
}
.split__row {
    width: 100%;
    height: 50%;
    padding: 25px 0;
}
.split__row:first-child {
    padding-top: 0;
}
.split__row:last-child {
    padding-bottom: 0;
}

.window {
    display: block;
    position: relative;
}
.window__overlay {
    display: flex;
    position: absolute;
    width: 100%;
    height: 100%;
    top: 0;
    left: 0;
    flex-direction: row;
    justify-content: center;
    align-items: center;
}
.window__wrapper {
    width: 100%;
}
.window__wrapper-new {
    width: 100%;
    height: 100%;
    display: flex;
    justify-content: space-between;
    align-items: center;
}
.window__title {
    border: 2px solid #fff;
    padding: 30px;
    color: #fff;
    transition: all 0.24s ease-out;
}
.window:hover .window__title {
    background-color: #fff;
    color: inherit;
}

/* --- / HOME --- */

/* --- SEGMENT --- */

.banner {
    position: relative;
    color: #fff;
}
.banner__img {
    min-height: 260px;
    object-fit: cover;
    object-position: center;
}
.banner__overlay {
    display: flex;
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    flex-direction: row;
    justify-content: center;
    align-items: center;
}
.banner__wrapper {
    width: 100%;
}
.banner__container {
    display: flex;
    width: 100%;
    flex-direction: row;
    justify-content: center;
    align-items: center;
}
.banner__content {
    /*width: 50%;*/
    /*padding: 15px;*/
}
.banner__content--full {
    width: 100%;
}
/*.banner__content + .banner__content {*/
/*border-left: 2px solid #fff;*/
/*}*/
.banner__separator {
    width: 1px;
    margin: 0 60px;
    background-color: #fff;
    align-self: stretch;
}
.banner__containment {
    max-width: 770px;
    margin: 0 auto;
}

/* --- / SEGMENT --- */

/* --- INPIRATIONS --- */

.mosaic {
    display: grid;
    vertical-align: top;
}
.mosaic--type-st {
    grid-template-columns: repeat(4, 1fr);
    grid-auto-rows: 300px;
    gap: 20px;
}
.mosaic--type-st .mosaic__el:nth-child(6n + 1) {
    grid-column: span 2;
}
.mosaic--type-st .mosaic__el:nth-child(6n + 6) {
    grid-column: span 2;
}

.mosaic--type-nd {
    grid-template-columns: 40% 60%;
    grid-template-rows: 100%;
    grid-column-gap: 0px;
    grid-row-gap: 0px;
}
.mosaic--type-nd .mosaic__el:nth-child(1) {
    grid-area: 1 / 1 / 2 / 2;
}
.mosaic--type-nd .mosaic__el:nth-child(2) {
    grid-area: 1 / 2 / 2 / 3;
}

.mosaic--type-rd {
    grid-template-columns: 60% 40%;
    grid-template-rows: 100%;
    grid-column-gap: 0px;
    grid-row-gap: 0px;
}
.mosaic--type-rd .mosaic__el:nth-child(1) {
    grid-area: 1 / 2 / 2 / 3;
}
.mosaic--type-rd .mosaic__el:nth-child(2) {
    grid-area: 1 / 1 / 2 / 2;
}

.mosaic--type-th {
    grid-template-columns: 40% 60%;
    grid-template-rows: repeat(2, 25%);
    grid-column-gap: 0px;
    grid-row-gap: 0px;
}
.mosaic--type-th .mosaic__el:nth-child(1) {
    grid-area: 1 / 1 / 3 / 2;
}
.mosaic--type-th .mosaic__el:nth-child(2) {
    grid-area: 1 / 2 / 2 / 3;
}
.mosaic--type-th .mosaic__el:nth-child(3) {
    grid-area: 2 / 2 / 3 / 3;
}

.image-btn {
    display: block;
    position: relative;
    width: 100%;
    height: 100%;
    overflow: hidden;
}
.image-btn::before,
.image-btn::after {
    content: " ";
    display: block;
    position: absolute;
    transition: all 0.24s ease-out;
}
.image-btn::before {
    content: "+";
    display: flex;
    align-items: center;
    justify-content: center;
    color: #fff;
    font-size: 30px;
    font-weight: 100;
    width: 34px;
    height: 34px;
    border-radius: 17px;
    bottom: 44px;
    right: 20px;
    opacity: 0;
    background: #5a6a72;
    z-index: 10;
}
.mosaic--type-st .mosaic__el:nth-child(6n + 1) .image-btn::before,
.mosaic--type-st .mosaic__el:nth-child(6n + 6) .image-btn::before {
    right: 40px;
}

.image-btn::after {
    width: 100%;
    height: 100%;
    top: 0;
    left: 0;
    background-color: #000;
    opacity: 0;
}
.image-btn:hover::before {
    opacity: 1;
}
.image-btn:hover::after {
    opacity: 0.2;
}
.image-btn__image {
    display: block;
    height: 100%;
    width: 100%;
    object-fit: cover;
    object-position: center;
}

.image-btn__text {
    position: absolute;
    left: -20px;
    bottom: 61px;
    background: #5a6a72;
    padding: 5px 15px 5px 25px;
    max-width: 75%;
    opacity: 0;
    transform: translateY(50%);
    transition: all ease-out 0.2s;
    z-index: 3;
}
.mosaic--type-st .mosaic__el:nth-child(6n + 1) .image-btn__text,
.mosaic--type-st .mosaic__el:nth-child(6n + 6) .image-btn__text {
    padding-left: 40px;
    padding-right: 20px;
}

.image-btn:hover > .image-btn__text {
    left: 0;
    opacity: 1;
}

.case__banner {
    max-height: 50vh;
    width: 100%;
    object-fit: cover;
}
.case__head {
    background: #506c75;
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    padding: 30px;
    align-items: start;
    justify-content: center;
    gap: 60px;
}

.details__item {
    display: flex;
    flex-direction: row;
    justify-content: flex-start;
    align-items: center;
    gap: 60px;
}
.details__item:nth-child(2n + 2) {
    flex-direction: row-reverse;
    text-align: right;
}
.details__image,
.details__caption {
}
.details__image {
    width: 50%;
}
.details__caption {
    width: 50%;
}
.details__caption h3 {
    font-size: 5em;
    text-transform: uppercase;
    margin-bottom: 20px;
}
.details__caption p {
    font-size: 1.6em;
    line-height: 1.4;
    letter-spacing: 0.8px;
}

.carousel__slides-new::before {
    content: "";
    position: absolute;
    left: 0;
    width: 500px;
    height: 100%;
    background: #fff;
    z-index: 2;
    transform: translateX(-100%);
}
.carousel__slides-new .slick-list {
    overflow: visible;
}

.carousel__slides-new .carousel__slide .carousel__content {
    display: block;
    margin: 0 5px;
    margin-bottom: 80px;
    transform-origin: left top;
    transition: all ease-out 0.2s;
}
.carousel__slides-new .carousel__slide.slick-active .carousel__content,
.carousel__slides-new
    .carousel__slide.slick-active
    + .carousel__slide
    .carousel__content {
    transform: translateX(36%);
    position: relative;
    z-index: 1;
}
.carousel--80
    .carousel__slides-new
    .carousel__slide.slick-active
    + .carousel__slide
    .carousel__content {
    transform: translateX(40%);
}
.carousel__slides-new
    .carousel__slide.slick-active.slick-current
    .carousel__content {
    transform: scale(1.4);
    margin-bottom: 0;
    transform-origin: left top;
}
.carousel__slides-new
    .carousel__slide.slick-active.slick-current:first-child:last-child
    .carousel__content {
    transform-origin: top;
}
.carousel__slides-new .carousel__slide a.carousel__content::before {
    content: "";
    position: absolute;
    inset: 0;
    background: #000;
    opacity: 0;
    transition: all ease-out 0.2s;
    z-index: 1;
}
.carousel__slides-new .carousel__slide a.carousel__content:hover::before {
    opacity: 0.5;
}
.carousel__slides-new .carousel__slide a.carousel__content::after {
    content: "";
    position: absolute;
    width: 30px;
    height: 30px;
    top: 50%;
    left: 50%;
    opacity: 0;
    background-image: url(../img/zoom-in.svg);
    filter: brightness(0) invert(1);
    transform: translate(-50%, -50%);
    background-size: 100%, 100px;
    z-index: 10;
}
.carousel__slides-new .carousel__slide a.carousel__content:hover::after {
    opacity: 1;
}
.carousel__new-arrow {
    position: absolute;
    font-size: 0;
    width: 16px;
    height: 16px;
    left: 36%;
    bottom: 13px;
    z-index: 1;
    transition: all ease-out 0.2s;
}
.carousel__new-arrow:hover {
    opacity: 0.7;
}
.carousel__new-arrow::before {
    content: "";
    position: absolute;
    top: 2px;
    width: 10px;
    height: 10px;
    border-bottom: solid 2px #000;
    border-left: solid 2px #000;
    transform: rotate(45deg);
    border-radius: 1px;
}
.carousel__new-arrow::after {
    content: "";
    position: absolute;
    top: 50%;
    width: 100%;
    height: 2px;
    background: #000;
    transform: translateY(-50%);
}
.carousel__new-arrow.arrow-next {
    left: 38%;
    transform: rotate(180deg);
}

.breadcrumb {
    position: relative;
    padding: 20px 0;
}
.breadcrumb::after {
    content: " ";
    display: block;
    position: absolute;
    width: 100%;
    height: 2px;
    top: 50%;
    right: 100%;
    margin: -1px 15px 0 0;
    background-color: #2e2e2e;
}
.breadcrumb__list {
    display: table;
    white-space: nowrap;
}
.breadcrumb__item {
    float: left;
}
.breadcrumb__item + .breadcrumb__item {
    padding-left: 10px;
    margin-left: 10px;
    border-left: 1px solid #2e2e2e;
}
.breadcrumb__btn {
    font-size: 1.4em;
}
.breadcrumb__btn--active {
    font-weight: 700;
}

.more__cases-carousel .arrows-white .arrows__arrow::before {
    border-color: #fff;
}
.more__cases-carousel .arrows-white .arrows__arrow::after {
    background: #fff;
}

/* --- / INPIRATIONS --- */

/* --- ABOUT --- */

.about-new {
    display: flex;
    align-items: center;
    flex-wrap: wrap;
    gap: 5%;
    margin: 0 auto;
    max-width: 1380px;
    padding: 0 10px;
}
.about__description-new {
    width: 52%;
}
.about__text-new {
    width: 90%;
    max-width: 580px;
}
.about__image-new {
    width: 43%;
}
.about__image-new img {
    margin-left: auto;
}

.timeline__dates-new {
    margin-left: 80px;
    margin-top: 45px;
}
.timeline__dates-new::before {
    content: "";
    position: absolute;
    left: 11px;
    top: 19px;
    width: 100vw;
    height: 3px;
    background: #7f6550;
}
.timeline__dates-new::after {
    content: "";
    position: absolute;
    bottom: 6px;
    left: 0;
    width: 100%;
    height: 100px;
    background: #2e2e2e;
    transform: translateX(-100%);
}
.timeline__dates-new .slick-list {
    overflow: visible;
}
.timeline-item {
    display: flex;
    align-items: center;
    max-width: 1000px;
    gap: 50px;
    line-height: 1.4;
}
.timeline__dates-new .carousel__new-arrow {
    top: 13px;
}
.timeline__dates-new .carousel__new-arrow.arrow-prev {
    left: -80px;
}
.timeline__dates-new .carousel__new-arrow.arrow-next {
    left: -55px;
}
.timeline__dates-new .carousel__new-arrow::before {
    border-color: #7f6550;
}
.timeline__dates-new .carousel__new-arrow::after {
    background: #7f6550;
    top: 50%;
    transform: translateY(-50%);
}
.timeline-date {
    position: relative;
    color: #7f6550;
    font-weight: 600;
    font-size: 1.8em;
    cursor: pointer;
    padding-top: 10px;
    transform-origin: left 32px;
}
.timeline-date::before {
    content: "";
    display: block;
    width: 18px;
    height: 18px;
    border: solid 2px #7f6550;
    border-radius: 50%;
    background: #2e2e2e;
    margin: 0 9px 20px;
    transition:
        width ease-out 0.2s,
        width ease-out 0.2s;
}
.slick-current .timeline-date {
    transform: scale(1.3);
    margin-bottom: 12px;
}
.slick-current .timeline-date::before {
    background: #7f6550;
    width: 22px;
    height: 22px;
    margin-bottom: 10px;
    margin-left: 8px;
}

.tabs-new__centered .tabs__list-new {
    width: 100%;
    justify-content: center;
}

.about__tab-text {
    column-count: 2;
    column-gap: 100px;
    line-height: 1.4;
    margin-bottom: 35px;
    padding-bottom: 35px;
    border-bottom: solid 2px #2e2e2e;
}

.about__tab-values {
    column-count: 2;
}
.value-new {
    margin-bottom: 50px;
    break-inside: avoid;
}
.value__content p {
    display: list-item;
    margin-left: 19px;
    line-height: 1.4em;
}
.value__content ul {
    list-style: disc;
    margin-left: 19px;
}

.tabs__list {
    display: flex;
    flex-direction: row;
    justify-content: center;
    align-items: stretch;
    flex-wrap: wrap;
}
.tabs__item {
    margin: 15px 17px;
}
.tabs__btn {
    font-size: 1.8em;
    font-weight: 700;
    text-align: center;
    text-transform: uppercase;
    display: flex;
    position: relative;
    width: 225px;
    height: 60px;
    padding: 0 20px;
    justify-content: center;
    align-items: center;
}
.tabs__btn span {
    position: relative;
    z-index: 10;
    transition: all 0.24s ease-out;
}
.tabs--negative .tabs__btn {
    color: #fff;
}
.tabs--tall .tabs__btn {
    height: 90px;
}
.tabs--large .tabs__btn {
    width: 260px;
}
.tabs__btn::after {
    content: " ";
    display: block;
    position: absolute;
    width: 100%;
    height: 2px;
    left: 0;
    bottom: 0;
    background-color: #2e2e2e;
    z-index: 0;
    transition: all 0.24s ease-out;
}
.tabs--negative .tabs__btn::after {
    background-color: #fff;
}
.tabs--files .tabs__btn::after {
    height: 8px;
}
.tabs__btn--active,
.tabs__btn:hover {
    color: #fff;
}
.tabs--negative .tabs__btn--active,
.tabs--negative .tabs__btn:hover {
    color: #2e2e2e;
}
.tabs__btn--active:not(.tabs__item-new .tabs__btn)::after,
.tabs__btn:not(.tabs__item-new .tabs__btn):hover::after {
    height: 100% !important;
}
.tabs__icon {
    position: relative;
    width: 25px;
    z-index: 10;
    margin-right: 20px;
    transition: all 0.24s ease-out;
}
.tabs__btn--active .tabs__icon,
.tabs__btn:hover .tabs__icon {
    filter: brightness(0) invert(1);
}

.float-right {
    float: right;
    text-align: right;
}

.h-aside {
    display: flex;
    flex-direction: row;
    justify-content: flex-start;
    align-items: flex-start;
}
.h-aside--align-center {
    align-items: center;
}
.h-aside + .h-aside {
    margin-top: 100px;
}
.h-aside__main {
    margin-left: 80px;
    padding-top: 60px;
}
.h-aside__main--no-space {
    padding-top: 0;
    margin-left: 40px;
}

.squares {
}
.squares__item + .squares__item {
    margin-top: 40px;
}
.squares__container {
    width: 220px;
    height: auto;
    border: 1px solid #2e2e2e;
    position: relative;
}
.squares__container::after {
    content: " ";
    display: block;
    width: 100%;
    padding-bottom: 100%;
}
.squares__content {
    display: flex;
    position: absolute;
    width: 100%;
    height: 100%;
    top: 0;
    left: 0;
    flex-direction: row;
    justify-content: center;
    align-items: center;
}

.metrics {
    display: flex;
    flex-direction: column;
    align-items: center;
    padding: 0 20px;
}
.metrics__value {
    line-height: 1;
}
.metrics__label {
    text-align: center;
}

.columns--separate {
    margin: 0 -24px;
}
.columns__list {
    display: flex;
    justify-content: flex-start;
    align-items: flex-start;
    flex-wrap: wrap;
}
.columns__item {
    width: 50%;
    margin-top: 100px;
}
.columns__item--small-space {
    margin-top: 50px;
}
.columns--separate .columns__item {
    padding: 0 24px;
}
.columns__item:nth-child(-n + 2) {
    margin-top: 0;
}

.value__containment {
    width: 95%;
    max-width: 440px;
    padding-left: 30px;
    margin: 0 auto;
    border-left: 2px solid #fff;
}

.timeline {
    position: relative;
}
.timeline::after,
.timeline__item::after {
    content: " ";
    display: block;
    position: absolute;
    width: 2px;
    height: 100%;
    top: 0;
    left: 50%;
    margin-left: -1px;
    background-color: #dcdcdc;
}
.timeline__item {
    display: flex;
    position: relative;
    width: 100%;
    flex-direction: row-reverse;
    justify-content: space-between;
    align-items: center;
    z-index: 10;
}
.timeline__item:nth-child(2n + 2) {
    flex-direction: row;
}
.timeline__item::after {
    height: 100px;
    top: 50%;
    margin: -50px 0 0 -1px;
    background-color: #2e2e2e;
}
.timeline__item + .timeline__item {
    margin-top: 100px;
}
.timeline__column {
    width: 42%;
}

.row {
    display: flex;
    margin: 0 -25px;
    flex-direction: row;
    justify-content: flex-start;
    align-items: center;
}
.row__item {
    padding: 0 25px;
}
.row--fixed .row__item {
    width: 50%;
}
.row__item .font-14 img {
    display: none;
}

.place {
    position: relative;
    width: 100%;
    height: 100%;
}
.place__background,
.place__forward {
    display: flex;
    width: 100%;
    height: 100%;
    justify-content: center;
    align-items: center;
}
.place__background {
    font-size: 20em;
    font-weight: 700;
    color: #e2e2e2;
    position: absolute;
    height: 100%;
    top: 0;
    left: 0;
    z-index: 0;
}
.place__forward {
    position: relative;
    z-index: 10;
}
.place__label {
    /*display: block;*/
    padding: 0 20px;
}

/* --- / ABOUT --- */

/* --- LINE --- */

.line__wrapper-new {
    display: flex;
    width: 100%;
    flex-wrap: wrap;
    padding-top: 70px;
}
.line__description-new,
.line__image-new {
    width: 50%;
}
.line__description-new .line__containment {
    margin-left: 0;
}
.line__wrapper-new .breadcrumb {
    padding: 0;
    transform: translateY(-100%);
}
.line__description-new .breadcrumb__item + .breadcrumb__item {
    margin: 0;
    padding: 0;
    border: 0;
}
.line__description-new .breadcrumb__btn--active {
    font-weight: 600;
    position: relative;
}
.line__description-new .breadcrumb__btn--active::before {
    content: "/";
    margin: 6px;
    font-weight: 400;
}

.tabs-new {
    display: flex;
    width: 100%;
    justify-content: space-between;
}
.tabs__list-new {
    display: flex;
    gap: 5%;
    width: 70%;
    align-items: center;
}

.tabs__item-new .tabs__btn {
    display: block;
    width: auto;
    height: auto;
    color: inherit;
    text-transform: none;
    font-weight: 400;
    padding: 0;
}
.tabs__item-new .tabs__btn::after {
    content: none;
}
.tabs__item-new .tabs__btn--active {
    font-weight: 700;
}

.tab-downloads__title {
    font-size: 1.6em;
    position: relative;
    cursor: pointer;
}
.tab-downloads__title::after {
    content: "";
    display: inline-block;
    width: 19px;
    height: 19px;
    margin-left: 10px;
    margin-bottom: -3px;
    background: url(../img/downloads-icon.png);
}
.tab-downloads__list {
    display: none;
    position: absolute;
    min-width: calc(100% + 2px);
    top: 100%;
    right: -1px;
    list-style: none;
    font-size: 1.6em;
    text-align: center;
    padding-top: 10px;
    padding-bottom: 15px;
    background: #2e2e2e;
    z-index: 12;
}
.tab-downloads {
    border: solid 1px #2e2e2e;
    padding: 17px 35px;
    position: relative;
    transition: all ease-out 0.2s;
}
.tab-downloads__active {
    background: #2e2e2e;
    color: #fff;
    position: relative;
}
.tab-downloads__active .tab-downloads__list {
    display: block;
}
.tab-downloads__active .tab-downloads__title {
    font-weight: 700;
    cursor: pointer;
}
.tab-downloads__item + .tab-downloads__item {
    margin-top: 10px;
}
.tab-downloads__btn:hover {
    opacity: 0.7;
}
.tab-downloads__btn {
    display: block;
    padding: 5px 15px;
    color: #fff;
    transition: all ease-out 0.3s;
}

.tipology__wrapper {
    display: flex;
    flex-wrap: wrap;
    gap: 6%;
    align-items: center;
}
.tipology__description {
    width: 47%;
}
.tipology__image {
    width: 46%;
}
.tipology__image img {
    width: 100%;
}
.tipology__text {
    max-width: 500px;
}

.tipology__materials p {
    display: list-item;
    margin-left: 28px;
    line-height: 1.4;
}
.tipology__materials p::marker {
    font-size: 12px;
}
.tipology__materials p + p {
    margin-top: 0;
}

.line {
    position: relative;
}
.line__wrapper {
    display: flex;
    flex-direction: row;
    justify-content: flex-start;
    align-items: center;
}
.line__description {
    flex-grow: 1;
}
.line__containment {
    width: 45%;
    max-width: 400px;
    margin: 0 auto;
}
.line__title {
    position: relative;
}
.line__title::after {
    content: " ";
    display: block;
    position: absolute;
    width: 100%;
    height: 1px;
    top: 50%;
    right: 100%;
    margin: -1px 15px 0 0;
    background-color: #fff;
}
.line__view {
    position: relative;
    width: 52%;
}
.line__thumbs-navigation {
    position: absolute;
    width: 15.625%;
    top: 50%;
    right: 52%;
    margin-right: -4.15%;
    transform: translateY(-50%);
}
.line__thumbs-navigation .carousel__slide {
    margin: 5px 0;
    cursor: pointer;
}

.attributes {
    display: flex;
    flex-direction: row-reverse;
    justify-content: space-between;
    align-items: flex-start;
}

.downloads__list {
    display: table;
    max-width: 620px;
}
.downloads__item {
    float: left;
}
.downloads__item + .downloads__item {
    margin: 0 0 0 100px;
}
.downloads__item + .downloads__item + .downloads__item {
    margin: 100px 0 0 0;
}
.downloads__btn {
    display: flex;
    position: relative;
    width: 260px;
    height: 100px;
    padding: 0 20px;
    justify-content: center;
    align-items: center;
}
.downloads__btn img,
.downloads__btn span {
    position: relative;
    z-index: 10;
    transition: all 0.24s ease-out;
}
.downloads__btn:hover span {
    color: #fff;
}
.downloads__btn img {
    width: 25px;
    margin: 0 20px 0 0;
}
.downloads__btn:hover img {
    filter: brightness(0) invert(1);
}
.downloads__btn::after {
    content: " ";
    display: block;
    position: absolute;
    width: 100%;
    height: 8px;
    left: 0;
    bottom: 0;
    background-color: #2e2e2e;
    transition: all 0.24s ease-out;
}
.downloads__btn:hover::after {
    height: 100%;
}

.specifications {
}
.specifications__list {
    display: table;
}
.specifications__item {
    float: left;
}
.specifications__item + .specifications__item {
    margin-left: 50px;
    padding-left: 50px;
    border-left: 1px solid;
}
.specifications__title {
    margin-bottom: 20px;
}
.specifications__icon {
    vertical-align: middle;
    margin-right: 10px;
}
.specifications__content {
    width: 600px;
}

.more__cases {
    display: flex;
    flex-wrap: wrap;
}
.more__cases-call {
    width: 25%;
}
.more__cases-call h3 {
    margin-right: -80px;
    text-wrap-style: balance;
}
.more__cases-carousel {
    width: 75%;
    padding-left: 50px;
}
.more__cases-carousel .carousel__slide {
    margin: 0 10px;
}
.more__cases-carousel .more__cases-image {
    display: block;
    height: 18vw;
}
.more__cases-carousel .carousel__slide img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.more__cases-carousel .arrows.arrows--small.arrows--outside {
    display: contents;
}
.more__cases-carousel .arrows__arrow {
    position: absolute;
    font-size: 0;
    width: 16px;
    height: 16px;
    left: -38%;
    top: 173px;
    z-index: 1;
    transition: all ease-out 0.2s;
    margin: 0;
    float: none;
}
.more__cases-carousel .arrows__arrow:hover {
    opacity: 0.7;
}
.more__cases-carousel .arrows__arrow::before {
    content: "";
    position: absolute;
    top: 2px;
    width: 10px;
    height: 10px;
    border-bottom: solid 2px #000;
    border-left: solid 2px #000;
    transform: rotate(45deg);
    border-radius: 1px;
    padding: 0;
}
.more__cases-carousel .arrows__arrow::after {
    content: "";
    position: absolute;
    top: 50%;
    left: -5px;
    width: 100%;
    height: 2px;
    background: #000;
    transform: translateY(-50%);
    margin: 0;
    padding: 0;
    border: none;
}
.more__cases-carousel .arrows__arrow.arrows__arrow--next {
    transform: rotate(180deg);
    left: calc(-38% + 15px);
}
.more__cases-carousel .arrows__arrow.arrows__arrow--next::before {
    border-top: 0;
    border-right: 0;
    left: -5px;
}

/* --- LINE --- */

/* --- BLOG --- */

.split__column.split__column-left {
    padding-left: 0;
}

.date.date-new {
    margin-bottom: 20px;
    max-width: 323px;
    border: none;
    width: fit-content;
}
.date.date-new > div {
    height: 34px;
}
.date.date-new .date__day-month {
    padding: 0 22px 0 0;
    background: #d9d9d9;
    color: #2e2e2e;
}
.date.date-new .date__day-month .date__day {
    height: 34px;
    display: inline-block;
    line-height: 34px;
    width: 52px;
    text-align: center;
    box-shadow: inset 0 0 0 1px #2e2e2e;
    margin-right: 15px;
}
.date.date-new.date--big-new {
    max-width: 500px;
}
.date.date-new.date--big-new > div {
    height: 40px;
}
.date.date-new.date--big-new .date__day-month .date__day {
    height: 40px;
    line-height: 40px;
}

.row__item + .row__item {
    padding-left: 10px;
    padding-right: 30px;
}

.post__title {
    max-width: 380px;
    -webkit-line-clamp: 3;
    -webkit-box-orient: vertical;
    text-overflow: ellipsis;
    display: -webkit-box;
    overflow: hidden;
}
.post__description {
    line-height: 1.4em;
}

.tag-image {
    position: relative;
}
.tag-image__wrapper {
    text-align: right;
    display: block;
    position: absolute;
    width: 100%;
    top: 0;
    right: 100%;
    overflow: hidden;
    transform-origin: right bottom;
    transform: translate(-10px, -100%) rotate(-90deg);
}
.tag-image__tag {
    position: relative;
}
.tag-image__tag::after {
    content: " ";
    display: block;
    width: 1000px;
    height: 1px;
    background-color: #fff;
    position: absolute;
    top: 50%;
    right: 100%;
    margin-right: 15px;
}

.date {
    display: flex;
    width: 100%;
    max-width: 295px;
    margin-bottom: 40px;
    border: 1px solid #2e2e2e;
    flex-direction: row;
    justify-content: flex-start;
    align-items: flex-start;
}
.date--negative {
    border: 1px solid #fff;
}
.date--big {
    max-width: 425px;
    margin-bottom: 70px;
}
.date > div {
    display: flex;
    height: 40px;
    flex-direction: row;
    justify-content: flex-start;
    align-items: center;
}
.date--big > div {
    height: 55px;
}
.date__day-month {
    color: #fff;
    text-transform: uppercase;
    padding: 0 20px;
    background-color: #2e2e2e;
    flex-grow: 1;
}
.date--big .date__day-month {
    padding: 0 30px;
}
.date--negative .date__day-month {
    color: #2e2e2e;
    background-color: #fff;
}
.date--inverse .date__day-month {
    color: inherit;
    background-color: transparent;
}
.date__year {
    padding: 0 15px;
}
.date--big .date__year {
    padding: 0 20px;
}
.date--inverse .date__year {
    color: #fff;
    background-color: #2e2e2e;
}

.form--filter {
    position: relative;
    display: table;
}
.form--filter::after {
    content: " ";
    display: block;
    position: absolute;
    top: 50%;
    left: 100%;
    width: 1920px;
    height: 1px;
    background-color: #000;
    margin-left: 15px;
}

.paginator {
    margin-top: 80px;
    display: flex;
    justify-content: center;
}
.paginator ul {
    list-style: none;
    display: flex;
}
.paginator__buttons li {
    margin: 0 8px;
    display: flex;
    justify-content: center;
    align-items: center;
    transition: all ease-out 0.2s;
}
.paginator__buttons li:hover {
    transform: scale(1.1);
}
.paginator__buttons li.active {
    opacity: 0.5;
    pointer-events: none;
}
.prev.disabled,
.next.disabled {
    display: none;
}

/* --- / BLOG --- */

/* --- POST --- */

.post-thumbs {
    width: 90%;
    max-width: 770px;
    margin: -45px auto 0;
}
.post-thumbs .carousel__slide {
    margin: 0 5px;
    cursor: pointer;
}
.post-content img {
    max-width: 100%;
    height: auto;
}

/* --- / POST --- */

/* --- SHOPS --- */

.pillars__list {
    display: flex;
    margin: 0 -60px;
    flex-direction: row;
    justify-content: flex-start;
    align-items: flex-start;
    flex-wrap: wrap;
}
.pillars__item {
    width: 33.33%;
    padding: 0 60px;
}

.loaded-shops {
    border-top: 8px solid #2e2e2e;
}
.shop {
}

.contacts__list {
    display: flex;
    justify-content: center;
    align-items: center;
    gap: 50px;
}
.contacts__list img {
    max-width: 25px;
    margin-bottom: -6px;
    margin-right: 7px;
}

/* --- / SHOPS --- */

/* --- POLICY ---- */

.floating--container {
    position: absolute;
    margin-left: 50px;
    margin-top: 100px;
    z-index: 1;
    transition: all ease-out 0.1s;
}
.floating--container-fixed {
    position: fixed;
    padding-top: 100px;
    display: flex;
    height: 100vh;
    bottom: 0;
    align-items: center;
}
.floating--container-bottom {
    bottom: 0;
    margin-bottom: 200px;
}
.floating-list {
    list-style: none;
    padding-left: 20px;
    border-left: 4px solid #2e2e2e;
}

.policy-notify {
    position: fixed !important;
    bottom: 0;
    left: 0;
    width: 100%;
    z-index: 100;
}
.policy-notify__wrapper {
    background-color: #fff;
    margin-bottom: 20px;
    padding: 20px;
    box-shadow: 3px 3px 10px 0 rgba(0, 0, 0, 0.4);
}

.policy-notify__wrapper p {
    font-size: 1.4em;
    margin-bottom: 20px;
    line-height: 1.2em;
}
.policy-notify__wrapper p a {
    display: inline;
    text-decoration: underline;
}

.m-right {
    margin-left: auto;
}

.floating-button {
    position: fixed;
    width: 55px;
    height: 55px;
    bottom: 0;
    right: 0;
    margin: 0 20px 20px 0;
    z-index: 10;
}
.floating-button:hover {
    animation: spin 0.5s linear forwards;
}
.floating-button svg {
    width: 100%;
    height: 100%;
    fill: #00e676;
}

/* --- / POLICY ---- */

@media only screen and (max-width: 1560px) {
    .line__containment {
        width: 60%;
        margin-left: 5%;
    }

    .more__cases-carousel .arrows__arrow.arrows__arrow--next {
        left: calc(-40% + 15px);
    }
    .more__cases-carousel .arrows__arrow {
        top: 230px;
        left: -40%;
    }
}

@media only screen and (max-width: 1440px) {
    .split-large .carousel {
        padding-left: 50px;
    }
    .split-absolute h3 {
        line-height: 1;
    }
    .split-absolute > div {
        margin-bottom: 0 !important;
    }
}

@media only screen and (max-width: 1280px) {
    .grid,
    .grid--small {
        margin-right: -10px;
        margin-left: -10px;
    }
    .grid__item,
    .grid--small .grid__item {
        padding: 0 10px;
    }

    .attributes {
        flex-direction: column;
        align-items: center;
    }
    .attributes__block + .attributes__block {
        margin-top: 50px;
    }

    .content--w-sidebar {
        margin-top: 200px;
        max-width: 90%;
    }
    .floating--container,
    .floating--container-fixed {
        position: absolute;
        overflow: hidden;
        display: block;
        width: 90%;
        height: 42px;
        margin-left: 0;
        max-height: 80vh;
        padding-top: 30px;
        left: 50%;
        bottom: auto;
        transform: translateX(-50%);
        transition: all ease-out 0.2s;
        background-color: #fff;
        border: solid 1px #2e2e2e;
    }
    .floating--container:hover {
        height: 524px;
        cursor: pointer;
        box-shadow: 0 0 10px 0 rgba(0, 0, 0, 0.05);
    }
    .floating--container::before {
        content: "Navegação";
        position: absolute;
        top: 0;
        left: 0;
        padding: 10px 20px;
        font-size: 1.8em;
        font-weight: bold;
    }
    .floating--container::after {
        content: "";
        position: absolute;
        right: 10px;
        top: 10px;
        height: 10px;
        width: 10px;
        border: solid 1px #2e2e2e;
        border-top-width: 0;
        border-left-width: 0;
        transform: rotate(45deg);
    }
    .floating--navigation {
        padding: 20px;
        height: 0;
        overflow: hidden;
        max-height: 80vh;
    }
    .floating--container:hover .floating--navigation {
        /*overflow-y: scroll;*/
        height: 500px;
    }
}

@media only screen and (max-width: 1024px) {
    .arrows--outside .arrows__arrow--prev {
        margin-left: 30px;
    }
    .arrows--outside .arrows__arrow--next {
        margin-right: 30px;
    }

    .split__column {
        padding: 0 25px !important;
    }

    .line__wrapper {
        display: block;
    }
    .line__containment {
        margin: 0 auto;
        width: 90%;
        max-width: none;
    }
    .line__view {
        width: 100%;
    }
    .line__thumbs-navigation {
        position: static;
        transform: none;
        width: 90%;
        max-width: 800px;
        margin: -30px auto 0;
    }
    .line__thumbs-navigation .carousel__slide {
        margin: 0 5px;
    }

    .post-thumbs {
        margin: -30px auto 0;
    }
}

@media only screen and (max-width: 920px) {
    .carousel__description {
        flex-direction: column;
    }
    .carousel__description > div {
        width: 80%;
    }
    .carousel__keyword,
    .carousel__summary {
        padding: 25px 0;
        text-align: center;
    }
    .carousel__keyword {
        font-size: 3em;
    }

    .counter {
        height: 55px;
        padding-top: 0;
        bottom: 0;
        top: auto;
    }

    .row {
        flex-direction: column;
    }
    .row__item {
        /*text-align: center;*/
        width: 100% !important;
    }
    .row__item + .row__item {
        margin-top: 25px;
    }

    .carousel__new-arrow {
        left: 50%;
    }
    .carousel__new-arrow.arrow-next {
        left: 53%;
    }

    .more__cases {
        flex-direction: column;
        gap: 50px;
    }
    .more__cases-call {
        width: 100%;
        padding-right: 100px;
    }
    .more__cases-call h3 {
        margin-right: 0;
    }
    .more__cases-carousel {
        padding: 0;
        width: 100%;
    }
    .more__cases-carousel .more__cases-image {
        height: 22vw;
    }

    .more__cases-carousel .arrows__arrow {
        top: -154px;
        left: auto;
        right: 7%;
    }
    .more__cases-carousel .arrows__arrow.arrows__arrow--next {
        left: auto;
        right: calc(7% - 45px);
    }
}

@media only screen and (max-width: 860px) {
    .grid__item,
    .grid--small .grid__item {
        width: 50%;
    }
    .grid__item:nth-child(-n + 3) {
        margin-top: 75px;
    }
    .grid__item:nth-child(-n + 2) {
        margin-top: 0;
    }
    .grid-new .grid__item:nth-child(-n + 3) {
        margin-top: 0;
    }

    .pillars__list {
        margin: 0 -20px;
    }
    .pillars__item {
        padding: 0 20px;
    }
}

@media only screen and (max-width: 768px) {
    .split--horizontal {
        flex-direction: column;
    }
    .split__column {
        width: 100%;
        padding: 0 !important;
    }
    .split__column + .split__column {
        margin-top: 40px;
    }

    .split__row:first-child {
        transform: translateY(20px);
    }
    .split__row {
        color: #fff;
    }

    .details__item,
    .details__item:nth-child(2n + 2) {
        flex-direction: column;
        text-align: left;
        margin-right: 0;
        margin-left: 0;
    }
    .details__image,
    .details__caption {
        padding: 0;
        width: 100%;
    }
    .details__image {
        margin-bottom: 20px;
    }
    .details__caption h3 {
        font-size: 3.2em;
    }

    .value__containment {
        padding-left: 15px;
    }

    .attributes {
        display: block;
    }

    .downloads__list,
    .specifications__list {
        display: block;
    }
    .downloads__item {
        float: none;
    }
    .downloads__item + .downloads__item,
    .downloads__item + .downloads__item + .downloads__item {
        margin: 50px 0 0 0;
    }

    .downloads__btn {
        margin: 0 auto;
    }

    .specifications__item {
        float: none;
        display: table;
        max-width: 220px;
        margin: 0 auto;
    }
    .specifications__item + .specifications__item {
        margin: 50px auto 0;
        padding: 0;
        border: 0;
    }

    .tag-image__wrapper {
        position: static;
        transform: none;
        margin-bottom: 10px;
    }

    .pillars__item {
        width: 50%;
    }

    .carousel__new-arrow {
        left: 50%;
    }
    .carousel__new-arrow.arrow-next {
        left: 53%;
    }

    .line__wrapper-new {
        flex-direction: column-reverse;
        gap: 50px;
    }
    .line__description-new,
    .line__image-new {
        width: 100%;
    }
    .line__image-new img {
        margin-left: auto;
        margin-right: auto;
    }
    .line__wrapper-new .breadcrumb {
        transform: none;
    }
    .line__wrapper-new .line__containment h3 {
        margin-top: 50px !important;
    }
    .line__description-new .line__containment {
        width: 100%;
    }

    .tabs-new.expanded {
        margin-bottom: -50px !important;
    }
    .tabs__list-new.list-expanded {
        max-height: 180px;
    }
    .tabs__list-new {
        flex-direction: column;
        gap: 10px;
        overflow: hidden;
        max-height: 57px;
        width: fit-content;
        border: solid 1px #2e2e2e;
        padding: 15px 5px;
    }
    .tabs__item-new {
        order: 1;
    }

    .tabs__item-new.tabs__list-new-active {
        order: 0;
    }
    .tabs__item-new .tabs__btn--active::after {
        content: "";
        position: relative;
        top: -3px;
        margin-left: 6px;
        display: inline-block;
        background: none;
        width: 10px;
        height: 10px;
        border-left: solid 1px #2e2e2e;
        border-top: solid 1px #2e2e2e;
        transform: rotate(-135deg);
    }
    .tabs__btn.tabs__btn--active {
        margin-bottom: 16px;
    }

    .tipology__wrapper {
        flex-direction: column-reverse;
        gap: 50px;
    }
    .tipology__description,
    .tipology__image {
        width: 100%;
    }
    .tipology__wrapper + .tipology__wrapper {
        margin-top: 100px !important;
        flex-direction: column;
    }
    .tipology__text,
    .tipology__materials {
        font-size: 1.6em;
    }

    .bg-striped-new {
        background: linear-gradient(180deg, #fff 27%, #2e2e2e 27%);
    }
    .split-absolute {
        position: inherit;
        width: 100%;
    }
    .split-large {
        width: 95%;
        margin-top: 30px;
    }
    .split-large .carousel {
        padding-left: 0;
    }
    .split--horizontal-new .carousel__new-arrow {
        bottom: auto;
        top: 90%;
    }
    .split--horizontal-new .carousel__new-arrow.arrow-prev {
        right: 27%;
    }
    .split--horizontal-new .carousel__new-arrow.arrow-next {
        right: calc(27% - 25px);
    }
    .carousel-new--text h5 {
        letter-spacing: -1px;
        font-size: 1.8em;
        margin-bottom: 15px !important;
    }
    .split--horizontal-new
        .carousel__slides-new
        .carousel-new--text
        .carousel-new--description {
        font-size: 1.4em;
    }

    .about__tab-img {
        display: flex;
        overflow: hidden;
        margin-bottom: 50px !important;
        justify-content: center;
    }
    .about__tab-img img {
        max-width: 120%;
    }
    .value-new {
        margin-bottom: 30px;
    }
    .value-new .value__containment {
        padding: 0;
        margin: 0;
        width: 100%;
    }
    .tabs__content-new {
        margin-bottom: 50px !important;
    }
    .tabs-new.tabs-new__centered {
        margin: 50px 0 !important;
    }
    .tabs-new.tabs-new__centered .tabs__list-new {
        height: auto;
        border: 0;
        overflow: visible;
        margin: auto;
        gap: 0;
    }
    .tabs-new.tabs-new__centered .tabs__list-new .tabs__btn--active::after {
        content: none;
    }
}

@media only screen and (max-width: 640px) {
    .font-80 {
        font-size: 4.5em;
    }
    .font-72 {
        font-size: 3.9em;
    }
    .mosaic__el .font-72 {
        font-size: 2.3em;
    }
    .image-btn__text {
        left: 10px;
    }
    .video_mobile {
        display: block !important;
    }
    .video_desktop {
        display: none;
    }

    .h-aside {
        flex-direction: column;
    }
    .h-aside__main {
        margin: 50px 0 50px 0;
        padding: 0;
    }
    .h-aside__aside {
        width: 100%;
    }
    .squares__container {
        margin: auto;
    }

    .columns__item {
        width: 100%;
    }

    .float-right {
        float: none;
        text-align: initial;
    }
    .specifications__content {
        width: 100%;
    }
    .columns__item,
    .columns__item:nth-child(-n + 2) {
        margin-top: 50px;
    }
    .columns__item:first-child {
        margin-top: 0;
    }

    .timeline__item,
    .timeline__item:nth-child(2n + 2) {
        flex-direction: column;
        padding-left: 25px;
    }
    .timeline::after,
    .timeline__item::after {
        left: 0;
        margin-left: 0;
    }
    .timeline__column {
        width: 100%;
    }
    .timeline__column + .timeline__column {
        margin-top: 50px;
    }

    .mosaic--type-st {
        grid-template-columns: repeat(2, 1fr);
        grid-auto-rows: 45vw;
        gap: 10px;
    }
    .mosaic--type-st .mosaic__el:nth-child(6n + 1) {
        grid-column: span 1;
        grid-row: span 2;
    }
    .mosaic--type-st .mosaic__el:nth-child(6n + 5) {
        grid-column: span 1;
        grid-row: span 2;
    }
    .mosaic--type-st .mosaic__el:nth-child(6n + 6) {
        grid-column: span 1;
        grid-row: span 1;
    }

    .image-btn:hover::before {
        opacity: 0;
        content: none;
    }
    .image-btn::after {
        opacity: 0.2;
    }

    .image-btn__text,
    .mosaic--type-st .mosaic__el:nth-child(6n + 1) .image-btn__text,
    .mosaic--type-st .mosaic__el:nth-child(6n + 6) .image-btn__text {
        width: 90%;
        max-width: 90%;
        font-size: 1.9em;
        text-align: center;
        padding: 10px;
        opacity: 1;
        left: 5% !important;
        letter-spacing: -0.4px;
    }

    .line__wrapper-new {
        padding-top: 5%;
    }

    .tabs-new {
        max-width: 100%;
        align-items: start;
        transition: all ease-out 0.2s;
    }
    .tab-downloads {
        padding: 15px 20px;
        white-space: nowrap;
    }
    .tabs__list-new {
        max-width: 60%;
        transition: all ease-out 0.2s;
    }
    .tab-downloads__title {
        font-size: 0;
    }
    .tab-downloads__title::after {
        margin: 0;
    }
    .tab-downloads__list {
        min-width: auto;
    }

    .carousel.carousel--80 {
        margin-bottom: 70px !important;
        margin-left: calc(5% - 5px);
    }
    .carousel__new-arrow {
        left: 74%;
        bottom: 20px;
    }
    .carousel__new-arrow.arrow-next {
        left: 79%;
    }

    .featured {
        flex-direction: column;
    }

    .featured__preview {
        width: 100%;
    }
    .featured-img {
        padding-top: 100px;
        max-width: 90%;
        margin: auto;
    }
    .featured__wrapper {
        width: 100%;
        padding-top: 50px;
    }
    .featured__text {
        margin: 0 auto;
        width: 90%;
        max-width: none;
    }
    .title-new {
        flex-direction: column;
        align-items: start;
        gap: 20px;
    }

    .grid-new {
        grid-template-columns: repeat(2, 1fr);
        gap: 15px;
    }
    .grid-new .grid__item:nth-child(-n + 3) {
        margin-top: 0;
    }
    .ambient__title,
    .ambient:hover .ambient__title {
        font-size: 2.4em;
        left: 20px;
        top: 15px;
        opacity: 1;
        width: calc(100% - 40px);
    }
    .ambient__products,
    .ambient:hover .ambient__products {
        display: none;
    }
    .ambient::before,
    .ambient:hover::before {
        opacity: 0.4;
    }
    .ambient::after,
    .ambient:hover::after {
        bottom: 20px;
        right: 20px;
        width: 28px;
        height: 28px;
        font-size: 22px;
        opacity: 1;
    }

    .window__wrapper-new {
        flex-direction: column;
        justify-content: center;
        gap: 14px;
    }
    .window__wrapper-new h4 {
        font-size: 2.1em;
        text-align: center;
        margin-top: 60px;
    }
    .window__wrapper-new .btn {
        padding: 9px 30px;
        font-size: 1.6em;
    }

    .about__banner-main {
        display: flex;
        overflow: hidden;
        justify-content: center;
    }
    .about__banner-main img {
        max-width: 130%;
    }
    .about-new {
        flex-direction: column;
        gap: 50px;
    }
    .about__description-new {
        width: 100%;
    }
    .about__text-new {
        margin: auto;
    }
    .about__image-new {
        width: 90%;
        margin: auto;
    }
    .about__image-new img {
        margin: auto;
    }
    .timeline-item {
        flex-direction: column;
    }
    .timeline-item .font-18 {
        font-size: 1.6em;
    }
    .timeline__dates-new {
        margin-left: 55px;
    }
    .timeline__dates-new .carousel__new-arrow.arrow-next {
        left: -32px;
    }
    .timeline__dates-new .carousel__new-arrow.arrow-prev {
        left: -53px;
    }

    .about__text-new .font-18,
    .value__content .font-18 {
        font-size: 1.6em;
    }
    .about__tab-text {
        font-size: 1.6em;
        column-count: 1;
    }

    .about__tab-values {
        column-count: 1;
    }

    .more__cases-carousel .more__cases-image {
        height: 50vw;
    }
    .more__cases-call {
        margin-top: -50px;
    }
    .more__cases-carousel .arrows__arrow {
        top: -100px;
    }

    .details {
        margin-bottom: 60px !important;
    }
    .details__item {
        gap: 0;
        margin-top: 60px;
    }
    .details__caption p {
        font-size: 1.5em;
    }

    .case__head {
        display: flex;
        flex-direction: column;
        gap: 40px;
    }
}

@media only screen and (max-width: 600px) {
    .footer .social {
        flex-direction: column;
        align-items: flex-start;
    }

    .icons {
        display: flex;
    }
}

@media only screen and (max-width: 540px) {
    .banner__img {
        min-height: auto;
    }
    .banner__container {
        flex-direction: column;
    }
    .banner__content {
        width: 100%;
    }
    .banner__separator {
        margin: 10px;
    }

    .form__row {
        display: block;
    }
    .form__group {
        margin: 0;
    }
    .form__group + .form__group {
        margin: 10px 0 0 0;
    }
}

@media only screen and (max-width: 500px) {
    .squares__item {
        display: table;
        margin: 0 auto;
    }

    .pillars__item {
        width: 100%;
    }

    .g-recaptcha {
        transform: scale(0.77);
        -webkit-transform: scale(0.77);
        transform-origin: 0 0;
        -webkit-transform-origin: 0 0;
    }
}

@media only screen and (max-width: 460px) {
    .font-60 {
        font-size: 4.5em;
    }
    .grid__item,
    .grid--small .grid__item {
        width: 100%;
    }
    .grid__item:nth-child(-n + 2) {
        margin-top: 75px;
    }
    .grid__item:first-child {
        margin-top: 0;
    }

    .letter__spacing--redux {
        letter-spacing: initial;
    }
}

@media only screen and (max-width: 640px) and (min-width: 500px) {
    .squares__list {
        display: flex;
        width: 100%;
        justify-content: space-between;
        align-items: center;
        flex-wrap: wrap;
    }
    .squares__item:nth-child(-n + 2) {
        margin-top: 0;
    }
}
