section {margin:80px 0}
footer {background:#535b62}
.mg4080 {margin:40px 0 80px}
.btn2 {position:relative; border:0; display:inline-flex; gap:8px; margin: 0; padding: 0; transition: all 0.2s}
.w100 {width:100%}
.btn2:hover {background:none}
.btn2:hover span, .btn2:hover::after {background:#e52d36}
.btn2.btn-primary, .btn2.btn-secondary {background:none}
.btn2.btn-primary span {color:#fff; background:#e52d36}
.btn2.btn-secondary span {color:#fff; background:#4c4c4c}
.btn2 span {padding: 12px 25px; display:block; border:1px solid; transition: all 0.2s}
.btn2.btn-inverse span {border-color:#fff; color:#fff;}
.btn2::before {content:'';position:absolute; width:20px; height:20px; background:url('../images/btn_arrow.svg') no-repeat; top:14px; right:14px;}
.btn2.btn-email::before {background:url('../images/btn_email.svg') no-repeat;}
.btn2::after {content:''; /*min-height:100%;*/ display:block; transition: all 0.2s; width:48px; border:1px solid}
.btn2.btn-inverse::after {border-color:#fff}
.btn2.btn-primary::after { background:#e52d36}
.btn2.btn-secondary::after { background:#4c4c4c}
.btn2.btn-small {gap:3px}
.btn2.btn-small::before {background-size: 17px; top: 13px; right: 10px;}
.btn2.btn-small::after {width:42px}
.btn2.btn-small span {font-size:14px; padding:10px 18px;}
[data-tab] {cursor:pointer;}
.cfilter-wrap {padding:40px; margin:50px 0 15px; background:#eeefef}
.cfilter input {border:1px solid #dfe0e0; background:none; transition:background 0.4s;}
.cfilter input[type="text"]:focus{background:#f5f5f5; border:1px solid #ccc;}
.fproprow {margin-top:20px}
.fprop-item {max-width:25%}
.fprop-item p {font-size: 12px; line-height: 1em;  margin: 0 0 5px;}
.input-group {border:1px solid #d3d3d3; padding-left:12px;}
.input-group + .input-group {margin-left:-1px}
.input-group input {border:0 !important;}
.input-group span {color:#999; font-size:14px;}
.cfilter .filter-link {line-height: 1.1em; white-space: nowrap;}
.fw600 {font-weight:600}
.fast-links a {font-size:14px; font-weight:600; transition:all 0.2s; padding:6px 35px 6px 12px; color:#111; position:relative; background:#eeefef}
.fast-links a:hover {color:#e52d36}
.fast-links a::after {content:''; position:absolute; right:10px; top:10px; width:12px; height:12px; background:url('../images/btn_grey_arrow.svg') no-repeat center center / 100% auto;}
[data-hidden] {overflow-y:hidden; height:0; opacity:0}
section .owl-controls {display:flex; justify-content:end;     width: 100%;}
section[data-slider-wrap] .owl-carousel {margin-left:-15px}
[data-slider-wrap] {overflow-x:hidden}
.category-item-image {height:310px; overflow:hidden; position:relative}
.category-item-image img {object-fit:cover; width: 100%; height: 100%;}
.category-item-body {padding:10px 15px; border:1px solid #efefef; min-height:85px; border-width:0 1px 1px 1px}
.category-item-body a {display:block; color:#111; margin:8px 0; font-size:18px;}
.xsmall {font-size:12px;}
.grey-text {color:#999}
.offer-info {color:#888; font-weight:600}
.offer-info.price-info {color:#e52d36; }
h2 {color:#111}
.pre-title {color:#e52d36; font-size:14px; text-transform:uppercase; font-weight:800; margin:0 0 5px}
.pre-title + h2 {margin-top:0}
[data-filter] li {cursor:pointer}
.header-mob .logo {margin:0}


.homepage header:not(.scroll) {box-shadow:none}
.home-hero {position:relative; min-height:580px; background:url('../images/spb_bck.png') no-repeat left top / 100% auto; padding-top:377px; margin-top:-128px;}
.home-hero > * {position:relative;z-index:1}
.home-hero h1 {color: #fff;  font-size: 60px;  max-width: 900px; line-height: 1.2em;}
.home-video::before {content:'';position:absolute; z-index:0; background:#000;opacity:.5; width:100%; top:0; left:0; height:100%;}
.hero-award {   width: 230px; height: 182px;     font-size: 16px;  background: #836329ab; border:2px solid #8f763e; position:relative;   border-radius: 2px; padding: 20px;   text-align: right; backdrop-filter: blur(6px);  color: #fff;    clip-path: polygon(45% 0, 100% 0, 100% 100%, 0 100%, 0 46%);}
.hero-award:hover {color:#fff}
.hero-award::before {position: absolute;
    height: 2px;
    background: #8f763e;
    content: '';
    width: 160px;
    top: 50px;
    left: -21px;
    rotate: 140deg;
}
.hero-anons {color: #fff; font-size: 22px;     max-width: 70%;}
.hero-anons a {margin-top:20px;}
.home-video {position:absolute;z-index:0;top:0;left:0;width:100%;height:100%;overflow:hidden;}
.home-video video {width:100%; height:auto}

.otype-tabs {margin-bottom:25px;}
.otype-tabs li {font-size:30px; line-height: 1em; transition:all 0.2s; font-weight: 600;  color:#a7a7a7}
.otype-tabs li.active {color:#e52d36}
.prop-tabs li {font-size:16px; position:relative; z-index:0; font-weight: 600; transition:all 0.2s; padding:12px 20px; border:1px solid #dfe0e0;}
.prop-tabs li:hover {background:#fff; border-color:#999; z-index:1}
.prop-tabs li + li {margin-left:-1px}
.prop-tabs li.active {background:#FEF3F3; z-index:2; color:#e52d36; border-color:#e52d36}
.prop-tabs.small li {padding:8px 18px}
.btn-home-map {font-size: 16px; font-weight: 600; color:#e52d36}
.owl-hits.owl-carousel .owl-wrapper-outer {overflow:visible}
.owl-hits .owl-item li {width:calc(100% - 30px); padding:0 15px; box-shadow:none !important}
.owl-hits {opacity:0; overflow:hidden; height:0}
.owl-hits.owl-carousel.owl-theme {opacity:1; overflow:visible; height:auto}
[data-tab-content="hits"] {margin-top:20px;}
.home-properties li {width:calc(33% - 9px); transition:all 0.2s;}
.home-properties li a {display:block; height:280px; position:relative; transition:all 0.2s;}
.home-properties li a::before {position:absolute; transition: all 0.2s;  background:linear-gradient(#0000009c, #00000000); content:''; top:0; width:100%; height:100%; left:0}
.home-properties li:hover a::before {height:50%;}
.home-properties li:hover a {background-size:110% !important}
.home-properties li span {display:block; padding:20px 0 0 20px; font-weight: 600; color:#fff; position:relative; z-index:2; font-size:24px}
.owl-carousel.managers {width:410px; height:640px; margin:0; float:left}
.owl-carousel.managers .owl-wrapper-outer {overflow:hidden}
.owl-carousel.managers .owl-item li {text-align:left; height:640px;     width: 410px;}
.owl-carousel.managers .owl-item li::before, .owl-carousel.managers .owl-item li::after {content:''; display:block; position:absolute; left:0; z-index:0; top:0; width:100%; height:35%; background:linear-gradient(#0000009c, #00000000);}
.owl-carousel.managers .owl-item li::after {top:auto; bottom:0; height:50%; background:linear-gradient(#00000000, #0000009c)}
.owl-carousel.managers .owl-item li .is-flex {color:#fff; padding:15px; height:calc(100% - 55px); position:relative; z-index:1}
.owl-carousel.managers .owl-item li p {font-weight:600; font-size:24px;}
.owl-carousel.managers .owl-item li p span, .owl-carousel.managers .owl-item li p + p {font-size:16px; display:block; line-height:1.2em; font-weight:normal}
.owl-carousel.managers .owl-item li p span {font-size:14px;}
.owl-carousel.managers .owl-pagination {display:flex; gap:15px; width:100%}
.owl-carousel.managers .owl-pagination .owl-page {flex:1; background: #ffffff5c; height:5px; border-radius:2px;}
.managers .owl-controls {top:auto; bottom:10px; width:calc(100% - 20px); left:10px}
.managers.owl-theme .owl-controls .owl-page span {border:0; width:0; opacity:0; transition:width 10s; border-radius:2px; margin:0; background:#fff; height:5px; }
.managers.owl-theme .owl-controls .owl-page.active span {width:100%; opacity:1}
.subprojects {width:100%}
.company-wrap {overflow:hidden}
.managers + div {float:right; width:calc(100% - 470px)}
.subprojects > * {border:1px solid #efefef; margin-left: -1px; height:150px; width:25%; display: flex; justify-content: center; align-items: center;}
.subprojects img, .subprojects svg {max-width: 125px; max-height: 80px;}
.red-label {width: calc(25% - 40px);  background: #e52d36;  padding: 30px 20px 25px;  text-align: right;  color: #fff;  font-size: 22px;  margin: 0; clip-path: polygon(60px 0, 100% 0, 100% 100%, 0 100%, 0 60px);}
.red-company-title {color:#e52d36; font-size: 30px;  font-weight: 600;}
.awards {font-size:16px; margin-top:25px;}
.awards li {padding:18px 0; border-bottom:1px solid #ccc;     min-height: 77px;}
.awards li * {display:block}
.awards li p {font-weight:600; margin:0}
.awards li span {font-weight:400;}
.awards li > div {width: 45px;
    display: flex;
    align-items: start;
    justify-content: center;
}
.awards li span:last-of-type {color:#888; font-size:14px; margin-top:7px;}
.awards img {max-height: 45px;  margin-top: 7px;}
.one-more-fact {background:#eeefef; margin-top: 35px; width: 420px; position:relative; font-size:14px; padding: 60px 19px 20px;}
.one-more-fact p {font-size:16px;}
.one-more-fact span {display: flex; transition:all 0.2s; color:#e52d36; font-weight:600; position: absolute; line-height:1em;  border: 4px solid #fff;  left: -4px;  top: -4px;  padding: 8px 15px 8px 18px;  gap: 8px;  align-items: center;}
.one-more-fact span::before {content:''; display:block; border-top: 20px solid #fff; position:absolute; left:0; top:0;	border-right: 20px solid transparent;}
.one-more-fact svg {max-width:19px}
.one-more-fact span:hover {color:#fff; cursor:pointer; background:#e52d36; }
.one-more-fact span:hover path {fill:#fff}
.one-more-fact a {display:flex; margin-top:25px; color:#666}
.analytics .flex1 {max-width:50%}
.analytics .flex1 > span, .big-title + span {color: #666; font-size: 16px; max-width: 80%; display: block;}
.analytics .flex1 .btn2 {margin-top:15px}
.list-art li {width:33.33%;}
.art-img {height:280px; position:relative; overflow:hidden; display:block; margin-bottom:12px;}
.art-title {font-weight:600; color:#111;}
.art-img img {width:100%; height:100%; object-fit:cover; transition:all 0.2s;}
.list-art li:hover .art-title {color:#e52d36;}
.magazine .list-art li {width:25%;}
.magazine .art-img {height:490px}
.analytics .art-img img {object-fit:contain}
.analytics.magazine .art-img img {object-fit:cover}
.section-form {background:#eeefef; padding:40px}
.section-form p.left-title {max-width: 30%;  font-size: 30px;  line-height: 1.2em;  font-weight: 600;}
.section-form p.left-title.big-title {font-size:48px}
.section-form p.privacy-policy  {font-size: 12px;    color: #222;}
.section-form form {max-width:45%}
.section-form input {background: none; border: 1px solid #999; border-width: 0 0 1px 0; font-size: 20px; padding: 10px 0; border-radius: 0;}
.services-left {width:420px;}
.services-right {margin-left:115px;}
.services-left > * {transition:all 0.2s;}
.services-left > *, .services-right a, [data-service-block] a {display:block; font-size:20px; font-weight:600; color:#888;  padding:20px 0 10px; border-bottom:1px solid #888}
.services-right > div {display:flex;}
.services-left *.active, .services-left *:hover {color:#e52d36; border-color:#e52d36}
.services-right a, [data-service-block] a {font-weight:800; position:relative; padding:15px 0; font-size:18px; color:#111}
.services-right span, [data-service-block] [data-sb] span{font-size:14px; font-weight:400; display:block; margin-top:5px; color:#888}
.services-right a:hover, [data-service-block] a:hover{color:#fff; background:#e52d36; border-color:#e52d36; padding:15px 15px;}
.services-right a:hover span, [data-service-block] a:hover span{color:#fff;}
.services-right a:hover::after, [data-service-block] a:hover::after {content:''; position:absolute; right:15px; top:15px; width:12px; height:12px; display:block; background:url('../images/btn_arrow.svg') no-repeat center center / cover;}
.home-vkvideo-wrap .section-form {height: 205px;  margin-bottom:345px;}
.home-socials svg {max-height:50px}
footer .subscribe-form {display:none}
.home-vkvideo {width:800px;}
.home-vkvideo-wrap .owl-controls {margin-top:15px}
.home-vkvideo-wrap .owl-pagination {display:none}
.hero-award img {margin-right:44px}
.home-vkvideo iframe {border-bottom:4px solid #e52d36}
.home-socials {clip-path: polygon(0 0, 100% 0, 100% 140px, calc(100% - 90px) 100%, 0 100%);}
[data-s] {visibility:hidden; width: 0; height: 0; position:absolute; left:-1000px}
.overlay .art-img {height:400px; position:relative; transition:all 0.2s; border-bottom:4px solid #fff;}
.overlay .art-img:hover {border-color:#e52d36}
.overlay .art-img::before {content:''; display:block; position:absolute; left:0; z-index:0; bottom:0; width:100%; height:60%; background:linear-gradient(#00000000, #000000d9);}
.overlay .art-title {color:#fff; position:absolute; bottom:15px; width:calc(100% - 40px); line-height:1.4em; font-size:18px; z-index:1; left:0; padding:0 20px}
.overlay .art-img:hover .art-title {color:#fff}
.overlay .art-img img {object-fit: cover;}

@media screen and (max-width: 1440px){
	.home-hero {padding-top: 280px; min-height: 520px;}
	.section-form form {max-width:55%}
	.analytics .flex1 > span, .big-title + span {max-width:90%}
}
@media screen and (max-width: 1360px){
	.home-video video {width:auto; height:100%}
	.home-hero {background-size:auto 100% !important}
	.home-properties li {width: calc(33% - 10px);}
	.subprojects > * {height:126px}
	.services-right { margin-left: 65px;}
	.magazine .list-art li { width: 33.33%;}
	.magazine .list-art li:last-child {display:none}
	.home-vkvideo-wrap .section-form {height:225px}
}
@media screen and (max-width: 1280px){
	.red-label {padding: 30px 20px 29px; font-size:20px;}
	.home-vkvideo {width:725px}
}
@media screen and (max-width: 1024px){
	.home-properties li { width: calc(50% - 10px); }
	.awards {display:none}
	.subprojects > * {flex-wrap:wrap}
	.red-label {width:calc(50% - 41px)}
	.red-company-title {width: calc(50% - 20px); font-size:28px}
	.subprojects {flex-wrap:wrap}
	.subprojects img, .subprojects svg {max-width:160px; max-height:none}
	.subprojects > * {height: 259px; min-width: calc(50% - 2px);}
	.services-right {margin-left:40px;}
	.list-art li {width:50%}
	.list-art li:last-child {display:none}
	.analytics .prop-tabs {flex-wrap:wrap}
	.section-form p.left-title {max-width:40%}
	.home-vkvideo {width:100%}
	.home-vkvideo-wrap .section-form {margin-bottom:35px;}
	.section-form form .is-flex.w100 {flex-direction: column;}
	.home-vkvideo-wrap .section-form {flex-direction: column; gap:30px; height: auto;}
	.home-vkvideo-wrap .owl-gallery-slider .owl-buttons {margin:0}
	section.home-vkvideo-wrap .owl-controls {justify-content:start}
	.analytics.home-vkvideo-wrap .flex1 {max-width:none}
	.section-form p.left-title.big-title {font-size:42px}
	.sp-ipg {background:#e52d36; border-left:0}
	.sp-space {background:#2754c5}
	.sp-case {background:#f76915; border-left:0}
	.sp-hd {background:#7613aa}
	.subprojects svg, .subprojects svg * {fill:#fff !important}
	.subprojects > * {margin:0}
}
@media screen and (max-width:768px){
	.home-hero h1 {font-size:50px}
	.hero-anons {max-width:60%; font-size:20px;}
	.prop-tabs {flex-wrap:wrap}
	.cfilter > .is-flex:last-child > .is-flex:first-child {flex-direction: column; gap:25px;}
	.fprop-item { max-width: calc(50% - 10px);}
	.company-wrap {overflow:visible}
	.owl-carousel.managers {width:100%; height:auto; float:none}
	.managers + div {float:none; width:100%; margin-top:30px;}
	.subprojects svg {max-width: 190px; max-height: none;}
	.subprojects > * {height:200px}
	.red-label {font-size:33px}
	.red-company-title {width: calc(50% - 40px); font-size: 32px;}
	.owl-carousel.managers .owl-item li {width:100%; height:525px}
	.services-right {display:none}
	[data-xl] {visibility:hidden;width: 0; height: 0; position:absolute; left:-1000px}
	[data-s] {visibility:visible; width: auto; height: auto; position:relative; left:auto}
	.analytics > .is-flex:first-child, .section-form {flex-direction:column; gap:20px;}
	.analytics .flex1 {max-width:none}
	.one-more-fact {        width: calc(100% - 38px);}
	.one-more-fact p {font-size:18px}
	.services-left { width: 100%;}
	.magazine .list-art li {width:50%}
	.magazine .list-art li + li + li {display:none}
	.section-form p.left-title {max-width:none}
	[data-s][data-sb] {  padding: 20px 30px; border: 1px solid #e3e3e3;}
	[data-s][data-sb] a:last-child {border:0}
	.art-img {height:220px;}
	.section-form form {max-width:none}
	.list-art + a.btn2 {margin-left: auto;}
}
@media screen and (max-width:600px){
	.home-hero { padding-top: 290px;}
	.home-hero h1 {font-size:28px}
	.home-hero .btn2 {}
	.hero-anons {max-width:none; font-size:14px;}
	.home-hero h1 + .is-flex {flex-direction:column; gap:20px;}
	.cfilter-wrap {padding:30px 20px}
	.cfilter-wrap .prop-tabs[data-tabs="ptype"] li {width: calc(50% - 28px);}
	.prop-tabs li {font-size: 14px; padding:12px 13px; margin-left:0}
	.fprop-item {max-width: 100%;}
	.prop-tabs li + li {margin-left:0}
	.otype-tabs li {font-size:24px}
	.fast-links {margin:0}
	.fast-links a {padding:6px 30px 6px 8px; font-size:14px}
	section, .mg4080 {margin:30px 0}
	.category-item-image {height:210px;}
	.home-properties li {width:100%}
	.home-properties li a  {height:240px}
	.subprojects > * {height:120px}
	.red-label {font-size: 18px;}
	.red-company-title {width: calc(50% - 21px); font-size: 18px;}
	.subprojects svg {max-width:120px;}
	.awards {flex-direction:column; gap:0;}
	.section-form {padding:20px;}
	.analytics .flex1 > span, .big-title + span {font-size:14px}
	.section-form p.left-title.big-title {font-size: 25px;}
	.home-socials .gap20 {gap:10px}
	.home-socials {clip-path:polygon(0 0, 100% 0, 100% 170px, calc(100% - 55px) 100%, 0 100%)}
	.home-socials svg {max-height: 30px;}
	.list-art li {display:block !important}
	.magazine .list-art li {width:auto}
	.list-art.is-flex {flex-direction:column}
	.list-art + a.btn2, .analytics [data-s] {
        margin-left:0;
        margin-right: auto;
        margin-top: -65px;
    }
	.owl-item li, .owl-hits .owl-item li {padding:0; width: 100%;}
	section[data-slider-wrap] .owl-carousel {margin-left:0}
	.owl-hits.owl-carousel.owl-theme {overflow:hidden}
	.g-recaptcha, [id^="recaptcha"] {transform:none !important}
	.mob-menu-btn {background:url('../images/menu-white.svg') no-repeat center center}
	.fixed-header .mob-menu-btn {background:url('../images/menu-red.svg') no-repeat center center}
	.header-mob .logo-mob + li {text-align:right}
	.hero-award {width:160px; height:135px;}
	.hero-award img {height:70px;}
	.hero-award p {    font-size: 14px;}
	.hero-award::before {width:148px; top:33px; left:-22px; rotate: 138deg;}
	.home-hero {min-height:calc(100vh - 162px)}
}
