@font-face {
	font-family: 'Montserrat';
	src: url('asset/fonts/Montserrat/Montserrat-Italic-VariableFont_wght.ttf') format('truetype');
	font-weight: 100 900;
}

@font-face {
	font-family: 'Montserrat';
	src: url('asset/fonts/Montserrat/Montserrat-VariableFont_wght.ttf') format('truetype');
	font-weight: 100 900;
}

@font-face {
	font-family: 'Open Sans';
	src: url('asset/fonts/Open_Sans/OpenSans-Italic-VariableFont_wdth,wght.ttf') format('truetype');
	font-weight: 100 900;
}

@font-face {
	font-family: 'Open Sans';
	src: url('asset/fonts/Open_Sans/OpenSans-VariableFont_wdth,wght.ttf') format('truetype');
	font-weight: 100 900;
}

.slicknav_menu{
	display: none;
}


@media(max-width:992px){
	.slicknav_menu{
		display: block;
	}	
}

:root{
	--main-color-1: #0052B6 ;
	--main-color-2: #086FEC;
	--main-color-3: #002750;
	--main-color-4: #F3F4F6;
	--main-color-5: #F2F3F7;
	--main-color-6: #FF9C00;
	--main-color-7: #FFAC28;
	--text-color: #333030; 
	--text-color-gray: #999999;
	--text-color-gray-2: #D9D9D9;
	--font-family-1: 'Open Sans', sans-serif;
	--font-family-2: 'Montserrat', sans-serif;
	--font-size-1: 15px;
	--line-height-1: 25px;
}

* {
	box-sizing: border-box;
}
html {
	scroll-behavior: smooth;
}

body {
	position: relative;
	margin: 0;
	padding: 0;	
	overflow-x: hidden !important;
	height: 100%;
	color: var(--text-color);
	font-feature-settings: 'pnum' on, 'lnum' on;
	font-family: var(--font-family-1);
	
	font-style: normal;
	font-size: var(--font-size-1);
	font-weight: 400;
	line-height: var(--line-height-1);
}
.table-responsive{
	overflow: auto;
}
.app input[type="text"],
.app input[type="email"],
.app input[type="phone"],
.app textarea
{
	border-radius: 154px;
	background: #FFF;
	height: 50px;
	width: 100%;
	/* border: none; */
	outline: none;
	color: var(--text-color);
	font-family: var(--font-family-2);
	font-size: 13px;	
	font-weight: 500;
	line-height: 26px; /* 200% */
	padding: 0 30px;
	border-radius: 25px;
	border: 1px solid var(--main-color-5);
}
.app textarea{
	height: 100px;
	max-height: 100px;
	resize: none;
	padding-top: 10px;
}
.app input[type="checkbox"] {
   /* opacity: 0; */
   width: 26px;
	height: 26px;
	appearance: none;
    -moz-appearance: none;
    -webkit-appearance: none;
}
.app input[type="checkbox"]:before {
	content: '';
	display: inline-block;
    border: 5px solid #fff;
	width: 16px;
	height: 16px;
	border-radius: 50%;
	background: #fff;
}

.app input[type="checkbox"]:checked:before {
    border: 5px solid var(--main-color-2);	
}

 ol,
 ul {
	margin: 0;
	padding: 0;
	list-style: none;
}
ul li{
	margin-bottom: 10px;
	display: block;
	position: relative;
}
ul li::before{
	display: inline-block;
	content: '';
	width: 8px;
	height: 8px;
	border-radius: 50%;
	background: var(--main-color-5);
	margin-right: 19px;
	position: relative;
	top: -1px;
}


.app table{
	width: 100%;	
	border: 0;
}

.app table th{
	width: 33.3%;
	background: var(--main-color-3);
	font-size: var(--font-size-1);
	font-family: var(--font-family-2);
	line-height: 20px;
	color: #fff;
	padding: 20px 0;
}

.app table th:not(:last-child){
	border-right: 2px solid var(--main-color-5);
}

.app table th:nth-child(2){
	min-width: 300px;
}

.app table th:last-child{
	border-radius: 0 60px 60px 0;
	min-width: 120px;
}

.app table th:first-child{
	border-radius: 60px 0 0 60px;
	min-width: 120px;
}

.app table td{
	padding: 23px 30px;
	vertical-align: top;
	border-bottom: 2px solid var(--main-color-5);
}

.app table td:not(:last-child){
	border-right: 2px solid var(--main-color-5);
}

.app table td:first-child{
	font-weight: 800;
}

.app table td:last-child{
	font-family: var(--font-family-2);
	font-size: 22px;
	font-weight: 800;
}

@media(max-width: 991px){
	.app table td{
		padding: 15px;
	}
}

.app h1, .app h2, .page_title{
	color: var(--main-color-3);
	font-family: var(--font-family-2);
	font-size: 40px;	
	font-weight: 800;
	line-height: normal;
	margin-bottom: 50px;
	margin-top: 0;
}
.app .inner h2,
.app .inner h3
{
	color: var(--text-color);
	font-family: var(--font-family-2);
	font-size: 35px;
	text-transform: unset;
	margin-bottom: 41px;
	margin-top: 0;
}
.app .inner h3
{	
	font-size: 26px;	
}
.app img {
	max-width: 100%;
	height: auto;
}
.app{
	display: flex;
	width: 100%;
	flex-direction: column;
	justify-content: space-between;
	min-height: 100vh;
	position: relative;
}

@media(min-width: 1200px) {
	.container {
		max-width: 1222px;
	}

	.container.header__container,
	.container.footer__container {
		max-width: 1558px;
	}
}

button{
	cursor: pointer;
}
.button{
	display: inline-block;
	padding: 20px 41px;	
	font-variant-numeric: lining-nums proportional-nums;
	font-family: var(--font-family-2);
	font-size: 14px;	
	font-weight: 800;
	line-height: 20px; 
	white-space: nowrap;
	border-radius: 60px;
	border: 1px solid transparent;
	text-decoration: none;
	transition: all .3s linear;
}
.button.color__button{
	background: var(--main-color-1);
	border: 1px solid var(--main-color-1);
	color: #fff;
}
.button.color__button:hover{
	background: var(--main-color-2);
	border: 1px solid var(--main-color-2);
}
.button.header__button, .button.footer__button{
	padding: 15px 27px;	
	background: var(--main-color-6);
	border-color:  var(--main-color-6);
}

.button.header__button:hover, .button.footer__button:hover{
	background: var(--main-color-7);
	border-color:  var(--main-color-7);
}

.button.header__button{
	max-width: 205px;	
}
.button.footer__button{
	max-width: 232px;	
}
.button.transperent__button{
	border: 1px solid var(--text-color);
	color: var(--text-color);
}
.button.transperent__button:hover{	
	color: #fff;
	background: var(--main-color-1);
	border: 1px solid var(--main-color-1);
}
.swiper-nav-button-container{
	display: flex;
	gap: 18px;
	align-items: center;
}
.swiper-nav-button-container .nav-button{
	cursor: pointer;	
}
.swiper-nav-button-container .nav-button:hover svg path{
	stroke: var(--text-color);		
}

@media(max-width: 576px){
	.app h1, .app h2, .page_title, .app .inner h1{		
		font-size: 22px;	
		margin-bottom: 35px;		
	}

	.app .inner h2
	{		
		font-size: 21px;					
	}
	.app .inner h3
	{	
		font-size: 19px;					
	}
}


main.inner{
	padding-bottom: 120px;
}

/* header */
.header.header__main-page{
	position: absolute;
	background: transparent;
	z-index: 10;
}
.header{
	padding-top: 17px;
	position: static;
	width: 100%;
	color: #fff;
	font-family: var(--font-family-2);
	background-position: center;
	background-size: cover;
	background-repeat: no-repeat;
}
.header a{
	color: #fff;
}
.header__container{
	display: flex;
	justify-content: space-between;
}
.header__logo{
	flex-shrink: 0;
}
.header__content{
	gap: 90px;
	align-items: center;
}
.header__main-content{
	flex-grow: 1;
}
.header__content-top{
	display: flex;
	justify-content: space-between;
	align-items: center;
	gap: 10px;
}
.header__city{
	display: flex;
	gap: 17px;
	align-items: center;	
	position: relative;
}
.header__city button{
	color: #fff;
	background: none;
	border: none;
	outline: none;
	display: flex;
	gap: 10px;
	align-items: center;	
	font-variant-numeric: lining-nums proportional-nums;	
	font-size: var(--font-size-1);	
	font-weight: 800;
	line-height: normal;
	min-width: 113px;
	padding: 0;
	transition: all .3s linear;
}
.header_city_modal{
	background: #FFFFFF;
	padding: 25px 30px 30px;
	color: var(--text-color);
	font-family: var(--font-family-2);
	position: absolute;
	top: calc(100% + 15px);
	z-index: 2;
	width: 100%;
	max-width: 300px;
	min-width: 290px;
	visibility: hidden;
	opacity: 0;
	transition:all .5s linear;
}

.header_city_modal.active{
	visibility: visible;
	opacity: 1;
}

.header_city_modal_title{
	text-align: center;
	margin-bottom: 26px;
	font-size: 15px;
	font-style: normal;
	font-weight: 500;
	line-height: normal;
}

.header_city_modal_btn{
	display: flex;
	align-items: center;
	justify-content: center;
	gap: 0 31px;
}

.header__city button.header_city_modal_btn_yes{
	background: var(--main-color-1);
	border: 1px solid var(--main-color-1);
	color: #fff;
	font-size: 14px;
	font-style: normal;
	font-weight: 800;
	line-height: 20px; /* 142.857% */
	text-align: center;
	display: inline-block;
	padding: 15px 27px;
	min-width: initial;
	border-radius: 50px;

}

.header__city button.header_city_modal_btn_yes:hover{
	background: var(--main-color-2);
}

.header__city button.header_city_modal_btn_change{
	font-size: 14px;
	font-style: normal;
	font-weight: 500;
	line-height: 20px;
	text-decoration-line: underline;
	color: var(--text-color);
	min-width: initial;	
}

.header__city button.header_city_modal_btn_change:hover{
	color: var(--main-color-2)
}


.header__adres{	
	font-variant-numeric: lining-nums proportional-nums;
	font-size: 13px;	
	font-weight: 500;
	line-height: 20px; 
	min-height: 40px;
	min-width: 170px;
	display: flex;
	align-items: center;
}
.header__contact{
	display: flex;
	align-content: center;
	gap: 30px;	
	font-variant-numeric: lining-nums proportional-nums;
	line-height: normal;
	white-space: nowrap;
	min-width: 286px;
}
.header__contact a[href^="tel:"]{
	font-weight: 800;
	text-decoration: none;
}
.header__contact a[href^="mailto:"]{
	text-decoration: none;	
	font-size: 13px;
	font-style: normal;
	font-weight: 500;
}
.header__top-right{
	display: flex;
	gap: 55px;
	align-items: center;
	font-variant-numeric: lining-nums proportional-nums;
}
.header__time-work{
	font-size: 13px;	
	font-weight: 500;
	line-height: 20px; 
}
.header__social{
	display: flex;
	gap: 20px;
	align-items: center;
}

.header__social a:hover svg path{
	stroke: var(--main-color-2)
}

.header__social.contact__social a svg path{
	stroke: var(--main-color-3)
}

.header__social.contact__social a:hover svg path{
	stroke: var(--main-color-6)
}

.header__content-bottom{
	border-top: 1px solid rgba(217, 217, 217, 0.5);
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 40px 74px;
	margin-top: 18px;
	position: relative;
}
.header__menu{
	flex-grow: 1;
}

.header__bottom-right{
	display: flex;
	align-items: center;
	gap: 40px;
}
.mobile_menu{
	display: none;
}

.header.header__inner-page{
	/* position: sticky;
	top: 0;
	z-index: 99; */
}

@keyframes headeFix{   
	0% {     
	 opacity: 0;
	}   
	50% {     
		opacity: 0.5;
	} 
	100% {
		opacity: 1;
	 }
  }
.header.header-page-fix{
	position: fixed;
	background: var(--main-color-3);
	top: 0;
	animation: ease-in-out 0.4s headeFix;
	z-index: 99;
}
.header.header__inner-page.header-page-fix{
	position: sticky;
	
}
.header.header-page-fix .header__content-top
{
	display: none;
}

@media(max-width:1367px){
	.header.header__inner-page{
		position: static;		
	}
	.header__content{
		gap:30px;
	}	
	
	.header__content-bottom{
		gap: 40px 30px;
	}

	.header__bottom-right{
		gap: 30px;
	}

}


@media(max-width:1200px){
	.header__content{
		flex-direction: column;
    	gap: 25px;
	}
	.header__city {		
		gap: 10px;		
		flex-direction: column;
    	align-items: flex-start;
	}
	.header__contact{
		flex-direction: column;
    	gap: 5px;
	}
	.header__top-right {		
		gap: 15px;		
	}
	.header__content-bottom{
		gap: 40px 40px;
	}
}
@media(max-width: 991px){
	/* .header__content{
		display: none;
	} */
	.header__main-content{
		width: 100%;
	}
	/* .mobile_menu{
		display: block;
	} */

	.header__content-bottom{
		padding: 10px 0;
		justify-content: center;
	}

	.header__menu,
	.header__search{
		display: none;
	}
	.header__city{
		flex-direction: column;
    	align-items: flex-start;
	}
	.header__top-right{
		flex-direction: column;
		justify-content: flex-end;
		align-items: flex-end;
		text-align: end;
	}
}

@media(max-width:576px){
	.header__content{
		gap: 15px;
	}

	.header__content-top{
		flex-direction: column;
		justify-content: center;
		gap: 15px;
	}

	.header__city{
		align-items: center;
	}

	.header__adres,
	.header__contact,
	.header__time-work{
		text-align: center
	}

	.header__top-right{
		align-items: center;
	}
}

/* end header */


/* about */
.section__main:not(:last-child){
	margin-bottom: 113px;
}

.about_quote {
    border-radius: 216px;
    background: var(--main-color-4);
    padding: 48px 95px 52px 100px;
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 0 30px;
	margin-top: 85px;
	margin-bottom: 78px;
}
.about_quote_text {
    font-family: var(--font-family-2);
    font-size: 24px;
    font-style: italic;
    font-weight: 400;
    line-height: 36px;
	max-width: 734px
}
.section__about-main p{
	margin-top: 10px;
	margin-bottom: 22px;
}
.section__about-main img,
.about__page-img img
{
	border-radius: 180px;
	display: inline-block;
	margin-top: 10px;
}
.about__page-img img
{	
	margin-top: -95px;
}

.about__page-number{
	margin-top: 81px;
    margin-bottom: 102px;
}
.advantages-icon__container{
	margin-top: 114px
}
.section__main.section__about-main{
	margin-bottom: 84px;
}
.section__main.section__advantages-icon-main, .section__main.section__sale-main{
	margin-bottom: 106px;
}
.section__main.section__news-main{
	margin-bottom: 43px;
}
.section__main.section__team-main{
	margin-bottom: 50px;
}
@media(max-width:991px){
	.about__page-number{
		margin-top: 40px;
		margin-bottom: 40px;
	}
	.advantages-icon__container{
		margin-top: 40px
	}
	.about__page-img  img
	{	
		margin-top: 15px;
	}
	.about_quote {		
		margin-top: 40px;
		margin-bottom: 40px;
	}
}
@media(max-width:768px){
    .about_quote{
        border-radius: 70px;
        padding: 40px;
    }
    
    .about_quote_icon{
        display: none;
    }
}
@media(max-width:576px){
    .about_quote_text{
        font-size: 18px;
    line-height: 30px;
    }
}
/* end about */

/* get consultation */
.section__main.section__consultation-main{
	position: relative;
	padding: 93px 0 91px;
	margin-bottom: 0;
}
.section__consultation-main .row{
	row-gap: 28px;
}
.section__consultation-main_bg {
	position: absolute;
	top: 0;
	left: 0;
	right: 0;
	bottom: 0;
	object-fit: cover;
	z-index: -1;
}
.section__consultation-main_bg:has(div){
	position: absolute;
	top: 0;
	left: 0;
	right: 0;
	bottom: 0;
	object-fit: cover;
	z-index: 2;
}
.get__consultation-container{
	position: relative;
	z-index: 5;
}
.section__consultation-main_bg img{
	width: 100%;
	height: 100%;
	
}
.get__consultation-title{
	color: #FFF;
	font-family: var(--font-family-2);
	font-size: 50px;	
	font-weight: 800;
	text-transform: uppercase;
	display: flex;
	align-items: center;
	height: 100%;
	line-height: normal;	
}
.get__consultation-form form input[type="text"]{
	margin-bottom: 15px;
}
.user-consent-label{
	display: flex;
	gap: 15px;
	align-items: center;
	color: var(--text-color-gray);
	font-family: var(--font-family-2);
	font-size: 13px;	
	font-weight: 500;
	line-height: 26px; 
}
.get-consultation__button{
	margin-top: 76px;
}

.button.color__button.get-consultation__button{
	background: var(--main-color-6);
	border-color: var(--main-color-6);
}

.button.color__button.get-consultation__button:hover{
	background: var(--main-color-7);
	border-color: var(--main-color-7);
}

@media(max-width: 767px){
	.get__consultation-title{
		font-size: 22px;
		margin-bottom: 0;
	}
	.get-consultation__button {
		margin-top: 30px;
	}
	
}
/* end get consultation */

/*subscribe*/
.section__subscribe-main{
	background: var(--main-color-3);
	padding: 35px 0;
}
/*end subscribe*/

.section__main.section__contacts-main{
	margin-bottom: 0;
}

/* footer */
.footer{
	background: var(--main-color-4);
	padding: 111px 0 19px;
	
}
.footer a{
	color: var(--text-color);
	text-decoration: none;
}
.footer__top>.row{
	row-gap: 20px;
}
.footer__top-right{
	display: flex;
	flex-direction: column;
	gap: 53px;
}
.footer__contacts{
	display: flex;
	flex-direction: column;
	gap: 10px;
	font-family: var(--font-family-2);
	font-weight: 500;
	line-height: 26px;
}
.footer__contacts br{
	display: none;
}
.footer__contacts a{
	display: flex;
	flex-direction: column;
	gap: 10px;
}
.footer__contacts a[href^="tel:"]{
	font-size: 17px;
	font-style: normal;
	font-weight: 800;
}
.footer__bottom-menu{
	display: flex;
	flex-direction: column;
	gap: 15px;
}
.bottom__menu-title{
	font-family: var(--font-family-2);
	font-size: 18px;
	font-style: normal;
	font-weight: 800;
	line-height: 34px; 
	text-transform: uppercase;
}
.footer__bottom-menu ul{
	display: flex;
	flex-direction: column;
	gap: 10px;
}
.footer__bottom-menu ul a{
	line-height: 25px;
}
.footer__bottom-menu ul a:hover,
.footer__bottom-menu ul a.selected
{
	font-weight: 800;
}
.footer__search-social{
	display: flex;
	flex-direction: column;
	gap: 25px;
	width: 100%;
	padding-top: 8px;
}
#footer_phone_email{
	display: flex;
	flex-direction: column;
	gap: 10px;
}
.footer__social{
	display: flex;
	gap: 24px;
	flex-wrap: wrap;
}
.footer__social span{
	width: 100%;
	line-height: 25px;
}
.footer__social a svg path{
	stroke:var(--main-color-1)
}
.footer__social a:hover svg path{
	stroke:var(--main-color-2)
}
.footer__bottom{
	border-top: 2px solid var(--main-color-5);
	padding-top: 15px;
	font-family: var(--font-family-2);
	font-size: 14px;
	line-height: 25px;
	color: #808080;
	margin-top: 53px;
}
.footer__bottom a{
	color: #808080;	
	text-decoration: none;
}
.footer>ul li, .footer div>ul li{
	margin-bottom: 0;
}
.footer>ul li:before, .footer div>ul li:before{
	display: none;	
}
.teamb__foter a{
	display: flex;
    align-items: center;
    justify-content: flex-end;
    gap: 23px;
}
@media(max-width:767px){
	.teamb__foter{
		justify-content: flex-start;
	}
}
/* end footer */

.overlay_search {
    position: absolute;
    top: 0;
    bottom: 0;
    left: 0;
    right: 0;
    background: rgba(0, 0, 0, 0);
    display: none;
    z-index: 1;
}
.overlay_search.active {
    display: block;
}

.form_box{	
	position: fixed;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    z-index: -999;   
    transition: 0.2s;
    user-select: none;
    pointer-events: none;
    opacity: 0;	
	background: #0f050483;
}
.form_box.active{	
	z-index: 999;
    user-select: unset;
    pointer-events: unset;
    opacity: 1;
}
.form-popup,
.form_succes
{
	overflow-y: auto;
    width: 98%;
    max-width: 642px;
	max-height: 600px;
    background: #FFFFFF;
    padding: 41px 30px 50px;
	position: relative;
    margin: 11vh auto 0;
}
.form_succes{
	max-width: 405px;
	max-height: 200px;
	margin-top: 40vh;
}
.form_succes-title{
	color: var(--main-color-1);
	text-align: center;
	font-family: var(--font-family-2);
	font-size: 26px;
	font-weight: 800;
	line-height: normal;
	text-transform: uppercase;
	margin-bottom: 20px;
}
.form_succes-content{
	color: var(--text-color);
	text-align: center;
	font-variant-numeric: lining-nums proportional-nums;
	font-family: var(--font-family-2);
	font-size: 15px;	
	font-weight: 500;
	line-height: normal;
}
.form_title{	
	font-family: var(--font-family-2);
	font-size: 22px;	
	font-weight: 400;
	line-height: normal;
	margin-bottom: 30px;
}
.form_field{
	margin-bottom: 15px;
}
.form__button{
	margin-top: 52px;
}
.form_close{
	width: 16px;
	height: 16px;
	position: absolute;
	top: 15px;
	right: 15px;
	cursor: pointer;
}
.form_close:before,
.form_close::after
{
	content: '';
	display: block;
	width: 100%;
	height: 1.5px;
	border-radius: 50%;
	top: 50%;
	position: absolute;
	background: var(--text-color-gray);
}
.form_close::after{
	transform: rotate(45deg);
}
.form_close::before{
	transform: rotate(-45deg);
}
.form_close:hover:before,
.form_close:hover:after
{	
	background: var(--text-color);
}
.search__input {
   position: relative;
}
.search__input svg{
    position: absolute;
    top: 0px;
    right: 20px;
}
.form__city-list{
	margin-top: 44px;
	display: flex;
	flex-wrap: wrap;
	max-height: 175px;
	overflow-y: auto;
	row-gap: 20px;
	color: var(--text-color);
	font-variant-numeric: lining-nums proportional-nums;
	font-family: var(--font-family-2);
	font-size: 15px;	
	font-weight: 500;
	line-height: normal;
}
.form__city-list>div{
	width: 50%;
	cursor: pointer;
}
.form__city-list>div:hover,
.form__city-list>div.active
{
	font-weight: 800;
}