/**
 * Сбросить оформление с details и скрыть контент
 */
html > body > main > section.layouts > div.slideshow > ul.slides > li > a:not(.lazy-image)
{

	position: relative;
	
	display: inline-block;
	
	box-sizing: border-box;
	height: 56px;
	padding: 0 50px;
	margin: 0;
	
	font-size: 16px;
	font-weight: 700;
	line-height: 56px;
	white-space: nowrap;
	text-align: center;
	
	-webkit-appearance: none;
	
	   -moz-appearance: none;
	
	        appearance: none;
	
	color: white;
	background: #c3beba;
	
	border: none;
	border-radius: 28px;
	box-shadow: 16px 0 20px rgba( 86, 63, 0, 0.08 );
}
html > body > main > section.layouts > div.slideshow > ul.slides > li > a:not(.lazy-image):not([disabled])
	{
		cursor: pointer;
	}
html > body > main > section.layouts > div.slideshow > ul.slides > li > a:not(.lazy-image):not([disabled]):focus, html > body > main > section.layouts > div.slideshow > ul.slides > li > a:not(.lazy-image):not([disabled]):hover
		{
			background: #5a9bb7;
		}
html > body > main > section > section > h3, html > body > main > section.layouts > div.slideshow > ul.slides > li > h3
{
	margin: 0 0 24px;
	
	font-family: "Circe",sans-serif;
	font-size: 44px;
	font-weight: 400;
	line-height: 1.09;

	background-image: linear-gradient( to right, #334554, #5a9bb7 );
	-webkit-background-clip: text;
	-webkit-text-fill-color: transparent;
}
html > body > main > section > section > p
{
	margin: 0;
	
	font-size: 20px;
	line-height: 1.4;
}
html > body > main > section > section > p:not(:last-child)
	{
		margin-bottom: 16px;
	}
html > body > main > section > section > p > strong
	{
		color: #5a9bb7;
	}
html > body > main
{
	position: relative;
	z-index: 1;
	
	overflow: hidden;
	
	box-sizing: border-box;
	height: auto;
	min-height: 100vh;
	padding: 0 0 0 70px;
}

/**
 * Сбросить всё оформление со стандартной кнопки
 */
%button_stroke:not([disabled]):hover, %button_stroke:not([disabled]):focus
	{
		color: #5a9bb7;
		background: white;
	}
html > body > main > section > section > h3
{
	font-size: 30px;
	font-weight: 700;
	line-height: 1.2;
}

html > body > main > section.slider-component > div > h2
{
	margin: 0 0 24px;

	font-size: 44px;
	line-height: 1.09;
}

html > body > main > section.slider-component > div > h2 > span
	{
		display: inline-block;
		
		background-image: linear-gradient( to right, #334554, #5a9bb7 );
		-webkit-background-clip: text;
		-webkit-text-fill-color: transparent;
	}
html > body > main > section.layouts > div.slideshow > ul.slides > li > h3
{
	font-size: 21px;
	font-weight: 400;
	line-height: 1.5;
}
@supports (display: grid)
	{
	}

@supports (display: grid)
	{
		
		@media (max-width: 1099px)
		{
		}
	}

aside:not(#lightbox)
{
	position: absolute;

	width: 210px;
	padding-left: 80px;

	font-size: 15px;
	line-height: 1.47;

	color: rgb(118, 130, 140);
}

aside:not(#lightbox).eugenia
	{
		padding-top: 8px;
	}

aside:not(#lightbox).eugenia::before
		{
			background-image: url( '/images/index/people/eugenia.png' );
			background-size: cover;
		}

aside:not(#lightbox).mall::before
		{
			background-image: url( 'images/note/mall.svg' );
		}

aside:not(#lightbox)::before
	{
		position: absolute;
		top: 0;
		left: 0;

		width: 60px;
		height: 60px;

		content: '';

		background-position: center center;
		background-repeat: no-repeat;
		background-color: white;
		
		border-radius: 50%;
		box-shadow: 0 2px 10px 0 rgba( 0, 0, 0, 0.15 );
	}

aside:not(#lightbox) > a
	{
		text-decoration: none;
		
		color: #c3beba;

		border-bottom: 1px solid #c3beba;
	}

aside:not(#lightbox) > a:hover
		{
			border-bottom: none;
		}

aside:not(#lightbox) > span
	{
		display: block;

		font-weight: 700;

		color: #334554;
	}

html > body.loaded > div.loader.show
	{
		left: 100%;
	}

html > body.loaded > div.loader.show > div.logo
		{
			opacity: 0;
		}

html > body.loaded > div.loader.show > div.logo::before
			{
				right: 0;
			}

html > body.loaded > header > div.slideshow
	{
		opacity: 1;
	}

html > body
{
	width: 100%;
}

html > body:not(.scrollable)
	{
		position: fixed;
	
		overflow: hidden;
	}

html > body > a.online-office
{
	position: fixed;
	bottom: 24px;
	left: 94px;
	z-index: 2;

	box-sizing: border-box;
	width: 240px;
	padding: 20px 16px;

	text-decoration: none;

	pointer-events: none;

	color: #072b31;
	opacity: 0;
	background: #5a9bb7;

	border-radius: 4px;
	outline: none;

	-webkit-transform: translateY( 200px );

	        transform: translateY( 200px );

	transition:
		opacity 0.3s ease-in-out,
		-webkit-transform 0.3s ease-in-out;

	transition:
		opacity 0.3s ease-in-out,
		transform 0.3s ease-in-out;

	transition:
		opacity 0.3s ease-in-out,
		transform 0.3s ease-in-out,
		-webkit-transform 0.3s ease-in-out;
}

html > body > a.online-office.before-footer
	{
		position: absolute;
		bottom: auto;

		-webkit-transform: translateY( calc(-100% - 24px) );

		        transform: translateY( calc(-100% - 24px) );
	}

html > body > a.online-office::before, html > body > a.online-office::after
	{
		position: absolute;
		
		content: '';
	}

html > body > a.online-office::before
	{
		top: 12px;
		right: 12px;
		
		width: 32px;
		height: 32px;

		background: white;

		border-radius: 50%;
	}

html > body > a.online-office::after
	{
		top: 24px;
		right: 25px;
		
		width: 6px;
		height: 6px;
		
		border-top: 2px solid #5a9bb7;
		border-right: 2px solid #5a9bb7;

		-webkit-transform: rotate( 45deg );

		        transform: rotate( 45deg );
	}

html > body > a.online-office > svg
	{
		margin-bottom: 12px;
		
		fill: white;
	}

html > body > a.online-office > p
	{
		margin: 0;
		
		font-size: 14px;
		line-height: 18px;

		color: white;
	}

html > body > a.online-office > button[type="button"]
	{
		position: absolute;
		top: 0;
		right: -40px;

		width: 40px;
		height: 40px;
		padding: 0;

		cursor: pointer;

		background: none;

		border: none;
		outline: none;
	}

html > body > a.online-office > button[type="button"]::before, html > body > a.online-office > button[type="button"]::after
		{
			position: absolute;
			top: 26px;
			left: 8px;

			width: 12px;
			height: 2px;

			content: '';

			background: #d4d7d9;
		}

html > body > a.online-office > button[type="button"]::before
		{
			-webkit-transform: rotate( 45deg );
			        transform: rotate( 45deg );
		}

html > body > a.online-office > button[type="button"]::after
		{
			-webkit-transform: rotate( -45deg );
			        transform: rotate( -45deg );
		}

html > body > div.loader
{
	position: absolute;
	top: 0;
	right: 0;
	left: 0;
	z-index: 2;

	display: -webkit-flex;

	display: -ms-flexbox;

	display: flex;
	-webkit-justify-content: center;
	    -ms-flex-pack: center;
	        justify-content: center;
	-webkit-align-items: center;
	    -ms-flex-align: center;
	        align-items: center;

	height: 100vh;

	background: white;

	transition: left 1s 2s;
}

html > body > div.loader.show > div.logo::before, html > body > div.loader.show > div.logo > svg
			{
				opacity: 1;
			}

html > body > div.loader.show > div.logo::before
			{
				right: 15%;
			}

html > body > div.loader > div.logo
{
	position: relative;
	
	width: calc(100% - 40px);
	max-width: 450px;

	transition: opacity 0.5s 1.5s;
}

html > body > div.loader > div.logo::before, html > body > div.loader > div.logo::after
	{
		position: absolute;
		bottom: -20px;
		left: 0;

		height: 4px;
		
		content: '';

		background: #c3beba;

		border-radius: 2px;
	}

html > body > div.loader > div.logo::before
	{
		right: 100%;

		opacity: 0;
		background: #c3beba;

		transition:
			right 1.5s,
			opacity 0.5s;
	}

html > body > div.loader > div.logo::after
	{
		right: 0;

		background: rgba(195, 190, 186, 0.15);
	}

html > body > div.loader > div.logo > svg
{
	width: 100%;

	opacity: 0;

	transition: opacity 1.5s;
}

html > body > div.loader > div.logo > svg > g.logo
	{
		opacity: 0;
	}

html > body > main > section.advantages.scrolled-to > ul
		{
			padding-top: 0;
		}

html > body > main > section.advantages > ul
	{
		padding-top: 60px;

		transition: padding-top 0.5s;
	}

html > body > main > section.component[data-scroll-sensitive="yes"].scrolled-to > figure
		{
			-webkit-transform: translateX( 0 );
			        transform: translateX( 0 );
		}

html > body > main > section.component[data-scroll-sensitive="yes"].scrolled-to > div.info
		{
			-webkit-transform: translateY( 0 );
			        transform: translateY( 0 );
		}

html > body > main > section.component[data-scroll-sensitive="yes"] > figure
	{
		-webkit-transform: translateX( -60px );
		        transform: translateX( -60px );

		transition: -webkit-transform 0.5s;

		transition: transform 0.5s;

		transition: transform 0.5s, -webkit-transform 0.5s;
	}

html > body > main > section.component[data-scroll-sensitive="yes"] > div.info
	{
		-webkit-transform: translateY( 60px );
		        transform: translateY( 60px );

		transition: -webkit-transform 0.5s;

		transition: transform 0.5s;

		transition: transform 0.5s, -webkit-transform 0.5s;
	}

html > body > main > section.your-house[data-scroll-sensitive="yes"].scrolled-to > div.info
			{
				-webkit-transform: translateY( 0 );
				        transform: translateY( 0 );
			}

html > body > main > section.your-house[data-scroll-sensitive="yes"].scrolled-to > div.image
			{
				-webkit-transform: translateX( 0 );
				        transform: translateX( 0 );
			}

html > body > main > section.your-house[data-scroll-sensitive="yes"] > div
	{
		transition: -webkit-transform 0.5s;
		transition: transform 0.5s;
		transition: transform 0.5s, -webkit-transform 0.5s;
	}

html > body > main > section.your-house[data-scroll-sensitive="yes"] > div.info
		{
			-webkit-transform: translateY( 60px );
			        transform: translateY( 60px );
		}

html > body > main > section.your-house[data-scroll-sensitive="yes"] > div.image
		{
			-webkit-transform: translateX( 60px );
			        transform: translateX( 60px );
		}

html > body > main > section.architecture
{
	margin-bottom: 100px;
}

html > body > main > section.architecture > figure
{
	max-width: 1360px;
	margin: 50px auto 0;
}

html > body > main > section.architecture > figure > img
	{
		display: block;
		
		width: 100%;
	}

html > body > main > section.architecture > h2, html > body > main > section.architecture > p
{
	max-width: 650px;
	margin-right: auto;
	margin-left: auto;
	
	text-align: center;
}

html > body > main > section.comfort
{
	position: relative;
	
	min-height: 355px;
	padding-top: 260px;
}

html > body > main > section.comfort > figure
{
	position: absolute;
	top: 119px;
	left: calc(50vw - 960px);

	margin: 0;
}

html > body > main > section.comfort > figure::before
	{
		position: absolute;
		top: 0;
		bottom: 0;
		left: 0;

		width: 200px;

		content: '';

		background: linear-gradient( to right, white, transparent );
	}

html > body > main > section.comfort > figure > img
	{
		width: 100%;
	}

html > body > main > section.comfort > h2, html > body > main > section.comfort > p
{
	max-width: 575px;
	padding-left: 675px;
	margin-right: auto;
	margin-left: auto;
}

html > body > main > section.layouts
{
	position: relative;
	
	padding-top: 146px;
}

html > body > main > section.layouts::after
	{
		display: table;
		clear: both;

		content: '';
	}

html > body > main > section.layouts > h2, html > body > main > section.layouts > p
{
	max-width: 498px;
	padding-right: 610px;
	margin-right: auto;
	margin-left: auto;
}

html > body > main > section.layouts > h2
{
	background-position-x: 660px;
}

html > body > main > section.location.has-background
{
	margin-top: 100px;
}

html > body > main > section.location.has-background > p
	{
		max-width: 485px;
		padding-right: 623px;
	}

html > body > main > section.location.has-background > figure
	{
		top: 110px;
		right: 0;
		
		display: block;

		width: calc(50% - 22px);
	}

html > body > main > section.location.has-background::before
	{
		position: absolute;
		top: 0;
		bottom: 0;
		left: calc(50% - 50vw);
		z-index: -1;

		width: 100vw;

		content: '';

		background: #fcfaf8;
	}

html > body > main > section.location
{
	position: relative;
	
	min-height: 550px;
	padding-top: 110px;
	margin: 0 auto;
}

html > body > main > section.location > figure
{
	position: absolute;
	
	display: none;

	margin: 0;

	font-size: 0;
}

html > body > main > section.location > figure img
	{
		font-size: 17px;
	}

html > body > main > section.location > h2, html > body > main > section.location > p
{
	margin-right: auto;
	margin-left: auto;
}

html > body > main > section.location > h2
{
	max-width: 500px;
	padding-right: 608px;
}

html > body > main > section.location > p
{
	max-width: 475px;
	padding-right: 633px;
}

html > body > main > section.slider-component
{
	display: -webkit-flex;
	display: -ms-flexbox;
	display: flex;
	
	max-width: 1618px;
	padding: 0 calc(6.25vw - 4px);
	margin: 0 auto 120px;
}

html > body > main > section.slider-component.scrolled-to > div.info
		{
			-webkit-transform: translateY( 0 );
			        transform: translateY( 0 );
		}

html > body > main > section.technology
{
	position: relative;
	
	min-height: 550px;
	padding: 40px 0 70px;
	margin: 0 auto;
}

html > body > main > section.technology::before
	{
		position: absolute;
		top: 0;
		bottom: 0;
		left: calc(50% - 50vw);
		z-index: -1;

		width: 100vw;

		content: '';

		background: #fcfaf8;
	}

html > body > main > section.technology > figure
{
	position: absolute;
	top: 40px;
	left: 0;

	width: calc(50% + 126px);
	margin: 0;

	font-size: 0;
	text-align: right;
}

html > body > main > section.technology > figure img
	{
		font-size: 17px;
	}

html > body > main > section.technology > h2, html > body > main > section.technology > p
{
	max-width: 425px;
	padding-left: 855px;
	margin-right: auto;
	margin-left: auto;
}

html > body > main > section.technology > h2::before
	{
		left: 820px;
	}

html > body > main > section.triptych
{
	position: relative;
	
	padding-top: 129px;
}

html > body > main > section.triptych.finishing > figure
		{
			width: 100%;

			text-align: center;
		}

html > body > main > section.triptych.finishing > figure > img
			{
				max-width: 100%;
			}

html > body > main > section.triptych.finishing > aside
		{
			width: 220px;
		}

html > body > main > section.triptych.infrastructure
	{
		padding-top: 100px;
	}

html > body > main > section.triptych.infrastructure > aside
		{
			top: 193px;
		}

html > body > main > section.triptych.investment > div.scroll-block > figure
			{
				width: 1297px;
				margin-top: 70px;
			}

html > body > main > section.triptych > aside
{
	top: 255px;
	left: 71%;
}

html > body > main > section.triptych > figure
{
	margin: 40px auto 0;
}

html > body > main > section.triptych > h2, html > body > main > section.triptych > p
{
	max-width: 730px;
	padding-right: 378px;
	margin-right: auto;
	margin-left: auto;
}

html > body > main > section > section > h3
{
	
	margin-bottom: 0.5em;
}

html > body > main > section > section > p
{
	
	margin-bottom: 1em;
}

html > body > main > section.layouts > div.slideshow
{
	position: relative;
	
	float: right;

	width: calc(43.75vw - 31px);
	height: calc(25vw - 18px);
	margin: 0 calc(5vw - 4px) 0 0;
}

html > body > main > section.infrastructure > div.map
{
	position: relative;
	
	margin-top: 50px;
}

html > body > main > section.infrastructure > div.map > div.container
{
	height: 600px;
}

html > body > main > section.infrastructure > div.map > div.container .gm-style-iw-c
	{
		font-family: "Circe",sans-serif;
		font-weight: 400;
	}

html > body > main > section.infrastructure > div.map > div.container .gm-style-iw-c h3
		{
			margin: 0 0 10px;
		}

html > body > main > section.infrastructure > div.map > div.tooltip
{
	position: absolute;

	display: none;

	width: 200px;
	padding: 16px 16px 0;

	font-size: 15px;
	font-weight: 400;
	line-height: 1.47;
	text-align: left;

	background: white;

	box-shadow: 0 3px 16px 0 rgba(0, 0, 0, 0.2);

	-webkit-transform: translate( calc(-50% + 14px), calc(-100% - 12px) );

	        transform: translate( calc(-50% + 14px), calc(-100% - 12px) );
}

html > body > main > section.infrastructure > div.map > div.tooltip.shown
	{
		display: block;
	}

html > body > main > section.infrastructure > div.map > div.tooltip.logo
	{
		-webkit-transform: translate( calc(-50% + 24px), calc(-100% - 8px) );
		        transform: translate( calc(-50% + 24px), calc(-100% - 8px) );
	}

html > body > main > section.infrastructure > div.map > div.tooltip::before
	{
		position: absolute;
		bottom: -24px;
		left: calc(50% - 13px);

		display: block;

		width: 0;
		height: 0;

		content: '';

		border: 15px solid transparent;
		border-top: 10px solid white;
	}

html > body > main > section.infrastructure > div.map > div.tooltip > h3, html > body > main > section.infrastructure > div.map > div.tooltip > p
	{
		pointer-events: none;
	}

html > body > main > section.infrastructure > div.map > div.tooltip > h3
	{
		margin: 0 0 16px;
	}

html > body > main > section.infrastructure > div.map > div.tooltip > p
	{
		margin: 0 0 16px;
	}

html > body > main > section.infrastructure > div.map > div.tooltip > p:empty
		{
			display: none;
		}

html > body > main > section.infrastructure > div.map > div.tooltip > p::before
		{
			content: 'Адрес: ';
		}

html > body > main > section.infrastructure > div.map > input[name="infrastructure"]
{
	display: none;
}

html > body > main > section.infrastructure > div.map > input[name="infrastructure"]:checked#transport ~ ul.legend > li > label[for="transport"] > svg .color
			{
				fill: #FFBC05;
			}

html > body > main > section.infrastructure > div.map > input[name="infrastructure"]:checked#polyclinic ~ ul.legend > li > label[for="polyclinic"] > svg .color
			{
				fill: #E21822;
			}

html > body > main > section.infrastructure > div.map > input[name="infrastructure"]:checked#park ~ ul.legend > li > label[for="park"] > svg .color
			{
				fill: #1CA753;
			}

html > body > main > section.infrastructure > div.map > input[name="infrastructure"]:checked#gym ~ ul.legend > li > label[for="gym"] > svg .color
			{
				fill: #EE731D;
			}

html > body > main > section.infrastructure > div.map > input[name="infrastructure"]:checked#kindergarten ~ ul.legend > li > label[for="kindergarten"] > svg .color
			{
				fill: #21A9E1;
			}

html > body > main > section.infrastructure > div.map > input[name="infrastructure"]:checked#school ~ ul.legend > li > label[for="school"] > svg .color
			{
				fill: #63D9FF;
			}

html > body > main > section.infrastructure > div.map > input[name="infrastructure"]:checked#mall ~ ul.legend > li > label[for="mall"] > svg .color
			{
				fill: #006EB9;
			}

html > body > main > section.infrastructure > div.map > input[name="infrastructure"]:checked#cinema ~ ul.legend > li > label[for="cinema"] > svg .color
			{
				fill: #C51786;
			}

html > body > main > section.infrastructure > div.map > input[name="infrastructure"]:checked#attractions ~ ul.legend > li > label[for="attractions"] > svg .color
			{
				fill: #D12008;
			}

html > body > main > section.infrastructure > div.map > input[name="infrastructure"]:checked#bank ~ ul.legend > li > label[for="bank"] > svg .color
			{
				fill: #2781ce;
			}

html > body > main > section.infrastructure > div.map > input[name="infrastructure"]:checked#petrolstation ~ ul.legend > li > label[for="petrolstation"] > svg .color
			{
				fill: #fbb906;
			}

html > body > main > section.infrastructure > div.map > input[name="infrastructure"]:checked#pharmacy ~ ul.legend > li > label[for="pharmacy"] > svg .color
			{
				fill: #24731d;
			}

html > body > main > section.infrastructure > div.map > input[name="infrastructure"]:checked#cafe ~ ul.legend > li > label[for="cafe"] > svg .color
			{
				fill: #ee9e1d;
			}

html > body > main > section.infrastructure > div.map > input[name="infrastructure"]:checked#spa ~ ul.legend > li > label[for="spa"] > svg .color
			{
				fill: #D8ABB8;
			}

html > body > main > section.infrastructure > div.map > input[name="infrastructure"]:checked#post ~ ul.legend > li > label[for="post"] > svg .color
			{
				fill: #854774;
			}

html > body > main > section.infrastructure > div.map > ul.legend
{
	display: -webkit-flex;
	display: -ms-flexbox;
	display: flex;
	-webkit-flex-wrap: wrap;
	    -ms-flex-wrap: wrap;
	        flex-wrap: wrap;
	
	padding: 0;
	margin: 30px 40px 0;
	
	list-style: none;
}

html > body > main > section.infrastructure > div.map > ul.legend > li
	{
		min-width: 250px;
		margin: 0 0 20px;
	}

html > body > main > section.infrastructure > div.map > ul.legend > li > label
		{
			cursor: pointer;
		}

html > body > main > section.infrastructure > div.map > ul.legend > li > label > svg
			{
				margin: 0 15px 0 0;
				
				vertical-align: middle;
			}

html > body > main > section.infrastructure > div.map > ul.legend > li > label > svg .color
				{
					fill: #d4d7d9;
				}

html > body > main > section.infrastructure > div.map > ul.legend > li:last-of-type
		{
			margin-right: 0;
		}

html > body > main > section.slider-component > div.info
{
	display: -webkit-flex;
	display: -ms-flexbox;
	display: flex;
	-webkit-flex-direction: column;
	    -ms-flex-direction: column;
	        flex-direction: column;
	
	-webkit-flex-shrink: 0;
	
	    -ms-flex-negative: 0;
	
	        flex-shrink: 0;
	width: 35.5%;
	margin-right: 97px;
	
	-webkit-transform: translateY( 60px );
	
	        transform: translateY( 60px );

	transition: -webkit-transform 0.5s;

	transition: transform 0.5s;

	transition: transform 0.5s, -webkit-transform 0.5s;
}

html > body > main > section.slider-component > div
{

}

html > body > main > section.slider-component > div.wrapper
{
	-webkit-flex-grow: 1;
	    -ms-flex-positive: 1;
	        flex-grow: 1;
	max-width: 764px;
}

html > body > main > section.slider-component > div > h2
{

	font-weight: 400;
}

html > body > main > section.slider-component > div > p
{
	margin: 0;
}

html > body > main > section.slider-component > div > p:not(:last-child)
	{
		margin-bottom: 16px;
	}

html > body > main > section.slider-component > div > p:not(:first-of-type)
	{
		font-size: 20px;
		line-height: 1.4;
	}

html > body > main > section.slider-component > div > p:first-of-type
	{
		font-size: 22px;
		font-weight: 700;
		line-height: 1.45;
	}

html > body > main > section.slider-component > div > p > strong
	{
		color: #5a9bb7;
	}

html > body > main > section.triptych > div.scroll-block > figure
{
	display: none;
	
	width: 1275px;
	margin: 40px auto 0;
}

html > body > main > section.triptych > div.scroll-block > ul.features
{
	display: -webkit-flex;
	display: -ms-flexbox;
	display: flex;
	
	width: 1108px;
	padding: 0;
	margin: 0 auto;

	font-size: 15px;
	line-height: 1.47;
	
	list-style: none;

	color: rgba(51, 69, 84, 0.8);
}

html > body > main > section.triptych > div.scroll-block > ul.features > li
	{
		box-sizing: border-box;
		padding-right: 60px;
	}

html > body > main > section.triptych > div.scroll-block > ul.features > li:not(:last-child)
		{
			-webkit-flex-shrink: 0;
			    -ms-flex-negative: 0;
			        flex-shrink: 0;
		}

html > body > main > section.triptych > div.scroll-block > ul.features > li:first-child
		{
			width: 380px;
		}

html > body > main > section.triptych > div.scroll-block > ul.features > li:nth-child(2)
		{
			width: 390px;
		}

html > body > main > section.triptych > div.scroll-block > ul.features > li > strong
		{
			display: block;

			width: 75%;
			margin-bottom: 16px;

			font-size: 18px;
			line-height: 1.44;

			color: #334554;
		}

html > body > main > section.triptych > div.scroll-block > ul.features > li > strong > small
			{
				font-size: inherit;
			}

html > body > main > section.layouts > div.slideshow > ul.slides
{
	position: relative;
	z-index: 1;
	
	overflow: hidden;
	
	width: 100%;
	height: 100%;
	padding: 0;
	margin: 0;
	
	list-style: none;
}

html > body > main > section.layouts > div.slideshow > ul.slides > li
	{
		position: absolute;
		top: 0;
		left: 0;
		
		display: none;
		
		width: 100%;
		height: 100%;
		
		pointer-events: none;
		
		transition: opacity 1s;
	}

html > body > main > section.layouts > div.slideshow > div.controls
{
	position: absolute;
	bottom: 40px;
	left: 35px;
	z-index: 1;

	white-space: nowrap;
}

/**
 * Сбросить всё оформление со стандартной кнопки
 */

html > body > main > section.layouts > div.slideshow > div.controls > button
{
	display: inline;
	
	box-sizing: content-box;
	padding: 0;
	margin: 0;
	
	-webkit-appearance: none;
	
	   -moz-appearance: none;
	
	        appearance: none;
	
	background: transparent;
	
	border: none;
	
	position: relative;
	
	box-sizing: border-box;
	width: 40px;
	height: 40px;
	
	vertical-align: middle;

	cursor: pointer;
	
	color: #fcfaf8;
	background: #c3beba;
	
	border-radius: 50%;
}

html > body > main > section.layouts > div.slideshow > div.controls > button > svg
	{
		position: absolute;
		top: 0;
		right: 0;
		bottom: 0;
		left: 0;
		
		margin: auto;
		
		fill: #fcfaf8;
	}

html > body > main > section.layouts > div.slideshow > div.controls > button.prev
	{
		margin-right: 15px;
	}

html > body > main > section.layouts > div.slideshow > div.controls > button.prev > svg
		{
			right: 2px;
		}

html > body > main > section.layouts > div.slideshow > div.controls > button.next
	{
		margin-left: 15px;
	}

html > body > main > section.layouts > div.slideshow > div.controls > button.next > svg
		{
			left: 2px;
		}

html > body > main > section.layouts > div.slideshow > div.controls > span.counter
{
	display: inline-block;
	
	min-width: 3.5ex;
	
	font-size: 24px;
	font-weight: 700;
	text-align: right;
	vertical-align: middle;

	color: #c3beba;
}

html > body > main > section.slider-component > div > ul
{
	padding: 0;
	margin: 0;

	list-style: none;
}

html > body > main > section.layouts > div.slideshow > ul.slides.backwards > li.current
{
	-webkit-animation-name: slide-from-left;
	        animation-name: slide-from-left;
}

html > body > main > section.layouts > div.slideshow > ul.slides > li
{
	position: absolute;
	top: 0;
	left: 0;
	
	display: none;
	
	box-sizing: border-box;
	width: 100%;
	height: 100%;
	padding: 30px 35px 40px;

	pointer-events: auto;

	background: #fcfaf8;

	transition: opacity 1s;
}

html > body > main > section.layouts > div.slideshow > ul.slides > li.prev
	{
		display: block;
		
		opacity: 0;
	}

html > body > main > section.layouts > div.slideshow > ul.slides > li.current
	{
		z-index: 1;
		
		display: block;
		
		transition: none;
		
		-webkit-animation-name: slide-from-right;
		
		        animation-name: slide-from-right;
		-webkit-animation-duration: 0.5s;
		        animation-duration: 0.5s;
		-webkit-animation-timing-function: ease-out;
		        animation-timing-function: ease-out;
	}

html > body > main > section.layouts > div.slideshow > ul.slides > li::after
	{
		display: table;
		clear: both;

		content: '';
	}

html > body > main > section.layouts > div.slideshow > ul.slides > li > a:not(.lazy-image)
{

	padding: 0 24px;

	text-decoration: none;
}

html > body > main > section.layouts > div.slideshow > ul.slides > li > h3
{

	margin-bottom: 2px;

	font-size: 30px;

	color: #1b3c57;
}

html > body > main > section.layouts > div.slideshow > ul.slides > li > img
{
	float: right;
	
	max-width: 50%;
	max-height: 95%;
	margin-top: 25px;

	object-fit: contain;
	object-position: center top;
}

html > body > main > section.layouts > div.slideshow > ul.slides > li > p
{
	margin: 0 0 35px;

	opacity: 1;
	color: rgba(27, 60, 87, 0.7);
}

html > body > main > section.slider-component > div > ul.bookmarks
{
	display: -webkit-flex;
	display: -ms-flexbox;
	display: flex;
}

html > body > main > section.slider-component > div > ul.bookmarks > li
{
	-webkit-flex-shrink: 0;
	    -ms-flex-negative: 0;
	        flex-shrink: 0;
	width: 100%;

	transition: opacity 0.2s;
}

html > body > main > section.slider-component > div > ul.bookmarks > li:not(.current)
	{
		pointer-events: none;

		opacity: 0;
	}

html > body > main > section.slider-component > div > ul.bookmarks > li:nth-child( 2 )
	{
		-webkit-transform: translateX( -100% );
		        transform: translateX( -100% );
	}

html > body > main > section.slider-component > div > ul.bookmarks > li:nth-child( 3 )
	{
		-webkit-transform: translateX( -200% );
		        transform: translateX( -200% );
	}

html > body > main > section.slider-component > div > ul.bookmarks > li:nth-child( 4 )
	{
		-webkit-transform: translateX( -300% );
		        transform: translateX( -300% );
	}

html > body > main > section.slider-component > div > ul.bookmarks > li:nth-child( 5 )
	{
		-webkit-transform: translateX( -400% );
		        transform: translateX( -400% );
	}

html > body > main > section.slider-component > div > ul.bookmarks > li > p
	{
		margin: 0;
		
		font-size: 20px;
		line-height: 1.4;
	}

html > body > main > section.slider-component > div > ul.bookmarks > li > p:not(:last-child)
		{
			margin-bottom: 16px;
		}

html > body > main > section.slider-component > div > ul.bookmarks > li > p > strong
		{
			color: #5a9bb7;
		}

html > body > main > section.slider-component > div > ul.slides
{
	display: -webkit-flex;
	display: -ms-flexbox;
	display: flex;

	width: -webkit-max-content;

	width: -moz-max-content;

	width: max-content;
	margin-bottom: 32px;

	transition: -webkit-transform 0.2s;

	transition: transform 0.2s;

	transition: transform 0.2s, -webkit-transform 0.2s;
}

html > body > main > section.slider-component > div > ul.buttons
{
	position: relative;
	z-index: 1;
	
	display: -webkit-flex;
	
	display: -ms-flexbox;
	
	display: flex;
	-webkit-align-items: center;
	    -ms-flex-align: center;
	        align-items: center;
	
	margin-top: auto;

	font-size: 0;
}

html > body > main > section.slider-component > div > ul.buttons > li:not(:last-child)
	{
		margin-right: 20px;
	}

html > body > main > section.slider-component > div > ul.buttons > li.prev, html > body > main > section.slider-component > div > ul.buttons > li.next
	{
		width: 48px;
		height: 48px;

		cursor: pointer;

		background: url( 'images/arrow.svg' ) center center no-repeat;

		border: 2px solid #aea69b;
		border-radius: 50%;
	}

html > body > main > section.slider-component > div > ul.buttons > li.prev
	{
		-webkit-transform: rotate( 180deg );
		        transform: rotate( 180deg );
	}

html > body > main > section.slider-component > div > ul.buttons > li.counter
	{
		min-width: 3.5ex;
		
		font-size: 24px;
		font-weight: 700;
		line-height: 1.46;
		text-align: center;

		color: #aea69b;
	}

html > body > main > section.slider-component > div > ul.slides > li
{
	position: relative;

	margin-right: 97px;
	
	font-size: 0;

	opacity: 0;

	transition: opacity 0.2s;
}

html > body > main > section.slider-component > div > ul.slides > li.current, html > body > main > section.slider-component > div > ul.slides > li.current ~ li
	{
		opacity: 1;
	}

html > body > main > section.slider-component > div > ul.slides > li::before
	{
		position: absolute;
		right: 0;
		bottom: 0;
		left: 0;

		height: 200px;

		content: '';

		background: linear-gradient( transparent, rgba(0, 0, 0, 0.5) );
	}

html > body > main > section.slider-component > div > ul.slides > li > h3
{
	position: absolute;
	bottom: 44px;
	left: 44px;

	width: calc(100% - 160px);
	margin: 0;

	font-size: 36px;
	line-height: 1.11;

	color: white;
}

html > body > main > section.slider-component > div > ul.slides > li > img
{
	font-size: 20px;

	width: 478px;
	height: 576px;

	object-fit: cover;
}

@media (min-width: 700px) and (max-width: 1099px)
	{
	}

@media (min-width: 1100px) and (max-width: 1399px)
	{
	}

@media (max-width: 1920px)
	{

html > body > main > section.comfort > figure
{
		left: 0
}

html > body > main > section.comfort > figure::before
	{
			content: none
	}
	}

@media (max-width: 1399px)
	{
html > body > main > section.layouts > div.slideshow > ul.slides > li > a:not(.lazy-image)
{
		padding: 0 27px
}
html > body > main > section > section > h3, html > body > main > section.layouts > div.slideshow > ul.slides > li > h3
{
		font-size: 36px
}
html > body > main > section > section > h3
{
		font-size: 24px
}
html > body > main > section.layouts > div.slideshow > ul.slides > li > h3
{
		font-size: 18px
}

aside:not(#lightbox)
{
		font-size: 13px;
		line-height: 1.2
}

html > body > main > section.comfort
{
		padding-top: 120px
}

html > body > main > section.comfort > figure
{
		top: 0;

		width: calc(50% + 75px)
}

html > body > main > section.comfort > h2, html > body > main > section.comfort > p
{
		max-width: 450px;
		padding-left: 450px
}

html > body > main > section.layouts
{
		padding-top: 210px
}

html > body > main > section.layouts > h2, html > body > main > section.layouts > p
{
		max-width: 340px;
		padding-right: 560px
}

html > body > main > section.layouts > h2
{
		background-position-x: 560px
}

html > body > main > section.location.has-background > p
	{
			max-width: 45%;
			padding-right: 45%;
			padding-left: 0
	}

html > body > main > section.location.has-background > figure
	{
			width: calc(50% - 90px)
	}

html > body > main > section.location
{
		margin-right: auto;
		margin-left: auto
}

html > body > main > section.location > h2, html > body > main > section.location > p
{
		max-width: 45%;
		padding-right: 45%;
		padding-left: 0
}

html > body > main > section.technology
{
		min-height: 33vw;
		margin-right: auto;
		margin-left: auto
}

html > body > main > section.technology > figure
{
		width: calc(50% - 65px)
}

html > body > main > section.technology > h2, html > body > main > section.technology > p
{
		max-width: 45%;
		padding-left: 45%
}

html > body > main > section.technology > h2::before
	{
			left: 0
	}

html > body > main > section.triptych.finishing > figure
		{
				overflow-y: hidden;
				-webkit-overflow-scrolling: touch
		}

html > body > main > section.triptych.finishing > figure > img
			{
					max-width: none
			}

html > body > main > section.triptych.investment > div.scroll-block > figure
			{
					width: auto
			}

html > body > main > section.triptych.investment > div.scroll-block > ul.features
			{
					padding-left: 109px
			}

html > body > main > section.triptych > aside
{
		top: 279px;
		left: 65%
}

html > body > main > section.triptych > h2, html > body > main > section.triptych > p
{
		box-sizing: border-box;
		max-width: 740px;
		padding-right: 35.34%;
		padding-left: 4.175%
}

html > body > main > section.triptych > h2
{
		background-position-x: 6.5%
}

html > body > main > section.layouts > div.slideshow
{
		width: calc(46.88vw - 33px);
		margin-left: calc(6.25vw - 4px)
}

html > body > main > section.triptych > div.scroll-block
{
		overflow-y: hidden;
		-webkit-overflow-scrolling: touch
}

html > body > main > section.triptych > div.scroll-block > figure
{
		width: auto
}

html > body > main > section.triptych > div.scroll-block > ul.features
{
		padding-left: 98px;
		
		font-size: 13px
}

html > body > main > section.triptych > div.scroll-block > ul.features > li > strong
		{
				font-size: 16px
		}

html > body > main > section.layouts > div.slideshow > div.controls
{
		bottom: 30px;
		left: 25px
}

html > body > main > section.layouts > div.slideshow > ul.slides > li
{
		padding: 20px 25px 30px
}

html > body > main > section.layouts > div.slideshow > ul.slides > li > h3
{
		font-weight: 700
}

html > body > main > section.layouts > div.slideshow > ul.slides > li > img
{
		max-width: 45%;
		margin: 0
}
	}

@media (max-width: 1099px)
	{
html > body > main
{
		min-height: 0;
		padding-left: 0
}

aside:not(#lightbox)
{
		position: relative;

		margin-left: 5vw
}

html > body > a.online-office
{
		bottom: -60px;
		left: 50%;

		-webkit-transform: translate( -50%, 200px );

		        transform: translate( -50%, 200px )
}

html > body > a.online-office.visible
	{
			pointer-events: auto;

			opacity: 1;
			
			-webkit-transform: translate( -50%, 0 );
			
			        transform: translate( -50%, 0 )
	}

html > body > a.up
{
		right: 17px;
		bottom: 208px;

		width: 64px;
		height: 64px
}

html > body > main > section.advantages > ul
	{
			padding-top: 0
	}

html > body > main > section.component[data-scroll-sensitive="yes"] > figure
	{
			-webkit-transform: translateX( 0 );
			        transform: translateX( 0 )
	}

html > body > main > section.component[data-scroll-sensitive="yes"] > div.info
	{
			-webkit-transform: translateX( 0 );
			        transform: translateX( 0 )
	}

html > body > main > section.your-house[data-scroll-sensitive="yes"] > div.info
		{
				-webkit-transform: translateY( 0 );
				        transform: translateY( 0 )
		}

html > body > main > section.your-house[data-scroll-sensitive="yes"] > div.image
		{
				-webkit-transform: translateX( 0 );
				        transform: translateX( 0 )
		}

html > body > main > section.architecture
{
		margin-bottom: 60px
}

html > body > main > section.architecture > h2, html > body > main > section.architecture > p
{
		max-width: 540px;
		margin-right: 5vw;
		margin-left: 5vw;
		
		text-align: left
}

html > body > main > section.comfort
{
		max-width: 100%;
		padding-top: 70px;
		margin-right: auto;
		margin-left: auto
}

html > body > main > section.comfort > figure
{
		position: static;

		width: 100%
}

html > body > main > section.comfort > h2, html > body > main > section.comfort > p
{
		max-width: 540px;
		padding-left: 0;
		margin-right: 5vw;
		margin-left: 5vw;
		
		text-align: left
}

html > body > main > section.layouts
{
		display: -webkit-flex;
		display: -ms-flexbox;
		display: flex;
		-webkit-flex-direction: column;
		    -ms-flex-direction: column;
		        flex-direction: column;
		
		padding-top: 70px
}

html > body > main > section.layouts > h2, html > body > main > section.layouts > p
{
		max-width: 540px;
		padding-right: 0;
		margin-right: 5vw;
		margin-left: 5vw
}

html > body > main > section.layouts > h2
{
		background-position-x: left
}

html > body > main > section.location.has-background
{
		margin-top: 0
}

html > body > main > section.location.has-background > p
	{
			max-width: 540px;
			padding-right: 0;
			margin-left: 0
	}

html > body > main > section.location.has-background > figure
	{
			width: calc(100% + 5vw);
			margin-left: -5vw
	}

html > body > main > section.location
{
		max-width: 100%;
		min-height: 0;
		padding: 80px 0;
		margin-right: 5vw;
		margin-left: 5vw
}

html > body > main > section.location > figure
{
		position: static;

		width: calc(100% + 5vw);
		margin-top: 40px
}

html > body > main > section.location > figure img
	{
			width: 100%
	}

html > body > main > section.location > h2, html > body > main > section.location > p
{
		max-width: 540px;
		padding-right: 0;
		margin-left: 0
}

html > body > main > section.slider-component
{
		-webkit-flex-direction: column;
		    -ms-flex-direction: column;
		        flex-direction: column;

		padding: 0;
		margin-bottom: 60px
}

html > body > main > section.technology
{
		max-width: 100%;
		padding-top: 0;
		margin-right: 5vw;
		margin-left: 5vw
}

html > body > main > section.technology > figure
{
		position: static;

		width: calc(100% + 5vw);
		margin: 40px 0 0
}

html > body > main > section.technology > figure
{
		width: calc(100% + 10vw);
		margin-left: -5vw
}

html > body > main > section.technology > figure img
	{
			width: 100%
	}

html > body > main > section.technology > h2, html > body > main > section.technology > p
{
		max-width: 540px;
		padding-left: 0;
		margin-left: 0
}

html > body > main > section.triptych
{
		display: -webkit-flex;
		display: -ms-flexbox;
		display: flex;
		-webkit-flex-direction: column;
		    -ms-flex-direction: column;
		        flex-direction: column;
		
		padding-top: 70px
}

html > body > main > section.triptych.finishing > figure
		{
				-webkit-order: 1;
				    -ms-flex-order: 1;
				        order: 1
		}

html > body > main > section.triptych.infrastructure
	{
			padding-top: 70px
	}

html > body > main > section.triptych.infrastructure > div.map
		{
				-webkit-order: 1;
				    -ms-flex-order: 1;
				        order: 1
		}

html > body > main > section.triptych.infrastructure > aside
		{
				top: 20px
		}

html > body > main > section.triptych.investment > div.scroll-block > figure
			{
					-webkit-order: 1;
					    -ms-flex-order: 1;
					        order: 1
			}

html > body > main > section.triptych > aside
{
		top: 0;
		left: 0;

		margin: 0 5vw 0 auto
}

html > body > main > section.triptych > h2, html > body > main > section.triptych > p
{
		max-width: 540px;
		padding-right: 0;
		padding-left: 0;
		margin-right: 5vw;
		margin-left: 5vw
}

html > body > main > section.triptych > h2
{
		background-position-x: left
}

html > body > main > section.layouts > div.slideshow
{
		-webkit-order: 1;
		    -ms-flex-order: 1;
		        order: 1;
		float: none;

		width: 100vw;
		height: 350px;
		margin: 40px 0 0
}

html > body > main > section.infrastructure > div.map > div.container
{
		height: 440px
}

html > body > main > section.infrastructure > div.map > ul.legend
{
		-webkit-justify-content: flex-start;
		    -ms-flex-pack: start;
		        justify-content: flex-start;
		
		margin-right: 5vw;
		margin-left: 5vw
}

html > body > main > section.slider-component > div.info
{
		box-sizing: border-box;
		width: 100vw;
		padding: 0 5vw;
		margin: 0 0 32px;

		-webkit-transform: translateY( 0 );

		        transform: translateY( 0 )
}

html > body > main > section.triptych > div.scroll-block
{
		-webkit-order: 1;
		    -ms-flex-order: 1;
		        order: 1
}

html > body > main > section.layouts > div.slideshow:not(.ready) > div.controls
{
		display: none
}

html > body > main > section.layouts > div.slideshow:not(.ready) > div.sections
{
		display: none
}

html > body > main > section.layouts > div.slideshow > ul.slides
{
		position: absolute;
		top: 0;
		right: 0;
		
		width: 100vw;
		margin: 0 0 40px
}

html > body > main > section.layouts > div.slideshow > div.controls
{
		right: 5vw;
		bottom: 20px;
		left: auto
}

html > body > main > section.layouts > div.slideshow > ul.slides > li > img
{
		max-height: 80%
}

html > body > main > section.slider-component > div > ul.slides > li
{
		margin-right: 40px
}
	}

@media (max-width: 699px)
	{
html > body > main > section > section > p
{
		font-size: 18px;
		line-height: 1.4
}

html > body > main > section.slider-component > div > h2
{
		margin-bottom: 20px;

		font-size: 30px;
		line-height: 1.09
}

html > body > main > section.comfort
{
		display: -webkit-flex;
		display: -ms-flexbox;
		display: flex;
		-webkit-flex-direction: column;
		    -ms-flex-direction: column;
		        flex-direction: column
}

html > body > main > section.layouts
{
		display: -webkit-flex;
		display: -ms-flexbox;
		display: flex;
		-webkit-flex-direction: column;
		    -ms-flex-direction: column;
		        flex-direction: column
}

html > body > main > section.layouts > h2, html > body > main > section.layouts > p
{
		max-width: 100%;
		padding-right: 0
}

html > body > main > section.location.has-background > p
	{
			max-width: 100%
	}

html > body > main > section.location.has-background > figure
	{
			width: calc(100% + 10vw + 1px)
	}

html > body > main > section.location > h2, html > body > main > section.location > p
{
		max-width: 100%
}

html > body > main > section.technology > h2, html > body > main > section.technology > p
{
		max-width: 100%
}

html > body > main > section.triptych.investment > div.scroll-block > ul.features
			{
					padding-left: 5vw
			}

html > body > main > section.triptych > aside
{
		width: auto;
		margin-right: 5vw;
		margin-left: 5vw
}

html > body > main > section.triptych > h2, html > body > main > section.triptych > p
{
		max-width: 100%
}

html > body > main > section.layouts > div.slideshow
{
		height: 550px
}
		html > body > main > section.infrastructure > div.map > ul.legend > li
		{
			width: 50%;
			min-width: 240px;
		}

html > body > main > section.slider-component > div.info
{
		margin-bottom: 24px
}

html > body > main > section.slider-component > div.wrapper
{
		width: 100vw;
		margin: 0
}

html > body > main > section.slider-component > div > p:not(:first-of-type)
	{
			font-size: 18px;
			line-height: 1.4
	}

html > body > main > section.slider-component > div > p:first-of-type
	{
			font-size: 20px;
			line-height: 1.4
	}

html > body > main > section.triptych > div.scroll-block > ul.features
{
		padding-left: 5vw
}

html > body > main > section.triptych > div.scroll-block > ul.features > li:not(:last-child)
		{
				padding-right: 10vw
		}

html > body > main > section.triptych > div.scroll-block > ul.features > li:first-child
		{
				width: 100vw
		}

html > body > main > section.triptych > div.scroll-block > ul.features > li:nth-child(2)
		{
				width: 100vw
		}

html > body > main > section.triptych > div.scroll-block > ul.features > li:last-child
		{
				width: 100vw
		}

html > body > main > section.layouts > div.slideshow > div.controls
{
		right: auto;
		bottom: 20px;
		left: 50%;

		-webkit-transform: translateX( -50% );

		        transform: translateX( -50% )
}

html > body > main > section.layouts > div.slideshow > ul.slides > li
{
		text-align: center
}

html > body > main > section.layouts > div.slideshow > ul.slides > li > img
{
		float: none;
		
		max-width: 100%;
		height: 260px;
		max-height: none;
		margin-bottom: 20px
}

html > body > main > section.slider-component > div > ul.bookmarks > li > p
	{
			font-size: 18px;
			line-height: 1.4
	}

html > body > main > section.slider-component > div > ul.slides
{
		margin-bottom: 24px
}

html > body > main > section.slider-component > div > ul.buttons
{
		-webkit-justify-content: center;
		    -ms-flex-pack: center;
		        justify-content: center
}

html > body > main > section.slider-component > div > ul.slides > li
{
		width: 100vw
}

html > body > main > section.slider-component > div > ul.slides > li > h3
{
		bottom: 5vw;
		left: 5vw;

		width: 80vw;

		font-size: 30px;
		line-height: 1.09
}

html > body > main > section.slider-component > div > ul.slides > li > img
{
		width: 100%
}
	}
