:root {
	--dark_blue: #19273C;
	--blue_text: #2C4161;
	--light_grey: #E8EAEC;
	--light_violet: #DCE4F7;

	--banner_font: clamp(50px, 6vw, 106px);
	--banner_letter_spacing: 0.08em;

	--map_lanel_font: clamp(45px, 5vw, 93px);
	--map_lanel_letter_spacing: 0.054em;


	--largest_font:clamp(38px, 5vw, 82px);
	--largest_letter_spacing: 0.06em;

	--page_title_font: clamp(32px, 4vw, 78px);
	--page_title_letter_spacing: 0.06em;

	--medium_text: clamp(20px, 2.5vw, 48px);
	--letter_spacing_medium: 0.16em;

	--text_medium_title: clamp(22px, 1.6vw, 36px);
	--letter_spacing_medium_title: 0.22em;
	--letter_spacing_medium_text: 0.11em;

	--font-size-30:  clamp(12px, 1.7vw, 30px);
	--letter-spacing-30: 0.13em;

	--text_description: clamp(14px, 1.2vw, 20px);
	--text_letter_spacing: 0.1em; /* було 2px */

	--button_text: clamp(14px, 1vw, 18px);
	--button_letter_spacing: 0.16em; /* було 3px */

	--text_small: 14px;
	--text_small_adaptive: clamp(12px, 1vw, 20px);

	--section_padding: 120px;
	--big_padding_left: 60px;
	--medium_padding: 35px;
}

body{
	overflow-x: hidden;
	font-size: var(--text_description);
	font-weight: normal;
	font-style: normal;
	letter-spacing: var(--text_letter_spacing);
	font-family: 'Gilroy', serif;
	line-height: 1;
	background-color: var(--light_grey);
}

/* ===== PRELOADER ===== */
.preloader {
	position: fixed;
	top: -100px;
	left: -100px;
	right: -100px;
	bottom: -100px;
	z-index: 9999;
	display: flex;
	align-items: center;
	justify-content: center;
	pointer-events: all;
	overflow: hidden;
	background: var(--dark_blue);
}
.preloader-curtain {
	position: absolute;
	left: 0;
	right: 0;
	height: 50%;
	background: var(--dark_blue);
	z-index: 1;
}
.preloader-curtain--top { top: 0; }
.preloader-curtain--bottom { bottom: 0; }
.preloader-content {
	position: relative;
	z-index: 2;
	text-align: center;
}
.preloader-title {
	display: block;
	width: clamp(100px, 20vw, 250px);
	height: auto;
	margin: 45px auto;
	opacity: 0.85;
}
.preloader-svg {
	display: block;
	width: clamp(70px, 9vw, 130px);
	height: auto;
	margin: 0 auto 24px;
	opacity: 0.85;
}
.preloader-bar {
	width: 220px;
	height: 2px;
	background: rgba(220, 228, 247, 0.15);
	margin: 24px auto 0;
	border-radius: 2px;
	overflow: hidden;
}
.preloader-progress {
	width: 0%;
	height: 100%;
	background: var(--light_violet);
	border-radius: 2px;
	transition: width 0.3s ease;
}
.preloader.done {
	pointer-events: none;
}
/* char-animate: reset inner character spans so they don't inherit
   .page_title span / .title_top_padding span block/padding styles */
[data-char-animate] span span {
	display: inline-block !important;
	padding: 0 !important;
	margin: 0 !important;
	line-height: inherit !important;
}
/* ===== /PRELOADER ===== */

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, font, 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 {
	margin: 0;
	padding: 0;
	border: 0;
	outline: 0;
	box-sizing: border-box;
}
html {
	overflow-x: hidden;
}
body {
	line-height: 1;
	overflow-x: hidden;
}
ol, ul {
	list-style: none;
}
blockquote, q {
	quotes: none;
}
blockquote:before, blockquote:after,
q:before, q:after {
	content: '';
}

/* remember to define focus styles! */
:focus {
	outline: 0;
}
a:hover{
	cursor: pointer;
}

/* remember to highlight inserts somehow! */
ins {
	text-decoration: none;
}
del {
	text-decoration: line-through;
}

/* tables still need 'cellspacing="0"' in the markup */
table {
	border-collapse: collapse;
	border-spacing: 0;
}
/* Reset and base styles  */
* {
	padding: 0;
	margin: 0;
	border: none;
}

*,
*::before,
*::after {
	box-sizing: border-box;
}

/* Links */

a, a:link, a:visited  {
	text-decoration: none;
}

a:hover  {
	text-decoration: none;
}

/* Common */

aside, nav, footer, header, section, main {
	display: block;
}

h1, h2, h3, h4, h5, h6, p {
	font-size: inherit;
	font-weight: inherit;
}

ul, ul li {
	list-style: none;
}

img {
	vertical-align: top;
}

img, svg {
	max-width: 100%;
	height: auto;
}

address {
	font-style: normal;
}

/* Form */

input, textarea, button, select {
	font-family: inherit;
	font-size: inherit;
	color: inherit;
	background-color: transparent;
}

input::-ms-clear {
	display: none;
}

button, input[type="submit"] {
	display: inline-block;
	box-shadow: none;
	background-color: transparent;
	background: none;
	cursor: pointer;
}

input:focus, input:active,
button:focus, button:active {
	outline: none;
}

button::-moz-focus-inner {
	padding: 0;
	border: 0;
}

label {
	cursor: pointer;
}

legend {
	display: block;
}
.center_row{
	/*max-width: 1440px;*/
	padding: 0 var(--big_padding_left);
	margin: 0 auto;
	width: 100%;
	box-sizing: border-box;
}
.custom-logo-link{
	display: block;
	width: 100%;
}
.custom-logo-link img{
	width:100%;
	height: auto;
	transition: 600ms linear;
}

.social_flex{
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 38px;
}

.page_title span {
	font-family: 'Nyght Serif', serif;
	font-weight: 300;
	font-style: italic;
}
.title_top_padding span{
	padding-top: 40px;
	display: block;
}
.title_left_padding span{
	padding-left: 100px;
}
.page_title{
	font-size: var(--page_title_font);
	letter-spacing: var(--page_title_letter_spacing);
	font-weight: 200;
	line-height: 1;
	color: #FFF;
	text-transform: uppercase;
	/*max-width: 500px;*/
}
.button_style:before{
	/*content: '';
	position: absolute;
	width: 15px;
	height: 12px;
	background-image: url('/wp-content/themes/sdg/img/arrow.svg');
	background-size: contain;
	background-repeat: no-repeat;
	background-position: center;
	right: 20px;
	top: 50%;
	margin-top: -6px;*/
}
.button_style span{
	font-size: var(--button_text);
	letter-spacing:var(--button_letter_spacing);
	color: #ffffff;
	text-transform: uppercase;
	white-space: nowrap;
	position: relative;
	display: block;
	font-weight: normal;
}
.button_style:focus span{
	color: var(--light_violet);
}
.button_style:focus{
	background-color: var(--dark_blue);
}
.button_style{
	display: flex;
	align-items: center;
	justify-content: center;
	height: 62px;
	padding: 0 44px;
	border-radius:60px;
	border: 1px solid #ffffff;
	position: relative;
	overflow: hidden;
	gap: 18px;
	font-weight: normal;
}

.flex_row{
	display: flex;
	align-items: center;
	justify-content: space-between;

}

.left_column_map{
	position: relative;
	z-index: 1;
	margin-top: var(--section_padding);
	left: var(--big_padding_left);
}
.right_column_map{
	position: absolute;
	right: 0;
	top: 50%;
	transform: translateY(-50%);
	max-width: 100%;
}
.nowrap_text{
	white-space: nowrap;
}
.close_popup img{
	width: 100%;
}
.close_popup{
	position: absolute;
	left: 0;
	top: 0;
	transform: translateY(-100%) translateX(-100%);
	width:15px;
	height:15px;
}
.benefit_block {
	display: grid;
	grid-template-columns: repeat(3, 1fr);
	gap: 59px 19px;
	margin-top: 75px;
}

.benefit_block > :nth-child(1),
.benefit_block > :nth-child(2) {
	grid-column: span 1;
}

.benefit_block > :nth-child(2) {
	grid-column-start: 2;
	grid-column-end: 4;
}
.benefit_item{
	color: var(--light_violet);
	position: relative;
}
.benefit_title{
	font-family: 'Nyght Serif', serif;
	font-size: var(--map_lanel_font);
	letter-spacing: var(--map_lanel_letter_spacing);
	font-style: italic;
	font-weight: 300;


}
.benefit_description{
	max-width: 345px;
	margin-top: var(--medium_padding);
	line-height: 148%;
}
.benefit_item.benefit_item_2,.benefit_item.benefit_item_4,.benefit_item.benefit_item_5{
	margin-top: 40px;
}
.benefit_item.benefit_item_3,.benefit_item.benefit_item_4{
	margin-left: 40px;
}
.benefit_item.benefit_item_5{
	top: 40px;
	left: -40px;
}
.characteristics_grid{
	width: 100%;
	/*display: grid;
	grid-template-columns: 1fr 1fr;
	grid-gap: 24px 37px;*/
}
.alight_top{
	align-items: flex-start;
}
.alight_center{
	align-items: center;
}
.banner_main_content{
	height: 100vh;
	min-height: 584px;
	width: 100%;
	padding: 60px 0;
	box-sizing: border-box;
	position: relative;
}
.banner_item:before{
	content: '';
	position: absolute;
	left: 0	;
	right: 0;
	top: 0;
	bottom: 0;
	z-index: 1;
	background:
			linear-gradient(20deg, rgba(25, 39, 60, 0.48) 15.26%, rgba(25, 39, 60, 0) 27.22%),
			linear-gradient(192deg, rgba(25, 39, 60, 0.95) 7.38%, rgba(25, 39, 60, 0) 22.29%);
}
.banner_item:after{
	content: '';
	position: absolute;
	left: 0	;
	right: 0;
	top: 0;
	bottom: 0;
	z-index: 2;
	background: linear-gradient(
			242deg,
			rgba(25, 39, 60, 0.00) 51.02%,
			rgba(25, 39, 60, 0.36) 101.75%
	);
}
.banner_item{
position: relative;
	width: 100%;
	/*background-size: cover;
	background-repeat: no-repeat;
	background-position: center;*/
}
.banner_item img,
.banner_item video{
	width: 100%;
	height: 100vh;
	min-height: 584px;
	object-fit: cover;
	object-position: center;
}
.banner_row{
	position: relative;
	z-index: 1;
}
.banner_block{
	position: absolute;
	top: 0;
	bottom: 0;
	left: 0;
	right: 0;
	z-index: 0;
}
.hero-video {
	width: 100%;
	height: 100vh;
	min-height: 584px;
	object-fit: cover;
	object-position: center;
}
.banner_mobile_poster {
	display: none;
}
.banner_block::before {
	content: '';
	position: absolute;
	left: 0; right: 0; top: 0; bottom: 0;
	z-index: 1;
	pointer-events: none;
	background:
		linear-gradient(20deg, rgba(25, 39, 60, 0.48) 15.26%, rgba(25, 39, 60, 0) 27.22%),
		linear-gradient(192deg, rgba(25, 39, 60, 0.95) 7.38%, rgba(25, 39, 60, 0) 22.29%);
}
.banner_block::after {
	content: '';
	position: absolute;
	left: 0; right: 0; top: 0; bottom: 0;
	z-index: 2;
	pointer-events: none;
	background: linear-gradient(
		242deg,
		rgba(25, 39, 60, 0.00) 51.02%,
		rgba(25, 39, 60, 0.36) 101.75%
	);
}
.top_banner_flex{
	display: flex;
	align-items: stretch;
	justify-content: space-between;
}
.top_align{
	align-items: center;
}

.site_logo img{
	max-width: 100%;
}
.site_logo{
	width: 256px;
	position: relative;
}
.intergal_city_logo img{
	height: 100%;
}
.intergal_city_logo{
	position: absolute;
	height: 55px;
	inset: 0;
	opacity: 0;
	left: 0;
	top: 50%;
	transform: translateY(-50%);
	width: 220px;
}
.header.active .intergal_logo{
	opacity: 0;
}
.header.active .intergal_city_logo{
	opacity: 1;
}
.intergal_logo,
.intergal_city_logo{
	transition: opacity .45s ease;
}
.stretch_class{
	height: 100%;
	display: flex;
	flex-direction: column;
	justify-content: space-between;
}
.site_phone{
	display: block;
	position: relative;
	color: #ffffff;
}

select>option {
	background-color: transparent;
	border: 0;
	padding-right: 15px;
	padding-left: 15px;
	height: 44px;
	width: 220px;
}
option[selected] {
	background-color: #9a9a9a;
}
option:checked {
	background-color: #E6E6E6;
}
input:focus{
	outline:none;
}
form.wpcf7-form.init p {
	margin: 0!important;
	padding: 0!important;
}

option{
	padding:10px;
	cursor: pointer;
}

.wpcf7 form .wpcf7-response-output {
	display: none !important;
}
.wpcf7 form.sent .wpcf7-response-output {
	display: block !important;
	margin-top: 48px !important;
	border: none;
	padding: 30px !important;
	border-radius: 16px;
	font-family: 'Gilroy', serif !important;
	color: var(--blue_text);
	font-size: 16px !important;
	font-style: normal;
	font-weight: normal;
	letter-spacing: 0.125em;
	line-height: 114%;
	display: block;
	text-transform: none;
	max-width: 600px;
}
.wpcf7 form.sent .wpcf7-response-output {
	border-color: var(--dark_blue) !important;
	color: var(--light_violet);
	text-align: center;
	background-color: var(--dark_blue);
}
.career_feedback input.wpcf7-form-control.wpcf7-submit{
	margin-top:68px;
}
.wpcf7-list-item{
	margin-left:0!important;
	margin-bottom:12px!important;
}


.wpcf7-response-output{
	font-size: var(--text_description);
	font-weight: normal;
	letter-spacing: var(--text_letter_spacing);
	line-height: 114%;
	color: var(--blue_text);
	padding: 20px!important;
	box-sizing: border-box;
	margin: 0!important;
	border-color: red!important;
}
.stretch_alight{
	align-items: stretch;
}
.group_block img{
	width: 143px;
}
.map {
	position: relative;
	z-index: 5;
	overflow: hidden;
	padding-bottom: 20px;
}
.button_style:before{
	animation: button_animation  1.5s infinite;
}
@keyframes button_animation {
	0% {
		margin-right: 0;
	}
	50% {
		margin-right: -10px;
	}
	100% {
		margin-right: 0;
	}
}
@keyframes rotate_animation {
	0% {
		transform: rotate(0deg);
	}
	50% {
		transform: rotate(60deg);
	}
	100% {
		transform: rotate(0deg);
	}
}
@keyframes rotate {
	0% {
		transform: rotate(0deg);
	}
	50% {
		transform: rotate(-30deg);
	}
	100% {
		transform: rotate(0deg);
	}
}


@keyframes pulse_new {
	0% {
		transform: translateY(-50%) scale(1) rotate(0deg);
		box-shadow: 0 0 0 0 rgba(255, 255, 255, 0.7);
	}

	70% {
		transform: translateY(-50%) scale(1.1) rotate(10deg);
		box-shadow: 0 0 0 10px rgba(255, 255, 255, 0);
	}

	100% {
		transform: translateY(-50%) scale(1) rotate(0deg);
		box-shadow: 0 0 0 0 rgba(255, 255, 255, 0);
	}
}
.button_style{
	cursor: pointer;
	transition: .4s linear;
}
.tab{
	cursor: pointer;
	transition: .4s linear;
	position: relative;
}
.button_style:after,.tab:after {
	content: "";
	background: linear-gradient(90deg, rgba(255, 255, 255, .1), rgba(255, 255, 255, .5));
	height: 60px;
	width: 50px;
	position: absolute;
	top: 0;
	left: -80px;
	transform: skewX(-45deg);
}


.marg_img,.close_popup,.tab{
	transition: 600ms linear;
	cursor: pointer;
}

.social_flex a,.logo_adcore img,.presentation_text,.footer_menu .menu-item a{
	transition: 600ms linear;
	cursor: pointer;
}

.header{

}
.header .site_logo {
	width: 139px;
}
.menu_home_btn {
	display: flex;
	width: 62px;
	height: 62px;
	align-items: center;
	justify-content: center;
	border-radius: 100%;
	border: 1px solid #fff;
	transition: all 0.35s ease;
	text-decoration: none;
}
.menu_home_btn:hover {
	background-color: rgba(255, 255, 255, 0.15);
}
.menu_burger {
	display: flex;
	width: 62px;
	height: 62px;
	flex-direction: column;
	justify-content: center;
	align-items: center;
	gap: 8px; /* 👈 ось це головне */
	cursor: pointer;
	border-radius: 100%;
	border: 1px solid #fff;
}

.menu_burger .line {
	width: 23px;
	height: 1px;
	background: #fff;
	transition: transform 0.45s cubic-bezier(0.22, 1, 0.36, 1),
	opacity 0.25s ease;
	transform-origin: center;
}



/* ✨ ACTIVE → X */
.menu_burger.active .line1 {
	transform: translateY(3.5px) rotate(45deg);
}

.menu_burger.active .line2 {
	transform: translateY(-3.5px) rotate(-45deg);
}

/* optional: сховати середню “вагу” ефекту */
.menu_burger.active .line {
	background: #fff;
}
.alight_stretch{
	align-items: stretch;
}
.alight_end{
	align-items: flex-end;
}
.social_flex a{
	position: relative;
	display: block;
	transition: 600ms linear;
	white-space: nowrap;
}
.justify_start{
	justify-content: flex-start;
}
.wpcf7-list-item label {
	position: relative;
	padding-left: 35px;
	display: block;
}

.marquee {
	animation: scroll 20s linear infinite;
}

@keyframes scroll {
	from {
		transform: translateX(0);
	}
	to {
		transform: translateX(calc(-100% - 20px));
	}
}
.popup_class{
	backdrop-filter: blur(10px);
}
.popup_class.active{
	transform: translateX(0);
}
.popup_class{
	position: fixed;
	width: 700px;
	right: 0;
	top: 0;
	bottom: 0;
	background-color: var(--dark_blue);
	z-index: 10;

	transform: translateX(100%);
	transition: transform 700ms cubic-bezier(0.77, 0, 0.175, 1);
	will-change: transform;
}
.popup_close_style img{
	width: 100%;
}
.popup_close_style{
	width: 30px;
	height: 30px;
	position: absolute;
	left: 0;
	top: 0;
	cursor: pointer;
	display: flex;
	flex-direction: column;
	justify-content: space-between;
	align-items: center;
	z-index: 1;
}
.content_menu{
	display: flex;
	flex-direction: column;
	justify-content: space-between;
	align-items: center;
	padding-top: 0;
	position: absolute;
	top: 0;
	bottom: 0;
	left: 0;
	right: 0;
	overflow-y: auto;
}
.recall_content .page_title{
	text-align: right;
}
.recall_content input.wpcf7-form-control,.recall_content select.wpcf7-form-control.wpcf7-select{
	border-color: var(--light_violet);
}
.recall_content input,.recall_content select,.recall_content option,.recall_content input::placeholder{
	color: var(--light_violet);
}
.recall_content  input.wpcf7-form-control.wpcf7-submit{
	color: var(--light_violet);
	outline-color:  var(--light_violet);
}
.recall_content .wpcf7 form .wpcf7-response-output{
	color: var(--light_violet);
	border-color: var(--light_violet)!important;
}
.recall_content .wpcf7-not-valid-tip {
	color: rgba(220, 228, 247, 0.6);
}
.recall_content{
	/*filter: invert(100%);*/
	width: 100%;
	position: relative;
}
.recall_popup .content_menu,.about_flat .content_menu{
	/*justify-content: center;*/
	padding: 60px;
}
.recall_popup input[type="radio"],.about_flat input[type="radio"]{
	background-color: #ffffff;
}
div#page {
	min-height: 100vh;
	display: flex;
	flex-direction: column;
	justify-content: space-between;
}

.close_popup_block.active_zone{
	top: 0;
}
.close_popup_block{
	position: fixed;
	left: 0;
	right: 0;
	height: 100vh;
	z-index: 9;
	background-color: transparent;
	top: 100%;
}
.popup_class .wpcf7-response-output{
	border-color: var(--light_violet);
}
.popup_class  .wpcf7-not-valid-tip{
	color: rgba(220, 228, 247, 0.6);
}


.gallery_popup.active{
	opacity:1;
	z-index: 10;
	transition: 300ms linear;
}
.gallery_popup{
	transition: 300ms linear;
	position: fixed;
	top: 0;
	bottom: 0;
	left: 0;
	right: 0;
	background-color: rgba(0, 0, 0, 0.75);
	opacity: 0;
	z-index: -1;
}
.popup_image img{
	max-width: 100%;
	max-height: 100%;
}
.popup_image.active{
	display: flex;
	z-index: 2;
}
.popup_content{
	position: absolute;
	top: 50%;
	left: 50%;
	height: 80vh;
	transform: translateX(-50%) translateY(-50%);
	width: 80%;
	object-fit: contain;
	object-position: center;
	align-items: center;
	justify-content: center;
	padding: 40px;
	background-color: #fff;
	display: flex;
}
.popup_image{
	display: none;
	width: 100%;
	height: 100%;
	align-items: center;
	justify-content: center;
	position: relative;
	z-index: 1;
}
.close_gallery{
	position: absolute;
	width: 15px;
	height: 15px;
	right: 15px;
	top: 15px;
	cursor: pointer;
	display: flex;
	flex-direction: column;
	justify-content: space-between;
	align-items: center;
	transition: 600ms linear;
	z-index: 3;
}


.social_vertical{
	position: absolute;
	right: var(--big_padding_left);
	top: 0;
	bottom: 0;
	display: flex;
	align-items: center;
	justify-content: center;
	flex-direction: column;
	transform: rotate(180deg);
	gap: 38px;
}
.social_name{
	writing-mode: vertical-rl; /* або vertical-lr */
	text-orientation: mixed;
	color: #ffffff;
	text-transform: uppercase;
}
.bottom_text{
	position: absolute;
	left: var(--big_padding_left);
	bottom: 0;
}
.button_flex{
	display: flex;
	align-items: center;
	justify-content: flex-start;
}
.banner_address{
	color: #ffffff;
	margin: var(--medium_padding) 0;
	opacity: 0.6;
	text-transform: uppercase;
}
.banner_description{
	color: #ffffff;
	max-width: 371px;
	text-transform: uppercase;
	line-height: 148%;
}
.banner_title{
	color: #ffffff;
	margin-bottom: 87px;
	white-space: nowrap;
	font-size: var(--largest_font);
	font-weight: 200;
	text-transform: uppercase;
	letter-spacing: var(--largest_letter_spacing);
}
.middle_block{
	position: absolute;
	top: 50%;
	left: var(--big_padding_left);
	transform: translateY(-50%);
	margin-top: -50px;
}
.banner_text {
	font-family: 'Nyght Serif', serif;
	font-weight: 300;
	font-style: italic;
	font-size: var(--banner_font);
	line-height: 0.99;
	letter-spacing: var(--banner_letter_spacing);
	text-transform: uppercase;
	text-align: right;
	color: #fff;
	visibility: hidden;
}
.wave-char {
	display: inline-block;
	will-change: transform;
}
.scroll_block:before{
	content: '';
	width: 1px;
	height: 60px;
	background-color: #ffffff;
	position: absolute;
	top: 100%;
	left: 50%;
	transform: translateX(-50%);
	margin-top: 14px;
}
.scroll_block{
	writing-mode: vertical-rl;
	text-orientation: mixed;
	color: #ffffff;
	text-transform: uppercase;
	font-size: 14px;
	letter-spacing: 0.24em;
	position: absolute;
	left: 50%;
	transform: translateX(-50%) rotate(180deg);
	bottom: 0;
	z-index: 1;
	cursor: pointer;
}
.top_padding{
	padding-top:  var(--section_padding);
}
.bottom_padding{
	padding-bottom: var(--section_padding);
}
.characteristics_grid{
	display: grid;
	grid-template-columns: 1fr 1fr 1fr;
	grid-gap: 40px;
}
.characteristics_image{
	width: 100%;
	height: 100%;
	border-radius: 24px;
	overflow: hidden;
	position: relative;
}
.tiles_image,.infrastructure_image{
	width: 100%;
	aspect-ratio: 4/5;
	border-radius: 24px;
	overflow: hidden;
	position: relative;
}
.infrastructure_image{
	border-radius: 14.789px;
	aspect-ratio: 31/42;
}
.tiles_image{
	aspect-ratio: 2/1;
	max-height: 90vh;
}
.characteristics_image img,.tiles_image img,.infrastructure_image img,
.infrastructure_image video {
	width: 100%;
	height: 100%;
	object-fit: cover;
	display: block;
}
.characteristics_image::after {
	content: "";
	position: absolute;
	inset: 0;
	border-radius: 24px;
	background: linear-gradient(
			176deg,
			rgba(25, 39, 60, 0.00) 66.34%,
			rgba(25, 39, 60, 0.32) 94.68%
	);
	pointer-events: none;
}
.tiles_image::before {
	content: "";
	position: absolute;
	bottom: 0;
	left: 0;
	width: 100%;
	height: min(368px, 50%);
	border-radius: 24px;
	background: linear-gradient(0deg, rgba(21, 24, 29, 0.70) 0%, rgba(21, 24, 29, 0.00) 100%);
}
.tiles_image::after {
	content: "";
	position: absolute;
	bottom: 0;
	right: 0;
	width: 306px;
	top: 0;
	background: linear-gradient(
			to left,
			rgba(21, 24, 29, 0.70) 0%,
			rgba(21, 24, 29, 0.00) 100%
	);
}
.infrastructure_image::before {
	content: "";
	position: absolute;
	bottom: 0;
	left: 0;
	width: 100%;
	height: 368px;
	border-radius: 14.789px;
	background: linear-gradient(
			176deg,
			rgba(0, 0, 0, 0) 66.34%,
			rgba(0, 0, 0, 0.63) 94.68%
	);
}
.characteristics_text span,.tiles_text span,.infrastructure_text span{
	font-family: 'Nyght Serif', serif;
	font-style: italic;
	font-weight: 300;

}
.characteristics_text,.tiles_text,.infrastructure_text{
	position: absolute;
	left: 0;
	padding:0 43px;
	box-sizing: border-box;
	bottom: 40px;
	z-index: 2;
	width: 100%;
	font-weight: 200;
	font-size: var(--medium_text);
	letter-spacing: var(--letter_spacing_medium);
	color: #ffffff;
	text-transform: uppercase;
	line-height: 119%;
}
.tiles_text {
	padding:0 70px;
	bottom: 70px;
}
.infrastructure_text{
	padding:0 30px;
	bottom: 30px;
	font-size: var(--text_medium_title);
	line-height: 119%;
	letter-spacing: var(--letter_spacing_medium_title);
}
.characteristics_item,.infrastructure_item{
	position: relative;
}
.blue_background{
	background-color: var(--dark_blue);
}
.margin_bottom{
	margin-bottom: 48px;
}
.text_style{
	color:var(--light_violet);
	line-height: 148%;
	max-width: 538px;
}

.description_map_block .banner_address{
	color:var(--light_violet);
	margin-top: 28px;
}
.dark_text{
	color:var(--blue_text) ;
}
.flex_text{
	display: flex;
}
.absolute_title{
	position: absolute;
	left: var(--big_padding_left);
	top: var(--section_padding);
	z-index: 1;
}
.section{
	position: relative;
}
.infrastructure_block img{
	width: 100%;
}
.text_align_right{
	text-align: right;
}
.dark_button span{
	color:var(--blue_text);
}
.dark_button{
	color:var(--blue_text);
	border-color:var(--blue_text);
}
.m-t-44{
	margin-top: 44px;
}
.m-b-44{
	margin-bottom: 44px;
}
.m-b-80{
	margin-bottom: 80px;
}
.m-r-44{
	margin-right: 44px;
}
.p-l-100{
	padding-left: 100px;
}
.description_infrastructure_block .text_style{
	max-width: 476px;
}
.infrastructure_text_block,.description_history_block{
	width: 584px;
	flex-shrink: 0;
}

.infrastructure_swiper,.history_swiper{
	width: calc(100vw - 584px);
}
.description_detail_block .text_style{
	max-width: 638px;
}
.detail_image img{
	width: 100%;
}
.detail_image{
	margin:0 auto;
	position: relative;
}
.detail_section{
	position: relative;
	margin-top: -80px;
}
.detail_title{
	color: var(--blue_text);
	position: absolute;
	left: 0;
	top: -23px;
	transform: translateY(-100%);
	right: 0;
	max-width: 100%;
}
.detail_item{
	position: absolute;
	height: 1px;
	background-color: #19273C;

}
.benefits_swiper {
	opacity: 0;
	transition: opacity .2s ease;
}

.benefits_swiper.swiper-initialized {
	opacity: 1;
}
.characteristics_item{
	aspect-ratio: 5/8;
	display: flex;
	align-items: center;
	justify-content: center;
}
.characteristics_image{
	position: relative;
	transition: 300ms linear;
}
.swiper-slide.swiper-slide-next .characteristics_image{
	aspect-ratio: 5/8;
	transition: 300ms linear;
}
.tiles_item{
	position: relative;
}
.tiles_nav{
	position: absolute;
	right: 90px;
	top: 50%;
	transform: translateY(-50%);
	display: flex;
	flex-direction: column;
	z-index: 1;
	gap: 23px;
}
.tiles_swiper {
	border-radius: 24px;
}
.swiper-button-prev svg,.swiper-button-next svg{
	display: none;
}
.swiper-button-prev:before,.swiper-button-next:before{
	content: '';
	width: 13px;
	height: 8px;
	background-image: url('/wp-content/themes/intergal_bud/img/arrow.svg');
	background-size: contain;
	background-repeat: no-repeat;
	background-position: center;
	position: relative;
	transform: rotate(-90deg);
}
.swiper-button-next:before{
	transform: rotate(90deg);
}


.swiper-button-prev.tiles-prev:before{
	transform: rotate(0deg);
}
.swiper-button-next.tiles-next:before{
	transform: rotate(180deg);
}
.slick-prev.slick-arrow, .slick-next.slick-arrow{
	width: 58px;
	height: 58px;
	border: 1px solid #DCE4F7;
	border-radius: 100%;
	display: flex;
	align-items: center;
	justify-content: center;
	z-index: 1;
	box-shadow: 0 0 30px rgba(0, 0, 0, 0.6);
	background: rgba(0, 0, 0, 0.2);
	transition: 200ms linear;
	opacity: 1;
}
.slick-prev:before{
	transform: rotate(-90deg);
}
.slick-next:before{
	transform: rotate(90deg);
}
.slick-prev:before, .slick-next:before{
	content: '';
	width: 13px;
	height: 8px;
	background-image: url(/wp-content/themes/intergal_bud/img/arrow.svg);
	background-size: contain;
	background-repeat: no-repeat;
	background-position: center;

	position: relative;
	font-size: 0!important;
	opacity: 1!important;
}
.slick-prev.slick-arrow{
	left: 0;
}
.slick-next.slick-arrow{
	right: 0;
}
.swiper-button-prev,.swiper-button-next{
	top: auto!important;
	bottom: auto!important;
	width: 58px;
	height: 58px;
	border: 1px solid #DCE4F7;
	border-radius: 100%;
	position: relative!important;
	left: 0!important;
	right: auto!important;
	margin:0!important;
	display: flex;
	align-items: center;
	justify-content: center;
	flex-shrink: 0;
}
.infrastructure_block{
	position: relative;
	overflow: hidden;
}
.markers{
	position: absolute;
	width: 1px;
	background-color: transparent;
	background-image: linear-gradient(var(--dark_blue), var(--dark_blue));
	background-repeat: no-repeat;
	background-position: top;
	/* glow + світла серцевина */
	box-shadow:
			0 0 0 3px rgba(255,255,255,.1)     /* тонке біле підсвічування */

}
.detail-dot{
	transform: translateY(-50%);
	top: 50%;
	right: 0;
}
.map-dot{
	bottom: -6px;
	left: 50%;
}
.map-dot,.detail-dot{
	width: 10px;
	height: 10px;
	position: absolute;
	border-radius: 50%;
	background: #19273C;
	z-index: 2;
	/* біле кільце + зовнішнє сяйво */
	box-shadow:
			0 0 0 2px #fff,                    /* біле коло навколо */
			0 0 0 5px rgba(255,255,255,.4),   /* м’яке зовнішнє коло */
			0 0 10px rgba(255,255,255,.35);   /* blur glow */
}
.markers_name{
	position: absolute;
	top: -40px;
	left: 50%;
	transform: translateX(-50%) translateY(-100%);
	font-size: var(--font-size-30);
	letter-spacing: var(--letter-spacing-30);
	font-style: normal;
	font-weight: 300;
	line-height: 114%; /* 34.2px */
	text-transform: uppercase;
	text-align: center;
	white-space: nowrap;
}
.marker_img img{
	width: 100%;
}
.marker_img{
	width: 42px;
	height: 42px;
	position: relative;
	top: 18px;
}
.navigation_infrastructure{
	display: flex;
	align-items: center;
	justify-content: space-between;
	padding:1px;
	gap: 23px;
}
.swiper-scrollbar.swiper-scrollbar-horizontal{
	position: relative!important;
	left: 0!important;
	top: 0!important;
	height: 1px!important;
	border-radius: 0!important;
	background: rgba(107, 121, 148, 0.67)!important;
}

.swiper-scrollbar-drag{
	background:#2C4161;
}
.navigation_history{
	display: none;
	align-items: center;
	justify-content: space-between;
	padding:1px;
	gap: 23px;
	margin-top: 25px;
}
.navigation_history .swiper-button-prev,.navigation_history .swiper-button-next{
	filter: brightness(0) saturate(100%)
	invert(49%) sepia(10%)
	saturate(500%)
	hue-rotate(185deg)
	brightness(92%)
	opacity(0.67);
}
.navigation_infrastructure .swiper-button-prev,.navigation_infrastructure .swiper-button-next{
	filter: brightness(0) saturate(100%)
	invert(49%) sepia(10%)
	saturate(500%)
	hue-rotate(185deg)
	brightness(92%)
	opacity(0.67);
}
.navigation_infrastructure .swiper-button-prev,.progress_nav .swiper-button-prev,.navigation_flats .swiper-button-prev{
	/*transform: rotate(-90deg);*/
}
.navigation_infrastructure .swiper-button-next,.progress_nav .swiper-button-next,.navigation_flats .swiper-button-next{
	/*transform: rotate(-90deg);*/
}
.nav_tabs .swiper-button-prev svg{
	transform: scaleX(-1);
}
.nav_tabs .swiper-button-next svg{
	transform: none;
}
.detail_item_9 .detail_title,.detail_item_8 .detail_title,.detail_item_7 .detail_title,.detail_item_6 .detail_title{
	left: auto;
	width: 480px;
}
.detail_item_9 .detail-dot,.detail_item_8 .detail-dot,.detail_item_7 .detail-dot,.detail_item_6 .detail-dot{
	right: auto;
	left: 0;
}
.gradient{
	height: 291px;
	background: linear-gradient(0deg, #19273C 8.1%, rgba(25, 39, 60, 0.82) 26.05%, rgba(25, 39, 60, 0.34) 55.27%, rgba(25, 39, 60, 0.00) 100%);
	filter: blur(0px);
	position: absolute;
	bottom: 0;
	width: 100%;
	left: 0;
}
.benefit_item_3 .benefit_title,.benefit_item_4 .benefit_title{
	opacity: 0.6;
}
.benefit_item_5 .benefit_title{
	opacity: 0.3;
}
.tabs{
	justify-content: flex-start;
	gap: 44px;
}
.progress_tabs_content,.flat_tabs_content,.flat_content{
	position: relative;
	overflow: hidden;
}
.curtain-left,
.curtain-right {
	position: absolute;
	top: 0;
	bottom: 0;
	width: 50%;
	z-index: 5;
	pointer-events: none;
	background: #19273C;
}
.curtain-left { left: 0; transform: translateX(-101%); }
.curtain-right { right: 0; transform: translateX(101%); }
.curtain-left.curtain-light,
.curtain-right.curtain-light {
	background: var(--light_grey);
}
.tab_content {
	display: none;
}

.tab_content.active {
	display: block;
}

.progress_gallery{
	overflow:hidden;
	position: relative;
	border-radius: 24px;
}

.progress_gallery img{
	width:100%;
	height:400px;
	object-fit:cover;
	display:block;
}
.progressTabsNav .swiper-slide {
	width: max-content;
}
.tab_btn.active span{
	color: var(--blue_text);
}
.tab_btn.active{
	background-color: #ffffff;
}
.progress_slide img{
	object-fit: cover;
	object-position: center;
	width: 100%;
	height: 100%;
}
.progress_slide:after{
	content: "";
	position: absolute;
	bottom: 0;
	right: 0;
	width: 120px;
	top: 0;
	background: linear-gradient(to left, rgba(21, 24, 29, 0.50) 0%, rgba(21, 24, 29, 0.00) 100%);
}
.progress_slide:before{
	content: "";
	position: absolute;
	bottom: 0;
	left: 0;
	width: 120px;
	top: 0;
	background: linear-gradient(to right, rgba(21, 24, 29, 0.50) 0%, rgba(21, 24, 29, 0.00) 100%);
}
.swiper-button-next.swiper-button-disabled,
.swiper-button-prev.swiper-button-disabled {
	opacity: 0.2;
}
.progress_slide{
	aspect-ratio: 205/101;
	width: 100%;
}
.progress_nav{
	position: absolute;
	top: 50%;
	left: 0;
	display: flex;
	align-items: center;
	justify-content: space-between;
	z-index: 3;
	right: 0;
	padding: 0 30px;
	transform: translateY(-50%);
}
.tabs_container{
	padding-right:164px ;
	box-sizing: border-box;
	position: relative;
}
.progress_tabs_nav{
	padding: 1px;
	padding-top: 4px;
}
.nav_tabs {
	position: absolute;
	display: flex;
	align-items: center;
	justify-content: flex-end;
	right: 0;
	top: 50%;
	transform: translateY(-50%);
	gap: 24px;
}
.tab_btn {
	min-width: 265px;
}
.progressTabsNav::after {
	content: "";
	position: absolute;
	top: 0;
	width: 24px;
	height: 100%;
	z-index: 10;
	pointer-events: none;
}
.progressTabsNav::after {
	right: 0;
	background: linear-gradient(to left, var(--dark_blue), transparent);
}
.progress_tabs_nav{
	padding-right: 30px;
}
.text_style_history{
	max-width: 382px;
}
.history_image img,
.history_image video{
	width: 100%;
	height: 100%;
	object-fit: cover;
	object-position: center;
}
.history_image{
	width: 100%;
	aspect-ratio: 1/1;
	border-radius: 24px;
	overflow: hidden;
}
.m-t-40{
	margin-top: 40px;
}
.history_title{
	font-size: var(--text_medium_title);
	font-style: normal;
	font-weight: 300;
	line-height: 1; /* 54.72px */
	letter-spacing: var(--letter_spacing_medium_text);
	text-transform: uppercase;
	color: var(--light_violet);
	margin-bottom: 26px;
}
.feedback_section:before{
	content: "";
	position: absolute;
	left: 0;
	width: 100%;
	height: 505px;
	top: 0;
	background: linear-gradient(
			180deg,
			#19273C 2.64%,
			rgba(25, 39, 60, 0.90) 15.46%,
			rgba(25, 39, 60, 0.34) 55.27%,
			rgba(25, 39, 60, 0.00) 100%
	);
}
.feedback_section{
	position: relative;
}
.p-t-60{
	padding-top: 60px;
}
.p-b-60{
	padding-bottom: 60px;
}
.footer{
	background-color: var(--dark_blue);
}
.justify_between{
	justify-content: space-between;
}
.menu_footer_title{
	letter-spacing: 0.15em;
	color: var(--light_violet);
	text-transform: uppercase;
	opacity: 0.6;
}
.footer_address{
	color: #ffffff;
	display: block;
}
.m-b-15{
	margin-bottom: 15px;
}
.footer_link{
	font-size: var(--button_text);
	color: var(--light_violet);
	opacity: 0.6;
}
.uppercase_text{
	text-transform: uppercase;
}
.footer_address  p{
	padding-bottom: 9px;
}
.footer_line{
	width: 100%;
	height: 1px;
	opacity: 0.2;
	background: var(--light_violet);
}
.menu_item_style{
	text-transform: uppercase;
	color: var(--light_violet);
	cursor: pointer;
}
.logo_adcore img{
	width: 112px;
	height: auto;
	opacity: 0.6;
}
.logo_adcore{
	display: block;
}
.policy_text{
	color: var(--light_violet);
	opacity: 0.6;
	margin-left: 28px;
	line-height: 148%;
}
.social_flex a{
	text-transform: uppercase;
	color: var(--light_violet);
	opacity: 0.6;
}
.flex_right_menu{
	gap: 36px;
}
.feedback_block{
	position: relative;
	/*top: 50%;
	transform: translateY(-50%);*/
	/*right: var(--big_padding_left);*/
	/*width: 816px;*/
	padding: 60px;
	flex-direction: column;
	align-items: flex-start;
	gap: 60px;
	border-radius: 24px;
	background-color: rgba(232, 234, 236, 0.50);
	backdrop-filter: blur(30px);
	background-image: url("/wp-content/themes/intergal_bud/img/feedback_block.png");
	background-size: cover;
	background-repeat: no-repeat;
	background-position: center;
}
.feedback_block .border-glow {
	position: absolute;
	inset: 0;
	pointer-events: none;
	z-index: 1;
	border-radius: inherit;
}

input.wpcf7-form-control,select.wpcf7-form-control.wpcf7-select{
	width:100%;
	border:none;
	border-bottom:1px solid rgba(44, 65, 97, 0.7);
	height:78px;
	padding:30px 0 ;
	margin-bottom: 48px;
	box-sizing: border-box;
	background-color: transparent;
	border-radius: 0;
	box-shadow: none;
}

input,select,option,input::placeholder{
	font-family: 'Gilroy', serif!important;
	color: rgba(44, 65, 97, 0.7);
	font-size:var(--text_description);
	font-style: normal;
	font-weight: normal;
	letter-spacing: var(--text_letter_spacing);
	line-height: 1;
	text-transform: none;

}
.wpcf7-not-valid-tip {
	font-family: 'Gilroy', serif!important;
	color: rgba(220, 50, 50, 0.8);
	font-size: 13px !important;
	font-style: normal;
	font-weight: normal;
	letter-spacing: 0.125em;
	line-height: 1;
	display: block;
	position: absolute;
	top: 100%;
	margin-top: 4px;
	text-transform: none;
}
.wpcf7-form-control-wrap {
	position: relative;
}
input.wpcf7-form-control.wpcf7-submit{
	display: flex;
	align-items: center;
	justify-content: center;
	height: 62px;
	padding: 0 44px;
	border-radius: 60px;
	position: relative;
	font-size: var(--button_text);
	letter-spacing: var(--button_letter_spacing);
	color: var(--blue_text);
	text-transform: uppercase;
	white-space: nowrap;
	font-weight: normal;
	width: 300px;
	outline: 1px solid var(--blue_text);
	line-height: 1;
	margin-bottom: 0;
	border:none;
	margin-left: auto;
	transition: all 0.35s ease;
}
span.wpcf7-spinner {
	 display: none;
 }

.news_image img{
	height: 285px;
	width: 285px;
	object-fit: cover;
	object-position: center;
	transition: 300ms linear;
	border-radius: 24px;
	overflow: hidden;
}
.slick-news-slide{
	border-radius: 24px;
	width: 284px;
	transition: 300ms linear;
	position: relative;
}
.slick-news-item{
	height: 600px;
}
.slick-news-slide.slick-slide.slick-center .news_info{
	opacity: 1;
	transition: 300ms linear;
}
.news_info{
	opacity:1;
	position: absolute;
	left: calc(600px + 48px);
	bottom: 111px;
	transition: 300ms linear;
}
.slick-news-slide.slick-slide.slick-center{
	width: 600px;
	height: 600px;
	transition: 300ms linear;
}
.slider-for-background .slick-prev.slick-arrow {
	left: 648px;
	bottom: 0;
	top: auto;
	transform: none;
}
.slider-for-background .slick-next.slick-arrow,.slider-for-background .slick-prev.slick-arrow{
	transform: none;
	box-shadow: none;
	background: transparent;
	opacity: 0.4;
	transition: opacity 0.3s ease;
}
.slider-for-background .slick-next.slick-arrow:hover,.slider-for-background .slick-prev.slick-arrow:hover{
	opacity: 1;
}
.slider-for-background .slick-next.slick-arrow{
	left: calc(600px + var(--big_padding_left) + 171px + 48px);
	bottom: 0;
	top: auto;
	transform: none;
}
.slick-news-slide.slick-slide.slick-center img{
	width: 600px;
	height: 600px;
	transition: 300ms linear;
}

.news_info .title,.news_title{
	font-size: var(--medium_text);
	font-style: normal;
	font-weight: 200;
	line-height: 148%; /* 71.04px */
	letter-spacing: 0.042em;
	color:#ffffff;
}

.news_info .date,.news_date{
	margin-bottom: 30px;
	text-transform: uppercase;
	color: var(--light_violet);
}
.slide-news-img{
	display: block;
	position: relative;
	cursor: pointer;
}
.slide-news-img img{
	transition: filter 0.5s ease;
	filter: brightness(0.85) saturate(0.9);
}
.slide-news-img:hover img{
	filter: brightness(1.1) saturate(1.15);
}
.slide-news-img .news_hover_icon{
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translate(-50%, -50%) scale(0);
	width: 64px;
	height: 64px;
	border-radius: 50%;
	border: 1.5px solid rgba(255,255,255,0.7);
	display: flex;
	align-items: center;
	justify-content: center;
	z-index: 2;
	pointer-events: none;
	opacity: 0;
}
.slide-news-img .news_hover_icon::before,
.slide-news-img .news_hover_icon::after{
	content: "";
	position: absolute;
	background: #fff;
	border-radius: 2px;
}
.slide-news-img .news_hover_icon::before{
	width: 20px;
	height: 2px;
}
.slide-news-img .news_hover_icon::after{
	width: 2px;
	height: 20px;
}
.popup_menu .menu_item_style{
	font-size: clamp(18px, 2vw, 36px);
}

.popup_menu .content_menu{
	top: 85px;
	bottom: 140px;
	justify-content: flex-start;
	align-items: flex-end;
	gap: 30px;
	overflow-y: auto;
	padding-right: 60px;
}
.bottom_menu .social_flex{
	gap: 20px;
	flex-wrap: wrap;
}
.phone_block {
	width: 100%;
	display: flex;
	justify-content: flex-end;
}
.header.active{
	background-color: rgba(25, 39, 60, 0.35);
	backdrop-filter: blur(12px);
	-webkit-backdrop-filter: blur(12px);
	transition: 300ms linear;
	box-shadow: 0 8px 30px rgba(0, 0, 0, 0.2);
	height: 100px;
}
.header{
	position: fixed;
	left: 0;
	right: 0;
	height: 142px;
	top: 0;
	background-color: transparent;
	display: flex;
	align-items: center;
	justify-content: center;
	z-index: 9;
	transition: 300ms linear;
}
.plan_tabs{
	gap: 24px;
}
.flat_image:after{
	display: none;
}
.flat_image:before{
	height: 262px;
	background: linear-gradient(0deg, rgba(21, 24, 29, 0.33) 0%, rgba(21, 24, 29, 0.31) 23.35%, rgba(21, 24, 29, 0.25) 46.56%, rgba(21, 24, 29, 0.00) 100%);
}
.navigation_flats{
	width: 50%;
	position: absolute;
	padding-right: 60px;
	padding-left: 30px;
	bottom: 60px;
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 23px;
	right: 0;
}
.swiper_all{
	border-radius: 24px;
}
.navigation_flats .swiper-button-prev,.navigation_flats .swiper-button-next{
border-color: #ffffff;
}
.navigation_flats  .swiper-button-prev:before, .navigation_flats  .swiper-button-next:before{
filter: brightness(80);
}
.navigation_flats  .swiper-scrollbar.swiper-scrollbar-horizontal{
	background: rgba(255, 255, 255, 0.32)!important;
}
.navigation_flats  .swiper-scrollbar-drag{
	background: #FFFFFF;
}
.flat_info{
	position: absolute;
	right: 60px;
	top: 60px;
	/*bottom: 154px;*/
	border-radius: 24px;
	background-color: rgba(232, 234, 236, 0.75);
	background-image: url("/wp-content/themes/intergal_bud/img/flat_info.png");
	background-size: cover;
	background-repeat: no-repeat;
	background-position: center;
	backdrop-filter: blur(20px);
	z-index: 1;
	width: calc(50% - 90px);
	padding:60px;

	display: flex;
	flex-direction: column;
	justify-content: space-between;
	align-items: stretch;
	flex: 1 0 0;
	align-self: stretch;
	gap: 60px;
	color:var(--blue_text) ;
}
.flat_name{
	font-family: 'Nyght Serif', serif;
	font-size: var(--medium_text);
	font-style: italic;
	font-weight: 300;
	letter-spacing: var(--letter_spacing_medium);
	text-transform: uppercase;
}
.floor_info{
	gap: 40px;
	text-transform: uppercase;
}
.floor_info div:before{
	content: '';
	width: 8px;
	height: 8px;
	border-radius: 100%;
	background-color: var(--blue_text);
	display: block;
	position: relative;
}
.floor_info div{
	display: flex;
	gap: 8px;
	align-items: center;
	justify-content: flex-start;
	position: relative;

}
.bottom_line{
	width: 100%;
	height: 1px;
	border-bottom: 1px solid #6B7994;
}
.area_info span{
	display: block;
	margin-top: 10px;
	font-size: var(--text_medium_title);
	font-weight: 200;
	letter-spacing: var(--letter_spacing_medium_text);
}
.features:before{
	content: '';
	position: absolute;
	left: 0;
	top: 11px;
	width: 24px;
	border-bottom: 1px solid var(--blue_text);
}
.features{
	text-transform: uppercase;
	max-width: 183px;
	padding-left: 38px;
	position: relative;
	line-height: 135%;
}
.area_info{
	display: grid;
	grid-template-columns: 1fr 1fr;

}
sup {
	font-size: 60%;
}
.m-b-60{
	margin-bottom: 60px;
}
.button_plan .button_style span{
	color: var(--blue_text);
}
.button_plan .button_style{
	background-color: var(--light_violet);
	border-color: var(--light_violet);
}
.button_plan{
	width: calc(50% - 90px);
	position: absolute;
	top: 50%;
	transform: translateY(-50%);
	display: flex;
	align-items: center;
	justify-content: center;
}
.button_style svg{
	width: 20px;
}
.tab_container_flat{
	display: none;
}
.tab_container_flat.active{
	display: block;
}

.tab_btn_room.active span{
	color: #ffffff;
}
.tab_btn_room.active{
	background-color: var(--blue_text);
}

.tab_container_flat .swiper-slide {
	transition: 0.3s ease;
}

.tab_container_flat .swiper-slide.hidden {
	opacity: 0;
	pointer-events: none;
	width: 0 !important;
	margin: 0 !important;
}
.title_left_padding .flat_name_data  span{
	padding-left: 30px;
}
.flat_name_data{
	justify-content: flex-end;
}
.flats_swiper{
	height: min(50vw, 90vh);
}
.flats_swiper .swiper-wrapper{
	border-radius: 24px;
	overflow: hidden;
}
.section,.ellipse_two_container{
	position: relative;
}
.ellipse_one{
	background-position: center;
	background-repeat: no-repeat;
	background-size: cover;
	background-image: url("/wp-content/themes/intergal_bud/img/ellipse_one.png");
}
.ellipse_two_container img{
	width: 100%;
	height: 100%;
}
.ellipse_two_container{
	position: absolute;
	left: 0;
	width: 100%;
	top: 100%;
	transform: translateY(-270px);
}

.slick_style {
	margin: 0 -24px;
}

.slick_style .slick-slide {
	padding: 0 24px;
	box-sizing: border-box;
}
.slick-news-slide{
	padding: 0 24px;
	box-sizing: border-box;
}

.slick_slide.slick-center .characteristics_image{
	aspect-ratio: 5/8;
}

.footer_address p br{
	display: none;
}
.description_infrastructure_block {
	padding-right: 44px;
}
body:not(.home) .header{
	background-color: var(--dark_blue);
}
.documents_page{
	padding: 180px 0 80px;
}
.documents_page_title{
	margin-bottom: 60px;
}
.documents_grid{
	display: grid;
	grid-template-columns: repeat(3, 1fr);
	gap: 40px;
}
.doc_card{
	background: rgba(255,255,255,0.08);
	border: 1px solid rgba(220, 228, 247, 0.25);
	border-radius: 12px;
	padding: 30px;
	display: flex;
	flex-direction: column;
	justify-content: space-between;
	min-height: 160px;
	text-decoration: none;
	transition: 0.3s ease;
}
.doc_card:hover{
	background: rgba(255,255,255,0.12);
	border-color: var(--light_violet);
}
.doc_card_title{
	color: var(--light_violet);
	text-transform: uppercase;
	line-height: 148%;
}
.doc_card_bottom{
	display: flex;
	align-items: center;
	justify-content: space-between;
	margin-top: 24px;
	color: var(--light_violet);
	opacity: 0.6;
	transition: 0.3s ease;
}
.doc_card:hover .doc_card_bottom{
	opacity: 1;
}
.doc_card_link{
	font-size: 14px;
	letter-spacing: 0.04em;
}
.project_item{
	position: relative;
}
.mob_map{
	display: none;
}
.slide-news{
	display: block;
}
.news_page{
	padding: 180px 0 80px;
}
.news_grid{
	display: grid;
	grid-template-columns: repeat(3, 1fr);
	gap: 40px;
}
.news_card{
	text-decoration: none;
	border-radius: 24px;
	overflow: hidden;
	background: rgba(255,255,255,0.08);
	border: 1px solid rgba(220, 228, 247, 0.15);
	transition: 0.3s ease;
	display: flex;
	flex-direction: column;
}
.news_card:hover{
	background: rgba(255,255,255,0.12);
	border-color: var(--light_violet);
}
.news_card_image{
	width: 100%;
	aspect-ratio: 16/9;
	overflow: hidden;
}
.news_card_image img{
	width: 100%;
	height: 100%;
	object-fit: cover;
	display: block;
	transition: 0.4s ease;
}
.news_card:hover .news_card_image img{
	transform: scale(1.05);
}
.news_card_content{
	padding: 40px;
}
.news_card_date{
	color: var(--light_violet);
	opacity: 0.5;
	text-transform: uppercase;
	margin-bottom: 12px;
	font-size: 13px;
	letter-spacing: 0.06em;
}
.news_card_title{
	color: var(--light_violet);
	line-height: 148%;
	text-transform: uppercase;
}
.single_news_page{
	padding: 180px 0 80px;
}
.single_news_header{
	display: flex;
	align-items: center;
	justify-content: space-between;
	max-width: 1200px;
	margin-left: auto;
	margin-right: auto;
}
.news_back_link{
	display: flex;
	align-items: center;
	gap: 8px;
	color: var(--light_violet);
	text-decoration: none;
	text-transform: uppercase;
	/*opacity: 0.6;*/
	transition: 0.3s ease;
}
.news_back_link:hover{
	opacity: 1;
}
.single_news_date{
	color: var(--light_violet);
	text-transform: uppercase;
}
.single_news_title{
	max-width: 1200px;
	margin-left: auto;
	margin-right: auto;
	line-height: 148%;
}
.single_news_image{
	border-radius: 24px;
	overflow: hidden;
	max-width: 1200px;
	/*max-height: 480px;*/
	aspect-ratio: 2/1;
	margin-left: auto;
	margin-right: auto;
}
.single_news_image img{
	width: 100%;
	height: 100%;
	object-fit: cover;
	display: block;
}
.single_news_content{
	max-width: 1200px;
	margin: 0 auto 60px;
	color: var(--light_violet);
	line-height: 148%;
	/*font-size: clamp(15px, 1.1vw, 18px);*/
}
.single_news_content > p:first-child{
	/*font-size: clamp(17px, 1.4vw, 22px);
	line-height: 170%;
	opacity: 0.9;
	margin-bottom: 30px;*/
}
.single_news_content p{
	margin-bottom: 15px;
}
.single_news_content p:empty{
	display: none;
}
.single_news_content h2,
.single_news_content h3{
	font-size: clamp(16px, 1.2vw, 22px);
	text-transform: uppercase;
	line-height: 148%;
	margin-top: 44px;
	margin-bottom: 10px;
}
.single_news_content p:not(:first-child):has(+ ul),
.single_news_content p:not(:first-child):has(+ ol){

}
.single_news_content b{
	font-style: italic;
	font-weight: normal;
}
.single_news_content ul,
.single_news_content ol{
	margin: 0 0 40px;
	padding: 0;
	list-style: none;
}
.single_news_content ul li,
.single_news_content ol li{
	position: relative;
	padding-left: 24px;
	margin-bottom: 10px;
}
.single_news_content ul li::before{
	content: "";
	position: absolute;
	left: 0;
	top: 10px;
	width: 8px;
	height: 8px;
	border-radius: 50%;
	background: var(--light_violet);
	opacity: 0.5;
}
.single_news_content ol{
	counter-reset: list-counter;
}
.single_news_content ol li{
	counter-increment: list-counter;
}
.single_news_content ol li::before{
	content: counter(list-counter) ".";
	position: absolute;
	left: 0;
	color: var(--light_violet);
	opacity: 0.5;
}
.single_news_content img{
	max-width: 100%;
	height: auto;
	border-radius: 12px;
	margin: 16px 0;
}
.single_news_gallery{
	display: grid;
	grid-template-columns: repeat(2, 1fr);
	gap: 24px;
	margin-bottom: 60px;
	max-width: 1200px;
	margin-left: auto;
	margin-right: auto;
}
.single_news_gallery_item{
	border-radius: 12px;
	overflow: hidden;
}
.single_news_gallery_item img{
	width: 100%;
	height: 100%;
	object-fit: cover;
	display: block;
}
.tab_btn_room{
	gap:0;
}
.tab_left_gap{
	gap:7px;
}
.hide_in_tab{
	display: none;
}
.detail_image_mob{
	display: none;
}
.detail_title_mob strong{
	font-family: 'Nyght Serif', serif;
	font-weight: bold;
	font-style: italic;
}
.detail_title_mob{
	padding-top: 10px;
	display: none;
}
.feedback_section{
	padding-left: var(--big_padding_left);
	padding-right: var(--big_padding_left);
	/*padding: 136px 0;*/
	background-size: cover;
	background-repeat: no-repeat;
	background-position: top center;
	display: flex;
	align-items: center;
	justify-content: flex-end;
	background-image: url("/wp-content/themes/intergal_bud/img/feedback.jpg");
}
.bottom_menu{
	position: absolute;
	bottom: 60px;
	left: 60px;
	right: 60px;
}
.slider-for-background {
	left: var(--big_padding_left);
	width: calc(100vW - 2*(var(--big_padding_left)));
	/*background-color: var(--dark_blue);*/
	position: relative;
	z-index: 1;
}
.slide-news img{
	width: 100%;
	height: 100%;
	object-fit: cover;
	border-radius: 24px;
}
.slide-news-img{
	width: 600px;
	height: 600px;
	overflow: hidden;
	background-color: var(--dark_blue);
}
.slider_block{
	position: relative;
}
.slider-nav-block{
	position: absolute;
	top: 0;
	left:calc(624px + var(--big_padding_left));
	right: 0;
	z-index: 2;
}
.slide_nav_photo img{
	width: 100%;
	height: 100%;
	object-fit: cover;
	border-radius: 24px;
}
.slide_nav_photo{
	width: 334px;
	height: 286px;
	padding: 0 24px;
}
.popup_overlay {
	position: fixed;
	inset: 0;
	background: rgba(0,0,0,0.35);
	backdrop-filter: blur(8px);
	opacity: 0;
	visibility: hidden;
	pointer-events: none;
	transition: 400ms ease;
	z-index: 8;
}

.popup_overlay.active {
	opacity: 1;
	visibility: visible;
	pointer-events: all;
}

body.no-scroll {
	overflow: hidden;
}

.close_container{
	margin-left: 60px;
	margin-top: 60px;
	position: relative;
}
.logo_map svg{
	width: 100%;
}
.logo_map{
	width: 149px;
	height: 149px;
	position: absolute;
	right: 26%;
	top: 55%;
	z-index: 1;
	transform: translateX(50%) translateY(-50%);
}


.infrastructure_item{
	position: relative;
	overflow: hidden;
	border-radius: 24px;
	cursor: pointer;

	transition:
			transform .5s ease,
			box-shadow .5s ease;
}

/* image */
.infrastructure_image{
	overflow: hidden;
	border-radius: 24px;
}

.infrastructure_image img,
.infrastructure_image video{
	width: 100%;
	height: 100%;
	object-fit: cover;

	transition:
			transform 1s ease,
			filter .6s ease;
}

/* zoom image */
.infrastructure_item:hover img,
.infrastructure_item:hover video{
	transform: scale(1.06);
	filter: brightness(.72);
}

/* title */
.infrastructure_text{
	z-index: 3;
	transform: translateY(0);
	transition:
			bottom .6s cubic-bezier(.23,1,.32,1),
			opacity .45s ease;
}

/* description */
.infrastructure_description{

	font-size: var(--text_small_adaptive);
	position: absolute;
	left: 0;
	right: 0;
	padding:0 30px;
	bottom: 30px;
	z-index: 4;
	color: #fff;
	line-height: 148%;
	opacity: 0;
	transform: translateY(20px);
	transition:
			opacity .45s ease,
			transform .45s ease;

}

/* title moves up */
.infrastructure_item:hover .infrastructure_text{
	bottom: calc(100%);
	transform: translateY(calc(100% + 30px));
}

/* description appears */
.infrastructure_item:hover .infrastructure_description{
	opacity: 1;
	transform: translateY(0);
}

/* dark overlay */
.infrastructure_item::after{
	content: '';

	position: absolute;
	inset: 0;

	background:
			linear-gradient(
					to top,
					rgba(0,0,0,.85),
					rgba(0,0,0,.4),
					transparent
			);

	opacity: .9;

	transition: opacity .5s ease;

	z-index: 2;
}

.infrastructure_item:hover::after{
	opacity: 1;
}
.characteristics_image video{
	width: 100%;
	height: 100%;
	object-fit: cover;
	object-position: center;
}
.benefits_grid{
	grid-template-columns: 1fr 1fr 1fr;
	display: grid;
	grid-gap: 40px;
}
.characteristics_item:nth-child(2){
	padding: 0;
}
.characteristics_item{
	padding: 28px 0;
}
.tab_btn_showroom.active {
	background-color: var(--blue_text);
}
.tab_btn_showroom.active span {
	color: #ffffff;
}
.showroom_item:after {
	display: none;
}
.showroom_item .infrastructure_image:before{
	display: none;
}
.showroom_item:hover img, .showroom_item:hover video {
	transform: scale(1.1);
	filter: brightness(1);
}

.plan_popup {
	position: fixed;
	inset: 0;
	display: none;
	z-index: 9999;
}

.plan_popup.active {
	display: block;
}

.plan_popup_overlay {
	position: absolute;
	inset: 0;
	background: rgba(0,0,0,.6);
	backdrop-filter: blur(6px);
}

.no-scroll {
	overflow: hidden;
}

.plan_popup_content {
	position: absolute;

	width: fit-content;
	height: fit-content;

	max-width: 90vw;
	max-height: 90vh;

	left: 50%;
	top: 50%;
	transform: translate(-50%, -50%);

	display: flex;
	align-items: center;
	justify-content: center;

	background-color: white;
	border-radius: 24px;

	padding: 10px;
	box-sizing: border-box;
}

.plan_image {
	display: flex;
	align-items: center;
	justify-content: center;
}

.plan_image img {
	display: block;

	max-width: calc(90vw - 60px);
	max-height: calc(90vh - 60px);

	width: auto;
	height: auto;

	object-fit: contain;
}
.plan_popup_close.popup_close_style {
	left: -50px;
}

.floating_contact{
	position: absolute;
	right: var(--big_padding_left);
	bottom: 0;
}
.floating_contact_body{
	display: none;
}

.page_title.single_news_title  span{
	padding-left: 0;
	padding-top: 0;
}
.floating_contact_body{
	display: flex;
	flex-direction: column;
	gap: 15px;
	margin-bottom: 15px;
}

/* items */

.floating_contact_item{
	transform: translateY(20px);
	opacity: 0;
	pointer-events: none;

	transition:
			opacity .35s ease,
			transform .35s ease,
			background .35s ease;
}

/* toggle */

.floating_contact_toggle{
	transition: .35s ease;
}

/* active */

.floating_contact.active .floating_contact_item{
	transform: translateY(0);
	opacity: 1;
	pointer-events: auto;
}

/* stagger */

.floating_contact.active .floating_contact_item:nth-child(1){
	transition-delay: .05s;
}

.floating_contact.active .floating_contact_item:nth-child(2){
	transition-delay: .12s;
}

/* hover */

.floating_contact_item:hover{
	background: linear-gradient(135deg,#0c1d31,#163556);
	transform: translateY(-2px);

}

.floating_contact_toggle:hover{
	transform: translateY(-2px);
}

/* icon */

.floating_contact_toggle svg{
	transition: .35s ease;
}

.floating_contact.active .floating_contact_toggle svg{
	/*transform: rotate(45deg);*/
}

.floating_contact_toggle svg,.floating_contact_item svg{
	width: 10px;
}
.button_style.floating_contact_item{
	background-color: var(--dark_blue);
	border-color: transparent ;
	display: flex;
	justify-content: space-between;
	width: 100%;
}
.button_style.floating_contact_toggle{
	display: flex;
	justify-content: space-between;
	width: 100%;
}

.icon_close {
	display: none;
	opacity: 0;
}

.floating_contact.active .icon_close {
	display: block;
	opacity: 1;
}
.floating_contact.active .icon_arrow {
	display: none;
	opacity: 0;
}
.floating_contact.active .button_style.floating_contact_toggle svg path{
	fill: var(--dark_blue);
}
.floating_contact.active .button_style.floating_contact_toggle span{
	color: var(--dark_blue);
}
.floating_contact.active .button_style.floating_contact_toggle{
	background-color: var(--light_violet);
	color: var(--dark_blue);
	border-color: transparent;
}
.bingc-phone-button {
	display: none !important;
}
.button_style span,
.button_style svg path{
	transition: .35s ease;
}
.mobile_icon{
	display: none;
}