

/* Start:/local/templates/oxwl/styles/style.css?174478800781074*/
@import url('https://fonts.googleapis.com/css2?family=Onest:wght@400;500;600;700&display=swap');

/* 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%;
	vertical-align: top;
    box-sizing: border-box;
    text-size-adjust: none;
}
/* HTML5 display-role reset for older browsers */
article, aside, details, figcaption, figure, 
footer, header, hgroup, menu, nav, section {
	display: block;
}
body {
    font-family: 'Onest', sans-serif;
    color: var(--color-main);
    font-style: normal;
	line-height: normal;
    background: #ffffff;
}
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;
}
input, *::before, *::after {
    box-sizing: border-box;
}

/* BASE */
:root {
    --color-black: #1D1D1B;
    --color-main: #192741;
    --color-grey-bg: #F7F7F9;
    --color-grey-border: #DEE1E5;
    --color-grey-text1: #ADB3BE;
    --color-grey-text3: #626D7D;
    --color-grey-text2: #7F8A9B;
    --color-grey-text4: #4f4f4f;
    --color-grey-400-medium: #9CA3AF;
    --color-grey-450-textongrey: #818793; 
    --color-grey-70: rgba(255, 255, 255, 0.70);
    --color-grey-8: rgba(255, 255, 255, 0.08);
    --color-grey-3: #828282;
    --color-grey-15: rgba(255, 255, 255, 0.15);
    --color-grey-50: #F6F8FA;
    --color-grey-200-border: #E5E7EB;
    --color-grey-300: #D1D5DB;
    --color-blue-main-hover: #273d66;
    --color-blue-main: #192741;
    --linear-gradient-1: linear-gradient(#19274126, #192741D9);
    --linear-gradient-2: linear-gradient(#1927414F, #192741D9);
    --linear-gradient-3: linear-gradient(#232B37, #232B3700);
    --radius-24: 24px;
    --max-width: 1240px;
    --padding-20: 20px;
    --padding-30: 30px;
    --fz-14: 14px;
}
label {
    cursor: pointer;
}
img {
    max-width: 100%;
    height: auto;
}
svg {
    display: inline-block;
    vertical-align: top;
}
video {
    display: block;
    width: 100%;
}
a {
    color: var(--color-main);
    text-decoration: none;
    outline: none;
}
header, section, footer {
	padding: 0 16px;
}

/* MAIN */
.container {
    width: 100%;
    max-width: var(--max-width);
    padding: 0;
    margin: 0 auto;
}
.hide {
    display: none !important;
}
.btn {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    height: 60px;
    padding: 16px 30px;
    background: #ffffff;
    border-radius: 12px;
    color: var(--color-main);
    font-size: 16px;
    font-weight: 500;
    letter-spacing: -0.48px;
    text-align: center;
    border: none;
    outline: none;
    cursor: pointer;
}
.btn.transparent {
    background: var(--color-grey-8);
    backdrop-filter: blur(20px);
    color: #ffffff;
}
.btn-callback {
    padding: 8px 24px;
    border-radius: 4px;
    background: var(--color-blue-main-hover);
    font-size: 14px;
    line-height: 18px;
    width: 100%;
}
.btn-arrow {
    gap: 10px;
    align-items: center;
    justify-content: center;
}
.btn-arrow::after {
    content: "";
    display: block;
    width: 24px;
    height: 24px;
    background-image: url("data:image/svg+xml,%3Csvg width='24' height='24' viewBox='0 0 24 24' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M17 7L6 18' stroke='white' stroke-width='1.5' stroke-linecap='round'/%3E%3Cpath d='M11 6H17C17.4714 6 17.7071 6 17.8536 6.14645C18 6.29289 18 6.5286 18 7V13' stroke='white' stroke-width='1.5' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");
}
.btn-dark {
    background: var(--color-main);
    color: #ffffff;
}
.btn-grey {
    background: var(--color-grey-50);
    backdrop-filter: blur(20px);
    color: var(--color-main);
}
.radius24 {
    border-radius: var(--radius-24);
}
.header-toolbar {
    position: relative;
    z-index: 20;
}
.header-toolbar .section-body {
    height: 52px;
    display: flex;
    align-items: center;
    justify-content: space-between;
    font-size: 16px;
}
.header-toolbar .l-col {
    display: flex;
    align-items: center;
    gap: 24px;
}
.header-toolbar .c-col {
    display: flex;
    align-items: center;
    gap: 30px;
}
.header-toolbar a {
    color: var(--color-grey-450-textongrey);
}
.homepage .header-toolbar, .homepage .header-toolbar a {
    color: var(--color-grey-70); 
}
.header {
    position: absolute;
    top: 40px;
    left: 0;
    right: 0;
    z-index: 20;
}
.header .section-body {
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding: 24px 0;
}
.header-col {
    display: flex;
    align-items: center;
    flex-shrink: 0;
}
.header-col a {
    font-size: 16px;
    font-weight: 500;
}
.header-col:first-child {
    gap: 50px;
}
.header-col:last-child .header-col-row, .header-col-row-left {
    display: flex;
    gap: 36px;
}
.homepage .header-col, .homepage .header-col a {
    color: #ffffff;
}
.logo .white {
    display: none;
}
.logo .black {
    display: block;
}
.homepage .logo .white {
    display: block;
}
.header-socials {
    display: flex;
    align-items: center;
    gap: 16px;
}
.homepage .social-btn {
    background: rgba(255, 255, 255, 0.08);
    backdrop-filter: blur(20px);
}
.social-btn {
    display: flex;
    width: 42px;
    height: 42px;
    justify-content: center;
    align-items: center;
    border-radius: 12px;
    background: var(--color-grey-50);
}
.social-btn svg {
    fill: var(--color-main);
}
.homepage .social-btn svg {
    fill: #ffffff;
}
.homepage .logo .black {
    display: none;
}
.header-menu-btn {
    display: flex;
    align-items: center;
    font-weight: 500;
}
.header-menu-btn::before {
    content: "";
    display: inline-block;
    width: 24px;
    height: 24px;
    background-image: url("data:image/svg+xml,%3Csvg width='24' height='25' viewBox='0 0 24 25' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M4 5.5H20' stroke='%23192741' stroke-width='1.5' stroke-linejoin='round'/%3E%3Cpath d='M4 12.5H20' stroke='%23192741' stroke-width='1.5' stroke-linejoin='round'/%3E%3Cpath d='M4 19.5H20' stroke='%23192741' stroke-width='1.5' stroke-linejoin='round'/%3E%3C/svg%3E");
    margin-right: 10px;
}
.homepage .header-menu-btn::before {
    background-image: url("data:image/svg+xml,%3Csvg width='24' height='25' viewBox='0 0 24 25' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M4 5.5H20' stroke='white' stroke-width='1.5' stroke-linejoin='round'/%3E%3Cpath d='M4 12.5H20' stroke='white' stroke-width='1.5' stroke-linejoin='round'/%3E%3Cpath d='M4 19.5H20' stroke='white' stroke-width='1.5' stroke-linejoin='round'/%3E%3C/svg%3E");
}
.block-body .header-menu-btn::before {
	background-image: url("data:image/svg+xml,%3Csvg width='24' height='24' viewBox='0 0 24 24' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M19 5L5 19M5 5L19 19' stroke='%23141B34' stroke-width='1.5' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");
}
.homepage.block-body .header-menu-btn::before {
	background-image: url("data:image/svg+xml,%3Csvg width='24' height='24' viewBox='0 0 24 24' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M19 5L5 19M5 5L19 19' stroke='white' stroke-width='1.5' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");
}
.header-links {
    display: flex;
    gap: 30px;
}
.homepage .header-label svg .white {
    fill: #ffffff;
}
.homepage .header-label svg .black {
    fill: var(--color-main);
}
.header-label svg .white {
    fill: var(--color-main);
}
.header-label svg .black {
    fill: #ffffff;
}
.header-contacts {
	position: relative;
}
.header-contact-list {
    display: none;
    position: absolute;
    /*top: 96px;
    right: calc((100% - var(--max-width, 1216px)) / 2 + 110px);*/
	top: calc(100% + 24px);
	right: 0;
}
.header-contact-list, .mobile-contact-list {
    padding: 24px;
    background: #ffffff;
    flex-direction: column;
    gap: 20px;
    border-radius: var(--radius-24);
    box-shadow: 0px 4px 50px 0px rgba(0, 0, 0, 0.08);
}
.header-contact-list.opened, .mobile-contact-list {
    display: flex;
}
.header-contact-row {
    display: flex;
    align-items: center;
    gap: 12px;
}
.header-contact-row:not(:first-child):not(:last-child)::after {
    content: "";
    display: block;
    width: 24px;
    height: 24px;
    background-image: url("data:image/svg+xml,%3Csvg width='24' height='24' viewBox='0 0 24 24' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M9.00005 18L14.2929 12.7071C14.6263 12.3738 14.7929 12.2071 14.7929 12C14.7929 11.7929 14.6263 11.6262 14.2929 11.2929L9.00005 6.00003' stroke='%239CA3AF' stroke-width='1.5' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");
}
.header-contact-icon {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 42px;
    height: 42px;
    border-radius: 12px;
    background: var(--color-grey-50);
}
.header-contact-icon svg {
	fill: #192741;
}
.header-contact-inner {
    flex-grow: 1;
}
.header-contact-row:first-child .header-contact-label {
    margin-bottom: 8px;
}
.header-contact-label {
    color: var(--color-grey-450-textongrey);
    font-size: var(--fz-14);
    margin-bottom: 6px;
}
.header-contact-value a {
    color: var(--color-main) !important;
    font-size: 16px;
    font-weight: 700;
    line-height: 100%; /* 16px */
    letter-spacing: -0.48px;
}
.header-contact-row .btn {
    width: 100%;
}
/* .contacts-wrap {
    padding: 12px;
}
.main-contact {
    position: relative;
}
.contacts-wrap a {
    color: #1D1D1B;
    line-height: normal;
}
.main-contact a {
    font-variant-numeric: lining-nums proportional-nums;
    font-size: 20px;
    font-weight: 700;
}
.other-contacts a {
    font-size: 14px;
    font-weight: 500;
}
.contact-label {
    color: var(--color-grey-text4);
    font-size: 12px;
    line-height: normal;
}
.main-contact .contact-label {
    position: absolute;
    display: none;
    top: -15px;
    left: 0;
}
.main-contact a {
    position: relative;
}
.main-contact a::after {
    content: "";
    position: absolute;
    right: -28px;
    top: 50%;
    transform: translateY(-50%);
    display: block;
    width: 24px;
    height: 24px;
    background-image: url("data:image/svg+xml,%3Csvg width='24' height='24' viewBox='0 0 24 24' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M16.59 8.295L12 12.875L7.41 8.295L6 9.705L12 15.705L18 9.705L16.59 8.295Z' fill='%231D1D1B'%3E%3C/path%3E%3C/svg%3E");
}
.other-contacts > .contact-body {
    margin-top: 12px;
    display: flex;
    flex-direction: column;
    gap: 20px;
}
.other-contacts .btn-callback {
    margin: 12px 0;
}
.contact-row {
    display: flex;
    align-items: center;
    gap: 12px;
}
.header-contacts .contacts-wrap {
    padding: 20px 12px 0 12px;
    border-width: 1px 1px 0px 1px;
    border-color: transparent;
    border-style: solid;
    margin-top: -22px;
    margin-right: 10px;
}
.header-contacts .main-contact .contact-body {
    display: flex;
    align-items: center;
}
.header-contacts .other-contacts {
    max-height: 0;
    overflow: hidden;
    position: absolute;
}
.header-contacts .contacts-wrap:hover {
    position: relative;
    border-color: #F6F6F6;
}
.header-contacts .contacts-wrap:hover .main-contact .contact-label {
    display: block;
}
.header-contacts .contacts-wrap:hover .other-contacts {
    transition: max-height 0.4s;
    z-index: 100;
    max-height: 346px;
    background: #fff;
    left: 0;
    right: 0;
    padding: 0 12px 12px 12px;
    top: 100%;
    border-width: 0px 1px 1px 1px;
    border-color: #F6F6F6;
    border-style: solid;
}
.header-contacts .contacts-wrap:hover .main-contact a::after {
    opacity: 0;
} */
.homepage .header-contact-main .phone {
    color: #ffffff;
}
.header-contact-main .phone {
    display: flex;
    align-items: center;
    gap: 6px;
    color: var(--color-main);
    font-variant-numeric: lining-nums proportional-nums;
    font-size: 18px;
    font-weight: 700;
    margin-bottom: 6px;
    cursor: pointer;
}
.header-contact-main .phone::after {
    content: "";
    display: block;
    width: 24px;
    height: 24px;
    background-image: url("data:image/svg+xml,%3Csvg width='24' height='25' viewBox='0 0 24 25' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M6 9.50003L11.2929 14.7929C11.6262 15.1263 11.7929 15.2929 12 15.2929C12.2071 15.2929 12.3738 15.1263 12.7071 14.7929L18 9.50003' stroke='%239CA3AF' stroke-width='1.5' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");
}
.header-contact-main .phone.arrow-turn::after {
	transform: rotate(180deg);
}
.homepage .header-contact-main .workinghours {
    color: var(--color-grey-70);
}
.header-contact-main .workinghours {
    color: var(--color-grey-450-textongrey);
    font-size: var(--fz-14);
}
.header-modal-menu {
    position: absolute;
    top: 96px;
    left: calc((100% - var(--max-width, 1216px)) / 2);
    z-index: 100;
    display: none;
    background: #ffffff;
    border-radius: var(--radius-24);
    box-shadow: 0px 4px 50px 0px rgba(0, 0, 0, 0.08);
    color: var(--color-main) !important;
}
.header-modal-menu.opened {
    display: block;
}
.header-modal-menu a {
    color: var(--color-main) !important;
}
.header-menu-wrap {
    display: grid;
    grid-template-columns: max-content 1fr;
}
.header-mobile-menu, .header-menu-list-title {
    display: none;
}
.header-menu-main-list, .header-mobile-menu {
    width: 100%;
    padding: 10px;
}
.header-menu-main-item, .header-mobile-menu-item {
    display: flex;
    justify-content: space-between;
    align-items: center;
    gap: 30px;
    padding: 20px;
    /* border-top: 1px transparent;
    border-bottom: 1px transparent; */
}
.header-menu-main-item:not(:nth-child(2)), .header-mobile-menu-item {
    border-top: 1px solid var(--color-grey-200-border);
}
.services-list-btn {
    display: flex;
    align-items: center;
    justify-content: space-between;
    font-weight: 500;
}
.services-list-btn::after {
    content: "";
    width: 24px;
    height: 24px;
    background-image: url("data:image/svg+xml,%3Csvg width='24' height='24' viewBox='0 0 24 24' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M9 18L14.2929 12.7071C14.6262 12.3738 14.7929 12.2071 14.7929 12C14.7929 11.7929 14.6262 11.6262 14.2929 11.2929L9 6' stroke='%23192741' stroke-width='1.5' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");
}
.header-menu-main-item.active {
    background: var(--color-grey-50);
    border-radius: 16px;
    border-color: transparent !important;
}
.header-menu-main-item.active + .header-menu-main-item {
    border-color: transparent !important;
}
.header-menu-main-item::after {
    content: "";
    display: block;
    width: 24px;
    height: 24px;
    background-image: url("data:image/svg+xml,%3Csvg width='24' height='24' viewBox='0 0 24 24' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M9.0002 18L14.2931 12.7071C14.6264 12.3738 14.7931 12.2071 14.7931 12C14.7931 11.7929 14.6264 11.6262 14.2931 11.2929L9.0002 6.00003' stroke='%239CA3AF' stroke-width='1.5' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");
    flex-shrink: 0;
}
.header-menu-main-item .header-menu-link {
    font-size: 16px;
    font-weight: 500;
    letter-spacing: -0.48px; 
}
.header-menu-sub-list {
    display: none;
    flex-direction: column;
    gap: 16px;
    padding: var(--padding-30);
}
.header-menu-sub-list.active {
    display: flex;
    min-width: 430px;
    border-left: 1px solid var(--color-grey-200-border);
	height: 100%;
}
.header-sub-list-title {
    font-size: 20px;
    font-weight: 700;
    letter-spacing: -0.6px; 
}
.header-menu-sub-list .header-menu-link {
    font-size: 16px;
}
.header-menu-link {
    white-space: nowrap;
}
/* .header-menu-wrap {
    width: calc(100% * 2);
    
}
.header-modal-menu .flex-2col {
    justify-content: space-between;
}
.header-modal-menu .flex-2col > div {
    flex: initial;
}
.header-menu-list {
    position: relative;
    display: flex;
    flex-direction: column;
    gap: 12px;
}
.header-menu-item.parent > .header-menu-link {
    display: flex;
    align-items: center;
    gap: 10px;
    padding: 16px 0;
    font-size: 18px;
    font-weight: 500;
    line-height: 24px;
}
.header-menu-item.parent:hover > .header-menu-link::before, 
.header-menu-item.parent.active > .header-menu-link::before {
    content: "";
    width: 16px;
    height: 16px;
    display: block;
    background-image: url("data:image/svg+xml,%3Csvg width='16' height='16' viewBox='0 0 15.9182 16' fill='none' xmlns='http://www.w3.org/2000/svg' xmlns:xlink='http://www.w3.org/1999/xlink'%3E%3Cpath d='M10.0996 0L7.19678 0L7.18385 0.404846C7.1537 1.29205 6.96851 2.1319 6.63687 2.89851C6.2708 3.75128 5.74966 4.50497 5.09071 5.1424C4.43176 5.77982 3.64792 6.28372 2.765 6.64119C2.03714 6.93405 1.23607 7.10632 0.396225 7.158L0 7.18385L0 10.0953L5.81857 10.0953L5.81857 16L8.72141 16L8.73431 15.5952C8.76447 14.7079 8.94966 13.8681 9.2813 13.1015C9.64737 12.2487 10.1685 11.495 10.8275 10.8533C11.4864 10.2159 12.2703 9.71198 13.1532 9.35451C13.881 9.06165 14.6821 8.88937 15.5219 8.83768L15.9182 8.81184L15.9182 5.90041L10.0996 5.90041L10.0996 0Z' fill='%23192741' fill-opacity='1' fill-rule='nonzero'/%3E%3C/svg%3E%0A");
}
.header-modal-menu .sub-menu {
    display: none;
}
.header-menu-item.parent:hover .sub-menu, 
.header-menu-item.parent.active .sub-menu {
    display: flex;
    flex-direction: column;
    gap: 30px;
    position: absolute;
    top: 0;
    left: 50%;
    z-index: 10;
    width: 50%;
    padding: 12px 0;
    background: #ffffff;
    padding-left: 36px;
}
.header-menu-list .sub-menu .header-menu-link {
    font-size: 18px;
} */
.video-block.module {
    width: initial;
}
.video-block .section-body {
    border-radius: var(--radius-24);
    overflow: hidden;
	position: relative;
	padding-bottom: 56.25%; /* задаёт высоту контейнера для 16:9 (если 4:3 — 75%) */
	height: 0;
}
.video-block iframe {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	border-width: 0;
	outline-width: 0;
}
.video-block__poster {
	position: absolute;
	z-index: 20;
	inset: 0;
	cursor: pointer;
}
.video-block__poster img {
	width: 100%;
	height: 100%;
	object-fit: cover;
}
.video-block__play {
	position: absolute;
	z-index: 25;
	left: 50%;
	top: 50%;
	transform: translate(-50%, -50%);
	cursor: pointer;
}
.homepage .title-section {
    height: 700px;
    margin: 0;
    color: #ffffff;
}
.title-section {
    position: relative;
    margin-top: 30px;
}
.title-section + .under-title {
    margin-top: 30px;
}
.title-section + section:not(.under-title) {
    margin-top: 50px;
}
.title-section .header-bg, .title-section .header-bg::after {
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
}
.title-section .header-bg {
	display: flex;
    z-index: 1;
    background-repeat: no-repeat;
    background-position: center;
    background-size: cover;
}
.header-bg picture {
	width: 100%;
}
.header-bg img {
	width: 100%;
	height: 100%;
	object-fit: cover;
}
.title-section .header-bg::after {
    /*content: "";
    display: block;
    z-index: 2;
    background: rgba(0, 0, 0, 0.55);*/
}
.title-section .container {
    position: relative;
    z-index: 10;
    display: flex;
    flex-direction: column;
    align-items: start;
}
.title-section .container > * {
    margin-right: 30%;
}
.homepage .page-title {
    margin-top: 210px;
}
.page-title {
    font-size: 64px;
    font-weight: 700;
    line-height: 100%; /* 64px */
    letter-spacing: -1.92px;
}
.page-subtitle {
    margin-top: 24px;
    font-size: 20px;
    line-height: 160%;
}
.title-section .page-buttons {
    margin-top: 36px;
    display: flex;
    gap: 16px;
}
.module {
    margin: 100px 0;
}
.section-label {
    font-size: 18px;
    margin-bottom: 24px;
}
.section-title {
    color: var(--color-main);
    font-size: 42px;
    font-weight: 700;
    line-height: 100%; /* 42px */
    letter-spacing: -1.26px;
    
    margin-bottom: 40px;
}
.section-title span {
    color: var(--color-grey-450-textongrey);
}
.masonry-1 {
    display: flex;
    flex-direction: column;
    gap: 16px;
}
.homepage .masonry-1 > div {
    flex-direction: row;
    gap: 20px;
}
.masonry-1-item {
    flex: 1 0 0;
    display: flex;
}
.masonry-1-item a {
    flex: 1 0 0;
    /* display: flex;
    align-items: center; */
    display: grid;
    grid-template-columns: 36px 1fr 24px;
    column-gap: 24px;
    border-radius: var(--radius-24);
    padding: var(--padding-30);
    background: var(--color-grey-50);
    text-decoration: none;
    border: none;
    outline: none;
}
.masonry-1-item .icon, .masonry-1-item a::after {
    grid-row: 1 / span 2;
    align-self: center;
}
.masonry-1-item .description {
    grid-column: 2 / span 1;
    grid-row: 2 / span 1;
}
.homepage .masonry-1-item a {
    display: flex;
    align-items: initial;
    flex-direction: column;
    justify-content: start;
    gap: 0;
}
.homepage .masonry-1-item .icon {
    align-self: initial;
}
.masonry-1-item:hover a {
    background: var(--color-main);
    color: #ffffff;
}
.masonry-1-item:hover a {
    color: #ffffff;
}
.masonry-1-item a::after {
    content: "";
    display: block;
    width: 24px;
    height: 24px;
    background-image: url("data:image/svg+xml,%3Csvg width='24' height='24' viewBox='0 0 24 24' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M17 7.00012L6 18.0001' stroke='%23192741' stroke-width='1.5' stroke-linecap='round'/%3E%3Cpath d='M11 6H17C17.4714 6 17.7071 6 17.8536 6.14645C18 6.29289 18 6.5286 18 7V13' stroke='%23192741' stroke-width='1.5' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");
}
.masonry-1-item:hover a::after {
    background-image: url("data:image/svg+xml,%3Csvg width='24' height='24' viewBox='0 0 24 24' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M17 7.00012L6 18.0001' stroke='%23ffffff' stroke-width='1.5' stroke-linecap='round'/%3E%3Cpath d='M11 6H17C17.4714 6 17.7071 6 17.8536 6.14645C18 6.29289 18 6.5286 18 7V13' stroke='%23ffffff' stroke-width='1.5' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");
}
.homepage .masonry-1-item a::after {
    display: none;
}
.homepage .masonry-1-item .icon {
    margin-bottom: 30px;
}
.masonry-1-item .icon {
    width: 36px;
    height: 36px;
    display: flex;
    align-items: center;
    justify-content: center;
}
.masonry-1-item .icon svg {
    fill: var(--color-main);
}
.masonry-1-item:hover .icon svg {
    fill: #ffffff;
}
.masonry-1-item-content {
    flex-grow: 1;
}
.masonry-1-item .title {
    font-size: 22px;
    font-weight: 700;
    line-height: 100%; /* 22px */
    letter-spacing: -0.66px;
    margin-bottom: 16px;
}
.masonry-1-item .description {
    font-size: 16px;
    color: var(--color-grey-450-textongrey);
}
.masonry-1-item:hover .description {
    color: var(--color-grey-70);
}

.masonry-2 > div {
    display: grid;
    grid-template-columns: repeat(6, 1fr);
    gap: 20px;
}
.masonry-2-item:nth-child(1), .masonry-2-item:nth-child(2) {
    grid-column: span 3;
}
.masonry-2-item:nth-child(n+3) {
    grid-column: span 2;
}
.masonry-2-item {
    position: relative;
    height: 300px;
    overflow: hidden;
    display: flex;
    align-items: center;
    justify-content: center;
    border-radius: var(--radius-24);
}
.masonry-2-item .img {
    height: 100%;
    width: 100%;
}
.masonry-2-item .img::after {
    content: "";
    display: block;
    width: 100%;
    height: 100%;
    background: linear-gradient(180deg, rgba(25, 39, 65, 0.15) 52.83%, rgba(25, 39, 65, 0.85) 100%);
    position: absolute;
    top: 0;
    left: 0;
    z-index: 9;
}
.masonry-2-item .img img {
    object-fit: cover;
    height: 100%;
    width: 100%;
}
.masonry-2-item .link {
    position: absolute;
    left: 30px;
    right: 30px;
    bottom: 30px;
    z-index: 10;
    color: #ffffff;
    font-size: 22px;
    font-weight: 700;
    line-height: 100%; /* 22px */
    letter-spacing: -0.66px; 
    display: flex;
    align-items: end;
    justify-content: space-between;
}
.masonry-2-item .link::after {
    content: "";
    display: flex;
    width: 24px;
    height: 24px;
    background-image: url("data:image/svg+xml,%3Csvg width='24' height='24' viewBox='0 0 24 24' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M17 7.00012L6 18.0001' stroke='white' stroke-width='1.5' stroke-linecap='round'/%3E%3Cpath d='M11 6H17C17.4714 6 17.7071 6 17.8536 6.14645C18 6.29289 18 6.5286 18 7V13' stroke='white' stroke-width='1.5' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");
}
.flex-2col {
    display: flex;
}
.flex-2col > div {
    flex: 1 0 0;
}
.section-description {
    font-size: 18px;
    line-height: 150%;
    margin-top: 30px;
    margin-bottom: 40px;
}
.section-description ul {
    margin-top: 30px;
    display: flex;
    flex-direction: column;
    gap: 12px;
    font-size: 16px;
}
.section-description ul li {
    display: flex;
    gap: 6px;
}
.section-description ul li::before {
    content: "";
    width: 24px;
    height: 24px;
	flex: 0 0 24px;
    background-image: url("data:image/svg+xml,%3Csvg width='24' height='24' viewBox='0 0 24 24' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M5 14L8.5 17.5L19 6.5' stroke='%23141B34' stroke-width='1.5' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");
}
.advantages .flex-2col {
    justify-content: space-between;
}
.advantages .flex-2col > div {
    flex: initial !important;
}
.advantages .l-col {
    max-width: 600px;
}
.advantages .r-col, .advantages .section-img {
    display: flex;
    justify-content: end;
    overflow: hidden;
}
.section-img img {
	border-radius: var(--radius-24);
}
.advantages .r-col {
    width: 550px;
}
.advantages .section-title {
    width: 70%;
}
.advantages .l-col .section-img {
    display: none;
}
.advantages-list {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    column-gap: 20px;
    row-gap: 30px;
}
.advantage-name {
    font-size: 20px;
    font-weight: 700;
    line-height: 100%;
    margin-bottom: 12px;
}
.advantages-list + .btn {
    margin-top: 40px;
}
.advantage-desc {
    color: var(--color-grey-450-textongrey);
    font-size: 16px;
}
.projects-tabs, .projects-categories {
    margin-bottom: 30px;
    overflow: hidden;
}
.projects-tabs-wrapper, .projects-categories {
    display: flex;
    gap: 30px;
}
.projects-tab, .project-category {
    color: var(--color-grey-text2);
    font-size: 18px;
    font-weight: 500;
    line-height: 150%;
    cursor: pointer;
    white-space: nowrap;
    padding-bottom: 10px;
}
.projects-tab.active, .projects-tab:hover, .project-category.active, .project-category:hover {
    position: relative;
    color: var(--color-main);
}
.projects-tab.active::after, .projects-tab:hover::after, .project-category.active::after, .project-category:hover::after {
    content: "";
    position: absolute;
    bottom: 0;
    display: block;
    left: 0;
    width: 100%;
    height: 2px;
    background: var(--color-main);
}
.projects-body {
    display: none;
}
.projects-body.active {
    display: block;
}
.project-slider .swiper-pagination, .project-photos .swiper-pagination {
    display: none;
}
.project-item {
    position: relative;
    overflow: hidden;
    display: grid;
    grid-template-columns: 57.5% 40.7%;
    gap: 20px;
    justify-content: space-between;
}
.project-item > div {
    overflow: hidden;
    border-radius: var(--radius-24);
}
.project-item > div:first-child {
    grid-row: span 2;
}
.project-item > div:not(:first-child) {
    height: 256px;
}
.project-item-info {
    display: flex;
    flex-direction: column;
    justify-content: space-between;
    background: var(--color-main);
    padding: var(--padding-30);
    color: #ffffff;
}
.project-item-props {
    display: flex;
    gap: 15px;
    font-size: 16px;
    font-weight: 500;
}
.project-item-name {
    font-size: 22px;
    font-weight: 700;
    line-height: 100%; /* 22px */
    letter-spacing: -0.66px; 
}
.project-item-img {
    width: 100%;
}
.project-item-img img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}
.project-item a {
    color: #ffffff;
    border: none;
    outline: none;
}
.project-item-btns {
	display: flex;
	gap: 30px;
}
.project-slider-botton {
	visibility: hidden;
}
.project-slider-botton.show {
	visibility: initial;
}
.project-button-prev, .project-button-next {
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 16px;
    background: var(--color-grey-8);
    border-radius: 50%;
    cursor: pointer;
}
.project-button-prev::after, .project-button-next::after {
    content: "";
    display: block;
    width: 24px;
    height: 24px;
}
.project-button-prev::after {
    background-image: url("data:image/svg+xml,%3Csvg width='24' height='24' viewBox='0 0 24 24' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M14.9999 6L9.70703 11.2929C9.37369 11.6262 9.20703 11.7929 9.20703 12C9.20703 12.2071 9.37369 12.3738 9.70703 12.7071L14.9999 18' stroke='white' stroke-width='1.5' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");
}
.project-button-next::after {
    background-image: url("data:image/svg+xml,%3Csvg width='24' height='24' viewBox='0 0 24 24' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M9.00014 6L14.293 11.2929C14.6264 11.6262 14.793 11.7929 14.793 12C14.793 12.2071 14.6264 12.3738 14.293 12.7071L9.00014 18' stroke='white' stroke-width='1.5' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");
}
.projects .btn {
    width: 100%;
    gap: 20px;
    margin-top: 20px;
}
/* .all-projects {
    width: 100%;
    display: flex;
    justify-content: center;
    align-items: center;
    gap: 6px;
    margin-top: 20px;
    padding: 14px 30px;
    border: 1px solid var(--color-main);
    font-size: 16px;
    font-weight: 500;
}
.all-projects::after {
    content: "";
    display: block;
    width: 24px;
    height: 24px;
    background-image: url("data:image/svg+xml,%3Csvg width='25' height='24' viewBox='0 0 25 24' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M6.84313 6.34315L6.84313 8.33719L14.7415 8.34426L6.13603 16.9497L7.55024 18.364L16.1557 9.75847L16.1628 17.6569H18.1568V6.34315H6.84313Z' fill='%23192741'/%3E%3C/svg%3E");
} */

.faq-item {
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    gap: 16px;
    padding: 24px;
    border-radius: 16px;
    background: var(--color-grey-50);
}
.faq-item + .faq-item {
    margin-top: 16px;
}
.faq-item-head {
    display: flex;
    justify-content: space-between;
    align-items: center;
    width: 100%;
    cursor: pointer;
}
.faq-item-head::after {
    content: "";
    display: block;
    width: 24px;
    height: 24px;
    background-image: url("data:image/svg+xml,%3Csvg width='24' height='24' viewBox='0 0 24 24' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M6 9L11.2929 14.2929C11.6262 14.6262 11.7929 14.7929 12 14.7929C12.2071 14.7929 12.3738 14.6262 12.7071 14.2929L18 9' stroke='%23192741' stroke-width='1.5' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");
    transition: all 0.3s;
}
.faq-item-title {
    font-size: 20px;
    font-weight: 700;
}
.faq-item-body {
    display: none;
    color: var(--color-grey-450-textongrey);
    font-size: 16px;
    line-height: 150%;
}
.faq-item.open .faq-item-body {
    display: block;
}
.faq-item.open .faq-item-head::after {
    transform: rotate(-180deg);
}
.grid-2col {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
}
.license .section-title {
    margin-bottom: 36px;
}
.license .section-body {
    padding: 0;
}
.license-list .swiper-wrapper {
    display: flex;
    gap: 20px;
}
.license-item {
    max-width: 190px;
    width: 100%;
    overflow: hidden;
    border-radius: 16px;
    border: 1px solid #E5E7EB;
}
.license-item img {
    width: 100%;
    height: 100%;
}
.seo-text .section-title {
    margin-bottom: 20px;
}
.seo-description-wrap {
    max-height: 270px;
    overflow: hidden;
    position: relative;
    font-size: 16px;
    line-height: 160%;
}
.seo-description-wrap.hide-more::after {
    content: "";
    display: block;
    position: absolute;
    left: 0;
    right: 0;
    bottom: -10px;
    z-index: 10;
    height: 120px;
    background: linear-gradient(0deg, #ffffff 0%, rgba(255, 255, 255, 0.3) 100%);
}
.seo-description-wrap.hide-more.open {
    max-height: initial;
}
.seo-description-wrap.hide-more.open::after {
    display: none;
}
.seo-description-wrap p + p {
    margin: 20px 0;
}
.btn-show-all {
    display: flex;
    padding: 16px 30px;
    justify-content: center;
    gap: 10px;
    margin-top: 20px;
    font-size: 16px;
    font-weight: 500;
    letter-spacing: -0.48px;
    border-radius: 12px;
    background: var(--color-grey-50);
    cursor: pointer;
}
.btn-show-all::after {
    content: "";
    display: block;
    width: 24px;
    height: 24px;
    background-image: url("data:image/svg+xml,%3Csvg width='25' height='24' viewBox='0 0 25 24' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M17.5 7L6.5 18' stroke='%23192741' stroke-width='1.5' stroke-linecap='round'/%3E%3Cpath d='M11.5 6H17.5C17.9714 6 18.2071 6 18.3536 6.14645C18.5 6.29289 18.5 6.5286 18.5 7V13' stroke='%23192741' stroke-width='1.5' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");
}
.show-all-text {
    display: none;
}
.show-all-text::after {
    background-image: url("data:image/svg+xml,%3Csvg width='25' height='24' viewBox='0 0 25 24' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M6.5 9L11.7929 14.2929C12.1262 14.6262 12.2929 14.7929 12.5 14.7929C12.7071 14.7929 12.8738 14.6262 13.2071 14.2929L18.5 9' stroke='%23192741' stroke-width='1.5' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");
}
.show-all-text.open::after {
    transform: rotate(180deg);
}
.seo-description-wrap.hide-more + .show-all-text {
    display: flex;
}
.location {
    background-color: var(--color-grey-3);
    position: relative;
    margin-bottom: 0;
	padding: 0;
}
.location #footer-map {
	height: 720px;
    overflow: hidden;
}
.location-card {
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
    left: calc((100% - var(--max-width, 1216px)) / 2);
    width: 368px;
    padding: 24px;
    border-radius: var(--radius-24);
    background: #ffffff;
    display: flex;
    flex-direction: column;
    gap: 24px;
}
.location-card-img img {
    border-radius: 16px;
}
.location-card-content, .location-card-row {
    display: flex;
    flex-direction: column;
}
.location-card-content {
    gap: 20px;
}
.location-card-row {
    gap: 4px;
}
.location-card-link .btn {
    width: 100%;
}
.location-card .company-name {
    font-size: 24px;
    font-weight: 700;
    line-height: 100%; /* 24px */
    letter-spacing: -0.72px;
}
.location-card-row-value {
    font-size: 20px;
    font-style: normal;
    font-weight: 700;
    line-height: 100%; /* 20px */
    letter-spacing: -0.6px; 
}
.location-card-row-label {
    font-size: var(--fz-14);
}
.location-card .company-address {
    font-size: 16px;
    font-weight: 400;
    margin-top: 4px;
}
.location-card-row-label, .location-card .company-address {
    color: var(--color-grey-450-textongrey);
}
.footer {
    background: var(--color-main);
    padding: 24px 0;
    font-size: 16px;
}
.footer, .footer a {
    color: var(--color-grey-70);
}
.footer .flex-2col {
    justify-content: space-between;
}
.footer .flex-2col > * {
    flex: initial;
}
.footer-copyright {
    display: flex;
    gap: 30px;
}
.breadcrumbs-list-wrapper {
    display: flex;
    gap: 12px;
}
.breadcrumb {
    display: flex;
    align-items: center;
    gap: 10px;
    font-size: 16px;
    font-weight: 400;
    line-height: normal;
}
.breadcrumb:not(:last-child)::after {
    content: " / ";
}
.breadcrumb, .breadcrumb-link {
    color: var(--color-grey-400-medium);
}
.page-content {
    font-size: 18px;
    line-height: 150%;
}
.page-content p + p, .page-content ul {
    margin: 20px 0;
}
.page-content ul {
    list-style-type: disc;
    padding-left: 20px;
}
.page-content li {
    margin: 20px 0;
}
.page-content b, page-content strong {
    font-weight: 700;
}
/* 
.page-content ul {
    list-style-type: disc;
    padding-left: 20px;
}
.page-content li {
    margin: 20px 0;
}
.page-content li::marker {
    color: var(--color-blue-main);
}
.page-content h3 {
    margin-bottom: 15px;
    font-weight: 700;
} */
.under-title .section-body {
    display: flex;
    flex-direction: column;
    gap: 30px;
}
.subtitle-row {
    display: flex;
    justify-content: space-between;
    gap: 30px;
}
.subtitle {
    font-size: 18px;
    line-height: 150%;
}
.subtitle-btn {
    flex-shrink: 0;
}
.page-image {
    height: 600px;
    border-radius: var(--radius-24);
    overflow: hidden;
}
.page-image img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}
.sec2cols .flex-2col, .experience .flex-2col {
    display: grid;
    grid-template-columns: minmax(49%, 610px) minmax(44%, 550px);
    column-gap: 80px;
}
.sec2cols .l-col {
    display: flex;
    flex-direction: column;
    gap: 30px;
}
.sec2cols .l-col .section-img {
    display: none;
}
.sec2cols .section-img {
    border-radius: var(--radius-24);
    overflow: hidden;
}
.sec2cols .section-title {
    margin-bottom: 0;
}
.sec2cols .section-description {
    margin: 0;
}
.section-description p + p {
    margin-top: 10px;
}
.service-props {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    column-gap: 20px;
    row-gap: 24px;
}
.service-prop {
    display: flex;
    gap: 14px;
    align-items: center;
}
.service-prop-value {
    font-size: 16px;
    font-weight: 500;
    line-height: normal;
    margin-bottom: 6px;
}
.service-prop-label {
    font-size: var(--fz-14);
    line-height: normal;
    color: var(--color-grey-400-medium);
}
.sec2cols .buttons-row {
    display: flex;
    gap: 16px;
}
.experience .flex-2col {
    gap: 90px;
    align-items: center;
}
.experience .section-title {
    margin: 0;
}
.experience .section-description {
    margin: 0;
    font-size: 16px;
}
.experience-props {
    margin-top: 40px;
	display: grid;
    grid-template-columns: repeat(auto-fit, minmax(200px, 1fr));
    gap: 20px;
}
.experience-prop {
    flex: 1 0 0;
    background: var(--color-grey-50);
    border-radius: var(--radius-24);
    padding: var(--padding-30);
    display: flex;
    flex-direction: column;
    justify-content: space-between;
    gap: 10px;
}
.experience-prop-value {
    font-size: 54px;
    font-weight: 500;
}
.experience-prop-label {
    font-size: 16px;
    color: var(--color-grey-450-textongrey);
}
.banner .section-body {
    border-radius: var(--radius-24);
    background-position: center;
    background-size: cover;
    overflow: hidden;
    position: relative;
}
.banner .section-body::before {
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    background: #192741;
    opacity: 0.9;
    z-index: 0;
}
.banner .flex-2col {
    align-items: center;
    gap: 80px;
    padding: 40px;
    position: relative;
    z-index: 1;
}
.banner .flex-2col > * {
    flex: initial;
}
.banner .l-col {
    display: flex;
    flex-direction: column;
    gap: 16px;
}
.banner .section-description {
    margin: 0;
    font-size: 16px;
    line-height: normal;
    color: #ffffff;
}
.banner .section-title {
    margin: 0;
    font-size: 32px;
    font-weight: 700;
    line-height: 100%; /* 32px */
    letter-spacing: -0.96px; 
    color: #ffffff;
}
.banner .btn {
    white-space: nowrap;
}
.partners {
    margin-top: 40px;
}
.partners > div {
    display: grid;
    grid-template-columns: repeat(8, 1fr);
    gap: 20px;
}
.partner {
    border-radius: var(--radius-24);
    border: 1px solid var(--color-grey-200-border);
    display: flex;
    align-items: center;
    justify-content: center;
}
.main-steps-type2 .main-step::before, .main-steps-type3 .main-step::before {
    display: none;
}
.main-steps-type2 .main-step-icon {
    margin-bottom: 30px;
}
.main-steps-type2 .section-description {
    margin-top: 24px;
    margin-bottom: 40px;
}
.main-steps-type3 .section-title {
    margin-right: 40%;
}
.main-steps-type3 .main-steps-list .swiper-wrapper {
    display: grid;
    grid-template-columns: repeat(5, 1fr);
}
.main-steps-type3 .main-step {
    width: initial;
    min-height: initial;
    height: 180px;
    display: flex;
    flex-direction: column;
    justify-content: space-between;
}
.main-steps-type3 .main-step-name {
    margin: 0;
    font-size: 18px;
    font-weight: 700;
    line-height: 100%; /* 18px */
    letter-spacing: -0.54px;
}
.banner-type2 .section-body {
    background: var(--color-main);
    border-radius: var(--radius-24);
    padding: 40px;
}
.banner-type2 .flex-2col {
    display: grid;
    grid-template-columns: 35% 65%;
}
.banner-type2 .l-col {
    display: flex;
    flex-direction: column;
    justify-content: space-between;
}
.banner-type2 .r-col {
    display: flex;
    gap: 20px;
    justify-content: end;
}
.banner-type2 .section-title, .banner-type2 a {
    color: #ffffff;
}
.banner-type2 .section-title {
    font-size: 32px;
    font-weight: 700;
    line-height: 100%; /* 32px */
    letter-spacing: -0.96px; 
}
.all-docs {
    display: flex;
    align-items: center;
    gap: 10px;
    font-size: 16px;
    font-weight: 500;
    line-height: normal;
    letter-spacing: -0.48px; 
}
.all-docs::after {
    content: "";
    width: 24px;
    height: 24px;
    background-image: url("data:image/svg+xml,%3Csvg width='24' height='24' viewBox='0 0 24 24' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M17 7L6 18' stroke='white' stroke-width='1.5' stroke-linecap='round'/%3E%3Cpath d='M11 6H17C17.4714 6 17.7071 6 17.8536 6.14645C18 6.29289 18 6.5286 18 7V13' stroke='white' stroke-width='1.5' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");
}
.pdf-link {
    display: flex;
    gap: 20px;
    align-items: center;
    border-radius: 18px;
    background: var(--color-grey-8);
    padding: 20px;
}
.pdf-link::before {
    content: "";
    width: 24px;
    height: 24px;
    display: inline-block;
    flex-shrink: 0;
    background-image: url("data:image/svg+xml,%3Csvg width='24' height='24' viewBox='0 0 24 24' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath opacity='0.4' d='M3.72368 13.75C4.26144 13.75 4.69737 13.3195 4.69737 12.7885L4.69738 11.7652C4.69737 11.4982 4.69754 10.8596 4.97816 10.3875C5.15109 10.0965 5.37251 9.85337 5.59996 9.72955C5.96647 9.53003 6.38666 9.41667 6.83333 9.41667C6.98046 9.41667 7.13864 9.42314 7.31624 9.43138L7.38206 9.43446C7.53697 9.44174 7.70556 9.44966 7.8737 9.45315C8.25379 9.46105 8.69733 9.44904 9.12548 9.33432C9.95945 9.11086 10.6109 8.45945 10.8343 7.62548C10.949 7.19733 10.961 6.75379 10.9532 6.3737C10.9497 6.20562 10.9417 6.03692 10.9345 5.88206L10.9314 5.81624C10.9231 5.63864 10.9167 5.48046 10.9167 5.33333C10.9167 4.86564 11.0409 4.42698 11.2583 4.04857C11.385 3.82798 11.6057 3.62609 11.9105 3.44878C12.3726 3.17987 12.926 3.17738 13.2642 3.17585C13.6023 3.17433 13.9591 3.17316 14.2572 3.17316C16.0914 3.17316 16.7582 3.18692 17.2614 3.36158C18.1337 3.66441 18.7997 4.29659 19.11 5.07103C19.1878 5.26511 19.2427 5.52002 19.2721 5.96153C19.3021 6.41159 19.3026 6.98607 19.3026 7.81394V12.7885C19.3026 13.3195 19.7386 13.75 20.2763 13.75C20.8141 13.75 21.25 13.3195 21.25 12.7885V7.78121C21.25 6.99374 21.25 6.35586 21.2153 5.83514C21.1795 5.29867 21.1039 4.82043 20.9208 4.36341C20.3922 3.04443 19.2841 2.02533 17.9072 1.54735C17.0482 1.24915 16.0155 1.24951 14.4607 1.25005L13.5134 1.25012L13.5 1.25L13.4649 1.25015C10.9565 1.25185 9.40174 1.28168 8.1118 1.72949C5.8915 2.50027 4.11806 4.13859 3.27491 6.24261C2.99393 6.94378 2.86942 7.69695 2.80918 8.60017C2.74999 9.48756 2.75 10.5838 2.75 11.9814V12.7885C2.75 13.3195 3.18593 13.75 3.72368 13.75Z' fill='white'/%3E%3Cpath fill-rule='evenodd' clip-rule='evenodd' d='M10.9769 15.25C10.9851 15.25 10.9932 15.25 11.0014 15.25C13.0724 15.25 14.7514 16.9289 14.7514 19C14.7514 21.0711 13.0724 22.75 11.0014 22.75C10.9932 22.75 10.9851 22.75 10.9769 22.75C10.8114 22.75 10.6411 22.7501 10.4957 22.7369C10.3328 22.7221 10.1292 22.6862 9.92636 22.5691C9.52211 22.3357 9.35412 21.9716 9.29144 21.6639C9.24589 21.4403 9.24908 21.1931 9.25083 21.0567C9.25111 21.0348 9.25136 21.0157 9.25136 21V17C9.25136 16.9843 9.25111 16.9653 9.25083 16.9433C9.24908 16.8069 9.24589 16.5597 9.29144 16.3361C9.35412 16.0284 9.52211 15.6643 9.92636 15.4309C10.1292 15.3138 10.3328 15.2779 10.4957 15.2631C10.6411 15.2499 10.8114 15.25 10.9769 15.25ZM10.7513 16.7514C10.7513 16.7539 10.7512 16.7564 10.7511 16.7589C10.7504 16.7911 10.7503 16.826 10.7506 16.867C10.7506 16.8784 10.7507 16.8913 10.7508 16.9049C10.7511 16.9351 10.7514 16.9691 10.7514 17V21C10.7514 21.0309 10.7511 21.0649 10.7508 21.0951C10.7507 21.1088 10.7506 21.1216 10.7506 21.1331C10.7503 21.1741 10.7504 21.2089 10.7511 21.2411C10.7512 21.2436 10.7513 21.2461 10.7513 21.2486C10.7564 21.2487 10.7615 21.2488 10.7669 21.2489C10.8313 21.25 10.906 21.25 11.0014 21.25C12.244 21.25 13.2514 20.2426 13.2514 19C13.2514 17.7574 12.244 16.75 11.0014 16.75C10.906 16.75 10.8313 16.75 10.7669 16.7511C10.7615 16.7512 10.7564 16.7513 10.7513 16.7514Z' fill='white'/%3E%3Cpath fill-rule='evenodd' clip-rule='evenodd' d='M18.9553 15.25C18.9701 15.25 18.985 15.25 19 15.25H20.5C20.9142 15.25 21.25 15.5858 21.25 16C21.25 16.4142 20.9142 16.75 20.5 16.75H19C18.5074 16.75 18.2134 16.7516 18.0027 16.7799C17.9061 16.7929 17.8578 16.8082 17.836 16.8172C17.8309 16.8192 17.8276 16.8209 17.8257 16.8219L17.8232 16.8232L17.8219 16.8257C17.8209 16.8276 17.8192 16.8309 17.8172 16.836C17.8082 16.8578 17.7929 16.9061 17.7799 17.0027C17.7516 17.2134 17.75 17.5074 17.75 18V18.25H19.5C19.9142 18.25 20.25 18.5858 20.25 19C20.25 19.4142 19.9142 19.75 19.5 19.75H17.75V22C17.75 22.4142 17.4142 22.75 17 22.75C16.5858 22.75 16.25 22.4142 16.25 22V18C16.25 17.985 16.25 17.9701 16.25 17.9553C16.25 17.5224 16.2499 17.1256 16.2933 16.8028C16.3411 16.4473 16.4535 16.0716 16.7626 15.7626C17.0716 15.4535 17.4473 15.3411 17.8028 15.2933C18.1256 15.2499 18.5224 15.25 18.9553 15.25Z' fill='white'/%3E%3Cpath fill-rule='evenodd' clip-rule='evenodd' d='M4.66261 15.25C4.6751 15.25 4.68757 15.25 4.70001 15.25H5.50001C6.74266 15.25 7.75001 16.2574 7.75001 17.5C7.75001 18.7427 6.74266 19.75 5.50001 19.75H4.25001V22C4.25001 22.4142 3.91423 22.75 3.50001 22.75C3.0858 22.75 2.75001 22.4142 2.75001 22V17.2C2.75001 17.1876 2.75001 17.1751 2.75001 17.1626C2.74993 16.9126 2.74986 16.656 2.77867 16.4417C2.81182 16.1952 2.89498 15.8959 3.14542 15.6454C3.39587 15.395 3.69516 15.3118 3.94172 15.2787C4.15599 15.2499 4.41263 15.2499 4.66261 15.25ZM4.25001 18.25H5.50001C5.91423 18.25 6.25001 17.9142 6.25001 17.5C6.25001 17.0858 5.91423 16.75 5.50001 16.75H4.70001C4.55581 16.75 4.44236 16.7501 4.34496 16.7525C4.31131 16.7534 4.28178 16.7545 4.25578 16.7558C4.25447 16.7818 4.25337 16.8113 4.25252 16.845C4.25006 16.9424 4.25001 17.0558 4.25001 17.2V18.25Z' fill='white'/%3E%3C/svg%3E");
}
.pdf-link:first-child {
    width: 385px;
}
.pdf-link:last-child {
    width: 300px;
}
.building-types .section-title, brief-terms .section-title, .three-blocks .section-title {
    margin-bottom: 40px;
}
.building-types-list .swiper-wrapper {
	display: grid;
	grid-template-columns: repeat(5, 1fr);
	gap: 20px;
}
.building-type {
	position: relative;
	display: flex;
	align-items: center;
	justify-content: center;
	padding-top: 232px;
	border-radius: var(--radius-24);
    overflow: hidden;
}
.building-type img {
	position: absolute;
	top: 0;
	left: 0;
	display: block;
	object-fit: cover;
	width: 100%;
	height: 100%;
}
.building-type-name {
    position: absolute;
    left: 6px;
    right: 6px;
    bottom: 6px;
    display: flex;
    padding: 16px;
    border-radius: 18px;
    background: rgba(0, 0, 0, 0.08);
    backdrop-filter: blur(30px);
    color: #ffffff;
    font-size: 16px;
    font-weight: 500;
    line-height: 100%; /* 16px */
    letter-spacing: -0.48px;
}
.briefterms .swiper-wrapper {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    height: 256px;
}
.briefterms .swiper-wrapper, .briefterm-col {
    gap: 20px;
}
.briefterm-col {
    display: flex;
    flex-direction: column;
}
.briefterm {
    display: flex;
    flex-direction: column;
    gap: 16px;
    height: 100%;
    padding: var(--padding-30);
    border-radius: var(--radius-24);
    background: #F6F8FA;
}
.briefterm-value {
    color: #192741;
    font-size: 22px;
    font-weight: 700;
    line-height: 100%; /* 22px */
    letter-spacing: -0.66px;
}
.briefterm-label {
    color: #818793;
    font-size: 16px;
}
.briefterm-readmore {
    height: 100%;
    display: flex;
    flex-direction: column;
    justify-content: end;
}
.briefterm-readmore a {
    display: flex;
    padding: 16px 24px;
    align-items: center;
    border-radius: 12px;
    background: #ffffff;
    backdrop-filter: blur(20px);
    font-size: 16px;
    font-weight: 500;
    letter-spacing: -0.48px;
    text-decoration: none;
    outline: none;
    color: #192741;
}
.briefterm:hover {
    background: #192741;
}
.briefterm:hover .briefterm-value {
    color: #ffffff;
}
.briefterm:hover .briefterm-label {
    color: rgba(255, 255, 255, 0.70);
}
.horiz-blocks .swiper-wrapper {
    display: flex;
    gap: 20px;
}
.horiz-block {
    flex: 1 0 0;
    padding: 6px;
    border-radius: var(--radius-24);
    background: var(--color-grey-50);
    display: flex;
    flex-direction: column;
    gap: 6px;
}
.horiz-block-img {
    display: flex;
    align-items: center;
    height: 200px;
    border-radius: 18px;
    overflow: hidden;
}
.horiz-block-row {
    display: flex;
    flex-direction: column;
    gap: 10px;
    padding: 16px;
}
.horiz-block-name {
    font-size: 20px;
    font-weight: 700;
    line-height: 100%; /* 20px */
    letter-spacing: -0.6px; 
}
.horiz-block-description {
    color: var(--color-grey-450-textongrey);
    font-size: 16px;
    font-weight: 400;
    line-height: normal;
}
.about-offer .flex-2col {
    gap: 20px;
}
.leftside-block, .rightside-block {
    padding: 50px;
    background: var(--color-grey-50);
    border-radius: var(--radius-24);
    height: 100%;
}
.leftside-block .block-icon {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 80px;
    height: 80px;
    border-radius: var(--radius-24);
    background: #ffffff;
    margin-bottom: 30px;
}
.block-name {
    font-size: 42px;
    font-weight: 700;
    line-height: 100%; /* 42px */
    letter-spacing: -1.26px; 
}
.block-description {
    font-size: 16px;
    font-weight: 400;
    line-height: 150%; /* 24px */ 
    margin-top: 24px;
}
.stickers-row {
    display: flex;
    gap: 20px;
    margin-bottom: 30px;
}
.sticker {
    background: #ffffff;
    border-radius: var(--radius-24);
    padding: 24px;
    display: flex;
    flex-direction: column;
    gap: 10px;
}
.sticker-value {
    display: flex;
    align-items: end;
    gap: 6px;
    font-size: 32px;
    font-weight: 700;
    line-height: 100%;
    letter-spacing: -0.96px;
}
.sticker-value::before {
    content: "до ";
    font-size: 16px;
    font-weight: 700;
    line-height: 100%; /* 16px */
    letter-spacing: -0.48px; 
}
.sticker-label {
    color: var(--color-grey-450-textongrey);
    font-size: 16px;
    font-weight: 400;
    line-height: normal;
}
.price-list {
    margin-top: 30px;
    font-size: 16px;
    line-height: normal;
    overflow-x: auto;
}
.price-list-row {
    display: grid;
    grid-template-columns: calc(25% - 20px) repeat(5, calc(15% - 16px));
    gap: 20px;
    padding: 20px;
    border-radius: 16px;
    min-width: 950px;
}
.price-list-row:nth-child(even) {
    background: var(--color-grey-50);
}
.price-list-head {
    font-weight: 500;
}
.price-list-footer {
    font-weight: 700;
}
.consultant .section-body {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 20px;
}
.consultant .l-col {
    grid-column: span 2;
}
.consultant .l-col, .consultant .r-col {
    background: var(--color-grey-50);
    border-radius: var(--radius-24);
    padding: 40px;
}
.consultant .l-col {
    display: flex;
    gap: 30px;
    align-items: center;
}
.consult-photo {
    width: 136px;
    height: 136px;
    flex-shrink: 0;
}
.consult-hello, .consult-major, .helpdesk-desc {
    font-size: 16px;
    font-weight: 400;
    line-height: 150%; /* 24px */ 
}
.consult-name {
    margin-top: 30px;
    margin-bottom: 10px;
}
.consult-name, .helpdesk-name {
    font-size: 20px;
    font-weight: 700;
    line-height: 100%; /* 20px */
    letter-spacing: -0.6px; 
}
.consultant .r-col {
    display: flex;
    flex-direction: column;
    justify-content: space-between;
}
.helpdesk-row {
    display: flex;
    flex-direction: column;
    gap: 10px;
}
.helpdesk-row a {
    font-size: 26px;
    font-weight: 700;
    line-height: 100%; /* 26px */
    letter-spacing: -0.78px; 
}
.services .container {
    position: relative;
}
.services .section-title {
    width: 60%;
}
.section-link {
    position: absolute;
    top: 40px;
    right: 0;
    display: flex;
    align-items: center;
    gap: 5px;
    font-size: 16px;
    font-weight: 500;
    line-height: normal;
}
.section-link::after {
    content: "";
    display: block;
    width: 24px;
    height: 24px;
    background-image: url("data:image/svg+xml,%3Csvg width='24' height='24' viewBox='0 0 24 24' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M6.34338 6.34315L6.34338 8.33719L14.2418 8.34426L5.63627 16.9497L7.05048 18.364L15.656 9.75847L15.663 17.6569H17.6571V6.34315H6.34338Z' fill='%23192741'/%3E%3C/svg%3E");
}
.policy-page .title-section .container > * {
    width: 100%;
}
.policy-page .page-content {
    line-height: 180%;
}
.contacts {
    margin-top: 50px;
    margin-bottom: 60px;
}
.contacts .section-body {
    display: flex;
    gap: 40px;
    justify-content: start;
}
.contact-row {
    display: flex;
    flex-direction: column;
    gap: 10px;
}
.contact-value {
    font-size: 20px;
    font-weight: 700;
    line-height: 100%; /* 20px */
    letter-spacing: -0.6px; 
}
.contact-label {
    font-size: var(--fz-14);
    line-height: normal;
    color: var(--color-grey-450-textongrey);
}
.requisites .section-title {
    font-size: 36px;
    letter-spacing: -1.08px;
}
.full-map {
    max-height: 500px;
    overflow: hidden;
    display: flex;
    align-items: center;
}
.requisites-list {
    display: flex;
    flex-direction: column;
    gap: 20px;
}
.requisite-row {
    display: grid;
    grid-template-columns: 1fr max-content;
    gap: 10px;
}
.requisite-row .requisite-label {
    display: grid;
    grid-template-columns: max-content 1fr;
    gap: 10px;
    color: var(--color-grey-450-textongrey);
}
.requisite-row .requisite-label::after {
    content: "";
    display: block;
    width: 100%;
    height: 1px;
    background: #EBEBEB;
    align-self: end;
}
.notfound .r-col {
    display: flex;
    justify-content: center;
}
.notfound .section-title {
    margin-top: 108px;
    margin-bottom: 15px;
    font-size: 42px;
    font-weight: 700;
}
.notfound .section-description {
    margin-bottom: 25px;
    font-size: 16px;
    line-height: 150%;
}
.notfound .section-title, .notfound .section-description {
    max-width: 490px;
}
.btn-home {
    padding: 18px 42px; 
    font-size: 18px;
    font-weight: 500; 
}
.certs-list {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    column-gap: 20px;
    row-gap: 50px;
}
.cert {
    display: flex;
    flex-direction: column;
    gap: 20px;
	cursor: pointer;
}
.cert-img {
    height: 420px;
    border-radius: var(--radius-24);
    overflow: hidden;
}
.cert-img img {
    height: 100%;
    width: 100%;
    object-fit: cover;
}
.cert-title {
    font-size: 16px;
    font-weight: 500;
    line-height: 100%; /* 16px */
    letter-spacing: -0.48px; 
}
.history .container {
	position: relative;
}
.history .section-title {
	max-width: 400px;
	position: absolute;
	left: 0;
	top: 0;
	z-index: 100;
}
.history-point {
	display: flex;
	gap: 125px;
	align-items: end;
}
.history-point .l-col {
	max-width: 400px;
	width: 100%;
	background: #ffffff;
}
.history-point .r-col {
	max-width: 715px;
	width: 100%;
}
.history-point .year {
	font-size: 32px;
	font-weight: 700;
	line-height: normal;
}
.history-point .year-event {
	font-size: 16px;
	font-weight: 400;
	line-height: normal;
	margin-top: 20px;
}
.history-slider-buttons {
	margin-bottom: 40px;
	display: flex;
	gap: 30px;
}
.history-button-prev, .history-button-next {
	width: 56px;
	height: 56px;
	display: flex;
	align-items: center;
	justify-content: center;
	background: var(--color-grey-50);
	border-radius: 50%;
	cursor: pointer;
}
.history-slider-buttons .swiper-button-disabled {
	opacity: 0.5;
}
.history-button-prev::after, .history-button-next::after {
	content: "";
	display: block;
	width: 24px;
	height: 24px;
}
.history-button-prev::after {
	background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24' viewBox='0 0 24 24' fill='none'%3E%3Cpath d='M14.9999 6L9.70703 11.2929C9.37369 11.6262 9.20703 11.7929 9.20703 12C9.20703 12.2071 9.37369 12.3738 9.70703 12.7071L14.9999 18' stroke='%23192741' stroke-width='1.5' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");
}
.history-button-next::after {
	background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24' viewBox='0 0 24 24' fill='none'%3E%3Cpath d='M9.00008 6L14.293 11.2929C14.6263 11.6262 14.793 11.7929 14.793 12C14.793 12.2071 14.6263 12.3738 14.293 12.7071L9.00008 18' stroke='%23192741' stroke-width='1.5' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");
}
.history-point .r-col {
	height: 490px;
	display: flex;
	align-items: center;
	justify-content: center;
}
.history-point img {
	border-radius: var(--radius-24);
	height: 100%;
    width: 100%;
	object-fit: cover;
}
.history-timeline {
	display: flex;
	align-items: start;
	justify-content: space-between;
	height: 58px;
	margin-top: 37px;
}
.bullet-point {
	display: flex !important;
	align-items: center;
	justify-content: end;
	opacity: 1 !important;
	background: transparent !important;
	flex-grow: 1;
	height: initial !important;
	position: relative;
	margin: 0 !important;
}
.bullet-point:first-child {
	width: 9px;
	flex-grow: 0;
	justify-content: center;
}
.bullet-point:first-child::before,
.bullet-point.swiper-pagination-bullet-active:first-child .bullet-dot::before {
	display: none;
}
.bullet-point:last-child {
	flex-grow: 2;
}
.bullet-point::before, .bullet-point:last-child::after {
	content: "";
	display: block;
	height: 1px;
	width: 100%;
	background: var(--color-grey-300);
}
.bullet-dot {
	display: flex;
	align-items: center;
	justify-content: center;
	position: relative;
}
.bullet-dot::before {
	content: "";
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translate(-50%,-50%);
	z-index: 1;
	display: block;
	width: 25px;
	height: 25px;
	border-radius: 50%;
	border: 1px solid transparent;
}
.bullet-dot::after {
	content: "";
	position: relative;
	z-index: 2;
	display: block;
	width: 9px;
	height: 9px;
	background: var(--color-grey-300);
	border-radius: 50%;
}
.bullet-point.swiper-pagination-bullet-active .bullet-dot::before {
	background: #ffffff;
	border-color: var(--color-main);
}
.bullet-point.swiper-pagination-bullet-active .bullet-dot::after,
.bullet-point.prev-active .bullet-dot::after,
.bullet-point.swiper-pagination-bullet-active::before,
.bullet-point.prev-active::before {
	background: var(--color-main);
}
.bullet-year {
	position: absolute;
	top: calc(100% + 18px);
	right: -16px;
}
.bullet-point:first-child .bullet-year {
	left: 0;
	right: initial;
}
.bullet-point:last-child .bullet-year {
	left: 50%;
	right: initial;
	transform: translateX(-50%);
}
.safety-ecology .l-col {
    justify-content: center;
}
.safety-ecology .section-img {
    height: 496px;
    display: flex;
    align-items: center;
    justify-content: center;
    border-radius: var(--radius-24);
}
.safety-ecology .section-img img {
    object-fit: cover;
    height: 100%;
}
.projects-list {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 20px;
    margin-bottom: 47px;
}
.projects-list .project-item {
    display: flex;
    border-radius: var(--radius-24);
    overflow: hidden;
}
.projects-list .project-item a {
    position: relative;
}
.projects-list .project-item-img {
    display: flex;
    height: 100%;
}
.projects-list .project-item-text {
    position: absolute;
    left: 10px;
    right: 10px;
    bottom: 10px;
    padding: 20px;
    display: flex;
    flex-direction: column;
    gap: 10px;
    border-radius: 18px;
    background: rgba(25, 39, 65, 0.20);
    backdrop-filter: blur(50px);
}
.projects-list .project-item-name {
    font-size: 18px;
    font-weight: 700;
    line-height: 100%; /* 18px */
    letter-spacing: -0.54px; 
}
.projects-list .project-item-props {
    font-size: 16px;
    font-weight: 400;
    line-height: 150%; /* 24px */ 
}
/* .pagination {
    display: flex;
    justify-content: center;
}
.page, .pagi-dots {
    display: flex;
    width: 52px;
    height: 52px;
    justify-content: center;
    align-items: center;
    color: var(--color-grey-text2);
}
.page.next {
    width: auto;
    padding-left: 36px;
    padding-right: 36px;
    background: var(--color-grey-bg);
    font-size: 16px;
    font-weight: 500;
}
.page.current, .page:hover, .page.next:hover {
    background: var(--color-main);
    color: #ffffff
} */
.project-page .title-section .container > * {
    width: 100%;
}
.project-props {
    margin-top: 30px;
    margin-bottom: 50px;
}
.project-props-list {
    display: grid;
    grid-template-columns: repeat(5, 1fr);
    gap: 20px;
}
.project-prop {
    display: grid;
    grid-template-columns: 32px 1fr;
    column-gap: 14px;
    row-gap: 6px;
}
.project-prop-icon {
    grid-row: span 2;
    align-self: center;
    width: 32px;
    height: 32px;
    overflow: hidden;
}
.project-prop-label {
    color: var(--color-grey-400-medium);
    font-size: var(--fz-14);
    line-height: normal;
}
.project-prop-value {
    font-size: 16px;
    font-weight: 500;
    line-height: normal;
}
.project-page .page-content p + p, .project-page .page-content ul {
    margin: 15px 0;
}
.main-steps .section-description {
    margin-top: 24px;
    margin-bottom: 35px;
}
.main-steps-list, .main-steps-list .swiper-wrapper {
    display: flex;
    flex-wrap: wrap;
    gap: 20px;
    counter-reset: mainStep;
}
.main-step {
    width: calc(50% - 10px);
    min-height: 254px;
    border-radius: var(--radius-24);
    background: #F6F8FA;
    padding: var(--padding-30);
}
.main-step::before {
    counter-increment: mainStep;
    content: counter(mainStep);
    display: flex;
    width: 40px;
    height: 40px;
    margin-bottom: 20px;
    align-items: center;
    justify-content: center;
    background: #ffffff;
    font-size: 18px;
    font-weight: 700;
    border-radius: 50%;
}
.main-step-name {
    font-size: 22px;
    font-style: normal;
    font-weight: 700;
    line-height: 100%; /* 22px */
    letter-spacing: -0.66px;
    margin-bottom: 16px;
}
.main-step-desc {
    color: #818793;
    font-size: 16px;
    font-weight: 400;
    line-height: 150%; /* 24px */
}
.work-props-grid {
    display: grid;
    grid-template-columns: repeat(12, 1fr);
    grid-template-rows: repeat(2, 1fr);
    gap: 20px;
    margin-top: 40px;
}
.work-prop {
    border-radius: var(--radius-24);
    overflow: hidden;
    background: var(--color-grey-50);
    padding: var(--padding-30);
    display: flex;
    flex-direction: column;
}
.work-prop:nth-child(1) {
    grid-column: 1 / span 5;
    justify-content: end;
    gap: 16px;
    background-size: cover;
    background-position: center;
    position: relative;
}
.work-prop:nth-child(1)::before {
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    background: linear-gradient(0deg, rgba(25, 39, 65, 0.71) 0%, rgba(25, 39, 65, 0.71) 100%);
    z-index: 0;
}
.work-prop:nth-child(2) {
    grid-column: 6 / span 3;
}
.work-prop:nth-child(3) {
    grid-column: 9 / span 4;
    grid-row: 1 / span 2;
    display: flex;
    flex-direction: column;
    justify-content: space-between;
}
.work-prop:nth-child(4) {
    grid-column: 1 / span 3;
}
.work-prop:nth-child(5) {
    grid-column: 4 / span 5;
}
.building-main-props .flex-2col {
    display: flex;
    justify-content: space-between;
}
.building-main-props .flex-2col > div {
    flex: initial;
}
.building-main-props .l-col {
    max-width: 566px;
}
.building-main-props .r-col {
    max-width: 610px;
}
.work-prop:nth-child(1) .work-prop-title {
    color: #ffffff;
    font-size: 22px;
    font-weight: 700;
    line-height: 100%; /* 22px */
    letter-spacing: -0.66px;
}
.work-prop:nth-child(1) .work-prop-description {
    color: var(--color-grey-50);
}
.work-prop-title {
    position: relative;
    z-index: 1;
    font-size: 22px;
    font-weight: 700;
    line-height: 100%; /* 22px */
    letter-spacing: -0.66px;
    margin-top: 30px;
    margin-bottom: 16px;
}
.work-prop-description {
    position: relative;
    z-index: 1;
    color: var(--color-grey-450-textongrey);
    font-size: 16px;
}
.building-main-props-list {
    display: flex;
    flex-direction: column;
    gap: 30px;
}
.building-main-prop {
    display: grid;
    grid-template-columns: 2fr 3fr;
    column-gap: 20px;
    font-size: 16px;
    line-height: normal;
}
.building-main-prop-label {
    color: var(--color-grey-450-textongrey);
}
.building-main-prop-label span {
    display: flex;
    gap: 10px;
}
.building-main-prop-label span::after {
    content: "";
    height: 1px;
    background: var(--color-grey-200-border);
    align-self: end;
    flex-grow: 1;
}
.building-main-props .r-col {
    display: flex;
    height: 100%;
    border-radius: var(--radius-24);
    overflow: hidden;
}
.building-main-props .r-col img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}
.homepage .wrapper {
    padding-top: 0;
}
.wrapper {
    position: relative;
    padding-top: 198px;
}
.header-toolbar {
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
}
.project-photos .section-body {
    position: relative;
}
.galleryMain {
    margin-bottom: 20px;
}
.galleryMain .swiper-slide {
    border-radius: var(--radius-24);
    overflow: hidden;
}
.galleryThumbs .swiper-slide {
    border-radius: 16px;
    overflow: hidden;
    height: 118px;
}
.galleryThumbs .swiper-slide img {
    height: 100%;
    object-fit: cover;
}
.swiper-button-next, .swiper-button-prev {
    width: 20px;
    height: 20px;
}
.swiper-button-prev {
    left: -45px;
}
.swiper-button-next {
    right: -45px;
}
.swiper-button-next::after, .swiper-button-prev::after {
    content: "";
    display: block;
    width: 20px;
    height: 20px;
    font-size: inherit;
    font-family: inherit;
    background-repeat: no-repeat;
    background-position: center;
}
.swiper-button-prev::after {
    background-image: url("data:image/svg+xml,%3Csvg width='16' height='16' viewBox='0 0 16 16' fill='none' xmlns='http://www.w3.org/2000/svg' xmlns:xlink='http://www.w3.org/1999/xlink'%3E%3Cpath d='M8 16L9.41016 14.59L3.83008 9L16 9L16 7L3.83008 7L9.41016 1.41003L8 0L0 8L8 16Z' fill='%23192741' fill-opacity='1' fill-rule='nonzero'/%3E%3C/svg%3E");
}
.swiper-button-next::after {
    background-image: url("data:image/svg+xml,%3Csvg width='16' height='16' viewBox='0 0 16 16' fill='none' xmlns='http://www.w3.org/2000/svg' xmlns:xlink='http://www.w3.org/1999/xlink'%3E%3Cpath id='icon/navigation/arrow_forward_24px' d='M8 0L6.58984 1.41003L12.1699 7L0 7L0 9L12.1699 9L6.58984 14.59L8 16L16 8L8 0Z' fill='%23192741' fill-opacity='1' fill-rule='nonzero'/%3E%3C/svg%3E");
}
.paragraph {
    display: grid;
    grid-template-columns: 180px 1fr;
    gap: 20px;
}
.paragraph + .paragraph {
    margin-top: 24px;
}
.paragraph-head {
    font-size: 26px;
    font-weight: 700;
    line-height: 100%; /* 26px */
    letter-spacing: -0.78px; 
}
.paragraph-content {
    font-size: 18px;
    font-weight: 400;
    line-height: 150%;
}
.projects-map-interactive {
    background-color: var(--color-grey-3);
    position: relative;
	z-index: 100;
    width: 840px;
    height: 100%;
}
.balloon {
    position: absolute;
    /* left: 10px;
    right: 10px;
    bottom: 10px; */
    background: var(--color-main);
    backdrop-filter: blur(50px);
    border-radius: 18px;
    padding: var(--padding-20);
    color: #ffffff;
}
.balloon-inner {
    display: flex;
	flex-direction: column;
    /*align-items: center;*/
    justify-content: space-between;
    gap: 30px;
}
.balloon-title {
    font-size: 24px;
    font-weight: 700;
    line-height: 100%; /* 24px */
    letter-spacing: -0.72px;
	max-width: 360px;
}
.balloon-props {
    display: flex;
    gap: 20px;
}
.balloon-prop {
    display: flex;
    align-items: center;
    gap: 10px;
    font-size: 16px;
}
.balloon-prop-content {
    display: flex;
    flex-direction: column;
    gap: 4px;
	white-space: nowrap;
}
.balloon .balloon-prop-label {
	color: var(--color-grey-70);
}
.balloon-prop-label {
    line-height: normal;
}
.balloon-prop-value {
    font-size: 16px;
    font-weight: 500;
    line-height: normal;
}
.balloon .balloon-prop-icon path {
	stroke: #ffffff;
}
.balloon-prop-icon path {
	stroke: var(--color-main);
}
.balloon .close {
	position: absolute;
    right: 30px;
    top: 30px;
    display: flex;
	align-items: center;
	justify-content: center;
}
.balloon .close::before {
	content: "";
	width: 16px;
	height: 16px;
	background-image: url("data:image/svg+xml,%3Csvg width='16' height='16' viewBox='0 0 16 16' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M15 1L1 15M1 1L15 15' stroke='%23FFFFFF' stroke-width='1.5' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");
	background-size: cover;
}
.projects-map .flex-2col {
    height: 570px;
    border-radius: var(--radius-24);
    overflow: hidden;
}
.projects-map .r-col {
    display: flex;
}
.projects-map-list {
    padding: var(--padding-30) 0px 0px 0px;
    background: var(--color-grey-50);
    width: 100%;
    height: 100%;
}
.projects-map-search {
    padding: 0px 30px;
}
.projects-map-search-field {
    height: 60px;
    display: flex;
    align-items: center;
    gap: 10px;
    background: #ffffff;
    padding: 16px;
    border-radius: 12px;
}
.projects-map-search-field input[type="button"] {
    display: block;
    width: 24px;
    height: 24px;
    border: none;
    outline: none;
    background-color: transparent;
    background-image: url("data:image/svg+xml,%3Csvg width='24' height='24' viewBox='0 0 24 24' fill='none' xmlns='http://www.w3.org/2000/svg' xmlns:xlink='http://www.w3.org/1999/xlink'%3E%3Cpath d='M15.7559 14.2549L14.9668 14.2549L14.6855 13.9849C15.666 12.8447 16.2559 11.3647 16.2559 9.75488C16.2559 6.16504 13.3457 3.25488 9.75586 3.25488C6.16602 3.25488 3.25586 6.16504 3.25586 9.75488C3.25586 13.3447 6.16602 16.2549 9.75586 16.2549C11.3652 16.2549 12.8457 15.665 13.9863 14.6851L14.2559 14.9648L14.2559 15.7549L19.2559 20.7451L20.7461 19.2549L15.7559 14.2549ZM5.25586 9.75488C5.25586 12.2451 7.26562 14.2549 9.75586 14.2549C12.2461 14.2549 14.2559 12.2451 14.2559 9.75488C14.2559 7.26465 12.2461 5.25488 9.75586 5.25488C7.26562 5.25488 5.25586 7.26465 5.25586 9.75488Z' clip-rule='evenodd' fill='%23ADB3BE' fill-opacity='1' fill-rule='evenodd'/%3E%3C/svg%3E");
    background-repeat: no-repeat;
    background-position: center;
}
.projects-map-search-field input[type="search"] {
    display: block;
    flex-grow: 1;
    font-size: 16px;
    line-height: normal;
    color: var(--color-main);
    border: none;
    outline: none;
    background: transparent;
}
.projects-map-search-field input[type="search"]::placeholder {
    color: var(--color-grey-400-medium);
}
.projects-map-items {
    margin-top: 20px;
	max-height: 460px;
}
.projects-map-item a {
    display: flex;
    gap: 10px;
    padding: 20px 30px;
    border-bottom: 1px solid var(--color-grey-200-border);
    cursor: pointer;
}
.projects-map-item-content {
    flex-grow: 1;
    display: flex;
    flex-direction: column;
    gap: 10px;
}
.projects-map-item-name {
    font-size: 18px;
    font-style: normal;
    font-weight: 700;
    line-height: 100%; /* 18px */
    letter-spacing: -0.54px; 
}
.projects-map-item-type {
    font-size: 16px;
    font-weight: 400;
    line-height: normal;
    color: var(--color-grey-450-textongrey);
}
.projects-map-item-icon {
    display: flex;
    align-items: center;
}
[class*="ymaps-2"][class*="-ground-pane"] {
	filter: url("data:image/svg+xml;utf8,<svg xmlns=\'http://www.w3.org/2000/svg\'><filter id=\'grayscale\'><feColorMatrix type=\'matrix\' values=\'0.3333 0.3333 0.3333 0 0 0.3333 0.3333 0.3333 0 0 0.3333 0.3333 0.3333 0 0 0 0 0 1 0\'/></filter></svg>#grayscale"); /* Firefox 3.5+ */
    -ms-filter: grayscale(1);
	-webkit-filter: grayscale(1);
	-moz-filter: grayscale(1);
	-o-filter: grayscale(1);
}
.mobile-contacts-wrap {
    display: none;
}
.feedback-wrapper {
    display: none;
    max-width: 454px;
    border-radius: var(--radius-24);
    padding: 36px;
}
.feedback-inner {
    display: flex;
    flex-direction: column;
    gap: 30px;
}
.feedback-form, .feedback-complete {
    display: flex;
    flex-direction: column;
    gap: 20px;
    width: 100%;
}
.feedback-title {
    font-size: 40px;
    font-weight: 700;
    line-height: 100%;
    letter-spacing: -1.2px;
    margin-bottom: 12px;
}
.feedback-field-row:not(:first-child) {
    margin-top: 14px;
}
.feedback-field-row {
    display: flex;
    flex-direction: column;
    background: var(--color-grey-50);
    padding: 16px;
    border-radius: 12px;
    position: relative;
}
.feedback-field-row input[type="text"] {
    font-size: 16px;
    color: var(--color-main);
    border: none;
    outline: none;
    background: transparent;
    padding: 0;
    margin-top: 4px;
}
.feedback-field-row label {
    color: var(--color-grey-450-textongrey);
    font-size: 12px;
    margin-top: -5px;
}
.feedback-policy {
    color: var(--color-grey-400-medium);
    font-size: var(--fz-14);
}
.feedback-field-row input[type="text"]::placeholder {
    color: var(--color-grey-450-textongrey);
}
.feedback-field-row, .feedback-row .btn {
    height: 60px;
    width: 100%;
}
.feedback-field-row.file {
	height: auto;
}
.feedback-wrapper .is-close-btn {
    top: 16px !important;
    right: 16px !important;
    width: 24px !important;
    height: 24px !important;
    background: transparent !important;
}
.feedback-wrapper .is-close-btn svg {
    stroke: var(--color-grey-400-medium) !important;
}
.feedback-field-row .error-msg {
    display: none;
}
.feedback-field-row.error::before, .feedback-field-row.complete::before {
    content: "";
    position: absolute;
    top: 50%;
    right: 16px;
    transform: translateY(-50%);
    width: 20px;
    height: 20px;
    flex-shrink: 0;
    background-size: 100%;
}
.feedback-field-row.error::before {
    background-image: url("data:image/svg+xml,%3Csvg width='22' height='22' viewBox='0 0 22 22' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M4.32171 8.68293C6.73539 4.41199 7.94222 2.27651 9.59826 1.72681C10.5093 1.4244 11.4907 1.4244 12.4017 1.72681C14.0578 2.27651 15.2646 4.41199 17.6783 8.68293C20.092 12.9539 21.2988 15.0893 20.9368 16.8293C20.7376 17.7866 20.2469 18.6549 19.535 19.3097C18.241 20.5 15.8274 20.5 11 20.5C6.17265 20.5 3.75897 20.5 2.46496 19.3097C1.75308 18.6549 1.26239 17.7866 1.06322 16.8293C0.701194 15.0893 1.90803 12.9539 4.32171 8.68293Z' stroke='%23FF0D65' stroke-width='1.5'/%3E%3Cpath d='M10.992 15H11.001' stroke='%23FF0D65' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'/%3E%3Cpath d='M11 12L11 8' stroke='%23FF0D65' stroke-width='1.5' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");
}
.feedback-field-row.complete::before {
    background-image: url("data:image/svg+xml,%3Csvg width='22' height='22' viewBox='0 0 22 22' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M21 11C21 5.47715 16.5228 1 11 1C5.47715 1 1 5.47715 1 11C1 16.5228 5.47715 21 11 21C16.5228 21 21 16.5228 21 11Z' stroke='%2324B642' stroke-width='1.5'/%3E%3Cpath d='M7 11.5L9.5 14L15 8' stroke='%2324B642' stroke-width='1.5' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");
}
.feedback-field-row.error .error-msg {
    display: flex;
    justify-content: center;
    min-width: 100px;
    position: absolute;
    top: -24px;
    right: -23px;
    background: #FF0D65;
    border-radius: 100px;
    padding: 4px 10px;
    color: #ffffff;
    font-size: 12px;
    font-weight: 500;
    text-align: center;
}
.feedback-field-row.error .error-msg::after {
    content: "";
    position: absolute;
    right: 41px;
    bottom: -15px;
    display: block;
    border: 8px solid transparent; 
	border-top: 8px solid #FF0D65;
}
.feedback-field-row.error input[type="text"] {
    color: #FF0D65;
}
.feedback-thanks {
    font-size: 40px;
    font-weight: 700;
    line-height: 100%; /* 40px */
    letter-spacing: -1.2px;
}
.feedback-thanks, .feedback-note {
    text-align: center;
}
.feedback-note {
    margin-top: 12px;
}
.feedback-wrapper.complete .feedback-inner:first-of-type {
    display: none;
}
.feedback-wrapper.complete .feedback-inner:last-of-type {
	align-items: center;
}
.feedback-wrapper input:disabled {
	opacity: 0.6;
}
/* End */


/* Start:/local/templates/oxwl/styles/media.css?174426128027628*/
@media screen and (max-width: 1160px) {
    :root {
        --radius-24: 20px;
        --padding-30: 20px;
        --fz-14: 12px;
    }
    .header-toolbar,
    .header-col:last-child,
    .header-links li:not(:first-child),
    .header-menu-btn span {
        display: none;
    }
    .wrapper {
        padding-top: 84px;
    }
    .module {
        margin: 40px 0;
    }
    .flex-2col {
        flex-direction: column;
    }
    .btn {
        height: 50px;
        padding: 16px 24px;
    }
    .block-body {
        overflow: hidden;
    }
    .block-body .header {
        background: #ffffff;
        border-bottom: 1px solid var(--color-grey-200-border) !important;
    }
    .block-body .logo .white {
        display: none;
    }
    .block-body .logo .black {
        display: block;
    }
    .block-body .header-menu-btn::before {
        background-image: url("data:image/svg+xml,%3Csvg width='24' height='24' viewBox='0 0 24 24' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M19 5L5 19M5 5L19 19' stroke='%23141B34' stroke-width='1.5' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");
    }
    .header {
        top: 0;
    }
    .homepage .header {
        border-bottom: 1px solid var(--color-grey-15);
    }
    .header {
        border-bottom: 1px solid var(--color-grey-200-border);
    }
    .header .section-body {
        padding: 20px 0;
    }
    .header-col:first-child {
        flex-grow: 1;
        justify-content: space-between;
    }
    .logo svg {
        height: 27px;
        width: auto;
    }
    .header-menu-btn::before {
        margin-right: 0;
    }
    .title-section {
        height: initial !important;
        margin-top: 16px;
    }
    .title-section + section:not(.under-title) {
        margin-top: 20px;
    }
    .homepage .page-title {
        margin-top: 98px;
    }
    .title-section .container > * {
        margin-right: 0;
    }
    .page-title {
        font-size: 32px;
        font-weight: 700;
        line-height: 100%; /* 32px */
        letter-spacing: -0.96px; 
    }
    .title-section .page-buttons {
        flex-direction: column;
        gap: 8px;
    }
    .page-subtitle {
        margin-top: 130px;
        font-size: 14px;
        line-height: normal;
    }
    .title-section .page-buttons {
        margin-top: 24px;
        width: 100%;
        margin-bottom: 30px;
    }
    .section-label {
        font-size: 14px;
        margin-bottom: 10px;
    }
    .section-title {
        font-size: 26px !important;
        letter-spacing: -0.78px !important;
        margin-bottom: 20px;
    }
    .services .section-title {
        width: initial;
    }
    .sliderOnMobile {
        overflow: hidden;
        margin: 0 -16px;
        padding: 0 16px;
        gap: initial;
    }
    .homepage .masonry-1 > div {
        display: flex;
        flex-direction: initial;
        gap: initial;
    }
    .homepage .masonry-1-item {
        width: 272px;
    }
    .masonry-1-item, .masonry-1-item a {
        flex: initial;
    }
    .masonry-1-item {
        flex-shrink: 0;
    }
    .masonry-1-item a {
        column-gap: 16px;
        row-gap: 10px;
    }
    .homepage .masonry-1-item .icon {
        margin-bottom: 20px;
    }
    .masonry-1-item .icon {
        grid-column: 1 / span 1;
        grid-row: 1 / span 1;
    }
    .masonry-1-item .icon svg {
        width: 24px;
        height: 24px;
    }
    .masonry-1-item .title {
        font-size: 18px;
        font-weight: 700;
        line-height: 100%; /* 18px */
        letter-spacing: -0.54px; 
        /*margin-bottom: 0;*/
        grid-row: 1;
        grid-column: 2 / span 1;
    }
    .masonry-1-item .description {
        font-size: var(--fz-14);
        grid-column: 1 / -1;
        grid-row: 2 / span 1;
    }
    .masonry-1-item a::after {
        grid-column: 3;
        grid-row: 1 / span 1;
    }
    .masonry-2 > div {
        display: flex;
        gap: initial;
    }
    .masonry-2-item {
        width: 272px;
        height: 183px;
        flex-shrink: 0;
    }
    .masonry-2-item .link {
        left: 20px;
        right: 20px;
        bottom: 20px;
        font-size: 18px;
        font-weight: 700;
        line-height: 100%; /* 18px */
        letter-spacing: -0.54px; 
    }
    .projects-tabs, .projects-categories {
        margin: 0 -16px;
        padding: 0 16px;
        margin-bottom: 20px;
    }
    .projects-tabs-wrapper {
        gap: initial;
    }
    .projects-tab, .project-category {
        font-size: 14px;
        line-height: normal;
    }
    .project-slider .swiper-pagination, .project-photos .swiper-pagination {
        display: flex;
        position: static;
        justify-content: center;
        margin-top: 20px;
    }
    .project-slider .swiper-pagination-bullet, .project-photos .swiper-pagination-bullet {
        width: 9px;
        height: 9px;
        opacity: initial;
        background: #DEE1E6;
    }
    .project-slider .swiper-pagination-bullet-active, .project-photos .swiper-pagination-bullet-active {
        background: var(--color-main);
    }
    .project-item {
        display: flex;
        flex-direction: column;
        gap: 8px;
    }
    .project-item-img:last-child {
        display: none;
    }
    .project-item-info {
        justify-content: start;
        gap: 20px;
        padding: 20px;
        height: initial !important;
    }
    .project-item-props {
        font-size: 14px;
    }
    .project-item-name {
        font-size: 18px;
        letter-spacing: -0.54px; 
    }
    .project-item-btns {
        display: none;
    }
	.advantages .l-col {
		max-width: initial;
	}
	.advantages .r-col .section-img, .sec2cols .l-col .section-img {
		display: none;
	}
    .advantages .l-col .section-img, .sec2cols .l-col .section-img {
        display: flex;
    }
	/*.advantages .section-img, .sec2cols .section-img {*/
	.advantages .section-img {
		height: 200px;
	}
    .advantages .section-img img, .sec2cols .section-img img {
        height: 100%;
        width: 100%;
        object-fit: cover;
    }
    .advantages .r-col {
        display: none;
    }
    .section-description {
        margin: 20px 0 !important;
        font-size: 14px;
    }
    .advantages-list {
        grid-template-columns: 1fr;
        gap: 16px;
    }
    .advantage-name {
        font-size: 16px;
        letter-spacing: -0.48px; 
    }
    .advantage-desc {
        font-size: var(--fz-14);
    }
    .advantages-list + .btn {
        width: 100%;
        justify-content: space-between;
    }
    .faq-item {
        padding: 16px;
        gap: 6px;
    }
    .faq-item-title {
        font-size: 16px;
    }
    .faq-item-body {
        font-size: 14px;
    }
    .faq-item + .faq-item {
        margin-top: 8px;
    }
    .license-list .swiper-wrapper {
        gap: initial;
    }
    .license-item {
        flex-shrink: 0;
    }
    .location {
        margin-bottom: 0;
    }
	.location #footer-map {
		/*height: 920px;*/
		height: 320px;
	}
    .location-card {
		position: static;
        width: initial;
		top: initial;
        left: 16px;
        right: 16px;
        bottom: 16px;
        transform: none;
        padding: 20px;
        gap: 20px;
		border-radius: 0;
    }
    .location-card-img {
        display: flex;
        align-items: center;
        justify-content: center;
        height: 180px;
    }
    .location-card-img img {
        height: 100%;
        width: 100%;
        object-fit: cover;
    }
    .location-card-content {
        gap: 16px;
    }
    .location-card .company-address {
        margin-top: 10px;
    }
    .location-card-row {
        gap: 8px;
    }
    .location-card .company-name {
        font-size: 20px;
        letter-spacing: -0.6px; 
    }
    .location-card .company-address {
        font-size: 14px;
    }
    .location-card-row-label {
        font-size: var(--fz-14);
    }
    .location-card-row-value {
        font-size: 18px;
        letter-spacing: -0.54px; 
    }
    .location-card-link .btn {
        height: 50px;
        font-size: 14px;
        font-weight: 500;
        line-height: normal;
        letter-spacing: -0.42px; 
    }
    .footer {
        padding: 20px 16px;
    }
    .footer-copyright {
        flex-direction: column;
        gap: 10px;
    }
    .block-body .header-mobile-modal {
        display: block !important;
        position: fixed;
        left: 0;
        bottom: -15px;
        top: 68px;
        right: 0;
        background: #ffffff;
        padding: 16px;
    }
    .header-modal-menu {
        position: static;
        border-radius: 0;
        box-shadow: none;
    }
    .header-menu-wrap {
        display: flex;
        flex-direction: column;
        position: relative;
    }
    .header-menu-main-list {
        display: none;
        padding: 0;
    }
    .header-menu-main-list.active {
        display: block;
    }
    .header-menu-list-title {
        font-size: 20px;
        font-weight: 700;
        line-height: 100%; /* 20px */
        letter-spacing: -0.6px;
        margin-bottom: 12px;
        display: flex;
        align-items: center;
        gap: 10px;
    }
    .header-menu-main-item.active,
    .header-menu-main-item.active + .header-menu-main-item {
        border-top: 1px solid var(--color-grey-200-border) !important;
    }
    .header-menu-main-item:first-child, .header-menu-main-item:nth-child(2) {
        border-top-color: transparent !important;
    }
    .header-menu-main-item.active {
        background: none;
        border-radius: 0;
    }
    .header-menu-main-item:last-child {
        border-bottom: 1px solid var(--color-grey-200-border) !important;
    }
    .header-menu-main-item, .header-mobile-menu-item {
        gap: initial;
        padding: 20px 0;
    }
    .header-menu-main-item .header-menu-link, .header-menu-sub-list .header-menu-link {
        font-size: 14px;
    }
    .header-menu-sub-list {
        padding: 0;
    }
    .header-menu-sub-list.active {
        border-left: none;
        min-width: initial;
    }
    .header-sub-list-title {
        margin-bottom: 4px;
        display: flex;
        gap: 10px;
    }
    .header-sub-list-title::before, .header-menu-list-title::before {
        content: "";
        width: 24px;
        height: 24px;
        background-image: url("data:image/svg+xml,%3Csvg width='24' height='24' viewBox='0 0 24 24' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M5 12L20 11.9998' stroke='%23192741' stroke-width='1.5' stroke-linecap='round' stroke-linejoin='round'/%3E%3Cpath d='M8.99998 6.99988L4.70709 11.2928C4.37375 11.6261 4.20709 11.7928 4.20709 11.9999C4.20709 12.207 4.37375 12.3737 4.70709 12.707L8.99998 16.9999' stroke='%23192741' stroke-width='1.5' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");
    }
    .header-menu-main-list.active,
    .header-menu-wrap .header-menu-sub-list.active {
        position: absolute;
        top: 0;
        left: 0;
        right: 0;
        bottom: 0;
        background: #ffffff;
    }
    .header-mobile-menu {
        display: block;
        padding: 0;
    }
    .block-body .social-btn svg {
        fill: var(--color-main);
    }
    .block-body .social-btn {
        background: var(--color-grey-50);
    }
    .block-body .header-contact-main .phone {
        color: var(--color-main);
    }
    .block-body .header-contact-main .workinghours {
        color: var(--color-grey-450-textongrey);
    }
    .block-body .header-label svg .white {
        fill: var(--color-main);
    }
    .block-body .header-label svg .black {
        fill: #ffffff;
    }
    .header-contact-main .phone::after {
        display: none;
    }
    .header-col-row-left {
        flex-direction: row-reverse;
        justify-content: start;
        gap: 30px;
    }
    .header-col:last-child .header-col-row {
        flex-direction: column-reverse;
        gap: 20px;
        margin-bottom: 16px;
    }
    .header-socials {
        gap: 10px;
    }
    .breadcrumbs-list {
        margin: 0 -16px;
        padding: 0 16px;
        overflow: hidden;
    }
    .breadcrumbs-list-wrapper {
        gap: initial;
    }
    .breadcrumb {
        flex-shrink: 0;
    }
    .projects-map .container {
        padding: 0;
    }
    .projects-map .section-title {
        padding: 0 16px;
    }
    .projects-map .flex-2col {
        position: relative;
        height: initial;
		flex-direction: column-reverse;
    }
    .projects-map-interactive {
        width: initial;
        height: 500px;
    }
    .projects-map-search-field {
        height: 50px;
    }
    .projects-map .r-col {
        /*position: absolute;
        top: 16px;
        left: 16px;
        right: 16px;
        z-index: 1000;
        overflow: hidden;*/
        border-radius: var(--radius-24);
    }
    .projects-map-list {
        padding-top: 20px;
        padding-bottom: 0;
    }
    .projects-map-search {
        padding: 0 20px;
    }
    .projects-map-items {
        max-height: 425px;
        overflow-y: auto;
        margin-top: 10px;
    }
    .projects-map-item {
        padding: 16px 20px;
    }
    .projects-map-item-name {
        font-size: 16px;
        letter-spacing: -0.48px; 
    }
    .projects-map-item-type {
        font-size: var(--fz-14);
    }
	.balloon {
		width: 80vw;
        padding: 20px;
	}
    .balloon-inner {
        flex-direction: column;
        align-items: initial;
        justify-content: initial;
        gap: 20px;
        border-radius: 14px;
    }
    .balloon-title {
		max-width: initial;
        font-size: 20px;
        letter-spacing: -0.6px; 
    }
    .balloon-prop-label {
        font-size: var(--fz-14);
    }
    .balloon-prop-value {
        font-size: 14px;
    }
	.balloon .close {
		right: 16px;
		top: 16px;
	}
	.balloon .close::before {
		width: 12px;
		height: 12px;
	}
    .under-title .section-body {
        flex-direction: column-reverse;
        gap: 20px;
    }
    .subtitle-row {
        flex-direction: column;
        gap: 20px;
    }
    .page-image {
        height: 200px;
        margin-top: 20px;
    }
    .subtitle-btn .btn {
        width: 100%;
    }
    .sec2cols .flex-2col, .experience .flex-2col {
        display: flex;
        flex-direction: column;
        gap: 20px;
    }
    .sec2cols .l-col {
        gap: 20px;
    }
    .sec2cols .r-col {
        display: none;
    }
    .sec2cols .section-img {
        display: block;
        /*height: 230px;*/
	    width: 100%;
	    aspect-ratio: 1;
    }
    .service-prop-value {
        font-size: 14px;
    }
    .service-prop-label {
        font-size: var(--fz-14);
    }
    .service-prop {
        align-items: start;
        gap: 10px;
    }
    .service-props {
        column-gap: 16px;
        row-gap: 8px;
    }
    .main-steps-list .swiper-wrapper {
        display: flex !important;
        gap: initial !important;
        flex-wrap: initial !important;
    }
    .main-step {
        width: 272px;
        padding: 20px;
        flex-shrink: 0;
    }
    .main-step::before {
        margin-bottom: 16px;
    }
    .main-step-name {
        font-size: 18px;
        letter-spacing: -0.54px; 
    }
    .main-step-desc {
        font-size: var(--fz-14);
    }
    .sec2cols .section-description {
        margin: 0 !important;
    }
    .work-props-grid {
        display: grid;
        grid-template-columns: 1fr;
        grid-auto-rows: 1fr;
        gap: 8px;
        margin-top: 20px;
    }
    .work-prop {
        grid-row: initial !important;
        grid-column: initial !important;
    }
    .work-prop:nth-child(1) {
        gap: 0;
    }
    .work-prop .work-prop-title {
        font-size: 18px !important;
        letter-spacing: -0.54px !important; 
    }
    .work-prop-description {
        font-size: var(--fz-14);
    }
    .work-prop-title {
        margin-top: 16px;
        margin-bottom: 10px;
    }
    .work-prop-icon svg {
        width: 24px;
        height: 24px;
    }
    .work-prop:nth-child(3) {
        flex-direction: row;
        justify-content: start;
        gap: 16px;
    }
    .work-prop:nth-child(3) .work-prop-img {
        max-width: 110px;
    }
    .experience-props {
        flex-wrap: wrap;
        gap: 8px;
        margin-top: 20px;
    }
    .experience-prop-value {
        font-size: 32px;
    }
    .experience-prop-label {
        font-size: 14px;
    }
    .experience .section-description {
        margin: 0 !important;
        font-size: 14px;
    }
    .banner .flex-2col {
        gap: 16px;
        padding: var(--padding-30);
    }
    .banner .section-description {
        font-size: var(--fz-14);
    }
    .banner .l-col {
        gap: 10px;
    }
    .banner .r-col, .banner .btn {
        width: 100%;
    }
    .partners {
        margin-top: 20px;
    }
    .partners > div {
        display: flex;
        gap: initial;
    }
    .partner {
        width: 184px;
        flex-shrink: 0;
    }
    .main-steps-type2 .main-step {
        width: 100%;
        min-height: initial;
    }
    .main-steps-type2 .swiper-wrapper {
        flex-direction: column;
        gap: 8px !important;
    }
    .main-steps-type2 .main-step-icon {
        margin-bottom: 16px;
    }
    .main-steps-type2 .main-step-icon svg {
        width: 24px;
        height: 24px;
    }
    .main-steps-type3 .section-title {
        margin-right: 0;
    }
    .main-steps-type3 .main-step {
        width: 160px;
        height: 120px;
    }
    .main-steps-type3 .main-step .main-step-icon svg {
        width: 24px;
        height: 24px;
    }
    .main-steps-type3 .main-step-name {
        font-size: 14px;
        letter-spacing: -0.42px;
        word-break: break-all;
    }
    .banner-type2 .flex-2col {
        grid-template-columns: 1fr;
        position: relative;
        padding-bottom: 44px;
    }
    .banner-type2 .r-col {
        flex-direction: column;
        gap: 8px;
    }
    .banner-type2 .section-body {
        padding: var(--padding-30);
    }
    .pdf-link {
        width: 100% !important;
        font-size: 14px;
        font-weight: 500;
        line-height: normal;
        border-radius: 14px;
    }
    .banner-type2 .all-docs {
        position: absolute;
        left: 0;
        bottom: 0;
        font-size: 14px;
        letter-spacing: -0.42px; 
    }
    .building-types .section-title, brief-terms .section-title, .three-blocks .section-title {
        margin-bottom: 20px;
    }
    .building-types-list .swiper-wrapper {
        display: flex;
        gap: initial;
    }
    .building-type {
        width: 160px;
        height: 120px;
        padding-top: 0;
        flex-shrink: 0;
    }
    .building-type-name {
        border-radius: 14px;
        padding: 10px;
        font-size: 12px;
        letter-spacing: -0.36px; 
    }
    .briefterms .swiper-wrapper {
        gap: initial;
        height: initial;
    }
    .briefterm-col {
        gap: 8px;
    }
    .briefterm-col {
        width: 272px;
        flex-shrink: 0;
    }
    .horiz-blocks .swiper-wrapper {
        gap: initial;
    }
    .horiz-block {
        flex: initial;
        flex-shrink: 0;
        width: 272px;
    }
    .horiz-block-img {
        height: 140px;
        border-radius: 14px;
    }
    .horiz-block-row {
        gap: 8px;
        padding: 10px;
    }
    .horiz-block-name {
        font-size: 16px;
        letter-spacing: -0.48px; 
    }
    .horiz-block-description {
        font-size: var(--fz-14);
    }
    .about-offer .flex-2col {
        gap: 8px;
    }
    .leftside-block, .rightside-block {
        padding: 20px;
    }
    .leftside-block .block-icon {
        width: 60px;
        height: 60px;
        margin-bottom: 16px;
    }
    .block-name {
        font-size: 26px;
        letter-spacing: -0.78px; 
    }
    .block-description {
        margin-top: 16px;
        font-size: 14px;
        line-height: 150%; /* 21px */ 
    }
    .stickers-row {
        gap: 8px;
    }
    .sticker-value {
        font-size: 24px;
        letter-spacing: -0.72px; 
    }
    .sticker-label {
        font-size: var(--fz-14);
    }
    .price-list {
        margin-top: 20px;
        padding-bottom: 20px;
        font-size: 14px;
    }
    .price-list-row {
        padding: 10px 16px;
        border-radius: 12px;

    }
    .price-list-row-value {
        min-width: max-content;
    }
    .consultant .section-body {
        display: flex;
        flex-direction: column;
        gap: 8px;
    }
    .consultant .l-col, .consultant .r-col {
        padding: var(--padding-30);
        flex-direction: column;
        align-items: start;
        gap: 16px;
    }
    .consult-hello, .consult-major, .helpdesk-desc {
        font-size: 14px;
        line-height: 150%;
    }
    .consult-name, .helpdesk-name {
        font-size: 18px;
        letter-spacing: -0.54px; 
    }
    .helpdesk-row a {
        font-size: 20px;
        letter-spacing: -0.6px; 
    }
    .footer-copyright li:not(:first-child), .dev-copyright {
        display: none;
    }
    .history .section-title {
        position: static;
        max-width: initial;
    }
    .history-point {
        flex-direction: column-reverse;
        gap: 30px;
    }
    .history-slider-buttons {
        display: none;
    }
	.history-point .l-col {
		max-width: initial;
	}
    .history-point .r-col {
        height: 200px;
    }
    .history-point .year {
        font-size: 22px;
    }
    .history-point .year-event {
        margin-top: 10px;
        font-size: 14px;
    }
    .history-timeline {
        margin-top: 26px;
    }
    .projects-list {
        grid-template-columns: 1fr;
        gap: 8px;
    }
    .projects-list .project-item {
        min-height: 250px;
    }
    .projects-list .project-item a {
        height: 100%;
    }
    .projects-list .project-item-text {
        left: 6px;
        right: 6px;
        bottom: 6px;
        gap: 8px;
    }
    .projects-list .project-item-name {
        font-size: 16px;
        letter-spacing: -0.48px; 
    }
    .projects-list .project-item-props {
        font-size: var(--fz-14);
    }
    .title-section + .under-title {
        margin-top: 20px;
    }
    .project-props {
        margin: 20px 0;
    }
    .project-props-list {
        grid-template-columns: repeat(2, 1fr);
        grid-template-rows: 44px;
        column-gap: 8px;
        row-gap: 10px;
    }
    .project-prop {
        grid-auto-columns: 24px 1fr;
        column-gap: 10px;
        row-gap: 4px;
    }
    .project-prop-icon {
        width: 24px;
        height: 24px;
    }
    .project-prop-value {
        font-size: var(--fz-14);
    }
    .project-photos .swiper-button-next, .project-photos .swiper-button-prev, .galleryThumbs {
        display: none;
    }
    .paragraph {
        grid-template-columns: 1fr;
        gap: 10px;
    }
    .paragraph-head {
        font-size: 20px;
        letter-spacing: -0.6px; 
    }
    .paragraph-content {
        font-size: 14px;
    }
    .building-main-props .flex-2col {
        flex-direction: column-reverse;
        gap: 20px;
    }
    .building-main-prop {
        grid-template-columns: repeat(2, 1fr);
        font-size: 14px;
    }
    .building-main-props-list {
        gap: 20px;
    }
    .contacts {
        margin-top: 20px !important;
        margin-bottom: 40px !important;
    }
    .contacts .section-body {
        flex-direction: column;
        gap: 20px;
    }
    .contact-value {
        font-size: 18px;
        letter-spacing: -0.54px; 
    }
    .contact-label {
        font-size: 14px;
    }
    .requisites-list {
        gap: 10px;
    }
    .requisite-row {
        display: flex;
        flex-direction: column;
        gap: 4px;
        padding-bottom: 10px;
        border-bottom: 1px solid var(--color-grey-200-border);
    }
    .requisite-row .requisite-label {
        font-size: var(--fz-14);
    }
    .requisite-value {
        font-size: 14px;
    }
    .requisite-row .requisite-label::after {
        display: none;
    }
    .certs-list {
        grid-template-columns: repeat(2, 1fr);
        column-gap: 8px;
        row-gap: 20px;
    }
    .cert {
        gap: 10px;
    }
    .cert-img {
        height: 228px;
    }
    .cert-title {
        font-size: var(--fz-14);
        letter-spacing: -0.36px;
    }
    .page-content {
        font-size: 14px;
        line-height: 150%;
    }
    .mobile-contacts-wrap {
        display: initial;
        position: fixed;
        right: 16px;
        bottom: 23px;
        z-index: 1000;
    }
    .mobile-contacts-btns {
        display: flex;
        gap: 20px;
    }
    .mobile-contacts-btn {
        display: flex;
        align-items: center;
        justify-content: center;
        width: 60px;
        height: 60px;
        border-radius: 50%;
        box-shadow: 0px 4px 50px 0px rgba(0, 0, 0, 0.10);
    }
    .mobile-contacts-btn-open {
        background: #ffffff;
    }
    .mobile-contacts-btn-close {
        background: var(--color-main);
    }
    .mobile-contacts-btn-close, .mobile-contacts-modal {
        display: none;
    }
    .mobile-contacts-wrap.opened .mobile-contacts-btn-close,
    .mobile-contacts-wrap.opened .mobile-contacts-modal {
        display: flex;
    }
    .mobile-contacts-wrap.opened .mobile-contacts-modal {
        position: absolute;
        bottom: calc(100% + 16px);
        right: 0;
    }
    .feedback-wrapper {
        padding: 20px;
    }
    .feedback-logo svg {
        width: 36px;
        height: 35px;
    }
    .feedback-title, .feedback-thanks {
        font-size: 26px;
        letter-spacing: -0.78px; 
    }
    .feedback-description {
        font-size: 14px;
    }
    .feedback-field-row, .feedback-row .btn {
        height: 50px;
    }
    .feedback-field-row label {
        font-size: var(--fz-14);
        margin-top: -10px;
    }
    .feedback-inner {
        gap: 20px;
    }
    .feedback-note {
        font-size: 14px;
    }
    .feeback-icon svg {
        width: 50px;
        height: 50px;
    }
}
@media screen and (min-width: 431px) and (max-width: 1160px) {
	.advantages .l-col .section-img, .sec2cols .l-col .section-img, .location-card-img {
		justify-content: start;
	}
	/*.advantages .section-img, .sec2cols .section-img {*/
	.advantages .section-img {
		height: 300px
	}
	.sec2cols .section-img img, .advantages .section-img img, .location-card-img img {
		width: initial;
		object-fit: initial;
	}
}
@media screen and (max-width: 390px) {
	.balloon-props {
		flex-direction: column;
	}
}
/* End */


/* Start:/local/templates/oxwl/styles/cookie.css?1749380120701*/
.cookie {
	opacity: 0;
	visibility: hidden;
	
	position: fixed;
	bottom: 0;
	left: 0;
	width: 100vw;
	
	background: var(--color-grey-70);
	backdrop-filter: blur(35px);
	padding-block: 16px;
	z-index: 10000;
	
	transition: .3s;
}
.cookie.active {
	opacity: 1;
	visibility: visible;
}
.cookie__box {
	display: flex;
	flex-direction: column;
	gap: 12px;
}
.cookie__text {
	font-size: 13px;
	line-height: 140%;
	/*color: #ffffff;*/
}
.cookie__text a {
	text-decoration: underline;
}
.cookie__btn {
	border: 1px solid var(--color-main);
	background-color: transparent;
	margin-inline: auto;
}
@media (min-width: 744px) {
	.cookie__box {
		flex-direction: row;
	}
}
/* End */


/* Start:/local/templates/oxwl/components/bitrix/menu/services/style.css?1718003325851*/
div.menu-sitemap-tree
{
	font-size:100%;
}

div.menu-sitemap-tree ul
{
	list-style-type: none;
	margin: 0;
	padding: 0 1em 0 0;
}

div.menu-sitemap-tree ul ul
{
	width: auto;
	margin:-0.75em 0 0 0;
	padding: 0 0 0 0.75em;
}

div.menu-sitemap-tree li
{
	margin: 0 0 -0.85em 0;
	padding:0;
}

div.menu-sitemap-tree li li
{
	margin: 0 0 -0.85em 0.5em;
	padding:0;
}

div.menu-sitemap-tree li.menu-close ul
{
	display: none;
}

div.menu-sitemap-tree div.item-text
{
	position:relative;
	top:-19px;left:19px;
}

/*Icons*/
div.folder, div.page
{
	background-repeat:no-repeat;
	width:17px;
	height:17px;
	vertical-align:top;
}
div.folder{cursor:pointer; cursor: hand;background-image:url(/local/templates/oxwl/components/bitrix/menu/services/images/folder_open.gif);}
div.menu-sitemap-tree li.menu-close div.folder{background-image:url(/local/templates/oxwl/components/bitrix/menu/services/images/folder_close.gif);}
div.page{background-image:url(/local/templates/oxwl/components/bitrix/menu/services/images/page.gif);}

/* End */


/* Start:/local/templates/oxwl/styles.css?17332174681036*/
.header-menu-sub-list.active {
    gap: 0;
}

li.header-sub-list-title {
    border-bottom: 1px solid #e5e7eb;
    padding-bottom: 19px;
	display:none;
}

li.header-menu-item a {
    padding: 12px 10px;
    display: block;
    border-bottom: 1px solid #eee;
}
.header-menu-sub-list.active {
    padding: 13px 20px;
}

li.header-menu-item a:hover {
    border-bottom: 1px solid #eeeeee;
    border-radius: 10px;
    border-bottom-color: #f6f8fa;
}

li.header-menu-item a:hover {
    background-color: #f6f8fa;
}

ul.header-links {
    align-items: center;
}

.header-label svg text {
    fill: #fff !important;
}

.homepage .header-label svg text {
    fill: #000 !important;
}

li.header-menu-item:hover {
    background: #fff;
    z-index: 9;
}

li.header-menu-item {
    margin-top: -2px;
}


@media (max-width:767px) {
.header-menu-wrap .header-menu-sub-list.active {
    padding: 0;
}

.block-body .header-menu-btn::before {
    filter: invert(1);
}
	html body .header-col-row .header-label svg text {
		fill: #fff !important;
	}

}
/* End */
/* /local/templates/oxwl/styles/style.css?174478800781074 */
/* /local/templates/oxwl/styles/media.css?174426128027628 */
/* /local/templates/oxwl/styles/cookie.css?1749380120701 */
/* /local/templates/oxwl/components/bitrix/menu/services/style.css?1718003325851 */
/* /local/templates/oxwl/styles.css?17332174681036 */
