:root {
    --black: #000;
    --white: #FFF;

    --marble-500: #F0EBE6;

    --red-800: #5A0505;
    --red-700: #661917;
    --red-600: #9F1F21;
    --red-500: #C80000;
    --red-400: #F2D8D6;

    --bone-400: #DFD9CF;
    --bone-500: #CDC8B9;
    --bone-700: #484542;
    --bone-800: #161514;

    --grey-500: #8C8C8C;
}


@font-face {
    font-family: "Messina";
    src: 
         /* url('../fonts/MessinaSerif-Regular.woff2') format('woff2'),
        url('../fonts/MessinaSerif-Regular.woff') format('woff'),
        url('../fonts/MessinaSerif-Regular.ttf')  format('truetype'), */
        url('../fonts/MessinaSerif-Regular.otf') format('opentype');
        font-display: swap;
}
@font-face {
    font-family: "Messina";
    src: 
         /* url('../fonts/MessinaSerif-Regular.woff2') format('woff2'),
        url('../fonts/MessinaSerif-Regular.woff') format('woff'),
        url('../fonts/MessinaSerif-Regular.ttf')  format('truetype'), */
        url('../fonts/MessinaSerif-RegularItalic.otf') format('opentype');
        font-style: italic;
        font-display: swap;
}
@font-face {
    font-family: "Roobert";
    src: 
        url('../fonts/RoobertSemiMono-Medium.ttf')  format('truetype'),
        url('../fonts/RoobertSemiMono-Medium.otf') format('opentype');
        font-weight: 500;
}


/* Reset */
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, 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,
menu, nav, output, ruby, section, summary,
time, mark, audio, video {
	margin: 0;
	padding: 0;
	border: 0;
	font-size: 100%;
	font: inherit;
}
/* HTML5 display-role reset for older browsers */
article, aside, details, figcaption, figure,
footer, header, hgroup, menu, nav, section {
	display: block;
}
body {
    font-family: 'Messina', serif;
    line-height: 1.6;
    color: #000;
    background: #fff;
}
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;
}
.layouts-title {
	font-size: 26px;
	margin:15px 0px;
}
.layouts ul li {
	margin-bottom:5px;
}
.layouts ul li a {
	font-size: 17px;
	display: inline-block;
	padding:3px 10px;
}
.layouts ul li a:hover {
	background:#000;
	color:#fff;
}

/* -- END RESET -- */

.column:last-child:not(:first-child), .columns:last-child:not(:first-child) {
    float: left;
}
/* -- main styles -- */

.nopad {
	padding:0px;
}
.nopadleft {
	padding-left:0px;
}
.nopadright {
	padding-right:0px;
}
strong, b {
	font-weight: bold;
}
i {
	font-style: italic;
}
em {
	font-style: italic;
}
.clear {
	clear:both;
}
.left {
	float:left;
	margin-right:15px;
	margin-bottom:15px;
}
.right {
	float:right;
	margin-left:15px;
	margin-bottom:15px;
}
.alignleft {
	float:left;
	margin-right:15px;
	margin-bottom:15px;
}
.alignright {
	float:right;
	margin-left:15px;
	margin-bottom:15px;
}
.aligncenter,
div.aligncenter {
    display: block;
    margin: 5px auto 5px auto;
}
a img.aligncenter {
    display: block;
    margin-left: auto;
    margin-right: auto
}
.wp-caption {
	max-width: 100%;
    margin-bottom: 15px;
}
.invi {
	visibility: hidden;
	opacity: 0;
}
.object-fit {
	position: relative;
}
.object-fit > img {
	position: absolute;
	top: 0;
	left: 0;
	right: 0;
	bottom: 0;
	width: 100%;
	height: 100%;
	object-fit: cover;
	-o-object-fit: cover;
    object-fit: cover;
}
.object-fit.object-contain > img {
    -o-object-fit: contain;
    object-fit: contain;
}
.object-fit > video {
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    width: 100%;
    height: 100%;
    object-fit: cover;
    -o-object-fit: cover;
    object-fit: cover;
}

.fancybox__content :focus:not(.carousel__button.is-close) {
    outline: none;
}

.submitting button,
.submitting input[type="button"] {
    pointer-events: none;
}
.submitting {
    position: relative;
}
.submitting::before {
    content: '';
    width: 100%; height: 100%;
    background: rgba(255, 255, 255, 0.8);
    position: absolute;
    top: 0; left: 0;
    z-index: 11;
}
.submitting::after {
    content: '';
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    position: absolute;
    top: 50%;
    left: 50%;
    width: 20px;
    height: 20px;
    margin-top: -10px;
    margin-left: -10px;
    border-radius: 50%;
    border-top: 2px solid #000;
    border-right: 2px solid transparent;
    -webkit-animation: formSpinner .6s linear infinite;
    animation: formSpinner .6s linear infinite;
    z-index: 12;
}
@-webkit-keyframes formSpinner {
    to {-webkit-transform: rotate(360deg);transform: rotate(360deg);}
}
@keyframes formSpinner {
    to {-webkit-transform: rotate(360deg);transform: rotate(360deg);}
}

/* preloader */
.preloader {
    display: inline-block;
	width: 25px;
	height: 25px;
	border: 3px solid hsla(0,0%,100%,.3);
    border-top-color: rgba(255, 255, 255, 0.3);
    border-right-color: rgba(255, 255, 255, 0.3);
    border-bottom-color: rgba(255, 255, 255, 0.3);
    border-left-color: rgba(255, 255, 255, 0.3);
	border-radius: 50%;
	border-top-color: #ccc !important;
	-webkit-animation: a 1s ease-in-out infinite;
	animation: a 1s ease-in-out infinite;
	z-index: 50;
}
@-webkit-keyframes a {
    to {
        -webkit-transform: rotate(1turn);
        transform: rotate(1turn)
    }
}
@keyframes a {
    to {
        -webkit-transform: rotate(1turn);
        transform: rotate(1turn)
    }
}

/*   hamburger   */
.hamburger {
    font: inherit;
    display: inline-block;
    overflow: visible;
	margin: 0;
	padding: 14px 15px 12px;
    cursor: pointer;
    transition-timing-function: linear;
    transition-duration: .15s;
    transition-property: opacity, filter;
    transition: .15s opacity, .15s filter, 0.3s border;
    text-transform: none;
    color: inherit;
    border: 0;
    background-color: transparent;
	float: right;
    border: 1px solid transparent;
}
.hamburger:hover {
    opacity: 1;
    border: 1px solid var(--marble-500);
}
.hamburger-box {
    position: relative;
    display: inline-block;
    width: 16px;
    height: 20px;
    float: right;
}
.hamburger-inner {
    top: 50%;
    display: block;
    margin-top: -2px;
}
.hamburger-inner,
.hamburger-inner:after,
.hamburger-inner:before {
	border-radius: 0px;
    position: absolute;
    width: 16px;
    height: 1px;
    transition-timing-function: ease;
    transition-duration: .15s;
    transition-property: transform;
    background-color: var(--marble-500);
}
.hamburger-inner:after,
.hamburger-inner:before {
    display: block;
    content: "";
}
.hamburger-inner:before {
    top: -5px;
}
.hamburger-inner:after {
    bottom: -5px;
}
.hamburger--squeeze .hamburger-inner {
    transition-timing-function: cubic-bezier(.55, .055, .675, .19);
    transition-duration: 75ms;
}
.hamburger--squeeze .hamburger-inner:before {
    transition: top 75ms ease .12s, opacity 75ms ease;
}
.hamburger--squeeze .hamburger-inner:after {
    transition: bottom 75ms ease .12s, transform 75ms cubic-bezier(.55, .055, .675, .19);
}
.hamburger--squeeze.is-active .hamburger-inner {
    transition-delay: .12s;
    transition-timing-function: cubic-bezier(.215, .61, .355, 1);
    transform: rotate(45deg);
}
.hamburger--squeeze.is-active .hamburger-inner:before {
    top: 0;
    transition: top 75ms ease, opacity 75ms ease .12s;
    opacity: 0;
}
.hamburger--squeeze.is-active .hamburger-inner:after {
    bottom: 0;
    transition: bottom 75ms ease, transform 75ms cubic-bezier(.215, .61, .355, 1) .12s;
    transform: rotate(-90deg);
}

html { font-size: calc(0.625rem + 0.41666666666666663vw); }
@media screen and (max-width:1920px) { html { font-size: calc(0.625rem + 0.41666666666666674vw); } }
@media screen and (max-width:1440px) { html { font-size: calc(0.7313432835820896rem + 0.29850746268656714vw); } }
@media screen and (max-width:770px) { html { font-size: calc(0.6554878048780488rem + 0.9756097560975611vw); } }
@media screen and (max-width:360px) { html { font-size: 0.875rem; } 
}

.grid-container {
	width: 100%;
    max-width: 100%;
    padding-left: 5.5%;
    padding-right: 5.5%;
    position: relative;
    z-index: 10;
}
.grid-container.grid-container-full {
    max-width: 100%;
}

.grid-container.grid-container-md {
    max-width: 70.3%;
}
.grid-container.grid-container-sm {
    max-width: 680px;
    max-width: 47.3%;
    padding-left: 20px;
    padding-right: 20px;
}

.intro-cs-section {
    padding: 64px 0;
}

.cs-title {
    font-size: 40px;
    font-size: 2.75vw;
    line-height: 1.2;
}
.cs-title strong {
    display: block;
    font-weight: 400;
    padding-left: 2.5em;
}

.intro-cs-logo-hold {
    position: absolute;
    left: 0;
    right: 0;
    bottom: 64px;
    z-index: 10;
}

.intro-cs-logo-video-hold {
    position: absolute;
    bottom: 0;
    right: 0px;
    width: 100%;
    max-width: 41vw;

}

.intro-cs-logo-video {
    width: 100%;
    padding-bottom: 132.678%;
    /* background: rgba(255, 255, 255, 0.1); */
}

.intro-cs-logo {
    width: 100%;
    max-width: 44%;
}

.intro-cs-logo img {
    width: 100%;
    height: auto;
}




.dflex {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-lines: multiple;
    -moz-box-lines: multiple;
    -ms-flex-wrap: wrap;
    -webkit-flex-wrap:wrap;
    flex-wrap: wrap;
}

.dflex-middle {
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
}

.dflex-between {
    -webkit-box-pack: justify;
    -moz-box-pack: justify;
    -ms-flex-pack: justify;
    -webkit-justify-content: space-between;
    justify-content: space-between;
}

.dflex-cbetween {
    -webkit-flex-direction: column;
    -moz-flex-direction: column;
    -ms-flex-direction: column;
    -o-flex-direction: column;
    flex-direction: column;
    -webkit-box-pack: justify;
    -moz-box-pack: justify;
    -ms-flex-pack: justify;
    -webkit-justify-content: space-between;
    justify-content: space-between;
}


.title-102 {
    /* font-size: 102px; */
    font-size: 7.08vw;
    font-size: 5.52vw;
    line-height: 1;
    letter-spacing: -0.02em;
}
/* .title-80 {
    font-size: 102px;
    font-size: 80px;
    font-size: 5.52vw;
    line-height: 1.1;
    letter-spacing: -0.02em;
} */
.title-80,
.title-54 {
    /* font-size: 3.39rem; */
    font-size: 3.75vw;

    line-height: 1.18;
    letter-spacing: -0.02em;
}

.title-46 {
    /* font-size: 3.39rem; */
    font-size: 46px;
    font-size: 3.2vw;;
    line-height: 1.3;
    letter-spacing: -0.02em;
}
.title-40 {
    /* font-size: 3.39rem; */
    font-size: 40px;
    font-size: 2.79vw;;
    font-size: 2.5rem;
    line-height: 1.1;
    letter-spacing: -0.02em;
}
.title-36 {
    /* font-size: 3.39rem; */
    font-size: 36px;
    font-size: 2.5vw;
    line-height: 1.1;
    letter-spacing: -0.02em;
}

.title-28 {
    /* font-size: 28px; */
    font-size: 1.75em;
    line-height: 1.1;
    letter-spacing: -0.02em;
}

.intro-home-section {
    /* padding-top: 40vh; */
    position: relative;
    /* overflow: hidden; */
    padding-bottom: 35vh;
}

.intro-home-section-image-hold {
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    width: 100%;
    height: 100%;
    overflow: hidden;
}

.intro-home-section-image {
    position: absolute !important;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    width: 100%;
    height: 100%;

}

.intro-home-hold {
    -webkit-box-align: start;
    -ms-flex-align: start;
    align-items: flex-start;
}

.intro-home-left {
    max-width: 49%;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    position: sticky;
    top: 40vh;
    /* min-height: 100vh;
    min-height: 100svh; */
}

.intro-home-right {
    margin-left: auto;
    width: 50%;
    padding-left: 16.666%;
    padding-top: 75vh;
    padding-top: 100vh;
}

.bg-black {
    background: var(--black);
    color: var(--marble-500);
}

.bg-red {
    background: var(--red-800);
    color: var(--marble-500);
}
.bg-white {
    background: var(--white);
}
.bg-marble {
    background: var(--marble-500);
}

.has-text-indent p:first-child,
.single-project .has-text-indent p {
    text-indent: 7.4vw;
}


.home-about-section {
    padding: 20vh 0 75vh;
    padding: 20vh 0 70vh;
}

.home-about-left {
    max-width: 49%;
    position: relative;
    z-index: 5;
}
.home-about-right {
    position: relative;
    max-width: 50%;
    padding-top: 268px;
    margin-left: auto;
    /* padding-left: 16.667%; */
}

.home-about-image-hold {
    position: absolute;
    left: 0;
    width: 1px;
    top: 0;
    z-index: -1;
}

.home-about-image-width {
    position: absolute;
    left: 50%;
    transform: translateX(-50%);
    width: 40vw;
    top: 0;
}

.home-about-image {
    width: 100%;
    padding-bottom: 100%;
    transform-origin: top center;
    transform: scale(0.4);
}

.home-about-right-padd {
    position: relative;
    padding-left: 33.333%;
    min-height: 250px;
}

.home-projects-section {
    padding: 27vh 0 0;
    padding: 20vh 0 0;
}

.home-projects-section .title-54 {
    margin-bottom: 40px;
    margin-bottom: 80px;
}

.intro-home-sroll-down {
    margin-top: 22px;
}

.intro-home-sroll-down.v2 {
    margin-top: 32px;
}

.arrow-scroll-down,
.arrow-scroll-down:focus,
.arrow-scroll-down:active {
    display: -webkit-inline-box;
    display: -moz-inline-box;
    display: -ms-inline-flexbox;
    display: -webkit-inline-flex;
    display: inline-flex;
    width: 12px;
    height: 12px;
    background: url(../img/arrow-scroll-down.svg) no-repeat center center;
}
.arrow-scroll-down.v2,
.arrow-scroll-down.v2:focus,
.arrow-scroll-down.v2:active {
    width: 40px;
    height: 40px;
    background: url(../img/arrow-scroll-down-v2.png) no-repeat center center / 100% 100%;
}

.home-about-links {
    margin-top: 45px;
}

.multi-links ul {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-lines: multiple;
    -moz-box-lines: multiple;
    -ms-flex-wrap: wrap;
    -webkit-flex-wrap:wrap;
    flex-wrap: wrap;
    gap: 40px;
}

.link-rect,
.link-rect:focus,
.link-rect:active {
    display: -webkit-inline-box;
    display: -moz-inline-box;
    display: -ms-inline-flexbox;
    display: -webkit-inline-flex;
    display: inline-flex;
    font-family: "Roobert", monospace;
    font-size: 14px;
    font-size: 0.87rem;
    line-height: 1.43;
    text-transform: uppercase;
    padding-right: 16px;
    padding-left: 0;
    position: relative;
    transition: 0.2s;
}
.link-rect:hover {
    padding-right: 0px;
    padding-left: 16px;
}
.link-rect:before,
.link-rect:after {
    content: '';
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
    width: 12px;
    height: 12px;
    transition: 0.2s;
}
.link-rect:before {
    left: 0;
    opacity: 0;
}
.link-rect:hover:before {
    opacity: 1;
}
.link-rect:after {
    opacity: 1;
    right: 0;
}
.link-rect:hover:after {
    opacity: 0;
}
.link-rect.link-white:before,
.link-rect.link-white:after {
    background: url(../img/link-rect-white.svg) no-repeat center center;
}
.link-rect.link-black:before,
.link-rect.link-black:after {
    background: url(../img/link-rect-black.svg) no-repeat center center;
}
.link-rect.link-red:before,
.link-rect.link-red:after {
    background: url(../img/link-rect-red.svg) no-repeat center center;
}
.link-rect.link-bone:before,
.link-rect.link-bone:after {
    background: url(../img/link-rect-bone.svg) no-repeat center center;
}
.link-rect > span {
    position: absolute;
    top: -10px;
    left: -10px;
    right: -10px;
    bottom: -10px;
    width: calc(100% + 20px);
    height: calc(100% + 20px);
}


.link-remote,
.link-remote:focus,
.link-remote:active {
    display: -webkit-inline-box;
    display: -moz-inline-box;
    display: -ms-inline-flexbox;
    display: -webkit-inline-flex;
    display: inline-flex;
    font-family: "Roobert", monospace;
    font-size: 14px;
    font-size: 0.87rem;
    line-height: 1.43;
    text-transform: uppercase;
    padding-right: 16px;
    padding-left: 0;
    position: relative;
    transition: 0.2s;
}
.link-remote:hover {
    padding-right: 0px;
    padding-left: 16px;
}

.link-remote:before,
.link-remote:after {
    content: '';
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
    width: 12px;
    height: 12px;
    transition: 0.2s;
}
.link-remote:before {
    left: 0;
    opacity: 0;
}
.link-remote:hover:before {
    opacity: 1;
}
.link-remote:after {
    opacity: 1;
    right: 0;
}
.link-remote:hover:after {
    opacity: 0;
}
.link-remote.link-white:before,
.link-remote.link-white:after {
    background: url(../img/link-remote-white.svg) no-repeat center center;
}
.link-remote.link-black:before,
.link-remote.link-black:after {
    background: url(../img/link-remote-black.svg) no-repeat center center;
}
.link-remote.link-red:before,
.link-remote.link-red:after {
    background: url(../img/link-remote-red.svg) no-repeat center center;
}
.link-remote > span {
    position: absolute;
    top: -10px;
    left: -10px;
    right: -10px;
    bottom: -10px;
    width: calc(100% + 20px);
    height: calc(100% + 20px);
}

.link-plus,
.link-plus:focus,
.link-plus:active {
    display: -webkit-inline-box;
    display: -moz-inline-box;
    display: -ms-inline-flexbox;
    display: -webkit-inline-flex;
    display: inline-flex;
    font-family: "Roobert", monospace;
    font-size: 14px;
    font-size: 0.87rem;
    line-height: 1.43;
    text-transform: uppercase;
    padding-right: 16px;
    padding-left: 0;
    position: relative;
    transition: 0.2s;
}
.link-plus:hover {
    padding-right: 0px;
    padding-left: 16px;
}
.link-plus:before,
.link-plus:after {
    content: '';
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
    width: 12px;
    height: 12px;
    transition: 0.2s;
}
.link-plus:before {
    left: 0;
    opacity: 0;
}
.link-plus:hover:before {
    opacity: 1;
}
.link-plus:after {
    opacity: 1;
    right: 0;
}
.link-plus:hover:after {
    opacity: 0;
}
.link-plus.link-white:before,
.link-plus.link-white:after {
    background: url(../img/link-plus-white.svg) no-repeat center center;
}
.link-plus.link-black:before,
.link-plus.link-black:after {
    background: url(../img/link-plus-black.svg) no-repeat center center;
}
.link-plus.link-red:before,
.link-plus.link-red:after {
    background: url(../img/link-plus-red.svg) no-repeat center center;
}
.link-plus.link-bone:before,
.link-plus.link-bone:after {
    background: url(../img/link-plus-bone.svg) no-repeat center center;
}
.link-plus > span {
    position: absolute;
    top: -10px;
    left: -10px;
    right: -10px;
    bottom: -10px;
    width: calc(100% + 20px);
    height: calc(100% + 20px);
}

.link-back,
.link-back:focus,
.link-back:active {
    display: -webkit-inline-box;
    display: -moz-inline-box;
    display: -ms-inline-flexbox;
    display: -webkit-inline-flex;
    display: inline-flex;
    font-family: "Roobert", monospace;
    font-size: 14px;
    font-size: 0.87rem;
    line-height: 1.43;
    text-transform: uppercase;
    padding-left: 16px;
    padding-right: 0;
    position: relative;
    transition: 0.2s;
}
.link-back:hover {
    padding-left: 0px;
    padding-right: 16px;
}
.link-back:before,
.link-back:after {
    content: '';
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
    width: 12px;
    height: 12px;
    transition: 0.2s;
}
.link-back:before {
    left: 0;
    opacity: 1;
}
.link-back:hover:before {
    opacity: 0;
}
.link-back:after {
    opacity: 0;
    right: 0;
}
.link-back:hover:after {
    opacity: 1;
}
.link-back.link-white:before,
.link-back.link-white:after {
    background: url(../img/link-back-white.svg) no-repeat center center;
}
.link-back.link-black:before,
.link-back.link-black:after {
    background: url(../img/link-back-black.svg) no-repeat center center;
}
.link-back.link-red:before,
.link-back.link-red:after {
    background: url(../img/link-back-red.svg) no-repeat center center;
}
.link-back.link-bone:before,
.link-back.link-bone:after {
    background: url(../img/link-back-bone.svg) no-repeat center center;
}
.link-back > span {
    position: absolute;
    top: -10px;
    left: -10px;
    right: -10px;
    bottom: -10px;
    width: calc(100% + 20px);
    height: calc(100% + 20px);
}





.link-white,
.link-white:focus,
.link-white:active {
    color: var(--marble-500);
}
.link-white:hover {
    color: var(--marble-500);
}

.link-black,
.link-black:focus,
.link-black:active {
    color: var(--black);
}
.link-black:hover {
    color: var(--black);
}
.link-red,
.link-red:focus,
.link-red:active {
    color: var(--red-500);
}
.link-red:hover {
    color: var(--red-500);
}
.link-bone,
.link-bone:focus,
.link-bone:active {
    color: var(--bone-500);
}
.link-bone:hover {
    color: var(--bone-500);
}

.btn-red,
.btn-red:focus,
.btn-red:active {
    display: -webkit-inline-box;
    display: -moz-inline-box;
    display: -ms-inline-flexbox;
    display: -webkit-inline-flex;
    display: inline-flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    text-align: center;

    font-family: "Roobert", monospace;
    font-size: 14px;
    font-size: 0.87rem;
    line-height: 1.43;
    text-transform: uppercase;
    padding: 10px 24px;
    min-height: 52px;
    border-radius: 26px;
    position: relative;
    color: var(--white);
    background: var(--red-600);
    cursor: pointer;
    transition: 0.2s;
}
.btn-red:hover {
    color: var(--white);
    background: var(--red-700);
}


.home-projects-list-item {
    min-height: 100vh;
    position: relative;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: start;
    -ms-flex-align: start;
    align-items: flex-start;
}

.home-projects-list-item-image {
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    width: 100%;
    height: 100%;
    overflow: hidden;

}
.home-projects-list-item .home-projects-list-item-image > img {
    transform: scale(1.2);
    will-change: transform;
    transition: 2s cubic-bezier(0.33, 1, 0.68, 1);
}
.home-projects-list-item.in-view .home-projects-list-item-image > img {
    transform: scale(1);
}
.home-projects-list-item:after {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    width: 100%;
    height: 100%;
    z-index: 2;
    background: var(--black);
    transition: 1.5s cubic-bezier(0.65, 0, 0.35, 1);
}
.home-projects-list-item.in-view:after {
    top: 100%;
    height: 0%;
}

.home-projects-list-item-badge {
    
    display: -webkit-inline-box;
    display: -moz-inline-box;
    display: -ms-inline-flexbox;
    display: -webkit-inline-flex;
    display: inline-flex;
    background: var(--red-800);
    color: var(--white);
    position: sticky;
    z-index: 5;
    top: 0;

    font-family: "Roobert", monospace;
    font-weight: 500;
    font-size: 14px;
    font-size: 0.87rem;
    line-height: 1.43;
    text-transform: uppercase;
    padding: 16px 24px;
}

.project-info-box {
    background: var(--white);
    color: var(--black);
    padding: 32px 40px;
    position: sticky;
    z-index: 5;
    top: 0;
    width: 42.5%;
    margin-left: auto;
}

.project-info-box-top {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
    -moz-box-pack: justify;
    -ms-flex-pack: justify;
    -webkit-justify-content: space-between;
    justify-content: space-between;
    -webkit-box-align: start;
    -ms-flex-align: start;
    align-items: flex-start;
    gap: 20px;
    margin-bottom: 32px;
}
.project-info-box-top a {
    white-space: nowrap!important;
}

.project-info-box-details-item:not(:last-child) {
    margin-bottom: 24px;
}

.project-info-box-details-label {
    font-family: "Roobert", monospace;
    color: var(--grey-500);
    font-weight: 500;
    font-size: 14px;
    font-size: 0.87rem;
    line-height: 1.43;
    text-transform: uppercase;
    margin-bottom: 8px;
}

.label-white {
    font-family: "Roobert", monospace;
    color: var(--white);
    font-weight: 500;
    font-size: 14px;
    font-size: 0.87rem;
    line-height: 1.43;
    text-transform: uppercase;
    margin-bottom: 16px;
}
.label-grey {
    font-family: "Roobert", monospace;
    color: var(--grey-500);
    font-weight: 500;
    font-size: 14px;
    font-size: 0.87rem;
    line-height: 1.43;
    text-transform: uppercase;
    margin-bottom: 16px;
}
.label-black {
    font-family: "Roobert", monospace;
    color: var(--black);
    font-weight: 500;
    font-size: 14px;
    font-size: 0.87rem;
    line-height: 1.43;
    text-transform: uppercase;
    margin-bottom: 16px;
}
.label-red {
    font-family: "Roobert", monospace;
    color: var(--red-500);
    font-weight: 500;
    font-size: 14px;
    font-size: 0.87rem;
    line-height: 1.43;
    text-transform: uppercase;
    margin-bottom: 16px;
}

.project-info-box-details-text {
    font-family: "Roobert", monospace;
    font-weight: 500;
    font-size: 14px;
    font-size: 0.87rem;
    line-height: 1.43;
    text-transform: uppercase;
}
.project-info-box-details-text p:not(:last-child) {
    margin-bottom: 2px;
}

.project-info-box-timeline {
    margin-top: 30px;
    margin-left: -2px;
    padding-top: 2px;
    width: calc(100% + 4px);
    padding-left: 2px;
    padding-right: 2px;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
    -moz-box-pack: justify;
    -ms-flex-pack: justify;
    -webkit-justify-content: space-between;
    justify-content: space-between;
    font-family: "Roobert", monospace;
    font-weight: 500;
    font-size: 14px;
    font-size: 0.87rem;
    line-height: 1.43;
    text-transform: uppercase;
    position: relative;
    overflow: hidden;
    color: var(--grey-500);;
}
.project-info-box-timeline:before {
    content: '';
    position: absolute;
    left: 2px;
    right: 2px;
    top: 5px;
    width: calc(100% - 4px);
    height: 1px;
    background: var(--grey-500)

}
.project-info-box-timeline span {
    padding-top: 14px;
    position: relative;
}
.project-info-box-timeline span:before {
    content: '';
    position: absolute;
    top: 0;
    left: 50%;
    transform: translateX(-3px);
    width: 6px;
    height: 6px;
    width: 7px;
    height: 7px;
    background: var(--grey-500);
    z-index: 5;
}
.project-info-box-timeline span.prev-step:before {
    background: var(--black);
}
.project-info-box-timeline span:first-child::before {
    left: 0;
    transform: translateX(-2px);
}
.project-info-box-timeline span:last-child::before {
    left: auto;
    right: 0;
    transform: translateX(2px);
}

.project-info-box-timeline span.prev-step,
.project-info-box-timeline span.active {
    color: var(--black);
}
.project-info-box-timeline span.active:before {
    width: 11px;
    height: 11px;
    top: -2px;
    transform: translateX(-2px);
    background: white;
    border: 3px solid var(--black);
    box-sizing: border-box;
}
.project-info-box-timeline span.active:first-child:before {
    transform: translateX(-2px);
}
.project-info-box-timeline span.active:before {
    transform: translateX(-5px);
}
.project-info-box-timeline span.active:last-child:before {
    transform: translateX(0px);
}
.project-info-box-timeline span.active:after {
    content: '';
    position: absolute;
    height: 1px;
    top: 3px;
    right: 50%;
    width: 100vw;
    background: var(--black);
}
.project-info-box-timeline span.active:first-child:after {
    display: none;
}
.project-info-box-timeline span.active:last-child:after {
    right: 0;
}

.project-info-archive {
    max-width: 52%;
    max-width: 70%;
    margin: 26px auto;
    text-align: center;
}

.project-info-archive-link {
    margin-top: 16px;
}

.home-business-section {
    padding-top: 24vh;
    padding-bottom: 35vh;
}

.home-business-top-images {
    padding-bottom: 124.9%;
}

.home-business-top-image {
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    width: 100%;
    height: 100%;
    clip-path: polygon(100% 0, 100% 0, 100% 100%, 100% 100%);
    transition: 0.1s 1s;
}
.home-business-top-image.active {
    z-index: 5;
    clip-path: polygon(0% 0, 100% 0, 100% 100%, 0% 100%);
    transition: 1s cubic-bezier(0.33, 1, 0.68, 1);
}

.home-business-top-left {
    width: 59%;
}

.home-business-top-right {
    width: 16.8%;
    min-height: 70vh;
}

.home-business-bottom-left {
    width: 50%;
    margin-top: -40vh;
}

.home-business-image-main {
    width: 90%;
}

.home-business-images {
    padding-bottom: 125%;
}
.home-business-image {
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    width: 100%;
    height: 100%;
    clip-path: polygon(100% 0, 100% 0, 100% 100%, 100% 100%);
    transition: 0.1s 1s;
}
.home-business-image.active {
    z-index: 5;
    clip-path: polygon(0% 0, 100% 0, 100% 100%, 0% 100%);
    transition: 1s 0.2s cubic-bezier(0.33, 1, 0.68, 1);
}

.home-business-top {
    position: relative;
    z-index: 15;
}
.home-business-top .title-80,
.home-business-top .title-102 {
    position: sticky;
    top: 120px;
}
.home-business-top-images-hold {
    position: sticky;
    top: 120px
}

.home-news-section {
    padding-top: 120px;
    padding-bottom: 40vh;
}



.home-business-bottom-right {
    width: 50%;
    padding-left: 8%;
    padding-bottom: 136px;
}

.text-reg p:not(:last-child) {
    margin-bottom: 16px;
}

.home-business-bottom-link {
    margin-top: 40px;
}

.home-business-bottom {
    -webkit-box-align: end;
    -ms-flex-align: end;
    align-items: flex-end;
}

.home-business-image-width {
    margin-left: -5.5vw;
    width: calc(101% + 5.5vw);
}

.home-news-section .title-54 {
    margin-bottom: 120px;
}

.news-list ul {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-lines: multiple;
    -moz-box-lines: multiple;
    -ms-flex-wrap: wrap;
    -webkit-flex-wrap:wrap;
    flex-wrap: wrap;
}
.news-list ul li {
    width: 25%;
    margin-right: 12.5%;
}
/* .news-list ul li:nth-child(10n+3) {
    margin-right: 0%;
}
.news-list ul li:nth-child(10n+5) {
    width: 62.5%;
    margin-right: 0%;
}
.news-list ul li:nth-child(10n+8) {
    margin-right: 0%;
}
.news-list ul li:nth-child(10n+9) {
    width: 62.5%;
}
.news-list ul li:nth-child(10n) {
    margin-right: 0;
} */

.news-list ul li.layout-index-3 {
  margin-right: 0%;
}

.news-list ul li.layout-index-5 {
  width: 62.5%;
  margin-right: 0%;
}

.news-list ul li.layout-index-8 {
  margin-right: 0%;
}

.news-list ul li.layout-index-9 {
  width: 62.5%;
}

.news-list ul li.layout-index-10 {
  margin-right: 0;
}

.news-list ul li:nth-child(10n+2) .news-list-image,
.news-list ul li:nth-child(10n+8) .news-list-image,
.news-list ul li:nth-child(10n+9) .news-list-image {
    /* padding-bottom: 100%; */
}

.remote-url .news-list-image {
    padding-bottom: 100%;
}

.news-list ul li a {
    display: block;
    color: var(--black);
}

.news-list-image {
    padding-bottom: 66.625%;
    margin-bottom: 16px;
    overflow: hidden;
}
.news-list-image img {
    transform: scale(1);
    will-change: transform;
    overflow: hidden;
    transition: 0.5s;
}
a:hover .news-list-image img {
    transform: scale(1.05);
}

.news-list-date {
    margin-top: 12px;
    font-family: "Roobert", monospace;
    font-size: 14px;
    font-size: 0.87rem;
    line-height: 1.43;
    font-weight: 500;
    text-transform: uppercase;
    color: var(--grey-500);
}

.news-list-title {
    line-height: 1.2;
    letter-spacing: -0.02em;
    font-size: 1.37em;
}

.news-list-title.v2 {
    font-size: 1.75em;
    font-size: 28px;
}

.news-list-title span {
    background-image: linear-gradient(#000, #000);
    background-position: 0 100%;
    background-repeat: no-repeat;
    background-size: 0 1px;
    transition: background-size .5s;
}

a:hover .news-list-title span {
    background-size: 100% 1px;
}

.home-news-link {
    margin-top: 120px;
}

.newsletter-section {
    min-height: 100vh;
    position: relative;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;

    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    padding: 64px 0 120px;
}

.newsletter-section-image {
    position: absolute !important;
    right: 0;
    width: 50%;
    top: 0;
    bottom: 0;
    height: 100%; 
}

.newsletter-box {
    background: var(--white);
    width: 26%;
    min-width: 280px;
    margin-left: auto;
    margin-right: auto;
    min-height: 464px;
    color: var(--black);
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    padding: 40px 24px;
    position: relative;
    pointer-events: all;
    clip-path: polygon(0 0, 100% 0, 100% 0%, 0 0%);
    transition: 1s cubic-bezier(0.33, 1, 0.68, 1);
}
.newsletter-box.in-view {
    clip-path: polygon(0 0, 100% 0, 100% 100%, 0 100%);
}
.newsletter-box.no-clip {
    clip-path: none;
}

.newsletter-box-link {
    margin-top: 40px;
}

.newsletter-box-content {
    max-width: 70%;
    margin-left: auto;
    margin-right: auto;
}

.newsletter-box-modal {
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    width: 100%;
    min-height: 100%;
    z-index: 10;
    background: var(--marble-500);
    padding: 40px 40px;
    clip-path: polygon(0 0, 100% 0, 100% 0%, 0 0%);
    transition: 0.6s cubic-bezier(0.33, 1, 0.68, 1)
}
.newsletter-box-modal.active {
    clip-path: polygon(0 0, 100% 0, 100% 100%, 0 100%);
}

.newsletter-box-modal > span {
    position: absolute;
    top: 6px;
    right: 6px;
    width: 48px;
    height: 48px;
    background: url(../img/icon-close.svg) no-repeat center center;
    opacity: 0.6;
    cursor: pointer;
    z-index: 10;
    transition: 0.2s;
}
.newsletter-box-modal > span:hover {
    opacity: 1;
}

footer {
    padding: 80px 0 24px;
    position: sticky;
    bottom: 0;
    left: 0;
    width: 100%;
    background: var(--black);
    color: var(--bone-500);
    min-height: 100vh;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;

    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
}

main {
    position: relative;
    background: var(--white);
    z-index: 5;
}

.footer-top-left {
    width: 50%;
}

.footer-coordinates {
    font-family: "Roobert", monospace;
    font-size: 14px;
    font-size: 0.87rem;
    line-height: 1.43;
    text-transform: uppercase;
}

.footer-top-right {
    width: 50%;
}

.footer-bottom {
    -webkit-box-align: end;
    -ms-flex-align: end;
    align-items: flex-end;
}

.footer-bottom-left {
    width: 50%;
}

.footer-bottom-right {
    width: 50%;
     -webkit-box-align: end;
    -ms-flex-align: end;
    align-items: flex-end;
}

.footer-top {
    margin-bottom: 106px;
}

.footer-nav ul li {
    line-height: 1;
}
.footer-nav ul li:not(:last-child) {
    margin-bottom: 24px;
}
.footer-nav ul li a {
    display: -webkit-inline-box;
    display: -moz-inline-box;
    display: -ms-inline-flexbox;
    display: -webkit-inline-flex;
    display: inline-flex;
    color: var(--bone-500);
    line-height: 1;
    letter-spacing: -0.02em;
    /* font-size: 46px; */
    font-size: 3.2vw;
    transition: 0.2s;
}
.footer-nav.hovered ul li a {
    color: var(--grey-500);
}

.footer-nav ul li a:hover {
    color: var(--bone-500);
}

.socials ul {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    gap: 8px;
}
.socials ul li a {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    background: var(--bone-800);
    border-radius: 50%;
    width: 44px;
    height: 44px;
    transition: 0.2s;
}
.socials ul li a:hover {
    background: var(--bone-700);
}

.copyrights {
    font-family: "Roobert", monospace;
    font-size: 14px;
    font-size: 0.87rem;
    line-height: 1.43;
    text-transform: uppercase;
    margin-top: 5px;
}

.devs ul {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    gap: 16px;
}
.devs ul li a svg path {
    transition: 0.2s;
}
.devs ul li a:hover svg path {
    fill: var(--bone-500);
}

footer .grid-container {
    padding-left: 24px;
    padding-right: 24px;
}

header {
    position: absolute;
    position: fixed;
    top: 0;
    left: 0;
    right: 0;
    width: 100%;
    z-index: 500;
    padding: 56px 0;
    transform: translateY(0);
    transition: transform 0.3s ease-in-out;
}
header.header-up {
    transform: translateY(-100%);
}
header.header-up-bottom {
    transform: translateY(-100%);
}

header:before {
    content: '';
    position: absolute;
    left: 0;
    right: 0;
    top: 0;
    bottom: 0;
    background: linear-gradient(180deg, rgba(0, 0, 0, 0.6) 20.19%, rgba(0, 0, 0, 0) 87.02%);
    background-blend-mode: multiply;
    opacity: 0;
    transition: 0.3s;
}
.header-gradient:before {
    opacity: 1;
}

.js-js-before-footer {
    position: relative;
}
.js-js-before-footer > span {
    position: absolute;
    left: 0;
    right: 0;
    bottom: 0;
    min-height: 1px;
    opacity: 0;
    pointer-events: none;
}

.header {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-pack: justify;
    -moz-box-pack: justify;
    -ms-flex-pack: justify;
    -webkit-justify-content: space-between;
    justify-content: space-between;
}

.header-right {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    gap: 32px;
    gap: 2em;
}

.nav ul {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    gap: 32px;
    gap: 2em;
}
.nav ul li a {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    font-family: "Roobert", monospace;
    font-size: 14px;
    font-size: 0.87rem;
    font-size: 1rem;
    line-height: 1.43;
    text-transform: uppercase;
    color: var(--marble-500);
    padding: 8px 0;
    position: relative;
}
.nav ul li a:after {
    content: '';
    position: absolute;
    left: 0;
    bottom: 0;
    width: 0;
    height: 1px;
    background: var(--marble-500);
    width: 100%;
    right: 0;
    opacity: 0;
    transition: 0.3s;
}
.nav ul li a:hover:after {
    opacity: 1;
}

.langs-hold {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
}
.langs-hold a {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    font-family: "Roobert", monospace;
    font-size: 14px;
    font-size: 0.87rem;
    font-size: 1rem;
    line-height: 1.43;
    text-transform: uppercase;
    color: var(--marble-500);
    padding: 8px 0;
    position: relative;
}
.langs-hold a:after {
    content: '';
    position: absolute;
    left: 0;
    bottom: 0;
    width: 0;
    height: 1px;
    background: var(--marble-500);
    width: 100%;
    right: 0;
    opacity: 0;
    transition: 0.3s;
}
.langs-hold a:hover:after {
    opacity: 1;
}

.logo a {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
}

.logo-footer {
    width: 68%;
}

.intro-title {
    opacity: 0;
}
.intro-title.loaded {
    opacity: 1;
}

.animated-title.in-view {
    opacity: 1;
}

.animated-title {
    opacity: 0;
    /* line-height: 0.76; */
}

.animated-title .word {
    /* padding-top: 0.08em;
    padding-bottom: 0.1em;
    margin-bottom: -0.1em; */
}
/* .animated-title.title-h2 {
}

.animated-title.title-h3 {
    line-height: 0.82;
} */


.title-102.animated-title,
.title-102.intro-title {
    line-height: 0.95;
    line-height: 0.88;
}
.title-102.intro-title .word,
.title-102.animated-title .word {
    padding-top: 0.11em;
    padding-bottom: 0.14em;
    margin-bottom: -0.14em;
}

.title-80.animated-title,
.title-80.intro-title {
    line-height: 0.95;
    line-height: 0.9;
    /* margin-bottom: -0.18em; */
}
.title-80.animated-title .word,
.title-80.intro-title .word {
    padding-top: 0.11em;
    padding-bottom: 0.15em;
    margin-bottom: -0.15em;
}

.title-54.animated-title,
.title-54.intro-title {
    line-height: 0.95;
    /* margin-bottom: -0.15em; */
}
.title-54.animated-title .word,
.title-54.intro-title .word {
    padding-top: 0.11em;
    padding-bottom: 0.14em;
    margin-bottom: -0.14em;
}

.title-46.animated-title {
    line-height: 0.95;
    line-height: 1.05;
    /* margin-bottom: -0.15em; */
}
.title-46.animated-title .word {
    padding-top: 0.11em;
    padding-bottom: 0.14em;
    margin-bottom: -0.14em;
}

.title-40.animated-title {
    line-height: 0.95;
    line-height: 0.9;
    /* margin-bottom: -0.15em; */
}
.title-40.animated-title .word {
    padding-top: 0.11em;
    padding-bottom: 0.14em;
    margin-bottom: -0.14em;
}




.animated-title .word,
.intro-title .word {
    overflow: hidden;
    /* padding-top: 0.35em; */
    /* padding-bottom: 0.26em; */
    /* margin-bottom: -0.26em; */
    /* margin-top: -0.17em; */

}

.animated-title.in-view .char,
.intro-title.loaded .char {
    transform: translateY(0);
}
.animated-title .char,
.intro-title .char {
    transform: translateY(185%);
    /* transition: transform 0.6s ease-in-out;
    transition-delay: calc(30ms* var(--word-index)); */
    transition: transform 0.6s cubic-bezier(0.33, 1, 0.68, 1);
    transition-delay: calc(20ms* var(--word-index));
}

.animation-element.fade-up {
    opacity: 0;
    transform: translateY(30px);
    transition: opacity 0.9s cubic-bezier(0.33, 1, 0.68, 1), transform 0.9s cubic-bezier(0.33, 1, 0.68, 1);
}
.animation-element.fade-up.fade-up-02 {
    transition: opacity 0.9s 0.2s cubic-bezier(0.33, 1, 0.68, 1), transform 0.9s 0.2s cubic-bezier(0.33, 1, 0.68, 1);
}
.animation-element.fade-up.fade-up-04 {
    transition: opacity 0.9s 0.4s cubic-bezier(0.33, 1, 0.68, 1), transform 0.9s 0.4s cubic-bezier(0.33, 1, 0.68, 1);
}
.animation-element.fade-up.fade-up-06 {
    transition: opacity 0.9s 0.6s cubic-bezier(0.33, 1, 0.68, 1), transform 0.9s 0.6s cubic-bezier(0.33, 1, 0.68, 1);
}

.animation-element.fade-up.in-view {
    opacity: 1;
    transform: translateY(0px);
}

.animation-element.fade-up-later {
    opacity: 0;
    transform: translateY(40px);
    transition: opacity 0.9s 0.3s cubic-bezier(0.33, 1, 0.68, 1), transform 0.9s 0.3s cubic-bezier(0.33, 1, 0.68, 1);
}

.animation-element.fade-up-later.in-view {
    opacity: 1;
    transform: translateY(0px);
}
.animation-element.fade-up-late {
    opacity: 0;
    transform: translateY(40px);
    transition: opacity 0.9s 0.6s cubic-bezier(0.33, 1, 0.68, 1), transform 0.9s 0.6s cubic-bezier(0.33, 1, 0.68, 1);
}

.animation-element.fade-up-late.in-view {
    opacity: 1;
    transform: translateY(0px);
}

.animation-element.fade-in {
    opacity: 0;
    transition: opacity 0.9s cubic-bezier(0.33, 1, 0.68, 1);
}

.animation-element.fade-in.in-view {
    opacity: 1;
}
.animation-element.fade-in-later {
    opacity: 0;
    transition: opacity 0.9s 0.3s cubic-bezier(0.33, 1, 0.68, 1);
}

.animation-element.fade-in-later.in-view {
    opacity: 1;
}

.animation-element.fade-in-late {
    opacity: 0;
    transition: opacity 0.9s 0.6s cubic-bezier(0.33, 1, 0.68, 1);
}

.animation-element.fade-in-late.in-view {
    opacity: 1;
}

.section-has-rect {
    position: relative;
}

.section-rect {
    position: absolute;
    width: 50%;
    left: 0;
    height: 17vh;
    z-index: 5;
}

.section-rect-top {
    bottom: 100%;
}
.section-rect-top-rev {
    top: 0;
}
.section-rect-bottom {
    top: 100%;
}
.section-rect-bottom-rev {
    bottom: 0;
}

.section-rect-right {
    left: auto;
    right: 0;
}

.section-rect-sm {
    width: 42.5%;
}

.reveal-right {
    position: relative;
    overflow: hidden;
}

.reveal-right:after {
    content: '';
    position: absolute;
    top: -1px;
    left: -1px;
    right: -1px;
    bottom: -1px;
    width: calc(100% + 2px);
    height: calc(100% + 2px);
    background: var(--red-800);
    transform: translateX(0%);
    will-change: transform;
    transition: 1s cubic-bezier(0.33, 1, 0.68, 1);
    transition-delay: 0.2s;
    z-index: 8;
}
.reveal-right.in-view:after {
    transform: translateX(-101%);
}

.featured-news-list ul li:nth-child(3n+2) {
    transition-delay: 0.2s;
}
.featured-news-list ul li:nth-child(3n) {
    transition-delay: 0.4s;
}

.newsletter-overlay {
    position: fixed;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    width: 100%;
    height: 100%;
    z-index: 30;
    background: rgba(0,0,0,0.5);
    opacity: 0;
    visibility: hidden;
    transition: 0.3s;
}
.newsletter-overlay.active {
    opacity: 1;
    visibility: visible;
}

.newsletter-section .grid-container {
    z-index: 40;
    pointer-events: none;
}

.intro-coordinates-hold {
    position: fixed;
    left: 0;
    right: 0;
    pointer-events: none;
    bottom: 40px;
    z-index: 2;
    opacity: 0;
    transition: opacity 0.9s cubic-bezier(0.33, 1, 0.68, 1)
}
.intro-coordinates-hold.intro-anim {
    opacity: 1;
}

.page-preloader {
    position: fixed;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    width: 100%;
    height: 100%;
    z-index: 1000;
    background: var(--red-800);
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    clip-path: polygon(0 0, 100% 0, 100% 100%, 0 100%);
    transition: 1s cubic-bezier(0.33, 1, 0.68, 1);
}

.page-preloader-logo {
    opacity: 0;
    transform: scale(0.5);
    transition: 0.8s;
}
.page-preloader.step-1 .page-preloader-logo {
    opacity: 1;
    transform: scale(1);
}
.page-preloader.step-2 {
    clip-path: polygon(0 0, 100% 0, 100% 0%, 0 0%);
}

.header {
    opacity: 0;
    transform: translateY(10px);
    transition: 0.9s cubic-bezier(0.33, 1, 0.68, 1);
}
.header.loaded {
    opacity: 1;
    transform: translateX(0px)
}

.intro-home-section-image img {
    transform: scale(1.1);
    opacity: 0;
    transition: 0.9s cubic-bezier(0.33, 1, 0.68, 1);
}
.intro-home-section-image.loaded img {
    transform: scale(1);
    opacity: 1;
}

.mob-nav-hold {
    position: fixed;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    width: 100%;
    height: 100%;
    z-index: 1100;
    background: var(--black);
    padding: 0 0 40px;
    overflow: auto;
    clip-path: inset(100% 0 0 0);
    will-change: clip-path;
    transition: 0.9s cubic-bezier(0.33, 1, 0.68, 1);
}

.mob-nav-hold.active {
    clip-path: inset(0 0 0 0);
}
.mob-nav-hold.active.active2 {
    clip-path: inset(0 0 100% 0);
}

.mob-nav-header {
    padding: 56px 0;
    left: 0;
    right: 0;
    width: 100%;
    top: 0;
    z-index: 30;

}

.mob-nav-grid-left {
    width: 50%;
    padding-right: 70px;
}
.mob-nav-grid-right {
    width: 50%;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-flex-direction: column;
    -moz-flex-direction: column;
    -ms-flex-direction: column;
    -o-flex-direction: column;
    flex-direction: column;

    -webkit-box-pack: justify;
    -moz-box-pack: justify;
    -ms-flex-pack: justify;
    -webkit-justify-content: space-between;
    justify-content: space-between;
}


.mob-nav ul li {
    line-height: 1.44;
}

.mob-nav ul li a {
    display: -webkit-inline-box;
    display: -moz-inline-box;
    display: -ms-inline-flexbox;
    display: -webkit-inline-flex;
    display: inline-flex;
    color: var(--bone-500);
    line-height: 1.44;
    letter-spacing: -0.02em;
    /* font-size: 46px; */
    font-size: 3.2vw;
    transition: 0.2s;
}

.mob-nav.hovered ul li a {
    color: var(--grey-500);
}
.mob-nav ul li a:hover {
    color: var(--bone-500);
}

.mob-nav-images {
    padding-bottom: 100%;
    position: relative;
    overflow: hidden;
}

.mob-nav-image {
    position: absolute !important;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    width: 100%;
    height: 100%;
    clip-path: inset(100% 0 0%);
    transition: 0.1s 0.5s;
}

.mob-nav-image > img {
    transform: scale(1.1);
    will-change: transform;
    transition: 1s;
}

.mob-nav-image.active {
    z-index: 5;
    clip-path: inset(0% 0 0%);
    transition: 0.6s cubic-bezier(0.33, 1, 0.68, 1);
}
.mob-nav-image.active > img {
    transform: scale(1);
}

.mob-nav-grid-right-links p:not(:last-child) {
    margin-bottom: 8px;
}
.mob-nav-grid-right-links {
    margin-top: 40px;
}

.single-project-intro-section {
    position: relative;
    min-height: 100vh;
}

.single-project-intro-section .project-info-box {
    position: absolute;
    left: 0;
    top: auto;
    bottom: 0;
    padding-left: 5.5vw;
    padding-right: 5.5vw;
    width: 50%;
}
.single-project-intro-section .project-info-box-details {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
}
.single-project-intro-section .project-info-box-details-item {
    width: 50%;
}
.single-project-intro-section .project-info-box-details-item:not(:last-child) {
    margin-bottom: 0;
}
.single-project-intro-section .link-remote > span {
    top: -20px;
    height: calc(100% + 30px);
}



.project-timeline-section {
    padding: 15vh 0 20vh;
}
.project-timeline-section .title-40 {
    margin-bottom: 12vh;
}
.project-timeline-section .project-info-box-timeline {
    color: var(--bone-500);
    padding-top: 0;
    margin-top: 0;
    padding-bottom: 7px;
}
.project-timeline-section .project-info-box-timeline:before {
    background: var(--bone-500);
    top: auto;
    bottom: 6px;
}
.project-timeline-section .project-info-box-timeline span:before {
    background: var(--bone-500);
    top: auto;
    bottom: -4px;
}
.project-timeline-section .project-info-box-timeline span.active:after {
    background: var(--white);
    top: auto;
    bottom: -1px;
}
.project-timeline-section .project-info-box-timeline span.prev-step {
    color: var(--bone-500);
}
.project-timeline-section .project-info-box-timeline span.active {
    color: var(--white);
}

.project-timeline-section .project-info-box-timeline span.prev-step:before {
    background: var(--white);
}

.project-timeline-section .project-info-box-timeline span.active:before {
    background: var(--red-800);
    border: 3px solid var(--white);
    width: 13px;
    height: 13px;
    top: auto;
    bottom: -7px;
}
.project-timeline-section .project-info-box-timeline span {
    padding-top: 0px;
    padding-bottom: 20px;
    text-align: center;
}
.project-timeline-section .project-info-box-timeline > span:first-child {
    text-align: left;
}
.project-timeline-section .project-info-box-timeline > span:last-child {
    text-align: right;
}
.project-timeline-section .project-info-box-timeline span div {
    margin-top: 2px;
}

.title-46-section {
    padding: 15vh 0 27vh;
}

.text-image-left {
    width: 50%;
    padding-top: 27vh;
    padding-right: 15%;
}
.text-image-right {
    width: 50%;
}

.text-image-section {
    position: relative;
    overflow: hidden;
    padding-bottom: 15vh;
}

.text-image-image {
    padding-bottom: 100%;
}

.text-image-image-width {
    width: calc(100% + 5.5vw);
}

.title-46-section .title-46 {
    max-width: 64%;
    margin-left: auto;
    margin-right: auto;
}

.image-full-text-left-section {
    padding-bottom: 15vh;
}

.iftl-image {
    padding-bottom: 59.514%;
    margin-bottom: 24px;
}

.image-full-text-left-section .text-reg {
    max-width: 33.333%;
}

.image-text-section {
    padding-top: 15vh;
    padding-bottom: 12.5vh;
}

.image-text-left {
    width: 60%;
    padding-right: 22px;
}

.image-text-image {
    padding-bottom: 100%;
}

.image-text-right {
    width: 40%;
    padding-left: 6.3%;
}

.project-gallery-section {
    padding: 10vh 0 15vh;
    position: relative;
    overflow: hidden;
}

.gallerySwiper-slide {
    width: 66.666vw;
}

.gallerySwiper-counter {
    position: relative;
    top: auto;
    bottom: auto;
    text-align: left;
    margin-top: 40px;

    font-size: 46px;
    /* font-size: 3.2vw;; */
    line-height: 1.3;
    letter-spacing: -0.02em;
}

.swiper.gallerySwiper {
    overflow: visible;
}


.swiper-custom-prev,
.swiper-custom-next {
    width: 56px;
    height: 56px;
    position: absolute;
    background: var(--bone-500);
    border-radius: 50%;
    z-index: 10;
    cursor: pointer;
    bottom: 2px;

    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    transition: 0.2s;
}
.swiper-custom-prev.swiper-button-disabled,
.swiper-custom-next.swiper-button-disabled {
    cursor: default;
    background: var(--bone-400);
}
.swiper-custom-prev svg path,
.swiper-custom-next svg path {
    transition: 0.2s;
}
.swiper-custom-prev.swiper-button-disabled svg path,
.swiper-custom-next.swiper-button-disabled svg path {
    stroke: var(--grey-500);
}

.swiper-custom-prev {
    right: 72px;
}
.swiper-custom-next {
    right: 0;
}

.swiper-progress-style.swiper-pagination-progressbar {
    z-index: 5;
    top: auto !important;
    bottom: 29px;
    background: var(--white)!important;
    left: 160px!important;
    right: 160px!important;
    width: calc(100% - 160px - 160px)!important;
    height: 2px!important;

}

.swiper-progress-style.swiper-pagination-progressbar .swiper-pagination-progressbar-fill {
    background: var(--black);
}

.title-text-section {
    padding-top: 15vh;
    padding-bottom: 15vh;
}

.tt-left {
    width: 50%;
    padding-right: 8.3%;
}
.tt-right {
    width: 50%;
    padding-left: 8.3%;
}

.project-news-section {
    padding: 40px 0 27vh;
}

.project-news-hold {
    border-top: 1px solid var(--bone-500);
    padding-top: 80px;
}

.project-news-left {
    width: 54%;
    padding-right: 5%;
}
.project-news-right {
    width: 46%;
    padding-left: 4.3%;
}

.news-col-list ul li:not(:last-child) {
    margin-bottom: 80px;
}
.news-col-list ul li a {
    display: block;
    color: var(--black);
}

.news-col-list ul li:first-child .news-list-image {
    /* padding-bottom: 100%; */
}

.full-image-section {
    padding-bottom: 56.25%;
}

.project-contact-section {
    padding-top: 27vh;
    padding-bottom: 40vh;
}

.project-contact-x-wrap {
    position: absolute;
    top: 0;
    bottom: 0;
    left: 0;
    right: 0;
    width: 100%;
    height: 100%;
}
.project-contact-x-wrap .grid-container {
    height: 100%;
    padding-top: 80px;
    padding-bottom: 40px;
}

.project-contact-x {
    position: sticky;
    top: 0;
}

.project-contact-x-sticky {
    max-width: 43%;
}
.project-contact-x-sticky img {
    width: 100%;
}

.project-contact-section .section-top {
    max-width: 73%;
    max-width: 60%;
    margin-bottom: 80px;
}
.project-contact-section .section-top .text-reg {
    max-width: 320px;
    margin-top: 24px;
}

.other-projects-section {
    padding-top: 15vh;
    padding-bottom: 27vh;
}

.project-contact-person-hold {
    padding-left: 50%;
}

.project-contact-person-item-left {
    width: 30%;
    margin-right: 24px;
}

.project-contact-person-item-image {
    padding-bottom: 125%;
}
.project-contact-person-item-right {
    width: calc(70% - 24px);
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-flex-direction: column;
    -moz-flex-direction: column;
    -ms-flex-direction: column;
    -o-flex-direction: column;
    flex-direction: column;

    -webkit-box-pack: justify;
    -moz-box-pack: justify;
    -ms-flex-pack: justify;
    -webkit-justify-content: space-between;
    justify-content: space-between;
}

.project-contact-person-item-position {
    margin-top: 8px;
    font-family: "Roobert", monospace;
    font-size: 14px;
    font-size: 0.87rem;
    line-height: 1.43;
    text-transform: uppercase;
    color: var(--grey-500);
}

.project-contact-person-item-details p {
    line-height: 20px;
    margin-bottom: 3px;
}
.project-contact-person-item-details p:last-child {
    margin-bottom: 0px;
}


.other-projects-section .section-top {
    margin-bottom: 75px;
}

.other-projects-oh {
    position: relative;
    overflow: hidden;
}

.other-projects-link {
    margin-top: 15vh;
}

.projects-slide-content {
    background: var(--white);
    padding: 32px 40px; 
}

.projects-slide-image {
    padding-bottom: 66.88%;
}

.swiper.projects-swiper {
    overflow: visible;
}

.item-badge {
    display: -webkit-inline-box;
    display: -moz-inline-box;
    display: -ms-inline-flexbox;
    display: -webkit-inline-flex;
    display: inline-flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    background: var(--red-800);
    color: var(--white);
    position: absolute;
    z-index: 5;
    top: 0;
    left: 0;
    font-family: "Roobert", monospace;
    font-weight: 500;
    font-size: 14px;
    font-size: 0.87rem;
    line-height: 1.43;
    text-transform: uppercase;
    padding: 16px 24px;
}

.projects-slide {
    width: calc((100vw - 11vw - 24px - 10px) / 2);
}

.logo img {
    max-width: 177px;
    max-width: 236px;
}

.archive-news-list ul {
    margin-bottom: -26vh;
}
.archive-news-list ul li {
    margin-bottom: 26vh;
}

.header-light .nav ul li a {
    color: var(--black);
}
.header-light .nav ul li a:after {
    background: var(--black);
}
.header-light .langs-hold a {
    color: var(--black);
}
.header-light .langs-hold a:after {
    background: var(--black);
}

.header-light .hamburger-inner, 
.header-light .hamburger-inner:after, 
.header-light .hamburger-inner:before {
     background: var(--black);
}
.header-light .hamburger:hover {
    border: 1px solid var(--black);
}
.header-light .logo img {
    filter: brightness(5) invert(1) ;
}

.pb-by-header {
    padding-top: 160px;
}

.archive-news-section {
    padding-bottom: 40vh;
}

.archive-news-featured {
    margin-bottom: 12.5vh;
}

.archive-news-featured-left {
    width: 37.5%;
}
.archive-news-featured-right {
    width: 62.5%;
}

.arvhive-news-featured-item a {
    color: var(--black);
}

.remote-url .item-badge {
    padding: 16px 24px;
}
.remote-url .item-badge:after {
    content: '';
    width: 12px;
    height: 12px;
    background: url(../img/link-remote-white.svg) no-repeat center center;
    margin-left: 8px;
}

.news-filter {
    margin-bottom: 80px;
}

.filter-style ul {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-lines: multiple;
    -moz-box-lines: multiple;
    -ms-flex-wrap: wrap;
    -webkit-flex-wrap:wrap;
    flex-wrap: wrap;
    gap: 8px;
}
.filter-style ul li input {
    display: none;
}

.filter-style ul li label {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    text-align: center;
    color: var(--red-500);
    font-family: "Roobert", monospace;
    font-size: 14px;
    font-size: 0.87rem;
    line-height: 1.43;
    font-weight: 500;
    text-transform: uppercase;
    padding: 10px 14px;
    margin: 0;
    position: relative;
    transition: 0.2s;
}
.filter-style ul li label:hover {
    color: var(--red-500);
    background: var(--red-400);
}
.filter-style ul li label:after {
    content: '';
    position: absolute;
    left: 0;
    right: 0;
    width: 0;
    width: 100%;
    bottom: 0;
    height: 1px;
    background: var(--red-500);
    opacity: 0;
    transition: 0.2s;
}
.filter-style ul li input:checked + label {
    background: transparent;
}
.filter-style ul li input:checked + label:after {
    width: 100%;
    opacity: 1;
}

.featured-news-list ul li:nth-child(3n) {
    margin-right: 0;
}

.home-about-left-sticky {
    position: sticky;
    top: 100px;
    padding-bottom: 20px;
}

.header-sticky:before {
    opacity: 1;
}

.header-sticky .nav ul li a {
    color: var(--marble-500);
}
.header-sticky .nav ul li a:after {
    background: var(--marble-500);
}
.header-sticky .langs-hold a {
    color: var(--marble-500);
}
.header-sticky .langs-hold a:after {
    background: var(--marble-500);
}

.header-sticky .hamburger-inner, 
.header-sticky .hamburger-inner:after, 
.header-sticky .hamburger-inner:before {
     background: var(--marble-500);
}
.header-sticky .hamburger:hover {
    border: 1px solid var(--marble-500);
}
.header-sticky .logo img {
    filter: brightness(1) invert(0) ;
}

.mob-only-show {
    display: none;
}

.intro-text {
    opacity: 0;
    transition: opacity 0.9s cubic-bezier(0.33, 1, 0.68, 1);
}
.intro-text.loaded {
    opacity: 1;
}

.intro-feature-item:not(:last-child) {
    margin-bottom: 64px;
}
.intro-feature-item .text-reg:not(:first-child) {
    margin-top: 16px;
}

.intro-home-section.v2 .intro-home-left {
    max-width: 45%;
}

.intro-home-left .text-reg {
    margin-top: 24px;
    max-width: 39%;
}

.projects-archive-section {
    padding-top: 100px;
    padding-bottom: 40vh;
}

.projects-archive-filters-hold {
    margin-bottom: 80px;
    position: relative;
    z-index: 30;
}

.home-projects-list-item.archive-all-item,
.home-projects-list-item.archive-item {
    padding-bottom: 66.72%;
    min-height: 1px;
    margin-bottom: 120px;
}
.home-projects-list-item.archive-all-item:last-child,
.home-projects-list-item.archive-item:last-child {
    margin-bottom: 0;
}
.home-projects-list-item.archive-all-item .project-info-box,
.home-projects-list-item.archive-item .project-info-box {
    position: absolute;
    /* top: auto; */
    /* bottom: 0; */
    right: 0;
}
.home-projects-list-item.archive-all-item .home-projects-list-item-badge,
.home-projects-list-item.archive-item .home-projects-list-item-badge {
    position: absolute;
    top: 0;
    left: 0;
}

.projects-archive-filters-left {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-lines: multiple;
    -moz-box-lines: multiple;
    -ms-flex-wrap: wrap;
    -webkit-flex-wrap:wrap;
    flex-wrap: wrap;
    gap: 40px;
}

.projects-archive-filters-right {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-lines: multiple;
    -moz-box-lines: multiple;
    -ms-flex-wrap: wrap;
    -webkit-flex-wrap:wrap;
    flex-wrap: wrap;
    gap: 32px;
}

.archive-filter-buttons {
    border: 1px solid var(--red-500);
    padding: 3px;
}
.archive-filter-buttons.disabled {
    border-color: var(--grey-500);
}
.archive-filter-buttons ul {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-lines: multiple;
    -moz-box-lines: multiple;
    -ms-flex-wrap: wrap;
    -webkit-flex-wrap:wrap;
    flex-wrap: wrap;
    gap: 8px;
}
.archive-filter-buttons ul li input {
    display: none;
}
.archive-filter-buttons ul li label {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    text-align: center;
    font-family: "Roobert", monospace;
    font-weight: 500;
    color: var(--red-500);
    font-size: 14px;
    font-size: 0.87rem;
    line-height: 1.43;
    text-transform: uppercase;
    min-height: 32px;
    margin: 0;
    padding: 6px 14px;
    transition: 0.2s;
}
.archive-filter-buttons ul li label:hover {
    color: var(--red-500);
    background: var(--red-400);
}
.archive-filter-buttons ul li input:checked + label {
    color: var(--white);
    background: var(--red-600);
}

.custom-dropdown {
    position: relative;
}
.custom-dropdown span {
    position: relative;
    min-width: 230px;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;

    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    min-height: 40px;
    padding: 2px 40px 2px 14px;
    border-bottom: 1px solid var(--red-500);
    font-family: "Roobert", monospace;
    font-weight: 500;
    color: var(--red-500);
    font-size: 14px;
    font-size: 0.87rem;
    line-height: 1.43;
    text-transform: uppercase;
    cursor: pointer;
    transition: 0.2s;
}
.custom-dropdown span:hover {
    color: var(--red-500);
    background: var(--red-400);
}
.custom-dropdown span:after {
    content: '';
    position: absolute;
    width: 20px;
    height: 20px;
    background: url(../img/chev-down-red.svg) no-repeat center center;
    top: 10px;
    right: 10px;
}
.custom-dropdown.active span:after {
    transform: rotate(180deg);
}
.custom-dropdown ul {
    position: absolute;
    left: 0;
    min-width: 100%;
    background: var(--marble-500);
    opacity: 0;
    visibility: hidden;
}
.custom-dropdown.active ul {
    opacity: 1;
    visibility: visible;
}
.custom-dropdown ul li {
    border-bottom: 1px solid var(--bone-500);
}
.custom-dropdown ul li:last-child {
    border-bottom: none
}
.custom-dropdown ul li a {
    display: -ms-flexbox;
    display: flex;

    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    min-height: 40px;
    font-family: "Roobert", monospace;
    font-weight: 500;
    color: var(--red-500);
    font-size: 14px;
    font-size: 0.87rem;
    line-height: 1.43;
    white-space: nowrap;
    text-transform: uppercase;
    padding: 2px 14px;
    transition: 0.2s;
}
.custom-dropdown ul li a:hover {
    color: var(--red-500);
    background: var(--red-400);
}
.custom-dropdown ul li a.current {
    color: var(--white);
    background: var(--red-600);
}

.projects-archive-link {
    margin-top: 15vh;
}

.custom-dropdown.disabled {
    pointer-events: none;
}
.custom-dropdown.disabled span {
    color: var(--grey-500);
    border-bottom: 1px solid var(--grey-500);
}
.custom-dropdown.disabled span:after {
    filter: brightness(0);
    opacity: 0.4;
}

.archive-filter-buttons ul li.disabled label {
    pointer-events: none;
    color: var(--grey-500);
}

.home-projects-list-item.archive-all-item:after,
.home-projects-list-item.archive-item:after {
    opacity: 0;
    visibility: hidden;
}

.filter-style ul li.disabled label {
    color: var(--grey-500);
    pointer-events: none;
}

.home-about-section.v2 .home-about-left-sticky {
    padding-bottom: 0;
}

.business-about-section {
    padding: 27vh 0 40vh;
}

.business-about-section .section-top {
    margin-bottom: 15vh;
    max-width: 60%;
    max-width: 55%;
}

.business-about-left {
    width: 50%;
}
.business-about-right {
    width: 50%;
    padding-left: 16%;
}

.business-about-image {
    padding-bottom: 100%;
}

.business-about-link {
    margin-top: 40px;
}

.business-about-image-width {
    margin-left: -5.5vw;
    width: calc(100% + 5.5vw);
}

.home-about-section.v3 .home-about-left {
    max-width: 45%;
}

.careers-open-positions-section {
    padding-top: 120px;
    margin-bottom: 120px;
}

.careers-op-left {
    width: 50%;
    padding-right: 16.6%;
}
.careers-op-right {
    width: 50%;
    padding-bottom: 100px;
}

.careers-op-image-width {
    margin-left: -5.5vw;
    width: calc(100% + 5.5vw);
}

.careers-op-image {
    padding-bottom: 125%;
    margin-bottom: -120px;
}

.careers-op-right .label-black {
    margin-bottom: 24px;
}

.careers-op-list ul li a {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    font-size: 40px;
    font-size: 2.79vw;
    line-height: 1.1;
    letter-spacing: -0.02em;
    color: var(--black);
    padding: 32px 0;
    position: relative;
    border-bottom: 1px solid var(--bone-500);
}
.careers-op-list ul li a:before {
    content: '';
    position: absolute;
    left: 0;
    bottom: -1px;
    height: 1px;
    width: 0px;
    background: var(--black);
    transition: 0.3s;
}
.careers-op-list ul li a:after {
    content: '';
    width: 9px;
    height: 9px;
    background-color: var(--black);
    margin-left: 25px;
    opacity: 0;
    transition: 0.2s;
}
.careers-op-list ul li a:hover:before {
    width: 100%;
}
.careers-op-list ul li a:hover:after {
    opacity: 1;
}
.careers-op-list ul li:first-child a {
    border-top: 1px solid var(--bone-500);
}

.careers-form-section {
    padding: 80px 0 170px;
}

.careers-form-left {
    width: 50%;
    padding-right: 7%;
}

.careers-form-right {
    width: 50%;
    position: relative;
}

.careers-form-mark {
    position: sticky;
    top: 80px;
}
.careers-form-mark img {
    width: 100%;
}

.careers-form-top {
    margin-bottom: 116px;
    margin-bottom: 80px;
    width: calc(100% + 15px);
}

.careers-form-top .text-reg {
    margin-top: 24px;
    width: 65%;
}

.reg-form {
    position: relative;
}

.reg-form,
.reg-form form {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-lines: multiple;
    -moz-box-lines: multiple;
    -ms-flex-wrap: wrap;
    -webkit-flex-wrap:wrap;
    flex-wrap: wrap;
    -webkit-box-pack: justify;
    -moz-box-pack: justify;
    -ms-flex-pack: justify;
    -webkit-justify-content: space-between;
    justify-content: space-between;
}

.form-element-full {
    width: 100%;
}
.form-element-half {
    width: calc(50% - 12px);
}

.form-element {
    position: relative;
    margin-bottom: 64px;
    margin-bottom: 18px;
}

.form-element-label {
    position: absolute;
    left: 0;
    top: 50%;
    transform: translateY(-50%);
    font-family: "Roobert", monospace;
    color: var(--black);
    font-weight: 500;
    font-size: 14px;
    font-size: 0.87rem;
    line-height: 1.4;
    text-transform: uppercase;
    pointer-events: none;
    transition: 0.2s;
}
.focused .form-element-label {
    top: 0%;
    transform: translateY(0%);
}

.form-element-textarea .form-element-label {
    top: 24px;
    transform: translateY(0%);
}
.form-element-textarea.focused .form-element-label {
    top: 0px;
    transform: translateY(0%);
}


.form-element input,
.form-element input:focus {
    outline: none;
    margin: 0;
    padding: 2px 0;
    padding-top: 20px;
    box-shadow: none;
    background: transparent;
    border: none;
    border-bottom: 1px solid var(--bone-500);
    height: 68px;

    font-family: "Roobert", monospace;
    color: var(--black);
    font-weight: 500;
    font-size: 16px;
    font-size: 0.87rem;
    font-size: 1rem;
    line-height: 1.4;
}
.form-element input:hover,
.form-element input:focus {
    border-bottom: 1px solid var(--black);
}
.form-element textarea,
.form-element textarea:focus {
    outline: none;
    margin: 0;
    padding: 16px 0;
    padding-top: 30px;
    box-shadow: none;
    background: transparent;
    border: none;
    border-bottom: 1px solid var(--bone-500);
    height: 114px;
    -webkit-resize: none;
    resize: none;

    font-family: "Roobert", monospace;
    color: var(--black);
    font-weight: 500;
    font-size: 14px;
    font-size: 0.87rem;
    font-size: 1rem;
    line-height: 1.43;
}
.form-element textarea:hover,
.form-element textarea:focus {
    border-bottom: 1px solid var(--black);
}

.form-element textarea::-webkit-input-placeholder,
.form-element input::-webkit-input-placeholder {
	color: var(--black);
	opacity: 1;
}
.form-element textarea::-moz-placeholder,
.form-element input::-moz-placeholder {
	color: var(--black);
	opacity: 1;
}
.form-element textarea:-ms-input-placeholder,
.form-element input:-ms-input-placeholder {
	color: var(--black);
	opacity: 1;
}
.form-element textarea:-moz-placeholder,
.form-element input:-moz-placeholder {
	color: var(--black);
	opacity: 1;
}

.form-element.form-file {
    margin-bottom: 24px;
}

.form-file-element label {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;

    min-height: 68px;
    border: 1px solid var(--bone-500);
    font-family: "Roobert", monospace;
    color: var(--black);
    font-weight: 500;
    font-size: 14px;
    font-size: 0.87rem;
    line-height: 1.43;
    text-transform: uppercase;
    border-radius: 35px;
    cursor: pointer;
    transition: 0.2s;
}
.form-file-element label:hover {
    border: 1px solid var(--black);
    background: var(--marble-500);
    color: var(--black);
}
.form-file-element label:before {
    content: '';
    width: 12px;
    height: 12px;
    background: url(../img/icon-file.svg) no-repeat center center;
    margin-right: 4px;
}

.form-file-element input,
.form-file-element br {
    display: none;
}

.form-file-explain {
    margin-top: 8px;
    font-family: "Roobert", monospace;
    color: var(--black);
    font-weight: 500;
    font-size: 14px;
    font-size: 0.87rem;
    line-height: 1.43;
    text-transform: uppercase;
}

.form-bottom-left {
    max-width: calc(100% - 180px);
}

.form-checkbox label input {
    display: none;
}
.form-checkbox label span {
    display: block;
    cursor: pointer;
    font-family: "Roobert", monospace;
    color: var(--black);
    font-weight: 500;
    font-size: 14px;
    font-size: 0.87rem;
    line-height: 1.43;
    text-transform: uppercase;
    padding-left: 34px;
    position: relative;
}
.form-checkbox label span:before,
.form-checkbox label span:after {
    content: '';
    position: absolute;
    width: 18px;
    height: 18px;
    top: 50%;
    transform: translateY(-50%);
    left: 3px;
    transition: 0.2s;
}
.form-checkbox label span:before {
    background: var(--white);
    border: 1px solid var(--bone-800);
    border-radius: 3px;
}
.form-checkbox label span:after {
    background: url(../img/checkmark-white.svg) no-repeat center center;
}
.form-checkbox label span:hover:before {
    border: 1px solid var(--grey-500);
}
.form-checkbox label input:checked + span:before {
    border: 1px solid var(--black);
    background: black;
}
.form-checkbox label span a {
    color: var(--black);
    text-decoration: underline;
    transition: 0.2s;
}
.form-checkbox label span a:hover {
    color: var(--red-600);
}

.intro-careers-section .intro-home-left {
    max-width: 42%;
}
.intro-careers-section .intro-home-left .text-reg {
    max-width: 80%;
}

.intro-home-right .label-white {
    margin-bottom: 40px;
}

.intro-home-section.intro-careers-section {
    padding-bottom: 27vh;
}

.form-success {
    position: absolute;
    z-index: 5;
    top: -1px;
    left: -1px;
    right: -20px;
    bottom: -1px;
    width: calc(100% + 21px);
    height: calc(100% + 2px);
    background: var(--white);
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    padding: 0 12%;

    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    opacity: 0;
    visibility: hidden;
}
.form-success.active {
    opacity: 1;
    visibility: visible;
}

.careers-form-section.v2 {
    padding-top: 17vh;
}

.no-result-hold {
    padding-top: 15vh;
    padding-bottom: 5vh;
    max-width: 50vw;   
    margin-left: auto;
    margin-right: auto;
}
.no-result-hold .title-54 {
    color: var(--red-600);
}
.no-result-hold .text-reg {
    margin-top: 16px;
    max-width: 60%;
    margin-left: auto;
    margin-right: auto;
}

.career-single-content-section {
    padding-bottom: 27vh;
}

/* .career-single-content-hold {
    position: relative;
}
.career-single-content-hold:after {
    content: '';
    position: absolute;
    left: 50%; 
    top: 100px;
    bottom: 0vh;
    height: calc(100% - 100px - 27vh);
    width: 1px;
    background: var(--bone-500);
} */

.career-single-content-left {
    width: 50%;
    padding-right: 40px;
}
.career-single-content-right {
    width: 50%;
    padding-left: 40px;
    border-left: 1px solid var(--bone-500);
    position: relative;
}
.career-single-content-right:after {
    content: '';
    position: absolute;
    top: 0;
    left: -1px;
    width: 3px;
    height: 100px;
    background: var(--marble-500);
}

.career-single-content-right-content-item:not(:last-child) {
    margin-bottom: 80px;
}
.career-single-content-right-content-item .entry:not(:first-child) {
    margin-top: 24px;
}

.career-single-back-link {
    padding-top: 40px;
    padding-bottom: 32px;
    position: relative;
}

.career-single-content-left-content {
    border-top: 1px solid var(--bone-500);
    padding-top: 32px;   
}

.career-single-content-right-content {
    margin-top: 100px;
    border-top: 1px solid var(--bone-500);
    padding-top: 32px;   
}

.career-single-details {
    margin-top: 40px;
}

.career-single-details ul li {
    font-family: "Roobert", monospace;
    font-size: 14px;
    font-size: 0.87rem;
    line-height: 1.43;
    text-transform: uppercase;
    color: var(--red-500);
    margin-bottom: 40px;
}
.career-single-details ul li:last-child {
    margin-bottom: 0px;
}
.career-single-details ul li > span {
    display: block;
    margin-top: 12px;
    color: var(--black);
}

.career-single-content-left-sticky {
    position: sticky;
    top: 100px;
}

.entry {
    font-size: 1rem;
}

.entry > *:last-child {
    margin-bottom: 0 !important;
}

.entry h2 {
    font-size: 54px;
    font-size: 3.375rem;
    line-height: 1.18;
    letter-spacing: -0.02em;
    margin-bottom: 20px;
}
.entry h3 {
    font-size: 28px;
    font-size: 1.75rem;
    line-height: 1.1;
    letter-spacing: -0.02em;
    margin-bottom: 20px;
}
.entry h4 {
    font-size: 22px;
    font-size: 1.375rem;
    line-height: 1.2;
    letter-spacing: -0.02em;
    margin-bottom: 20px;
}
.entry h5 {
    font-size: 22px;
    font-size: 1.125rem;
    line-height: 1.2;
    letter-spacing: -0.02em;
    margin-bottom: 20px;
}

.entry h2:not(:first-child) {
    margin-top: 80px;
}
.entry h3:not(:first-child),
.entry h4:not(:first-child),
.entry h5:not(:first-child) {
    margin-top: 40px;
}

.entry p {
    margin-bottom: 20px;
}

.entry ul li {
    padding-left: 1.6rem;
    position: relative;
}
.entry ul li:before {
    content: '•';
    position: absolute;
    left: 0.7rem;
    top: 0;
}

.entry ul,
.entry ol {
    margin-bottom: 40px;
}

.entry ol {
    counter-reset: item;
}

.entry ol li {
    position: relative;
    padding-left: 1.6rem;
}
.entry ol li:before {
    content: counters(item, ".") ".";
    counter-increment: item;
    position: absolute;
    top: 0;
    left: 5px;
}

.entry blockquote {
    margin: 80px 0;
    border-left: 1px solid var(--black);
    padding-left: 48px;
    padding-top: 70px;
    padding-bottom: 8px;
    position: relative;
    color: var(--black);
    font-size: 1.25rem;
}
.entry blockquote p {
    line-height: 1.2;
}
.entry blockquote:before {
    content: '';
    position: absolute;
    left: 48px;
    top: 8px;
    width: 23px;
    height: 22px;
    background: url(../img/icon-quote.svg) no-repeat center center / 100% 100%;
}
.entry blockquote p {
    color: var(--black);
}
.entry blockquote p:last-child {
    margin-bottom: 0;
}
.entry blockquote p:last-child:not(:first-child) {
    font-size: 1rem;
    line-height: 1.6;
}

.entry p.has-image {
    margin-top: 64px;
    margin-bottom: 64px;
    margin-left: -33%;
    width: calc(100% + 66%);
}
.entry p.has-video {
    margin-top: 64px;
    margin-bottom: 64px;
    position: relative;
    padding-bottom: 56.25%;
}
.entry p.has-video iframe,
.entry p.has-video video {
    position: absolute;
    left: 0;
    right: 0;
    bottom: 0;
    top: 0;
    width: 100%;
    height: 100%;
}

.entry tbody, .entry tfoot, .entry thead {
    background: transparent;
}
.entry tbody tr:nth-child(even) {
    background: transparent;
}

.entry tbody td, 
.entry tbody th {
    border-bottom: 1px solid var(--bone-500);
    padding: 24px 10px;
    text-align: left;
}
.entry tbody th {
    padding-top: 0; 
    font-family: "Roobert", monospace;
    font-size: 14px;
    font-weight: 500;
    font-size: 0.87rem;
    line-height: 1.4;
    text-transform: uppercase;
}

.entry tbody td:first-child, 
.entry tbody th:first-child {
    padding-left: 0;
}
.entry tbody td:last-child, 
.entry tbody th:last-child {
    padding-right: 0;
}

.entry .table-scroll {
    margin-top: 40px;
    margin-bottom: 40px;
}

.entry thead td, 
.entry thead th {
    padding: 24px 10px;
    font-weight: 500;
    text-align: left;
    padding-top: 0; 
    font-family: "Roobert", monospace;
    font-size: 14px;
    font-size: 0.87rem;
    line-height: 1.4;
    text-transform: uppercase;
    border-bottom: 1px solid var(--bone-500);
}
.entry thead td:first-child, 
.entry thead th:first-child {
    padding-left: 0;
}
.entry thead td:last-child, 
.entry thead th:last-child {
    padding-right: 0;
}

.contacts-intro-section {
    padding-top: 123px;
}
.contacts-intro-section-oh {
    position: relative;
    overflow: hidden;
}

.contacts-intro-left {
    width: 50%;
    padding: 80px 5% 80px 0;
}
.contacts-intro-right {
    width: 50%;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: end;
    -ms-flex-align: end;
    align-items: flex-end;

}

.contacts-intro-right-video {
    padding-bottom: 132.678%;
}

.contacts-intro-main {
    margin-bottom: 84px;
}

.contacts-intro-sec-item:not(:last-child) {
    margin-bottom: 40px;
}

.contacts-intro-socials {
    margin-top: 40px;
}

.contacts-intro-sec-item .project-info-box-details-text p:not(:last-child) {
    margin-bottom: 4px;
}

.team-section {
    padding: 32vh 0 32vh;
    overflow: hidden;
}
.team-section .section-top {
    margin-bottom: 15vh;
    margin-bottom: 7vh;
    max-width: 75%;
    max-width: 70%;
}

.team-section.v2 {
    padding-bottom: 20vh;
}

.team-list ul {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-lines: multiple;
    -moz-box-lines: multiple;
    -ms-flex-wrap: wrap;
    -webkit-flex-wrap:wrap;
    flex-wrap: wrap;
    width: calc(100% + 40px);
    margin-bottom: -80px;
}
.team-list ul li {
    width: calc(25% - 40px);
    min-width: calc(25% - 40px);
    margin-right: 40px;
    margin-bottom: 80px;
}

.team-list-item-image {
    padding-bottom: 125%;
    margin-bottom: 16px;
}

.team-list-item-dep {
    font-family: "Roobert", monospace;
    font-weight: 500;
    font-size: 14px;
    font-size: 0.87rem;
    line-height: 1.43;
    text-transform: uppercase;
    color: var(--red-500);
    min-height: calc(1.74rem * 1.43);
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: end;
    -ms-flex-align: end;
    align-items: flex-end;

    margin-bottom: 16px;
}

.team-list-item-name {
    font-size: 1.125rem;
}
.team-list-item-name span {
    display: block;
    margin-top: 4px;

    font-family: "Roobert", monospace;
    font-weight: 500;
    font-size: 14px;
    font-size: 0.87rem;
    line-height: 1.43;
    text-transform: uppercase;
    color: var(--grey-500);
}

.team-list-item-details {
    margin-top: 24px;
    font-family: "Roobert", monospace;
    font-weight: 500;
    font-size: 14px;
    font-size: 0.87rem;
    line-height: 1.43;
    text-transform: uppercase;
}
.team-list-item-details p:not(:last-child) {
    margin-bottom: 12px;
}

.contacts-intro-right-width {
    min-width: calc(100% + 5.5vw);
}

.contacts-intro-main-list p:not(:last-child) {
    margin-bottom: 16px;
}
.contacts-intro-main-list a {
    color: var(--white);
    padding-left: 0;
    padding-right: 2vw;
    position: relative;
    border-bottom: 1px solid transparent;
    transition: 0.2s;
}
.contacts-intro-main-list a:hover {
    /* padding-left: 2vw; */
    /* padding-right: 0; */
    border-bottom: 1px solid var(--white);
}
/* .contacts-intro-main-list a:before, */
.contacts-intro-main-list a:after {
    content: '';
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
    width: 1.7vw;
    height: 1.7vw;
    background: url(../img/link-remote-white-lg.svg) no-repeat center center / 100% 100%;
    transition: 0.2s;
}
.contacts-intro-main-list a:before {
    left: 0;
    opacity: 0;
}
.contacts-intro-main-list a:after {
    opacity: 1;
    right: 0;
}
.contacts-intro-main-list a:hover:before {
    opacity: 1;
}
.contacts-intro-main-list a:hover:after {
    /* opacity: 0; */
}

.section-rect.mob-medium-show {
    display: none !important;
}

.news-single-content-section {
    padding: 220px 0 27vh;
    position: relative;
    overflow: hidden;
}

.news-single-content-back {
    margin-bottom: 8px;
}

.news-single-content-top .news-list-date {
    margin-top: 24px;
}
.news-single-content-top  {
    margin-bottom: 80px;
}

.news-single-content-large-image {
    /* margin-bottom: 80px; */
}

.news-single-content-section .project-gallery-hold {
    padding-top: 80px;
    padding-bottom: 120px;
}

.news-single-content-section .entry {
    padding-top: 80px;
    padding-bottom: 80px;
}
.news-single-content-section .grid-container:first-child .entry {
    padding-top: 0px;
}
.news-single-content-section .grid-container:last-child .entry {
    padding-bottom: 0px;
}
.news-single-content-section .grid-container:first-child .project-gallery-hold {
    padding-top: 0px;
}
.news-single-content-section .grid-container:last-child .project-gallery-hold {
    padding-bottom: 0px;
}

.projects-archive-section.projects-all-archive-section {
    padding-top: 240px;
}

.projects-all-archive-done-hold .section-top {
    margin-bottom: 80px;
}

.projects-all-archive-done-list {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-lines: multiple;
    -moz-box-lines: multiple;
    -ms-flex-wrap: wrap;
    -webkit-flex-wrap:wrap;
    flex-wrap: wrap;
    -webkit-box-pack: justify;
    -moz-box-pack: justify;
    -ms-flex-pack: justify;
    -webkit-justify-content: space-between;
    justify-content: space-between;
    margin-bottom: -40px;
}

.projects-all-archive-done-item {
    width: calc(50% - 20px);
    min-width: calc(50% - 20px);
    margin-bottom: 40px;
    display: none;
    background: var(--white);
}

.projects-all-archive-done-item-image {
    padding-bottom: 66.77%;
}
.projects-all-archive-done-item .project-info-box {
    position: static;
    width: 100%;
    top: auto;
}

.projects-all-archive-done-hold{
    padding-top: 30vh;
}

.projects-all-archive-done-link {
    margin-top: 15vh;
}

.error-section {
    min-height: 100vh;
    min-height: 100svh;
    padding: 120px 0 100px;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;

    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
}

.error-content .text-reg {
    margin-top: 16px;
    max-width: 67%;
    /* max-width: 290px; */
    margin-left: auto;
    margin-right: auto;
}
.error-content {
    max-width: 426px;
    max-width: 34%;
    margin-left: auto;
    margin-right: auto;
    position: relative;
    z-index: 5;
}
.error-content:before {
    content: '';
    position: absolute;
    top: 60%;
    left: 50%;
    transform: translate(-50%, -50%);
    width: 998px;
    height: 435px;
    background: url(../img/404.svg) no-repeat center center / 100% 100%;
    z-index: -1;
}

.error-link {
    margin-top: 40px;
}

.error-section {
    position: relative;
    overflow: hidden;
}

.entry.entry-v2 p.has-image {
    margin-left: 0;
    width: 100%;
}

.text-page-section {
    padding-top: 220px;
    padding-bottom: 120px;
}

.text-page-section .section-top {
    margin-bottom: 20px;
}

.intro-home-section.intro-about-section {
    padding-bottom: 27vh;
}

.intro-about-section .intro-home-left-content {
    /* min-width: 140%; */
}

.values-section:after {
    content: '';
    position: absolute;
    left: 0;
    right: 0;
    bottom: 0;
    top: 0;
    width: 100%;
    height: 100%;
    /* background: rgba(0, 0, 0, 0.2); */
}

.values-section {
    position: relative;
    padding: 15vh 0 40vh;
    background: var(--marble-500) !important;
}


.values-hold {
    width: 50%;
    margin-left: auto;
    padding-left: 16.666%;
}
.values-hold .label-white {
    margin-bottom: 40px;
}

.about-company-section {
    padding: 22vh 0 27vh;
}
.about-company-left {
    width: 50%;
    padding-right: 8.41%;
}
.about-company-right {
    width: 50%;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-flex-direction: column;
    -moz-flex-direction: column;
    -ms-flex-direction: column;
    -o-flex-direction: column;
    flex-direction: column;

    -webkit-box-pack: justify;
    -moz-box-pack: justify;
    -ms-flex-pack: justify;
    -webkit-justify-content: space-between;
    justify-content: space-between;
    padding-bottom: 10px;
}

.about-company-right-padd {
    margin-top: 64px;
    padding-left: 33.333%;
}

.about-company-link {
    margin-top: 40px;
}

.about-section {
    position: relative;
    /* overflow: hidden; */
}

.about-section-inner {
    position: relative;
    overflow: hidden;
}

.about-section-content {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    position: relative;
    top: 0;
    left: 0;
    padding: 15vh 27.85vw;
    gap: 40px;
    z-index: 20 ;
    will-change: transform;
}
.is-sticky .about-section-content {
    position: fixed;
}
.after .about-section-content {
    position: absolute;
    top: auto;
    bottom: 0;
}

.about-section-box {
    width: 44.3vw;
    min-width: 44.3vw;
    padding: 40px 40px;
    background: #fff;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-flex-direction: column;
    -moz-flex-direction: column;
    -ms-flex-direction: column;
    -o-flex-direction: column;
    flex-direction: column;

    -webkit-box-pack: justify;
    -moz-box-pack: justify;
    -ms-flex-pack: justify;
    -webkit-justify-content: space-between;
    justify-content: space-between;
    min-height: calc(100vh - 15vh - 15vh);
    min-height: calc(100svh - 15vh - 15vh);
}

.about-section-box.object-fit:after {
    content: '';
    position: absolute;
    left: 0;
    right: 0;
    bottom: 0;
    top: 0;
    width: 100%;
    height: 100%;
    background: rgba(0, 0, 0, 0.2);
}



/* .about-section-box.object-fit img {
  width: 100%;
  height: auto;
  transition: transform 0.3s ease;
}

.is-fixed.about-section-box.object-fit {
  position: fixed !important;
  top: 0;
  left: 0;
  width: 100vw;
  height: 100vh;
  z-index: 50;
}

.is-fixed.about-section-box.object-fit img {
  object-fit: cover;
  width: 100%;
  height: 100%;
}

.expanded-end.about-section-box.object-fit {
  position: absolute !important;
  bottom: 0;
  top: auto;
  width: 100%;
  height: 100%;
} */

/* .after .about-section-box.object-fit {
    position: fixed;
    top: 15%;
    bottom: 15%;
    left: 27.85%;
    right: 27.85%;
} */

.values-section-bg {
    position: fixed;
    top: 15%;
    left: 32px;
    width: calc(100vw - 64px);
    height: calc(100vw - 64px);
}

.values-section-desktop {
    top: 15%;
    left: 27.85%;
    width: 44.3%;
    height: 70%;
}
.values-section-tab {
    left: 32px;
    width: calc(100vw - 64px);
    height: calc(100vw - 64px);
}

.values-section-mob {
    left: 20px;
    width: calc(100vw - 40px);
    height: calc(100vw - 40px);
}

.values-section-bg:after {
    content: '';
    position: absolute;
    left: 0;
    right: 0;
    bottom: 0;
    top: 0;
    width: 100%;
    height: 100%;
    background: rgba(0, 0, 0, 0.2);
}

.after .about-section-box.object-fit {
    opacity: 0;
}

.values-section-bg {
    opacity: 0;
    /* opacity: 0.5; */
}
.after .values-section-bg {
    opacity: 1;
}

.values-section-bg.is-absolute {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
}

.values-section {
    z-index: 22;
}
.about-company-section {
    z-index: 23;
}

.about-section-box-top {
    margin-bottom: 56px;
}

.values-section-tab,
.values-section-mob {
    display: none;
}

.gallerySwiper-slide-image {
    padding-bottom: 66.666%;
}

.gallerySwiper-slide-image a {
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    width: 100%;
    height: 100%;
}
.gallerySwiper-slide-image a:before {
    content: '';
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    width: 56px;
    height: 56px;
    background-color: rgba(255,255,255,0.8);
    background-image: url(../img/icon-play.svg);
    background-repeat: no-repeat;
    background-position: 50% 50%;
    border-radius: 50%;
    transition: 0.2s;
}
.gallerySwiper-slide-image a:hover:before {
    background-color: rgba(255,255,255,1);
}


.fancybox__content {
    width: 100%!important;
    height: auto!important;
    padding-bottom: 56.25%!important;
}
.fancybox__content video {
    position: absolute!important;
    top: 0!important;
    left: 0!important;
    right: 0!important;
    bottom: 0!important;
    width: 100%!important;
    height: 100%!important;
}

div.wpcf7-validation-errors, 
div.wpcf7-acceptance-missing,
div.wpcf7-mail-sent-ng {
    border: none !important;
    float: left !important;
    margin: 10px 0 !important;
    padding: 0 !important;
    color: #ef586b !important;
}

div.wpcf7-mail-sent-ok {
    float: left !important;
    border: none !important;
    padding: 0 !important;
    margin: 10px 0 !important;
}

span.wpcf7-not-valid-tip {
	display: none !important;
}

span.wpcf7-list-item {
    margin: 0 !important;
}

.form-element input.wpcf7-not-valid,
.form-element input.wpcf7-not-valid:focus,
.form-element textarea.wpcf7-not-valid,
.form-element textarea.wpcf7-not-valid:focus {
    border-color: var(--red-500);
}

.form-checkbox .wpcf7-not-valid label span:before {
    border-color: var(--red-500);
}

.wpcf7 form.invalid .wpcf7-response-output, .wpcf7 form.unaccepted .wpcf7-response-output {
    float: left;
    width: 100%;
    text-align: left;
    border: none !important;
    padding: 0 !important;
    margin: 0 !important;
    margin-top: 15px !important;
    color: var(--red-500);
}

.wpcf7 form.sent .wpcf7-response-output {
    float: left;
    width: 100%;
    text-align: left;
    border: none !important;
    padding: 0 !important;
    margin: 0 !important;
    margin-top: 15px !important;
    display: none !important; 
}

.wpcf7 form .wpcf7-response-output {
    float: left;
    width: 100%;
    text-align: left;
    border: none !important;
    padding: 0 !important;
    margin: 0 !important;
    margin-top: 15px !important;
    font-family: "Roobert", monospace;
    color: var(--black);
    font-weight: 500;
    font-size: 14px;
    font-size: 0.87rem;
    line-height: 1.43;
    text-transform: uppercase;
}

.other-projects-section.short-slider .gallerySwiper-counter {
    opacity: 0;
    visibility: hidden;
    display: none;
}
.other-projects-section.short-slider .swiper-pagination-progressbar {
    opacity: 0;
    visibility: hidden;
    display: none;
}

.other-projects-section.short-slider .swiper-custom-prev, 
.other-projects-section.short-slider .swiper-custom-next {
    opacity: 0;
    visibility: hidden;
    display: none;
}

.newsletter-box-modal {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-flex-direction: column;
    -moz-flex-direction: column;
    -ms-flex-direction: column;
    -o-flex-direction: column;
    flex-direction: column;

    -webkit-box-pack: justify;
    -moz-box-pack: justify;
    -ms-flex-pack: justify;
    -webkit-justify-content: space-between;
    justify-content: space-between;
}

.newsletter-box-form {
    margin-top: 24px;
}

.form-element.newsletter-email {
    margin-bottom: 48px;
}

.newsletter-radios {
    border: 1px solid var(--red-500);
    padding: 3px;
    margin-bottom: 32px;
}
.newsletter-radios span.wpcf7-form-control-wrap {
    display: block;
}
.newsletter-radios span.wpcf7-form-control {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-lines: multiple;
    -moz-box-lines: multiple;
    -ms-flex-wrap: wrap;
    -webkit-flex-wrap:wrap;
    flex-wrap: wrap;
}
.newsletter-radios .wpcf7-list-item {
    flex: 1 0 auto;
}
.newsletter-radios .wpcf7-list-item label {
    cursor: pointer;
}
.newsletter-radios .wpcf7-list-item label input {
    display: none;
}
.newsletter-radios .wpcf7-list-item label span {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    text-align: center;
    min-height: 32px;
    font-family: "Roobert", monospace;
    color: var(--red-500);
    font-weight: 500;
    font-size: 14px;
    font-size: 0.87rem;
    line-height: 1.4;
    text-transform: uppercase;
    pointer-events: none;
    cursor: pointer;
    transition: 0.2s;
}
.newsletter-radios .wpcf7-list-item label input:checked + span {
    color: var(--white);
    background: var(--red-600);
}

.btn-full,
.btn-full:focus,
.btn-full:active {
    width: 100%;
}


span.wpcf7-not-valid-tip {
    font-family: "Roobert", monospace;
    font-weight: 500;
    font-size: 14px;
    font-size: 0.87rem;
    line-height: 1.43;
    text-transform: uppercase;
}
.newsletter-box-form span.wpcf7-not-valid-tip {
    margin-top: 8px;
    display: block !important;
}
.newsletter-box-form .wpcf7 form .wpcf7-response-output {
    display: none !important;
}

.newsletter-box-form .submitting::before {
    background: rgba(240,235,230, 0.8);
}

.newsletter-box-modal-success {
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    width: 100%;
    height: 100%;
    background: var(--marble-500);
    padding: inherit;
    z-index: 5;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    text-align: center;
    opacity: 0;
    visibility: hidden;
}
.newsletter-box-modal-success.active {
    opacity: 1;
    visibility: visible;
}

.intro-home-hold {
    -webkit-box-align: start;
    -ms-flex-align: start;
    align-items: flex-start;
}

.home-projects-list-item-cta .project-info-box {
    overflow: hidden;
}
.home-projects-list-item-cta .project-info-box .link-rect > span {
    position: absolute;
    top: -50vh;
    left: -50vw;
    height: 100vh;
    width: 100vw;
}

.newsletter-box {
    overflow: hidden;
}

.newsletter-box .link-rect > span {
    position: absolute;
    top: -50vh;
    left: -50vw;
    height: 100vh;
    width: 100vw;
}

.team-section + .home-news-section {
    padding-top: 0;
}

.home-business-bottom-left .title-80 {
    position: sticky;
    top: 120px;
    margin-top: -40vh;
    z-index: 25;
    padding-bottom: 136px;
}

.ve-2 .project-info-box {
    width: 32%;
    min-width: 420px;
}

.ve-2 .project-info-box-details {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-lines: multiple;
    -moz-box-lines: multiple;
    -ms-flex-wrap: wrap;
    -webkit-flex-wrap:wrap;
    flex-wrap: wrap;
}
.ve-2 .project-info-box-details-item:not(:last-child) {
    margin-bottom: 0;
}
.ve-2 .project-info-box-details .project-info-box-details-item:nth-child(1) {
    width: 40%;
    padding-right: 20px;
}
.ve-2 .project-info-box-details .project-info-box-details-item:nth-child(2) {
    width: 60%;
}
.ve-2 .project-info-box-timeline span {
    color: transparent;
}
.ve-2 .project-info-box-timeline span.active {
    color: var(--black);
}

.project-info-box-timeline-v2 {
    margin-left: -2px;
    width: calc(100% + 4px);
    margin-top: 21px;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-pack: justify;
    -moz-box-pack: justify;
    -ms-flex-pack: justify;
    -webkit-justify-content: space-between;
    justify-content: space-between;
    position: relative;
    padding-bottom: 24px;
}
.project-info-box-timeline-v2:before {
    content: '';
    position: absolute;
    left: 2px;
    right: 2px;
    width: calc(100% - 4px);
    height: 1px;
    background: var(--grey-500);
    top: 5px;
}
.project-info-box-timeline-v2 > span {
    width: 11px;
    height: 11px;
    position: relative;
    box-sizing: border-box;
}
.project-info-box-timeline-v2 > span:before {
    content: '';
    position: absolute;
    top: 2px;
    left: 2px;
    width: 7px;
    height: 7px;
    background: var(--grey-500);
}
.project-info-box-timeline-v2 > span.active:before {
    top: 0px;
    left: 0px;
    width: 11px;
    height: 11px;
    background: var(--white);
    border: 3px solid var(--black);
}
.project-info-box-timeline-v2 > span span {
    position: absolute;
    top: calc(100% + 5px);
    left: 50%;
    transform: translateX(-50%);
    font-family: "Roobert", monospace;
    font-weight: 500;
    font-size: 14px;
    font-size: 0.87rem;
    line-height: 1.43;
    text-transform: uppercase;
    opacity: 0;
}
.project-info-box-timeline-v2 > span.active span {
    opacity: 1;
}
.project-info-box-timeline-v2 > span:first-child span {
    left: 0%;
    transform: translateX(0%);
}
.project-info-box-timeline-v2 > span:last-child span {
    left: auto;
    right: 0;
    transform: translateX(0%);
}

.ve-2 .projects-slide .project-info-box-details {
    box-sizing: border-box;
}

.home-projects-section.home-projects-business-section {
    padding-top: 15vh;
}

.team-section.updated {
    padding-top: 240px;
}

.project-info-box-details-text span {
    white-space: nowrap;
}

.projects-slide-content .link-rect.link-black, 
.projects-slide-content .link-rect.link-black:focus, 
.projects-slide-content .link-rect.link-black:active,
.project-info-box .link-rect.link-black, 
.project-info-box .link-rect.link-black:focus, 
.project-info-box .link-rect.link-black:active {
    color: var(--red-500);
}
.projects-slide-content .link-rect.link-black:hover,
.project-info-box .link-rect.link-black:hover {
    color: var(--red-500);
}

.projects-slide-content .link-rect.link-black:before, 
.projects-slide-content .link-rect.link-black:after,
.project-info-box .link-rect.link-black:before, 
.project-info-box .link-rect.link-black:after {
    background: url(../img/link-rect-red.svg) no-repeat center center;
}

.home-projects-list-item-image > a {
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
}
.projects-all-archive-done-item-image > a {
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
}
.projects-slide-image > a {
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
}

.ve-2 .projects-all-archive-done-item .project-info-box {
    width: 100%;
}

.project-info-box-top .title-40 {
    position: relative;
}
.project-info-box-top .title-40 a {
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
}

#CybotCookiebotDialogHeader {
    display: none !important;
}

#CybotCookiebotDialog.CybotEdge #CybotCookiebotDialogTabContent {
    margin-left: 0 !important;
}

#CookiebotWidget #CookiebotWidget-buttons button {
    border-radius: 30px!important;
    transition: 0.2s;
}

.CookiebotWidget-main-logo {
    display: none !important;
}

#CookiebotWidget .CookiebotWidget-body .CookiebotWidget-consents-list li.CookiebotWidget-approved svg {
    fill: var(--red-600)!important;
}

#CookiebotWidget .CookiebotWidget-consent-details button {
    color: var(--red-600)!important;
    font-weight: 400!important;
}

#CookiebotWidget #CookiebotWidget-buttons #CookiebotWidget-btn-change {
    background-color: var(--red-600) !important;
    border-color: var(--red-600) !important;
}
#CookiebotWidget #CookiebotWidget-buttons #CookiebotWidget-btn-change:hover {
    background-color: var(--red-700) !important;
    border-color: var(--red-700) !important;
    opacity: 1 !important;
}

#CookiebotWidget #CookiebotWidget-buttons button {
    font-weight: 400 !important;
    font-size: 14px !important;
}

#CybotCookiebotDialogFooter #CybotCookiebotDialogBodyButtonAccept, 
#CybotCookiebotDialogFooter #CybotCookiebotDialogBodyLevelButtonAccept, 
#CybotCookiebotDialogFooter #CybotCookiebotDialogBodyLevelButtonLevelOptinAllowAll {
    background: var(--red-600) !important;
    border-color: var(--red-600) !important;
    font-weight: 500;
    font-size: 14px;
    line-height: 1.4;
}
#CybotCookiebotDialogFooter #CybotCookiebotDialogBodyButtonAccept:hover, 
#CybotCookiebotDialogFooter #CybotCookiebotDialogBodyLevelButtonAccept:hover, 
#CybotCookiebotDialogFooter #CybotCookiebotDialogBodyLevelButtonLevelOptinAllowAll:hover {
    background: var(--red-700) !important;
    border-color: var(--red-700) !important;
}

#CybotCookiebotDialogFooter .CybotCookiebotDialogBodyButton {
    border-radius: 30px !important;
    font-weight: 500!important;
    font-size: 14px!important;
    line-height: 1.4!important;
    padding: 14px 24px!important;
    font-family: "Roobert", monospace!important;
    text-transform: uppercase;
    transition: 0.2s !important; 
}

#CybotCookiebotDialogFooter .CybotCookiebotDialogBodyButton {
    background: var(--red-600) !important;
    border-color: var(--red-600) !important;
}
#CybotCookiebotDialogFooter .CybotCookiebotDialogBodyButton:hover {
    opacity: 1 !important;
    background: var(--red-700) !important;
    border-color: var(--red-700) !important;
}

#CybotCookiebotDialog.CybotEdge #CybotCookiebotDialogBodyEdgeMoreDetails a {
    color: var(--red-500) !important;
    font-family: "Roobert", monospace!important;
    font-size: 14px;
    line-height: 1.43;
    text-transform: uppercase;
    font-weight: 400 !important;
}

#CybotCookiebotDialog .CybotCookiebotDialogBodyLevelButtonIABContainerToggleHide, #CybotCookiebotDialog .CybotCookiebotDialogBodyLevelButtonIABContainerToggleShow, #CybotCookiebotDialog a:after, #CybotCookiebotDialog a:before, #CybotCookiebotDialog button:after, #CybotCookiebotDialog button:before {
    border-color: var(--red-500) !important;
}

#CybotCookiebotDialog .CybotCookiebotDialogBodyLevelButtonSlider {
    background-color: #DCDCDC !important
}
#CybotCookiebotDialog .CybotCookiebotDialogBodyLevelButtonSlider:before {
    background-color: #817D75!important;
}

#CybotCookiebotDialog input:checked+.CybotCookiebotDialogBodyLevelButtonSlider {
    background-color: var(--red-600) !important
}

#CybotCookiebotDialog input:checked+.CybotCookiebotDialogBodyLevelButtonSlider:before {
    background-color: #fff!important;
}

#CybotCookiebotDialog *, #CybotCookiebotDialogBodyUnderlay * {
    font-family: 'Messina', serif !important;
}

#CybotCookiebotDialog.CybotEdge .CybotCookiebotDialogBodyLevelButtonLabel {
    font-family: "Roobert", monospace!important;
    font-weight: 400!important;
    font-size: 14px!important;
    line-height: 1.43!important;
}

#CybotCookiebotDialog.CybotEdge.CybotMultilevel .CybotCookiebotDialogBodyBottomWrapper {
    border-top: none!important;
    padding-top: 0!important;
}

#CybotCookiebotDialogBodyLevelButtonsSelectPane .CybotCookiebotDialogBodyLevelButtonDescription {
    font-family: "Roobert", monospace!important;
    font-weight: 400!important;
    font-size: 14px;
    text-transform: uppercase;
}

#CybotCookiebotDialogTabContent input:focus+.CybotCookiebotDialogBodyLevelButtonSlider {
    box-shadow: none !important;
}

#CybotCookiebotDialog .CookieCard .CybotCookiebotDialogDetailBodyContentCookieContainerButton, #CybotCookiebotDialog .CookieCard .CybotCookiebotDialogDetailBodyContentIABv2Tab {
    font-weight: 400 !important;
}

#CybotCookiebotDialog .CookieCard .CybotCookiebotDialogDetailBodyContentCookieContainerButton:hover, #CybotCookiebotDialog .CookieCard .CybotCookiebotDialogDetailBodyContentIABv2Tab:hover, #CybotCookiebotDialogDetailBodyContentCookieContainerTypes .CybotCookiebotDialogDetailBodyContentCookieProvider:not(.CybotCookiebotDialogDetailBodyContentCookieInfoCount):hover {
    color: var(--red-600)!important;
}

#CybotCookiebotDialogNav .CybotCookiebotDialogNavItemLink.CybotCookiebotDialogActive {
    border-bottom: 1px solid var(--red-600) !important;
    color: var(--red-600)!important;
    font-weight: 400 !important;
}

#CybotCookiebotDialogBodyLevelButtonsSelectPane label:not([for=CybotCookiebotDialogBodyLevelButtonNecessary]) .CybotCookiebotDialogBodyLevelButtonDescription:hover {
    color: var(--red-600)!important;
}

#CybotCookiebotDialog .CybotCookiebotDialogBodyLevelButtonSliderWrapperDisabled input:checked+.CybotCookiebotDialogBodyLevelButtonSlider {
    background-color: var(--red-400) !important;
} 

#CybotCookiebotDialog.CybotEdge #CybotCookiebotDialogBodyEdgeMoreDetails a:after {
    border-width: 1px 1px 0 0!important;
    margin-left: 8px!important;
}

#CybotCookiebotDialog .CybotCookiebotDialogBodyContentHeading {
    font-weight: 400!important;
}

#CybotCookiebotDialogNav .CybotCookiebotDialogNavItemLink:hover {
     color: var(--red-600)!important;
}
#CybotCookiebotDialogNav .CybotCookiebotDialogNavItemLink {
    font-weight: 400 !important;
}

#CybotCookiebotDialogDetailBodyContentCookieContainerTypes .CybotCookiebotDialogDetailBodyContentCookieProvider {
    font-weight: 400 !important;
}

#CybotCookiebotDialogDetailBodyContentCookieContainerTypes .CybotCookiebotDialogDetailBodyContentCookieInfoTitle {
    font-weight: 400!important;
}

#CybotCookiebotDialogDetailBodyContentCookieContainerTypes .CybotCookiebotDialogDetailBodyContentCookieInfoFooterContent b {
    font-weight: 400!important;
}

#CybotCookiebotDialogDetailBodyContentCookieContainerTypes .CybotCookiebotDialogDetailBodyEmptyCategoryMessage {
    font-weight: 400!important;
}

#CybotCookiebotDialog #CybotCookiebotDialogBodyContentText a, #CybotCookiebotDialog #CybotCookiebotDialogDetailFooter a, #CybotCookiebotDialog #CybotCookiebotDialogDetailBulkConsentList dt a, #CybotCookiebotDialog .CybotCookiebotDialogBodyLevelButtonIABDescription a, #CybotCookiebotDialog .CybotCookiebotDialogDetailBodyContentCookieLink, #CybotCookiebotDialog #CybotCookiebotDialogBodyLevelButtonIABHeaderViewPartnersLink, #CybotCookiebotDialogDetailBodyContentTextAbout a {
    color: var(--red-600)!important;
    font-weight: 400 !important;
}
#CybotCookiebotDialogDetailFooter {
    display: none !important;
}
.CybotCookiebotDialogDetailBodyContentCookieContainerButton:before, .CybotCookiebotDialogDetailBodyContentIABv2Tab:before {
    border-width: 1px 1px 0 0 !important;
}

#CybotCookiebotDialog.CybotEdge {
    border-top-left-radius: 12px;
    border-top-right-radius: 12px;
    border-bottom-left-radius: 0;
    border-bottom-right-radius: 0;
}

#CybotCookiebotDialog.CybotEdge {
    box-shadow: none !important;
    max-width: 100%!important;
    min-width: 100%!important;
}

/* Medias */

@media only screen and (min-width: 1024px) and (max-height: 850px) {
    .mob-nav ul li a {
        font-size: 6vh;
    }
    .mob-nav-images {
        padding-bottom: 83%;
    }
}
@media only screen and (min-width: 1024px) and (max-height: 750px) {
    .mob-nav ul li a {
        font-size: 5.5vh;
    }
    .mob-nav-images {
        padding-bottom: 70%;
    }
    .footer-nav ul li a {
        font-size: 6vh;
    }
    .footer-top {
        margin-bottom: 80px;
    }
}
@media only screen and (min-width: 1024px) and (max-height: 650px) {
    .mob-nav ul li a {
        font-size: 5vh;
    }
    .mob-nav-images {
        padding-bottom: 60%;
    }
    .footer-nav ul li a {
        font-size: 5vh;
    }
    .footer-top {
        margin-bottom: 64px;
    }
}

@media only screen and (max-width: 1500px) {
    .langs-hold a {
    font-size: 0.87rem;
    }
    .nav ul li a {
    font-size: 0.87rem;
    }
    .logo img {
        max-width: 177px;
    }
    .newsletter-box {
        width: 33%;
    }
    .home-about-left-sticky {
        padding-bottom: 60px;
    }
}

@media only screen and (max-width: 1366px) {
    .team-section.updated {
        padding-top: 200px;
    }
    .home-business-bottom-left .title-80 {
        padding-bottom: 100px;
    }
    .about-company-right .title-80 {
        width: calc(100% + 30px);
    }
    .about-company-section {
        padding: 17vh 0 22vh;
    }
    .values-section {
        padding: 15vh 0 32vh;
    }
    .text-page-section {
        padding-top: 200px;
    }
    .projects-archive-filters-hold.v2 .projects-archive-filters-left {
        gap: 104px;
    }
    .projects-archive-filters-hold.v2 {
        -webkit-box-align: end;
        -ms-flex-align: end;
        align-items: flex-end;
    }
    .projects-archive-filters-hold.v2 .projects-archive-filters-left {
        max-width: 40%;
    }
    .projects-archive-filters-title {
        width: 100%;
    }
    .projects-all-archive-done-hold {
        padding-top: 22vh;
    }
    .projects-archive-link {
        margin-top: 12vh;
    }
    .projects-all-archive-done-link {
        margin-top: 12vh;
    }
    .news-single-content-section {
        padding: 200px 0 22vh;
    }
    .grid-container.grid-container-sm {
        max-width: 52%;
    }
    .grid-container.grid-container-md {
        max-width: 75%;
    }
    .team-section {
        padding: 24vh 0 30vh;
        overflow: hidden;
    }
    .team-section .section-top {
        margin-bottom: 100px;
        margin-bottom: 80px;
    }
    .form-success {
        right: -1px;
        width: calc(100% + 2px);
    }
    .careers-op-list ul li a {
        font-size: 3vw;
    }
    .form-element {
        /* margin-bottom: 48px; */
    }
    .careers-form-top {
        /* margin-bottom: 100px; */
        width: 100%;
    }
    .business-about-image-width {
        margin-left: -4.5vw;
        width: calc(100% + 4.5vw);
    }
    .business-about-right {
        padding-left: 12%;
    }
    .business-about-section .section-top {
        margin-bottom: 12vh;
    }
    .home-projects-list-item.archive-all-item,
    .home-projects-list-item.archive-item {
        margin-bottom: 100px;
    }
    .home-business-bottom-right {
        padding-bottom: 100px;
    }
    .intro-home-right {
        /* padding-top: 80vh; */
    }
    .intro-home-section {
        /* padding-top: 36vh; */
        padding-bottom: 35vh;
    }
    .home-about-left-sticky {
        padding-bottom: 0;
    }
    .archive-news-list ul {
        margin-bottom: -20vh;
    }
    .archive-news-list ul li {
        margin-bottom: 20vh;
    }
    .pb-by-header {
        padding-top: 120px;
    } 
    .project-news-right {
        padding-left: 2%;
    }
    .tt-right {
        padding-left: 6%;
    }
    .tt-left {
        padding-right: 6%;
    }
    .swiper-custom-prev, .swiper-custom-next {
        bottom: -2px;
    }
    .text-image-image-width {
        width: calc(100% + 4.5vw);
    }
    .careers-op-image-width {
        margin-left: -4.5vw;
        width: calc(100% + 4.5vw);
    }
    .contacts-intro-right-width {
        min-width: calc(100% + 4.5vw);
    }
	.grid-container {
        padding-left: 4.5%;
        padding-right: 4.5%;
    }
    .single-project-intro-section .project-info-box {
        padding-left: 4.5vw;
        padding-right: 4.5vw;
    }
    .text-image-left {
        padding-right: 10%;
    }
    .title-46-section .title-46 {
        max-width: 70%;
    }
    .gallerySwiper-counter {
        font-size: 40px;
    }
    .swiper-progress-style.swiper-pagination-progressbar {
        bottom: 26px;
    }
    .title-40 {
        /* font-size: 3vw; */
    }
    .title-46 {
        font-size: 40px;
        font-size: 3.5vw;
    }
    .title-80,
    .title-54 {
        font-size: 48px;
        font-size: 4vw;
    }
    .title-102 {
        font-size: 5.85vw;
    }
    /* .title-80 {
        font-size: 5.85vw;
    } */
    header {
        padding: 36px 0;
    }
    .mob-nav-header {
        padding: 36px 0;
    }
    .archive-news-section {
        padding-bottom: 33vh;
    }
    .home-news-section .title-54 {
        margin-bottom: 100px;
    }
    .careers-op-left {
        padding-right: 12%;
    }
    .career-single-content-left-sticky {
        top: 80px;
    }
    .career-single-content-section {
        padding-bottom: 20vh;
    }
    .projects-archive-section.projects-all-archive-section {
        padding-top: 200px;
    }
}

@media only screen and (max-width: 1199px) {
    #CybotCookiebotDialog.CybotEdge {
        border-bottom-left-radius: 12px;
        border-bottom-right-radius: 12px;
    }
    .home-business-bottom-left .title-80 {
        padding-bottom: 40px;
    }
    .about-section-box {
        padding: 40px 32px;
    }
    .about-company-left {
        padding-right: 6%;
    }
    .about-company-right-padd {
        margin-top: 64px;
        padding-left: 16.666%;
    }
    .text-page-section {
        padding-top: 180px;
    }
    .error-content {
        max-width: 40%;
    }
    .error-content .text-reg {
        max-width: 80%;
    }
    .error-content:before {
        width: 820px;
        height: 358px;
    }
    .projects-archive-section.projects-all-archive-section {
        padding-top: 180px;
    }
    .projects-all-archive-done-item {
        width: calc(50% - 16px);
        min-width: calc(50% - 16px);
    }
    .news-single-content-section .project-gallery-hold {
        padding-bottom: 100px;
    }
    .entry p.has-image {
        margin-left: -20%;
        width: calc(100% + 40%);
    }
    .grid-container.grid-container-md {
        max-width: 80%;
    }
    .grid-container.grid-container-sm {
        max-width: 60%;
    }
    .team-list ul li {
        width: calc(33.333% - 40px);
        min-width: calc(33.333% - 40px);
    }
    .contacts-intro-right-width {
        min-width: calc(100% + 4vw);
    }
    .career-single-content-left-sticky {
        top: 60px;
    }
    .career-single-content-right-content {
        margin-top: 96px;
    }
    .career-single-content-right-content-item:not(:last-child) {
        margin-bottom: 64px;
    }
    .careers-form-section.v2 {
        padding-top: 120px;
    }
    .careers-form-top {
        margin-bottom: 80px;
    }
    .careers-op-left {
        padding-right: 10%;
    }
    .business-about-section {
        padding: 20vh 0 34vh;
    }
    .business-about-image-width {
        margin-left: -4vw;
        width: calc(100% + 4vw);
    }
    .intro-home-left .text-reg {
        max-width: 50%;
    }
    .project-info-box {
        padding: 32px 32px;
        width: 50%;
    }
    .home-news-link {
        margin-top: 100px;
    }
    .home-projects-section {
        padding: 22vh 0 0;
        padding: 20vh 0 0;
    }
    .home-news-section .title-54 {
        margin-bottom: 80px;
    }
    .home-business-bottom-right {
        padding-bottom: 40px;
    }
    .home-about-section {
        padding: 18vh 0 60vh;
    }
    .home-about-right {
        padding-top: 200px;
    }
    .title-36 {
        font-size: 3vw;
    }
    .newsletter-box {
    width: 40%;
    }
    .archive-news-list ul {
        margin-bottom: -16vh;
    }
    .archive-news-list ul li {
        margin-bottom: 16vh;
    }
    .news-list ul li {
        width: 28%;
        margin-right: 8%;
    }
    .news-list ul li.layout-index-5 {
        width: 64%;
    }
    .news-list ul li.layout-index-9 {
        width: 64%;
    }
    header {
        padding: 24px 0;
    }
    .mob-nav-header {
        padding: 24px 0;
    }
    .gallerySwiper-slide {
        width: 80vw;
    }
    .text-image-image-width {
        width: calc(100% + 4vw);
    }
    .careers-op-image-width {
        margin-left: -4vw;
        width: calc(100% + 4vw);
    }
    .grid-container {
        padding-left: 4%;
        padding-right: 4%;
    }
    .single-project-intro-section .project-info-box {
        padding-left: 4vw;
        padding-right: 4vw;
        width: 60%;
    }
    .cs-title {
        font-size: 3.5vw;
    }
    .projects-slide {
        width: calc((100vw - 8vw - 24px) / 2);
    }
    .projects-slide-content {
        padding: 32px 32px;
    }
    .archive-news-featured-right {
        width: 64%;
    }
    .archive-news-featured-left {
        width: 36%;
    }
}

@media only screen and (max-width: 1023px) {
    .single-project .section-rect.bg-white {
        background: var(--marble-500);
    }
    .home-projects-section.home-projects-business-section {
        padding-top: 120px;
        padding-bottom: 120px;
    }
    .home-projects-list-item-cta .project-info-box .link-rect > span {
        left: -39vw;
    }
    .ve-2 .project-info-box {
        width: 100%;
        min-width: 1px;
    }
    .home-business-bottom-left .title-80 {
        position: relative;
        top: auto;
        margin-top: 0;
        padding-bottom: 80px;
    }
    .team-section.v2 {
        padding-bottom: 120px;
    }
    .intro-home-left {
        min-height: 1px;
        position: static;
        top: 0 !important;
    }
    .values-section-desktop {
        display: none;
    }
    .values-section-tab {
        display: block;
    }
    .about-section-box-top {
        margin-bottom: 80px;
    }
    .about-section-box.object-fit {
        padding: 0;
        /* padding-bottom: 100%; */
        height: calc(100vw - 64px);
    }
    .is-sticky .about-section-content {
        position: relative;
    }
    .about-section-box {
        width: 100%;
        min-width: 100%;
        min-height: 1px;
        padding: 40px 40px;
    }
    .about-section-content {
        -webkit-box-lines: multiple;
        -moz-box-lines: multiple;
        -ms-flex-wrap: wrap;
        -webkit-flex-wrap: wrap;
        flex-wrap: wrap;
        padding: 15vh 32px;
    }
    .values-section.object-fit > img {
        -webkit-object-position: right center;
        object-position: right center;
    }
    .values-hold {
        width: 100%;
        margin-left: auto;
        padding-left: 24%;
    }
    .about-company-right-padd {
        margin-top: 0;
        padding-left: 0;
    }
    .about-company-right {
        width: 100%;
        padding-bottom: 0;
    }
    .about-company-left {
        padding-right: 20%;
        width: 100%;
        margin-bottom: 80px;
    }
    .about-company-section .title-80 {
        margin-bottom: 48px;
    }
    .about-company-section {
        padding: 140px 0 220px;
    }
    .error-content {
        max-width: 60%;
    }
    .projects-all-archive-done-link {
        margin-top: 100px;
    }
    .projects-all-archive-done-hold {
        padding-top: 17vh;
    }
    .projects-all-archive-done-item {
        width: 100%;
        min-width: 100%;
    }
    .projects-archive-filters-hold.v2 .projects-archive-filters-left {
        max-width: 100%;
    }
    .entry h2 {
        font-size: 2.6rem;
    }
    .news-single-content-section {
        padding: 200px 0 140px;
    }
    .news-single-content-section .project-gallery-hold {
        padding-top: 64px;
        padding-bottom: 80px;
    }
    .news-single-content-section .entry {
        padding-top: 64px;
        padding-bottom: 64px;
    }
    .entry p.has-image {
        margin-left: -6%;
        width: calc(100% + 12%);
    }
    .entry blockquote {
        padding-left: 40px;
    }
    .entry blockquote:before {
        left: 40px;
    }
    .news-single-content-large-image {
        /* margin-bottom: 64px; */
    }
    .news-single-content-top {
        margin-bottom: 64px;
    }
    .grid-container.grid-container-md {
        max-width: 100%;
    }
    .grid-container.grid-container-sm {
        max-width: 85%;
    }
    .team-section .mob-medium-show {
        z-index: 20;
    }
    .section-rect.mob-medium-show {
        display: block !important;
    }
    .contacts-intro-right-width {
        min-width: 100%;
        padding: 0 15%;
    }
    .contacts-intro-right {
        width: 100%;
    }
    .team-section {
        padding: 120px 0 24vh;
        overflow: visible;
    }
    .contacts-intro-left {
        padding: 0;
        width: 100%;
    }
    .contacts-intro-main-list a:hover {
        /* padding-left: 3vw; */
    }
    .contacts-intro-main-list a:before, .contacts-intro-main-list a:after {
        width: 2.7vw;
        height: 2.7vw;
    }
    .contacts-intro-main-list a {
        padding-right: 3vw;
    }
    .team-section .section-top {
        max-width: 100%;
    }
    .team-list ul li {
        width: calc(50% - 32px);
        min-width: calc(50% - 32px);
        margin-right: 32px;
        margin-bottom: 64px;
    }
    .team-list ul {
        width: calc(100% + 32px);
        margin-bottom: -64px;
    }
    .career-single-content-section {
        padding-bottom: 140px;
    }
    .career-single-content-right-content-item:not(:last-child) {
        margin-bottom: 48px;
    }
    .career-single-content-right-content {
        margin-top: 0;
        border-top: none;
        padding-top: 0;
    }
    .career-single-content-right {
        width: 100%;
        padding-left: 0;
        border-left: none;
    }
    .career-single-content-right:after {
        display: none;
    }
    .career-single-content-left {
        width: 100%;
        padding-right: 0;
        margin-bottom: 48px;
    }
    .no-result-hold .text-reg {
        max-width: 70%;
    }
    .no-result-hold {
        padding-top: 8vh;
        padding-bottom: 6vh;
        max-width: 70vw;
    }
    .careers-form-section.v2 {
        padding-top: 100px;
    }
    .careers-form-section {
        padding: 80px 0 140px;
    }
    .careers-form-right {
        width: 100%;
        position: relative;
        padding-top: 64px;
        z-index: 5;
    }
    .careers-form-mark {
        position: absolute;
        top: 0;
        left: 0;
        right: 0;
        width: 100%;
    }
    .careers-form-left {
        width: 100%;
        padding-right: 0;
        position: relative;
        height: 1px;
    }
    .careers-op-list ul li a {
        font-size: 5.4vw;
    }
    .careers-op-right {
        width: 100%;
    }
    .careers-op-image-width {
        margin-left: -32px;
        width: calc(100% + 32px);
    }
    .careers-op-left {
        padding-right: 0;
        width: 80%;
        order: 2;
    }
    .intro-home-section.intro-careers-section {
        padding-bottom: 12vh;
    }
    .intro-careers-section .intro-home-left {
        max-width: 100%;
    }
    .home-about-section.v3 .home-about-left {
        max-width: 100%;
    }
    .business-about-section {
        padding: 160px 0 220px;
    }
    .business-about-right {
        padding-left: 0;
        width: 100%;
    }
    .business-about-image-width {
        margin-left: -32px;
        width: calc(100% + 32px);
    }
    .business-about-left {
        width: 80%;
        margin-bottom: 48px;
    }
    .business-about-section .section-top {
        margin-bottom: 100px;
        max-width: 90%;
    }
    .home-about-right-padd {
        min-height: 1px;
    }
    .projects-archive-link {
        margin-top: 100px;
    }
    .projects-archive-section {
        padding-top: 100px;
        padding-bottom: 200px;
    }
    .home-projects-list-item.archive-all-item .project-info-box,
    .home-projects-list-item.archive-item .project-info-box {
        position: relative;
        top: auto;
        bottom: auto;
        right: auto;
    }
    .home-projects-list-item.archive-all-item,
    .home-projects-list-item.archive-item {
        padding-bottom: 0;
        -webkit-box-lines: multiple;
        -moz-box-lines: multiple;
        -ms-flex-wrap: wrap;
        -webkit-flex-wrap: wrap;
        flex-wrap: wrap;
        margin-bottom: 64px;
    }

    .projects-archive-filters-right .archive-filter-buttons,
    .projects-archive-filters-right .custom-dropdown {
        flex: 1;
    }
    .archive-filter-buttons ul li {
        flex: 1;
    }
    /* .projects-filter-type.filter-style ul, */
    .filter-style ul {
        gap: 32px;
    }
    /* .projects-filter-type.filter-style ul li, */
   .filter-style ul li {
        flex: 1;
    }
    .projects-archive-filters-hold {
        margin-bottom: 64px;
    }
    .projects-archive-filters-right {
        width: 100%;
    }
    .projects-archive-filters-left {
        width: 100%;
        margin-bottom: 32px;
    }
    .intro-home-section-image:after {
        content: '';
        position: absolute;
        left: 0;
        right: 0;
        width: 100%;
        bottom: -1px;
        height: 40%;
        height: 20%;
        background: linear-gradient(180deg, rgba(0, 0, 0, 0) 0%, rgba(0, 0, 0, 1) 100%);
    }
    .intro-home-section.v2 .intro-home-left {
        max-width: 100%;
    }
    .intro-home-section-image {
        bottom: auto;
        height: 100vh;
        height: 100svh;
    }
    .title-102 {
        font-size: 10.5vw;
    }
    .home-business-top .title-80,
    .home-business-top .title-102 {
        position: static;
        top: auto;
    }
    .intro-home-section:after {
        content: '';
        position: absolute;
        left: 0;
        right: 0;
        width: 100%;
        bottom: 0;
        height: 40%;
        /* background: linear-gradient(180deg,rgba(0, 0, 0, 0) 0%, rgba(0, 0, 0, 1) 100%); */

    }

    .home-projects-list-item.home-projects-list-archive-item {
        margin-left: -32px;
        width: calc(100% + 64px);
        margin-top: -32px;
        min-height: 100vh;
        min-height: 100svh;
        padding: 32px;
        -webkit-box-align: end;
        -ms-flex-align: end;
        align-items: flex-end;
    }
    .home-projects-list-item.home-projects-list-archive-item .home-projects-list-item-image {
        position: absolute;
        top: 0;
        left: 0;
        right: 0;
        bottom: 0;
        width: 100%;
        height: 100%;
        padding-bottom: 0;
    }
    .home-about-right {
        padding-top: 440px;
    }
    .intro-coordinates-hold {
        margin-top: 80px;
        position: relative;
        left: auto;
        right: auto;
        bottom: auto;
        display: block !important;
    }
    .home-news-section {
        padding-top: 120px;
        padding-bottom: 160px;
    }
    .news-list.featured-news-list ul li {
        width: 100%;
        margin-right: 0;
        margin-bottom: 64px;
    }
    .news-list.featured-news-list ul li:last-child {
        margin-bottom: 0px;
    }
    .home-business-section {
        padding-top: 160px;
        padding-bottom: 220px;
    }
    .home-business-image-width {
        margin-left: -32px;
        width: calc(100% + 32px);
    }
    .home-business-bottom-left {
        width: 80%;
        margin-top: 0;
        margin-bottom: 32px;
    }
    .home-business-bottom-right {
        width: 100%;
        padding-left: 0;
        padding-bottom: 0px;
    }
    .home-business-top-left {
        width: 100%;
        margin-bottom: 100px;
    }
    .home-business-top-right {
        display: none;
    }
    .home-projects-list-item-badge {
        position: absolute;
        top: 0;
        left: 0;
    }
    .home-projects-list .home-projects-list-item {
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        -webkit-box-lines: multiple;
        -moz-box-lines: multiple;
        -ms-flex-wrap: wrap;
        -webkit-flex-wrap:wrap;
        flex-wrap: wrap;
    }
    .project-info-box {
        padding: 32px 40px;
        position: relative;
        top: auto;
        width: 100%;
    }
    .home-projects-list-item {
        min-height: 1px;
        margin-bottom: 32px;
    }
    .home-projects-list-item:last-child {
        margin-bottom: 0px;
    }
    .home-projects-list {
        padding: 0 32px;
    }
    .home-projects-section {
        padding: 120px 0 0;
    }
    .home-about-image-hold {
        position: relative;
        left: 0;
        width: 100%;
        top: -220px;
    }
    .home-about-image-width {
        position: absolute;
        left: 50%;
        transform: translate(-50%,-25%);
        width: 80vw;
        top: 0;
    }
    .home-about-right-padd {
        padding-left: 0;
    }
    .home-about-section {
        padding: 160px 0 160px;
    }
    .home-about-right {
        max-width: 100%;
    }
    .home-about-left-sticky {
        position: relative;
        top: auto;
    }
    .home-about-left {
        max-width: 100%;
    }
    .intro-home-right {
        padding-top: 65vh;
        width: 100%;
        padding-left: 0;
    }
    .intro-home-left {
        max-width: 100%;
    }   
    .intro-home-section {
        padding-top: 200px;
        padding-bottom: 12vh;
    }
    .newsletter-box {
        width: 100%;
        max-width: 400px;
    }
    .newsletter-section-image {
        width: 100%;
        left: 0;
    }
    .archive-news-section {
        padding-bottom: 200px;
    }
    .news-list ul li.layout-index-2 {
        margin-right: 0%;
    }
    .news-list ul li.layout-index-4 {
        margin-right: 0%;
    }
    .news-list ul li.layout-index-7 {
        margin-right: 0%;
    }
    .news-list ul li.layout-index-9 {
        margin-right: 0%;
        width: 48%;
    }
    .news-list ul li.layout-index-3 {
        margin-right: 4%;
    }
    .news-list ul li.layout-index-8 {
        margin-right: 4%;
    }
    .news-list ul li.layout-index-5 {
        width: 100%;
    }
    .news-list ul li.layout-index-10 {
        width: 100%;
    }
    .news-list ul li {
        width: 48%;
        margin-right: 4%;
    }
    .archive-news-list ul {
        margin-bottom: -80px;
    }
    .archive-news-list ul li {
        margin-bottom: 80px;
    }
    .archive-news-featured-right {
        width: 100%;
    }
    .archive-news-featured-left {
        margin-bottom: 48px;
        width: 100%;
    }
    .mob-nav-grid-right {
        width: 100%;
        height: calc(100vh - 40px);
        height: calc(100svh - 40px);
        padding: 160px 0 0px;
        width: 100%;
    }
    .mob-nav-header {
        position: absolute;
    }
    .mob-nav ul li a {
        font-size: 6vw;
    }
    .mob-nav-grid-left {
        display: none;
    }
    .footer-bottom-right {
        width: 100%;
    }
    .footer-bottom-left {
        width: 100%;
        margin-bottom: 48px;
    }
    .footer-nav ul li a {
        font-size: 6vw;
    }
    .footer-top-right {
        width: 100%;
    }
    .footer-top-left {
        width: 100%;
        margin-bottom: 80px;
    }
    footer {
        position: relative;
        min-height: 1px;
    }
    .section-rect.mob-show {
        display: block !important;
    }
    .section-rect.mob-only-show {
        display: block !important;
    }
    .other-projects-section .section-top {
        margin-bottom: 48px;
    }
    .projects-slide {
        width: 80vw;
    }
    .other-projects-link {
        margin-top: 100px;
    }
    .other-projects-section {
        padding-top: 120px;
        padding-bottom: 160px;
    }
    .project-contact-x-sticky {
        max-width: 70%;
    }
    .project-contact-person-hold {
        padding-left: 0;
    }
    .project-contact-x-wrap .grid-container {
        padding-top: 40px;
        padding-bottom: 40px;
    }
    .project-contact-section {
        padding-top: 140px;
        padding-bottom: 220px;
    }
    .project-contact-section .section-top {
        max-width: 100%;
        margin-bottom: 105px;
    }
    .section-rect {
        height: 12vh;
    }
    .full-image-section + .project-contact-section .section-rect {
        display: block!important;
    }
    .news-col-list ul li:first-child .news-list-image {
        /* padding-bottom: 66.85%; */
    }
    .project-news-right {
        padding-left: 0;
        width: 100%;
    }
    .project-news-left {
        width: 100%;
        padding-right: 0;
        margin-bottom: 48px;
    }
    .project-news-hold {
        padding-top: 48px;
    }
    .project-news-section {
        padding: 0 0 120px;
    }
    .title-text-section {
        padding-top: 80px;
        padding-bottom: 120px;
    }
    .tt-right {
        padding-left: 0;
        width: 100%;
    }
    .tt-left {
        padding-right: 0;
        width: 100%;
        margin-bottom: 48px;
    }
    .project-gallery-section {
        padding: 80px 0 100px;
    }
    .gallerySwiper-slide {
        width: 85vw;
    }
    .swiper-progress-style {
        display: none !important;
    }
    .has-text-indent p:first-child,
    .single-project .has-text-indent p {
        text-indent: 7.4vw;
    }
    .image-text-right {
        width: 100%;
        padding-left: 0;
    }
    .image-text-left {
        width: 80%;
        padding-right: 0;
        margin-bottom: 100px;
    }
    .image-text-section {
        padding-top: 80px;
        padding-bottom: 80px;
    }
    .image-full-text-left-section {
        padding-bottom: 100px;
    }
    .image-full-text-left-section .text-reg {
        max-width: 55%;
    }
    .title-46-section {
        padding: 100px 0 120px;
    }
    .text-image-section {
        padding-bottom: 100px;
    }
    .title-46-section .title-46 {
        max-width: 100%;
    }
    .text-image-image-width {
        width: calc(100% + 32px);
    }
    .text-image-right {
        width: 80%;
        margin-left: auto;
    }
    .project-timeline-section .title-40 {
        margin-bottom: 80px;
    }
    .project-timeline-section {
        padding: 120px 0;
    }
    .text-image-left {
        padding-right: 0;
        width: 100%;
        padding-top: 100px;
        margin-bottom: 100px;
    }
    .section-rect {
        display: none !important;
    }
    .title-36 {
        font-size: 4.2vw;
    }
    .title-40 {
        font-size: 5.4vw;
        font-size: 3rem;
    }
    .title-46 {
        font-size: 5.6vw;
    }
    .title-80,
    .title-54 {
        font-size: 6.2vw;
    }
    /* .title-80 {
        font-size: 9vw;
    } */
    .title-102 {
        font-size: 9vw;
    }
    .single-project-intro-section {
        min-height: 1px;
    }
    .home-projects-list-item-image {
        position: relative;
        height: auto;
        padding-bottom: 66%;
    }
    .single-project-intro-section .project-info-box {
        position: relative;
        left: auto;
        top: auto;
        bottom: auto;
        width: 100%;
        padding-left: 32px;
        padding-right: 32px;
    }
    .grid-container {
        padding-left: 32px;
        padding-right: 32px;
    }
    .intro-cs-logo-video-hold {
        max-width: 50vw;
    }
	.cs-title {
        font-size: 4.5vw;
    }
    .intro-cs-logo {
        max-width: 50%;
    }
    .mob-nav ul li {
        margin-bottom: 8px;
    }
    .mob-nav ul li:last-child {
        margin-bottom: 0px;
    }
    .home-projects-list-item.home-projects-list-archive-item .project-info-box {
        z-index: 10;
    }
    .home-news-section.v2 {
        padding-bottom: 220px;
    }
    .career-single-content-left-sticky {
        position: static;
        top: auto;
    }
    .projects-all-archive-done-hold .section-top {
        margin-bottom: 64px;
    }
    .intro-home-section.intro-about-section {
        padding-bottom: 12vh;
    }
    .intro-about-section .intro-home-left-content {
        min-width: 100%;
    }
    .about-section-inner {
        height: auto !important;
    }
    .other-projects-hold .swiper {
        padding-right: 15%;
    }
}

@media screen and (max-width:639px) {
    #CybotCookiebotDialog *, #CybotCookiebotDialogBodyUnderlay * {
        font-size: 14px !important;
    } 
    #CybotCookiebotDialogBodyLevelButtonsSelectPane .CybotCookiebotDialogBodyLevelButtonWrapper {
        padding: 0.25em 1em !important;
    }
    .team-section.updated {
        padding-top: 120px;
    }
    .home-projects-section.home-projects-business-section {
        padding-top: 90px;
        padding-bottom: 90px;
    }
    .team-section .section-top {
        margin-bottom: 64px;
    }
    .team-list-item-dep {
        min-height: 1px;
    }
    .other-projects-hold .swiper {
        padding-right: 10%;
    }

    .values-section-tab {
        display: none;
    }
    .values-section-mob {
        display: block;
    }
    .intro-home-section.intro-about-section {
        padding-bottom: 10vh;
    }
    .about-section-box-top {
        margin-bottom: 56px;
    }
    .about-section-box {
        padding: 32px 32px;
    }
    .about-section-box.object-fit {
        height: calc(100vw - 40px);
    }
    .about-section-content {
        padding: 120px 20px;
        gap: 24px;
    }
    .values-hold .label-white {
        margin-bottom: 16px;
    }
    .about-company-left {
        padding-right: 0;
    }
    .about-company-section {
        padding: 120px 0 220px;
    }
    .about-company-section .title-80 {
        margin-bottom: 40px;
    }
    .entry .table-scroll {
        margin-left: -20px;
        width: calc(100% + 40px);
        padding-left: 20px;
        padding-right: 20px;
    }
    .entry thead td, .entry thead th {
        padding: 16px 10px;
        padding-top: 0;
    }
    .entry tbody td, .entry tbody th {
        padding: 16px 10px;
    }
    .entry table {
        min-width: 550px;
    }
    .text-page-section {
        padding-top: 160px;
    }
    .error-content:before {
        top: 50%;
        width: 470px;
        height: 204px;
    }
    .error-content .text-reg {
        max-width: 83%;
    }
    .error-content {
        max-width: 100%;
    }
    .filter-style {
        width: 100%;
    }
    .projects-archive-filters-right .archive-filter-buttons, .projects-archive-filters-right .custom-dropdown {
        flex: 0 0 100%;
        width: 100%;
    }
    .projects-all-archive-done-link {
        margin-top: 80px;
    }
    .projects-all-archive-done-list {
        margin-bottom: -16px;
    }
    .projects-all-archive-done-item {
        margin-bottom: 16px;
    }
    .projects-all-archive-done-hold .section-top {
        margin-bottom: 40px;
    }
    .projects-all-archive-done-hold {
        padding-top: 160px;
    }
    .projects-archive-section.projects-all-archive-section {
        padding-top: 120px;
    }
    .entry h2 {
        /* font-size: 2.6rem; */
        font-size: 34px;
        font-size: 8.7vw;
    }
    .entry h3 {
        font-size: 28px;
    }
    .entry h4 {
        font-size: 22px;
    }
    .entry h5 {
        font-size: 20px;
    }
    .news-single-content-large-image {
        margin-bottom: 24px;
    }
    .entry blockquote:before {
        left: 24px;
    }
    .entry blockquote {
        padding-left: 24px;
    }
    .news-single-content-section .entry {
        padding-top: 40px;
        padding-bottom: 40px;
    }
    .news-single-content-section .project-gallery-hold {
        padding-top: 40px;
        padding-bottom: 40px;
    }
    .entry p.has-image {
        margin-left: 0;
        width: 100%;
        margin-top: 40px;
    }
    .grid-container.grid-container-sm {
        max-width: 100%;
    }
    .news-single-content-top {
        margin-bottom: 40px;
    }
    .news-single-content-section {
        padding: 120px 0 120px;
    }
    .team-list-item-name {
        font-size: 18px;
    }
    .team-list-item-image {
        margin-bottom: 0;
    }
    .team-list-item-image-hold {
        width: 40%;
    }
    .team-list-item-name {
        width: 60%;
        padding-left: 16px;
    }
    .team-list-item-image-name {
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;

    }
    .contacts-intro-right-width {
        margin-left: -20px;
        min-width: 100%;
        padding: 0;
    }
    .contacts-intro-main-list a:hover {
        /* padding-left: 8vw; */
    }
    .contacts-intro-main-list a {
        padding-right: 8vw;
    }
    .contacts-intro-main-list a:before, .contacts-intro-main-list a:after {
        width: 7vw;
        height: 7vw;
    }
    .title-36.mob-36 {
        font-size: 36px;
        font-size: 9.6vw;
    }
    .team-list ul {
        width: 100%;
    }
    .team-list ul li {
        width: 100%;
        min-width: 100%;
        margin-right: 0;
    }
    .career-single-content-section.pb-by-header {
        padding-top: 80px;
    }
    .career-single-content-section {
        padding-bottom: 120px;
    }
    .career-single-content-right-content-item .entry:not(:first-child) {
        margin-top: 16px;
    }
    .career-single-content-right-content-item:not(:last-child) {
        margin-bottom: 40px;
    }
    .career-single-content-left {
        margin-bottom: 40px;
    }
    .no-result-hold {
        padding-top: 020px;
        padding-bottom: 0px;
        max-width: 70vw;
    }
    .no-result-hold .text-reg {
        max-width: 90%;
    }
     .careers-form-section.v2 {
        padding-top: 80px;
    }
    .careers-op-left {
        width: 76%;
    }
    .careers-op-list ul li a {
        font-size: 6.2vw;
    }
    .careers-open-positions-section {
        margin-bottom: 80px;
    }
    .careers-op-image {
        margin-bottom: -80px;
    }
    .careers-form-left.active {
        z-index: 6;
    }
    .btn-small-full,
    .btn-small-full:focus,
    .btn-small-full:active {
        width: 100%;
    }
    .form-bottom-right {
        width: 100%;
        margin-top: 40px;
    }
    .form-bottom-left {
        max-width: 100%;
        width: 100%;
    }
    .form-element.form-file {
        margin-top: 32px;
        margin-bottom: 40px;
    }
    .careers-form-top .text-reg {
        width: 100%;
    }
    .form-element {
        /* margin-bottom: 32px; */
    }
    .form-element-half {
        width: 100%;
    }
    .careers-form-section {
        padding: 80px 0 120px;
    }
    .careers-form-right {
        padding-top: 40px;
    }
    .careers-op-image-width {
        margin-left: -20px;
        width: calc(100% + 20px);
    }
    .custom-dropdown ul li a {
        -webkit-box-pack: center;
        -ms-flex-pack: center;
        justify-content: center;
    }
    .custom-dropdown span:after {
        position: relative;
        top: auto;
        right: auto;
        margin-left: 6px;
    }
    .custom-dropdown span {
        -webkit-box-pack: center;
        -ms-flex-pack: center;
        justify-content: center;
        padding: 2px 14px;
    }
    /* .projects-filter-type.filter-style ul li label, */
   .filter-style ul li label {
        padding: 10px 5px;
    }
    .business-about-image-width {
        margin-left: -20px;
        width: calc(100% + 20px);
    }
    .business-about-left {
        width: 76%;
        margin-bottom: 40px;
    }
    .business-about-section .section-top {
        margin-bottom: 80px;
        max-width: 100%;
    }
    .business-about-section {
        padding: 120px 0 190px;
    }
    .label-white {
        margin-bottom: 8px;
    }
    .home-news-section.v2 {
        padding-bottom: 190px;
    }
    .projects-archive-link {
        margin-top: 80px;
    }
    /* .projects-filter-type.filter-style ul, */
    .filter-style ul {
        gap: 16px;
    }
    .home-projects-list-item.archive-all-item,
    .home-projects-list-item.archive-item {
        margin-bottom: 24px;
    }
    .projects-archive-section {
        padding-top: 40px;
        padding-bottom: 180px;
    }
    .intro-home-left .text-reg {
        max-width: 265px;
        margin-top: 8px;
    }
    .home-news-link {
        margin-top: 64px;
    }
    .home-news-section {
        padding-top: 80px;
        padding-bottom: 120px;
    }
    .home-news-section .title-54 {
        margin-bottom: 40px;
    }
    .home-business-bottom-left {
        width: 76%;
        margin-bottom: 24px;
    }
    .home-business-image-width {
        margin-left: -20px;
        width: calc(100% + 20px);
    }
    .title-102 {
        font-size: 48px;
        font-size: 12.3vw;
    }
    .home-business-top-left {
        margin-bottom: 80px;
    }
    .home-business-section {
        padding-top: 120px;
        padding-bottom: 200px;
    }
    .project-info-archive {
        max-width: 100%;
        margin: 56px auto;
        text-align: center;
    }
    .title-40.mob-28 {
        font-size: 28px;
        font-size: 7.08vw;
    }
    .home-projects-list-item.home-projects-list-archive-item {
        margin-left: -20px;
        width: calc(100% + 40px);
        margin-top: -24px;
        padding: 20px;
    }
    .home-projects-list-item {
        margin-bottom: 24px;
    }
    .home-projects-list {
        padding: 0 20px;
    }
    .home-projects-section .title-54 {
        margin-bottom: 40px;
    }
    .home-about-image-width {
        position: absolute;
        left: 50%;
        transform: translate(-50%, -25%);
        width: 100vw;
        top: 0;
    }
    .home-about-section {
        padding: 120px 0 136px;
    }
    .intro-coordinates-hold {
        margin-top: 58px;
    }
    .intro-home-section {
        padding-top: 120px;
        padding-bottom: 10vh;
    }
    .newsletter-box-modal {
        padding: 40px 20px;
    }
    .title-36 {
        font-size: 28px;
        font-size: 7.1vw;
    }
    .title-28 {
        font-size: 28px;
        font-size: 7.1vw;
    }
    .newsletter-section {
        -webkit-box-align: end;
        -ms-flex-align: end;
        align-items: flex-end;
        padding: 64px 0 24px;
    }
    .news-list.archive-news-list ul li {
        margin-bottom: -64px;
    }
    .news-list.archive-news-list ul li {
        width: 100%!important;
        margin-right: 0!important;
        margin-bottom: 64px;
    }
    .news-filter {
        margin-bottom: 64px;
    }
    .archive-news-featured {
        margin-bottom: 104px;
    }
    .remote-url .news-list-image {
        padding-bottom: 66.625%;
    }
    .mob-nav-grid-right {
        padding: 18vh 0 0px;
    }
    .mob-nav ul li a {
        font-size: 38px;
        font-size: 10vw;
    }

    .langs-hold {
        margin-left: 16px;
    }
    .nav ul {
        gap: 32px;
    }
    .header-right {
        gap: 16px;
    }
    .logo img {
        max-width: 31px;
    }
    .project-timeline-section .project-info-box-timeline span.prev-step:nth-last-child(2):after {
        height: calc(100% - 16px);
    }
    .project-timeline-section .project-info-box-timeline span.active:last-child:before {
        top: 13px;
    }
    .project-timeline-section .project-info-box-timeline span.active:last-child:before {
        transform: translateX(-3px);
    }
    .project-timeline-section .project-info-box-timeline span.prev-step:first-child:after {
        bottom: auto;
        top: 16px;
        height: calc(100% + 16px);
    }
    .project-timeline-section .project-info-box-timeline span.prev-step:after {
        bottom: auto;
        top: 50%;
        background: var(--white);
    }
    .project-timeline-section .project-info-box-timeline span.active:after {
        bottom: 50%;
        height: 100%;
    }
    .project-timeline-section .project-info-box-timeline:before {
        opacity: 0;
    }
    .project-timeline-section .project-info-box-timeline span:last-child:after {
        transform: translateY(-20%);
    }
    .project-timeline-section .project-info-box-timeline span:after {
        content: '';
        position: absolute;
        height: 100%;
        width: 1px;
        bottom: 50%;
        left: 3px;
        background: var(--bone-500);
    }
    .project-timeline-section .project-info-box-timeline span:last-child::before {
        top: 16px;
        transform: translate(0px, 0%);
    }
    .project-timeline-section .project-info-box-timeline span:first-child::before {
        top: 16px;
        transform: translate(0px, 0%);
    }
    .project-timeline-section  .project-info-box-timeline span.active:before {
        transform: translate(-2px, -50%);
    }
    .project-timeline-section .project-info-box-timeline span.active:before {
        bottom: auto;
        top: 50%;
        transform: translate(-3px, -50%);
    }
    .project-timeline-section .project-info-box-timeline span:before {
        top: 50%;
        bottom: auto;
        transform: translate(0px, -50%);
    }
    .project-timeline-section .project-info-box-timeline > span:last-child {
        text-align: left;
    }
    .project-timeline-section .project-info-box-timeline span {
        padding-left: 22px;
        padding-top: 10px;
        padding-bottom: 10px;
        text-align: left;
        margin-bottom: 0;
    }
    .project-info-box-timeline span.active:last-child:before {
        transform: translateX(-2px);
    }
    .project-info-box-timeline span.active:nth-child(4):after {
        height: 75px;
    }
    .project-info-box-timeline span.active:nth-child(3):after {
        height: 50px;
    }
    .project-info-box-timeline span.active:after {
        height: 25px;
        top: auto;
        bottom: 6px;
        left: 3px;
        right: auto;
        width: 1px;
    }
    .project-info-box-timeline span.active:before {
        transform: translateX(-2px);
    }
    .project-info-box-timeline span.active:before {
        top: 4px;
    }
    .project-info-box-timeline span:last-child::before {
        left: 0;
        right: auto;
        transform: translateX(0px);
    }
    .project-info-box-timeline span:first-child::before {
        transform: translateX(0px);
    }
    .project-info-box-timeline span:before {
        top: 6px;
        left: 0;
        transform: translateX(0px);
    }
    .project-info-box-timeline:before {
        left: 6px;
        right: auto;
        top: 6px;
        width: 1px;
        bottom: 7px;
        height: calc(100% - 13px);
    }
    .project-info-box-timeline span {
        padding-top: 0px;
        display: block;
        margin-bottom: 3px;
        padding-left: 14px;
    }
    .project-info-box-timeline span:last-child {
        margin-bottom: 0px;
    }
    .project-info-box-timeline {
        display: block;
        line-height: 20px;
        margin-left: -3px;
        padding-top: 0;
        width: calc(100% + 6px);
        padding-left: 3px;
        padding-right: 3px;
    }
    .project-info-box-details-label {
        margin-bottom: 12px;
    }
    .project-info-box-top {
        gap: 16px;
        margin-bottom: 24px;
    }
    .item-badge {
        padding: 8px 20px;
    }
    .footer-nav ul li a {
        font-size: 30px;
        font-size: 7.7vw;
    }
    .footer-top-left {
        margin-bottom: 76px;
    }
    .socials ul {
        gap: 24px;
    }
    .socials ul li a {
        width: 60px;
        height: 60px;
    }
    .footer-top {
        margin-bottom: 72px;
    }
    .socials {
        width: 100%;
    }
    .footer-nav {
        width: 100%;
        margin-bottom: 80px;
    }
    .fbr-left {
        width: 53%;
    }
    .copyrights {
        margin-top: 12px;
    }
    .logo-footer {
        width: 100%;
    }
    .footer-bottom-left {
        margin-bottom: 40px;
    }
    footer {
        padding: 40px 0 12px;
    }
    .projects-slide {
        width: 78vw;
    }
    .projects-slide-content {
        padding: 24px 20px;
    }
    .other-projects-section {
        padding-top: 120px;
        padding-bottom: 120px;
    }
    .other-projects-link {
        margin-top: 80px;
    }
    .project-contact-person-item-position {
        margin-top: 4px;
    }
    .project-contact-person-item-details p {
        margin-bottom: 12px;
    }
    .project-contact-person-item-details {
        width: 100%;
        margin-top: 16px;
    }
    .project-contact-person-item-top .title-28,
    .project-contact-person-item-top .title-40 {
        font-size: 18px;
        line-height: 1.5;
    }
    .project-contact-person-item-right {
        width: calc(60% - 16px);
    }
    .project-contact-person-item-left {
        width: 40%;
        margin-right: 16px;
    }
    .project-contact-section .section-top .text-reg {
        max-width: 265px;
        margin-top: 16px;
    }
    
    .project-contact-x-sticky {
        max-width: 100%;
    }
    .project-contact-section {
        padding-top: 120px;
        padding-bottom: 220px;
    }
    .section-rect {
        height: 70px;
    }
    .news-list-title {
        font-size: 16px;
    }
    .news-col-list ul li:not(:last-child) {
        margin-bottom: 64px;
    }
    .project-news-left {
        margin-bottom: 40px;
    }
    .project-news-hold {
        padding-top: 24px;
    }
    .tt-left {
        margin-bottom: 40px;
    }
    .title-text-section {
        padding-top: 24px;
        padding-bottom: 114px;
    }
    .swiper-custom-prev, .swiper-custom-next {
        bottom: -3px;
    }
    .gallerySwiper-counter {
        font-size: 38px;
        margin-top: 28px;
    }
    .project-gallery-section {
        padding: 24px 0 114px;
    }
    .project-gallery-section {
        padding: 80px 0 120px;
    }
    .has-text-indent p:first-child,
    .single-project .has-text-indent p {
        text-indent: 20vw;
        text-indent: 27vw;
    }
    .image-text-left {
        width: 76%;
        margin-bottom: 80px;
    }
    .image-text-section {
        padding-top: 20px;
        padding-bottom: 120px;
    }
    .image-full-text-left-section {
        padding-bottom: 80px;
    }
    .image-full-text-left-section .text-reg {
        max-width: 76%;
    }
    .iftl-image {
        padding-bottom: 56.49%;
        margin-bottom: 16px;
    }
    .title-46-section {
        padding: 80px 0 120px;
    }
    .text-image-section {
        padding-bottom: 80px;
    }
    .text-image-right {
        width: 76%;
    }
    .text-image-image-width {
        width: calc(100% + 20px);
    }
    .text-image-left {
        padding-top: 24px;
        margin-bottom: 80px;
    }
    .title-40 {
        font-size: 24px;
        font-size: 6.2vw;
    }
    .title-46 {
        font-size: 28px;
        font-size: 7.1vw;
    }
    .title-80,
    .title-54 {
        font-size: 28px;
        font-size: 7.1vw;
    }
    .title-54.mob-34 {
        font-size: 34px;
        font-size: 8.7vw;
    }
    /* .title-80 {
        font-size: 34px;
        font-size: 8.7vw;
    } */
    /* .title-80.mob-48 {
        font-size: 48px;
        font-size: 12.3vw;
    } */
    .project-timeline-section .title-40 {
        margin-bottom: 32px;
    }
    .project-timeline-section {
        padding: 40px 0;
    }
    .project-info-box-details-text p:not(:last-child) {
        margin-bottom: 6px;
    }
    .single-project-intro-section .project-info-box-details-item:not(:last-child) {
        margin-bottom: 32px;
    }
    .single-project-intro-section .project-info-box-details {
        display: block;
    }
    .single-project-intro-section .project-info-box-details-item {
        width: 100%;
    }
    .project-info-box {
        padding: 24px 20px;
    }
    .single-project-intro-section .project-info-box {
        padding-left: 20px;
        padding-right: 20px;
    }
    .mob-nav-header {
        padding: 16px 0;
    }
    header {
        padding: 16px 0;
    }
    .intro-cs-section {
        padding: 12vh 0;
    }
    .cs-title {
        font-size: 32px;
        font-size: 8.2vw;
        text-indent: 2.1em;
    }
    .cs-title strong {
        display: inline;
        padding-left: 0;
    }
    .intro-cs-logo-video-width {
        margin-left: -8%;
        width: 116%;
        min-width: 116%;
    }
    .intro-cs-logo-video-hold {
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        -webkit-box-align: end;
        -ms-flex-align: end;
        align-items: flex-end;
        width: 100%;
        max-width: 100%;
        right: 0;
        left: 0;
        height: 100%;
        overflow: hidden;
    }
    .intro-cs-logo-hold {
        bottom: 20px;
    }
    .intro-cs-logo {
        max-width: 100%;
    }
    .grid-container {
        padding-left: 20px;
        padding-right: 20px;
    }
	.entry iframe {
		max-width: 100%;
	}

}

@media screen and (max-width:360px) {
    /* .projects-filter-type.filter-style ul, */
    .filter-style ul {
        gap: 0;
    }
    .nav ul {
        gap: 24px;
    }
    .langs-hold {
        margin-left: 8px;
    }
}