:root
{
--color-main-1: #f77d42;
--container-width: 81.7857em; /* 1145px */
--booked: rgba(66,66,66,0.81);
--sold: rgba(89,112,86,0.9);
}

@font-face {
	font-family: 'Gotham Pro';
	src: url('/fonts/GothamPro/GothamPro.eot');
	src: local('Gotham Pro'), local('GothamPro'),
		url('/fonts/GothamPro/GothamPro.eot?#iefix') format('embedded-opentype'),
		url('/fonts/GothamPro/GothamPro.woff') format('woff'),
		url('/fonts/GothamPro/GothamPro.ttf') format('truetype');
	font-weight: normal;
	font-style: normal;
	font-display: swap;
}

@font-face {
	font-family: 'Gotham Pro';
	src: url('/fonts/GothamPro/GothamPro-Bold.eot');
	src: local('Gotham Pro Bold'), local('GothamPro-Bold'),
		url('/fonts/GothamPro/GothamPro-Bold.eot?#iefix') format('embedded-opentype'),
		url('/fonts/GothamPro/GothamPro-Bold.woff') format('woff'),
		url('/fonts/GothamPro/GothamPro-Bold.ttf') format('truetype');
	font-weight: bold;
	font-style: normal;
	font-display: swap;
}

@font-face {
	font-family: 'Gotham Pro';
	src: url('/fonts/GothamPro/GothamPro-Medium.eot');
	src: local('Gotham Pro Medium'), local('GothamPro-Medium'),
		url('/fonts/GothamPro/GothamPro-Medium.eot?#iefix') format('embedded-opentype'),
		url('/fonts/GothamPro/GothamPro-Medium.woff') format('woff'),
		url('/fonts/GothamPro/GothamPro-Medium.ttf') format('truetype');
	font-weight: 500;
	font-style: normal;
	font-display: swap;
}

::selection
{
background: rgba(0, 0, 0, 0.81);
color: rgb(255, 255, 255);
}

::-moz-selection
{
background: rgba(0, 0, 0, 0.81);
color: rgb(255, 255, 255);
}

::-webkit-input-placeholder {
color: rgba(0,0,0,0.45);
opacity: 0.72;
font-size: 0.5em;
}

:-moz-placeholder {
color: rgba(0,0,0,0.45);
opacity: 0.72;
font-size: 0.5em;
}

::-moz-placeholder {
color: rgba(0,0,0,0.45);
opacity: 0.72;
font-size: 0.5em;
}

:-ms-input-placeholder {  
color: rgba(0,0,0,0.45);
opacity: 0.72;
font-size: 0.5em;
}

a, .a
{
color: var(--color-main-1);
cursor: pointer;
-webkit-transition: color .2s ease-out;
   -moz-transition: color .2s ease-out;
     -o-transition: color .2s ease-out;
    -ms-transition: color .2s ease-out;
        transition: color .2s ease-out;
}

a:hover, .a:hover
{
color: var(--color-main-1);
}

html, body
{
position: relative;
min-height: 100vh;
font-family: 'Gotham Pro', sans-serif;
-webkit-font-smoothing: antialiased;
max-width: 100%;
overflow-x: hidden;
color: var(--color-text);
background-color: #ffffff;
}

body
{
overflow-y: hidden;
}

html
{
overflow-y: auto;
}

.row
{
position: relative;
margin-bottom: 0px;
}

nav
{
display: block;
box-shadow: none;
background-color: transparent;
width: auto;
height: auto;
text-align: left;
margin: 0px auto;
line-height: 1;
color: var(--color-text);
}

nav a
{
color: inherit;
-webkit-transition: all .2s ease-out;
   -moz-transition: all .2s ease-out;
     -o-transition: all .2s ease-out;
    -ms-transition: all .2s ease-out;
        transition: all .2s ease-out;
}

.noscroll
{
overflow: hidden;
}

p:first-child, ul:first-child
{
margin-top: 0;
}

p:last-child, ul:last-child, li:last-child
{
margin-bottom: 0;
}

p, ul
{
margin: 0;
line-height: 1.4;
}

p + p
{
margin-top: 1em;
}

.bg-cover
{
background-repeat: no-repeat;
background-position: center;
background-size: cover;
}

.bg-contain
{
background-repeat: no-repeat;
background-position: center;
background-size: contain;
}

td, th
{
padding: 0.2em 0;
border-radius: 0;
line-height: 1.4;
}

html
{
font-size: 14px;
color: var(--color-text);
background-color: #ffffff;
}

.container
{
position: relative;
max-width: none;
min-width: 0;
width: var(--container-width);
}

.container .row
{
margin-left: 0;
margin-right: 0;
}

header, footer, main
{
position: relative;
}

main
{
font-size: inherit;
overflow: visible;
}

figure
{
margin: 0;
}

.lefted
{
text-align: left;
}

.centered
{
text-align: center;
}

.righted
{
text-align: right;
}

.cells
{
box-sizing: border-box;
position: relative;
display: -webkit-box !important;
display: -moz-box !important;
display: -ms-flexbox !important;
display: -webkit-flex !important;
display: flex !important;
-webkit-flex-direction: row;
        flex-direction: row;
-webkit-flex-wrap: nowrap;
        flex-wrap: nowrap;
-webkit-justify-content: space-between;
        justify-content: space-between;
-webkit-align-items: center;
        align-items: center;
}

.cells.multiline
{
-webkit-flex-wrap: wrap;
        flex-wrap: wrap;
}

.cells.space-evenly
{
-webkit-justify-content: space-evenly;
        justify-content: space-evenly;
}

.cells.align-left
{
-webkit-justify-content: start;
        justify-content: start;
}

.cells.align-right
{
-webkit-justify-content: flex-end;
        justify-content: flex-end;
}

.cells.align-top
{
-webkit-align-items: flex-start;
        align-items: flex-start;
}

.cells.align-bottom
{
-webkit-align-items: flex-end;
        align-items: flex-end;
}

.cells.align-stretch
{
-webkit-align-items: stretch;
        align-items: stretch;
}

.cells.centered
{
-webkit-justify-content: center;
        justify-content: center;
}

.cells > *
{
position: relative;
display: inline-block;
vertical-align: top;
white-space: normal;
}

.cells.middle > *
{
vertical-align: middle;
}

.cells.bottom > *
{
vertical-align: bottom;
}

.cells > *:last-child
{
margin-right: 0;
}

.pusher.s
{
height: 0.75rem;
}

.pusher.m
{
height: 1.5rem;
}

.pusher.l
{
height: 3rem;
}

hr
{
display: block;
position: relative;
border: none;
box-shadow: none;
outline: none;
width: 100%;
height: 1px;
background-color: #C4C4C4;
margin: 0;
}

.nowrap
{
white-space: nowrap;
}

body > *
{
position: relative;
z-index: 1;
}

ul
{
padding: 0;
}

li
{
list-style: none;
}

.not-found
{
padding: 4.5em 0;
}

.not-found a
{
color: inherit;
border-bottom: 1px solid;
-webkit-transition: border .2s ease-out;
   -moz-transition: border .2s ease-out;
     -o-transition: border .2s ease-out;
    -ms-transition: border .2s ease-out;
        transition: border .2s ease-out;
}

.not-found a:hover
{
border-bottom-color: transparent;
}

.not-found__robot
{
text-align: center;
font-size: 1.25em;
margin-top: 1.75em;
margin-bottom: 1.25em;
}

.not-found__robot img
{
display: block;
width: 7.5em;
height: auto;
margin: 0 auto;
-webkit-transform: translate(0,0);
   -moz-transform: translate(0,0);
     -o-transform: translate(0,0);
    -ms-transform: translate(0,0);
        transform: translate(0,0);
animation-name: bounce;
animation-duration: 1s;
animation-iteration-count: infinite;
animation-direction: alternate;
animation-timing-function: ease-in-out;
}

@keyframes bounce
{

0%
{
-webkit-transform: translate(0,0);
   -moz-transform: translate(0,0);
     -o-transform: translate(0,0);
    -ms-transform: translate(0,0);
        transform: translate(0,0);
}

100%
{
-webkit-transform: translate(0,-1em);
   -moz-transform: translate(0,-1em);
     -o-transform: translate(0,-1em);
    -ms-transform: translate(0,-1em);
        transform: translate(0,-1em);
}

}

.not-found__shadow
{
width: 4em;
height: 1em;
background-color: rgba(45,116,255,0.18);
margin: 0 auto;
border-radius: 100%;
margin-top: -1em;
animation-name: shadow;
animation-duration: 1s;
animation-iteration-count: infinite;
animation-direction: alternate;
animation-timing-function: ease-in-out;
}

@keyframes shadow
{

0%
{
width: 4em;
}

100%
{
width: 5em;
}

}

[v-cloak]
{
display: none !important;
}

.bg-parent
{
display: block;
position: relative;
overflow: hidden;
}

.bg-parent:before
{
content: '';
display: block;
position: relative;
pointer-events: none;
padding-top: 100%;
}

.bg, .bg-interm
{
display: block;
position: absolute;
top: 0;
left: 0;
width: 100%;
height: 100%;
}

.bg
{
object-fit: cover;
object-position: center;
}

.bg.contain
{
object-fit: contain;
}

/* --------- MAIN ----------- */
.hdr
{
padding: 0.75em 0;
z-index: 999;
}

.hdr-fixed
{
position: fixed;
top: 0;
left: 0;
width: 100%;
background: #fff;
box-shadow: 0 6px 18px 0 rgba(45, 108, 181, 0.09);
transform: translate(0,-100%);
transition: transform .3s ease-out;
}

.hdr-fixed.shown
{
transform: none;
}

.hdr-logo, .hdr-phone
{
width: 13.9286em;
}

.hdr-logo a, .hdr-logo img
{
display: block;
width: 100%;
max-width: 100%;
}

.hdr-logo a
{
width: 6.4286em;
}

.hdr-fixed .hdr-logo a
{
width: 3em;
}

.hdr-phone
{
width: auto;
}

.hdr-phone a
{
color: inherit;
font-size: 1.4286em;
font-weight: bold;
white-space: nowrap;
}

.hdr-nav
{
gap: 3em;
}

.hdr-nav__link
{
font-size: 1.1429em;
color: rgba(0,0,0,0.6);
}

.featured-body:before
{
padding-top: 36.25%;
}

.featured-body:after
{
content: '';
display: block;
position: absolute;
width: 100%;
max-height: 100%;
height: 14em;
bottom: 0;
left: 0;
background: linear-gradient(0deg, rgb(88,94,109) 12%, rgba(0,0,0,0) 100%);
z-index: 2;
}

.featured-content
{
position: absolute;
bottom: 0;
left: 0;
width: 100%;
color: #ffffff;
padding-bottom: 1.5em;
z-index: 9;
}

.featured-title, .featured-subtitle
{
position: relative;
font-weight: 500;
font-size: 2em;
margin: 0;
}

.featured-title
{
text-transform: uppercase;
}

.featured-subtitle
{
white-space: nowrap;
padding-left: 0.75em;
margin-left: 0.85em;
}

.featured-subtitle b
{
font-weight: inherit;
text-transform: uppercase;
}

.featured-subtitle:before
{
content: '';
display: block;
position: absolute;
width: 2px;
background: #fff;
height: 1.5em;
top: 50%;
left: 0;
transform: translate(-100%,-50%);
}

.infra-info
{
width: 23.5em;
padding-right: 1.2857em;
}

.infra-pic
{
width: calc( 100% - 23.5em );
}

.infra-pic:before
{
padding-top: 99.79%;
}

.infra-row + .infra-row
{
margin-top: 1.5em;
padding-top: 1.5em;
border-top: 2px solid #d2d3d3;
}

.infra-title
{
font-size: 1.5em;
font-weight: 500;
line-height: 1.2;
margin-bottom: 0.25em;
}

.infra-subtitle
{
font-size: 1.15em;
}

.infra
{
background: #f8f8f8;
padding: 3em 0;
}

.scheme
{
padding: 3em 0;
}

.scheme-map
{
position: relative;
background-color: rgba(0,0,0,0.04);
}

.scheme-ratio
{
display: block;
position: relative;
padding-top: 56.25%;
}

.scheme-body, .scheme-svg-wrapper
{
position: absolute;
z-index: 9;
}

.scheme-body
{
width: 100%;
height: 100%;
top: 0;
left: 0;
}

.scheme-svg-wrapper
{
width: 100%;
height: auto;
top: 0;
left: 0;
}

.scheme-body svg
{
display: block;
width: 100% !important;
height: auto !important;
}

svg *.plot-active, svg .custom
{
fill: #B6D3B4;
fill-opacity: 0.76;
}

svg *.booked
{
fill: var(--booked);
fill-opacity: 1;
}

svg *.sold
{
fill: var(--sold);
fill-opacity: 1;
}

.scheme-map svg polygon.plot-active:hover, .scheme-map svg polyline.plot-active:hover, .scheme-map svg path.plot-active:hover, .scheme-map svg rect.plot-active:hover, .scheme-map svg .highlight
{
fill: #03A9F4;
cursor: pointer;
fill-opacity: 0.5;
}

.scheme-map svg polygon:not(.plot-active), .scheme-map svg polyline:not(.plot-active), .scheme-map svg path:not(.plot-active), .scheme-map svg rect:not(.plot-active)
{
pointer-events: none;
}

.lds-ellipsis {
  display: inline-block;
  position: relative;
  width: 80px;
  height: 80px;
}
.lds-ellipsis div {
  position: absolute;
  top: 33px;
  width: 13px;
  height: 13px;
  border-radius: 50%;
  background: #fff;
  animation-timing-function: cubic-bezier(0, 1, 1, 0);
}
.lds-ellipsis div:nth-child(1) {
  left: 8px;
  animation: lds-ellipsis1 0.6s infinite;
}
.lds-ellipsis div:nth-child(2) {
  left: 8px;
  animation: lds-ellipsis2 0.6s infinite;
}
.lds-ellipsis div:nth-child(3) {
  left: 32px;
  animation: lds-ellipsis2 0.6s infinite;
}
.lds-ellipsis div:nth-child(4) {
  left: 56px;
  animation: lds-ellipsis3 0.6s infinite;
}
@keyframes lds-ellipsis1 {
  0% {
    transform: scale(0);
  }
  100% {
    transform: scale(1);
  }
}
@keyframes lds-ellipsis3 {
  0% {
    transform: scale(1);
  }
  100% {
    transform: scale(0);
  }
}
@keyframes lds-ellipsis2 {
  0% {
    transform: translate(0, 0);
  }
  100% {
    transform: translate(24px, 0);
  }
}

.lds-ellipsis div
{
background: var(--color-main-1);
}

.scheme__spinner
{
position: absolute;
z-index: 9;
top: 50%;
left: 50%;
-webkit-transform: translate(-50%,-50%);
   -moz-transform: translate(-50%,-50%);
    -ms-transform: translate(-50%,-50%);
     -o-transform: translate(-50%,-50%);
        transform: translate(-50%,-50%);
}

.scheme__spinner.lds-ellipsis div
{
background: #fff;
}

#plot-modal-alt
{
position: absolute;
padding-top: 0.75em;
max-width: 81%;
-webkit-transform: translate(-50%,5%);
   -moz-transform: translate(-50%,5%);
     -o-transform: translate(-50%,5%);
    -ms-transform: translate(-50%,5%);
        transform: translate(-50%,5%);
z-index: 10;
opacity: 0;
-webkit-transition: -webkit-transform .2s cubic-bezier(0.34, 1.56, 0.64, 1), opacity .2s ease-out;
   -moz-transition: -moz-transform .2s cubic-bezier(0.34, 1.56, 0.64, 1), opacity .2s ease-out;
     -o-transition: -o-transform .2s cubic-bezier(0.34, 1.56, 0.64, 1), opacity .2s ease-out;
    -ms-transition: -ms-transform .2s cubic-bezier(0.34, 1.56, 0.64, 1), opacity .2s ease-out;
        transition: transform .2s cubic-bezier(0.34, 1.56, 0.64, 1), opacity .2s ease-out;
}

#plot-modal-alt.shown
{
opacity: 1;
-webkit-transform: translate(-50%,0);
   -moz-transform: translate(-50%,0);
     -o-transform: translate(-50%,0);
    -ms-transform: translate(-50%,0);
        transform: translate(-50%,0);
}

.plot-modal-alt__body
{
position: relative;
background: #fff;
border-radius: 6px;
box-shadow: 0px 9px 12px -3px rgba(0,0,0,0.36);
overflow: hidden;
z-index: 2;
}

#plot-modal-alt:before, .plot-modal-alt__pointer-mobile
{
content: '';
display: block;
position: absolute;
top: 0;
left: 50%;
width: 0; 
height: 0; 
border-left: 0.75em solid transparent;
border-right: 0.75em solid transparent;
border-bottom: 0.75em solid #fff;
z-index: 1;
pointer-events: none;
-webkit-transform: translate(-50%,3px);
   -moz-transform: translate(-50%,3px);
    -ms-transform: translate(-50%,3px);
     -o-transform: translate(-50%,3px);
        transform: translate(-50%,3px);
}

.plot-modal-alt__pointer-mobile, .plot-modal-alt__pointer-mobile.shown
{
opacity: 0;
}

.plot-modal-alt__close
{
position: absolute;
top: 0.75em;
right: 0.75em;
z-index: 9;
cursor: pointer;
width: 1.75em;
height: 1.75em;
background-image: url(/images/modal-close.svg);
background-repeat: no-repeat;
background-size: contain;
background-position: center;
}

.scheme-map.zoomed-out, .scheme-map.zoomed-out .scheme-body
{
touch-action: auto !important;
}

.scheme-num
{
position: absolute;
z-index: 10;
color: #fff;
font-size: 1.25em;
line-height: 1;
pointer-events: none;
-webkit-transform: translate(-50%,-25%);
   -moz-transform: translate(-50%,-25%);
     -o-transform: translate(-50%,-25%);
    -ms-transform: translate(-50%,-25%);
        transform: translate(-50%,-25%);
}

.scheme-num__inner {
display: block;
}

.scheme-num.sold
{
opacity: 0.36;
}

.plot-modal-cells
{
width: 77em;
max-width: calc( 100vw - 100px * 2 - 64px );
}

.plot-modal-cells.plot-modal-cells__pictureless {
width: auto;
}

.plot-modal-info
{
background: #f8f8f8;
width: 20em;
padding: 1.5em;
padding-bottom: 5em;
}

.plot-modal-gallery
{
width: calc( 100% - 20em );
padding: 3em;
}

.plot-modal-pic img
{
display: block;
width: 100%;
}

.plot-modal-title
{
font-size: 1.5em;
font-weight: 500;
white-space: nowrap;
line-height: 1;
margin-bottom: 0.75em;
}

.plot-modal-type
{
text-transform: lowercase;
color: #b2b3b3;
font-size: 1.15em;
font-weight: 500;
line-height: 1.2;
margin-bottom: 0.25em;
}

.plot-modal-field
{
line-height: 1.2;
}

.plot-modal-field + .plot-modal-field
{
margin-top: 1em;
}

.plot-modal-field big, .plot-modal-field small
{
display: block;
}

.plot-modal-field small
{
font-size: 1.25em;
font-weight: 500;
}

.plot-modal-field big
{
font-size: 1em;
margin-top: 0.25em;
}

.plot-modal-pic + .plot-modal-pic
{
margin-top: 1.5em;
}

.plot-modal-price
{
position: absolute;
white-space: nowrap;
font-size: 1.75em;
font-weight: bold;
bottom: 0.85em;
left: 0.85em;
line-height: 1;
}

.plot-modal-object__priced
{
border-bottom: 2px solid #d9dada;
padding-bottom: 1.5em;
}

.plot-modal-object + .plot-modal-object
{
margin-top: 1.5em;
}

.fancybox__content
{
padding: 0;
}

#map:before
{
padding-top: 39%;
}

#map > ymaps
{
position: absolute;
top: 0;
left: 0;
width: 100% !important;
height: 100% !important;
}

.ftr-card
{
position: absolute;
width: 100%;
left: calc( ( 100% - var(--container-width) ) / 2 );
top: 50%;
transform: translate(0,-50%);
background: #fff;
padding: 3em 2em;
max-width: 25.5em;
box-shadow: 0 12px 25px 0 rgba(45, 108, 181, 0.15);
}

.ftr-title
{
font-size: 1.8571em;
margin: 0;
line-height: 1;
font-weight: 500;
margin-bottom: 1em;
}

.ftr-card__text, .ftr-card__emails a
{
font-size: 1.35em;
}

.ftr-card__text > span
{
display: block;
}

.ftr-card__phones, .ftr-card__emails
{
margin-top: 0.5em;
}

.ftr-card__phones a
{
color: inherit;
font-size: 1.65em;
font-weight: bold;
white-space: nowrap;
}

.scheme-legend
{
position: absolute;
z-index: 100;
top: 1.5em;
right: 1.5em;
background: #fff;
padding: 0.5em 0.75em;
padding-top: 0.75em;
margin: 0;
}

.scheme-legend-li
{
position: relative;
padding-left: 2em;
font-size: 1.15em;
}

.scheme-legend-li + .scheme-legend-li
{
margin-top: 0.5em;
}

.scheme-legend-li:before
{
content: '';
display: block;
position: absolute;
top: 0;
left: 0;
width: 1.5em;
height: 1.5em;
background: #B6D3B4;
border-radius: 3px;
}

.scheme-legend-li.sold:before
{
background: #597056;
}

.scheme-legend-li.booked:before
{
background: var(--booked);
}

.scheme-ui
{
position: absolute;
top: 1.5em;
left: 1.5em;
font-weight: 500;
z-index: 99;
cursor: pointer;
opacity: 0;
pointer-events: none;
-webkit-transition: all .3s ease-out;
   -moz-transition: all .3s ease-out;
     -o-transition: all .3s ease-out;
    -ms-transition: all .3s ease-out;
        transition: all .3s ease-out;
}

.scheme-map.loaded .scheme-ui
{
opacity: 1;
pointer-events: auto;
}

.scheme-ui__body
{
font-size: 3.5em;
}

.scheme-btn
{
position: relative;
background-color: #fff;
width: 0.75em;
height: 0.75em;
border-radius: 3px;
margin-right: 0.2em;
cursor: pointer;
box-shadow: 0px 2px 9px 0px rgba(0,0,0,0.12);
}

.scheme-btn > img
{
position: absolute;
top: 0;
left: 50%;
width: 69%;
height: 100%;
object-position: center;
object-fit: contain;
-webkit-transform: translate(-50%,0);
   -moz-transform: translate(-50%,0);
    -ms-transform: translate(-50%,0);
     -o-transform: translate(-50%,0);
        transform: translate(-50%,0);
}

.hdr-menu-btn
{
display: none;
width: 3em;
padding-left: 0.75em;
}

.hdr-menu-btn img
{
display: block;
width: 100%;
}

.scheme-legend__mobile
{
display: none;
}

button.carousel__button:focus
{
box-shadow: none !important;
}

.scheme-prompt
{
display: inline-block;
position: relative;
background: #f2f3f1;
border-radius: 6px;
margin-top: 2em;
padding: 1.5em 3em;
padding-left: 5.5em;
}

.scheme-prompt:before
{
content: '';
display: block;
position: absolute;
width: 0;
height: 0;
top: 0;
left: 2.5em;
transform: translate(0,-100%);
border-left: 0.75em solid transparent;
border-right: 0.75em solid transparent;
border-bottom: 0.75em solid #f2f3f1;
}

.scheme-prompt-img
{
display: block;
width: 2.5em;
position: absolute;
top: 50%;
left: 2em;
opacity: 0.54;
transform: translate(0,-50%);
}

.scheme-prompt-img__tap
{
display: none;
}

.scheme-prompt-text
{
font-size: 1.15em;
opacity: 0.69;
}

.ftr-card__messengers
{
gap: 0.25em;
}

.ftr-card__messenger
{
width: 3em;
}

.ftr-card__messenger img
{
display: block;
width: 100%;
transition: transform .3s cubic-bezier(0.34, 1.56, 0.64, 1);
}

.ftr-card__messenger_tg
{
padding: 0.3em;
}

.ftr-card__messenger:hover img
{
transform: translate(0,-9%);
}

.plot-modal-status
{
margin-bottom: 1em;
}

.plot-modal-status small, .plot-modal-status big
{
font-size: 1.25em;
}

.plot-modal-status big
{
font-weight: 500;
}
/* --------- / MAIN ----------- */

/* MEDIA ONLY SCREEN AND START */

/* --- Desktop --- */
@media only screen and (min-width: 1921px) {
/*
html
{
font-size: 0.7295vw;
}
*/
}
/* --- / 1920px+ --- */

@media only screen and (max-width: 1920px) {



}
/* --- / 1920px --- */

@media only screen and (max-width: 1600px) {



}
/* --- / 1600px --- */

@media only screen and (max-width: 1440px) {



}
/* --- / 1440px --- */

@media only screen and (max-width: 1279px) {

html
{
font-size: 1.095vw;
}

}
/* --- / 1279px --- */

/* --- / Desktop --- */

/* --- Mobile --- */
@media only screen and (max-width: 1023px) {



}
/* --- / 1023px --- */

@media only screen and (max-width: 767px) {

html
{
font-size: 14px;
}

.container
{
width: calc( 100% - 1.5em * 2 );
}

.hdr-nav
{
position: absolute;
right: 0;
width: 12em;
max-width: calc( 100vw - 1.5em * 2 );
flex-direction: column;
background: #fff;
padding: 0.75em;
box-shadow: 0px 7px 7px 1px rgb(0 0 0 / 12%);
gap: 0.75em;
transform: translate(0,100%);
bottom: 1.5em;
opacity: 0;
pointer-events: none;
-webkit-transition: bottom .2s cubic-bezier(0.34, 1.56, 0.64, 1), opacity .2s ease-out;
   -moz-transition: bottom .2s cubic-bezier(0.34, 1.56, 0.64, 1), opacity .2s ease-out;
     -o-transition: bottom .2s cubic-bezier(0.34, 1.56, 0.64, 1), opacity .2s ease-out;
    -ms-transition: bottom .2s cubic-bezier(0.34, 1.56, 0.64, 1), opacity .2s ease-out;
        transition: bottom .2s cubic-bezier(0.34, 1.56, 0.64, 1), opacity .2s ease-out;
}

header.hdr .hdr-nav.opened, .hdr-fixed.shown .hdr-nav.opened
{
bottom: -1.5em;
opacity: 1;
pointer-events: auto;
}

.hdr-nav:before
{
content: '';
display: block;
position: absolute;
width: 0;
height: 0;
top: 0;
right: 0.75em;
transform: translate(0,-100%);
border-left: 0.5em solid transparent;
border-right: 0.5em solid transparent;
border-bottom: 0.5em solid #fff;
}

.hdr-nav__link
{
display: block;
width: 100%;
text-align: right;
}

.hdr-menu-btn
{
display: block;
}

.hdr-phone
{
display: flex;
flex-direction: row;
flex-wrap: nowrap;
justify-content: space-between;
align-items: center;
}

.hdr-logo a
{
width: 3.75em;
}

.featured-body:before
{
padding-top: 93%;
}

.featured-content.cells, .infra-cells.cells
{
-webkit-flex-direction: column;
        flex-direction: column;
}

.featured-title
{
font-size: 1.5em;
line-height: 1.3;
}

.featured-subtitle
{
font-size: 1.5em;
margin: 0;
padding: 0;
margin-top: 0.5em;
padding-top: 0.25em;
}

.featured-subtitle:before
{
width: 1.5em;
height: 1px;
top: 0;
left: 50%;
transform: translate(-50%,-100%);
}

.featured-body:after
{
height: 18em;
background: linear-gradient(0deg, rgb(88,94,109) 0%, rgba(0,0,0,0) 100%);
}

.infra-info, .infra-pic
{
width: 100%;
padding: 0;
}

.infra-pic
{
margin-top: 3em;
}

.infra-title
{
font-size: 1.15em;
}

.infra-subtitle
{
font-size: 1em;
}

.infra-row + .infra-row
{
margin-top: 1em;
padding-top: 1em;
border-top: 1px solid #d2d3d3;
}

.scheme-num
{
font-size: 1.7vw;
}

.ftr-card
{
position: relative;
left: auto;
top: auto;
width: 100%;
transform: none;
box-shadow: none;
margin: 0;
padding: 3em 1.5em;
}

.ftr-title
{
font-size: 1.5em;
margin-bottom: 0.75em;
}

.ftr-card__text, .ftr-card__emails a
{
font-size: 1.15em;
line-height: 1.3;
}

.ftr-card__phones a
{
font-size: 1.25em;
}

#map:before
{
padding-top: 69%;
}

.scheme-legend:not(.scheme-legend__mobile)
{
display: none;
}

.scheme-legend__mobile
{
display: block;
position: relative;
top: auto;
right: auto;
padding: 0;
margin-top: 0.75em;
}

.plot-modal-cells.cells
{
max-width: none;
width: 100%;
-webkit-flex-direction: column;
        flex-direction: column;
}

.plot-modal-info, .plot-modal-gallery
{
width: 100%;
}

.plot-modal-gallery
{
padding: 1.5em;
}

.scheme-ui
{
left: auto;
right: 0.5em;
top: 0.5em;
}

.scheme-prompt-text
{
display: inline-block;
max-width: 15em;
font-size: 1em;
opacity: 0.69;
}

.scheme-prompt-img__click
{
display: none;
}

.scheme-prompt-img__tap
{
display: block;
}

.scheme-prompt-img
{
width: 2.25em;
left: 1em;
}

.scheme-prompt
{
margin-top: 1em;
padding: 0.75em 1em;
padding-left: 4.25em;
line-height: 1.2;
}

.ftr-card__messenger
{
width: 2.5em;
}

}
/* --- / 767px --- */

@media only screen and (max-width: 374px) {

html
{
font-size: 3.75vw;
}

}
/* --- / 374px --- */
/* --- / Mobile --- */