:root {
	--accent: #d9d9d9;
	--black: #1f1f1f;
	--grey-link: #6f6f6f;
	--grey-light: #ccc;
}


.header{
	position: relative;
}
.header_line{
	height: 4px;
	background: linear-gradient(270deg, #a0db58 0%, #3aaa35 100%);
}
.header_top{
	background-color: #fff;
	box-shadow: 0 0 60px 0 rgba(0, 0, 0, 0.06);
}
.header_top_container{
	display: flex;
	align-items: center;
	justify-content: space-between;
	height: 86px;
}
.header_top_right{
	display: flex;
	align-items: center;
	height: 100%;
}
.phone{
	display: flex;
	align-items: center;
	gap: 8px;
	font-size: 15px;
	color: #666;
	font-weight: 700;
}
.phone span{
	font-size: 22px;
	color: var(--black);
}
.header_social{
	display: flex;
	align-items: center;
	height: 100%;
	gap: 8px;
	padding: 0 40px;
	border-left: 1px solid #ebebeb;
	border-right: 1px solid #ebebeb;
	margin: 0 40px;
}
.user{
	display: flex;
	align-items: center;
	gap: 6px;
	font-size: 15px;
	color: #666;
	font-weight: 700;
	text-transform: uppercase;
}
.header_nav{
	border-radius: 0 0 12px 12px;
	overflow: hidden;
	display: flex;
	align-items: center;
	justify-content: space-between;
	background: #282828;
}
.header_nav li{
	transition: 0.3s;
	list-style: none;
	flex: 1;
	text-align: center;
}
.header_nav a{
	width: 100%;
	color: #fff;
	font-weight: 700;
	font-size: 13px;
	text-transform: uppercase;
	padding: 21px 0;
	display: inline-block;
	border-right: 1px solid #363636;
}
.header_nav li:last-child a{
	border-right: none;
}

.main_screen{
	position: relative;
	background: linear-gradient(270deg, #a0db58 0%, #3aaa35 100%);
	border-radius: 20px;
	overflow: hidden;
	padding: 130px 60px;
	color: #fff;
	margin-top: 20px;
}
.main_screen .h1{
	position: relative;
	z-index: 1;
}
.main_screen_img{
	position: absolute;
	right: 0;
	top: 0;
	height: 100%;
}
.main_screen_subtitle{
	font-size: 22px;
	margin-top: 12px;
	margin-bottom: 32px;
	position: relative;
	z-index: 1;
}
.main_screen_subtitle span{
	font-weight: 700;
}
.row_card{
	margin-top: 60px;
	display: flex;
	flex-wrap: wrap;
	gap: 12px;
}
.card{
	cursor: pointer;
	background-color: #fff;
	width: calc(33.3% - 8px);
	position: relative;
	overflow: hidden;
	box-shadow: 0 12px 60px 0 rgba(0, 0, 0, 0.04);
	border-radius: 12px;
	padding: 37px;
	display: flex;
	align-items: center;
	justify-content: center;
	flex-direction: column;
	transition: 0.3s;
}
.card_hover{
	position: absolute;
	left: 0;
	top: 0;
	transition: 0.3s;
	opacity: 0;
}
.card_arrow{
	position: absolute;
	right: 10px;
	bottom: 10px;
}
.card_title{
	margin-top: 28px;
	font-weight: 700;
	font-size: 13px;
	color: var(--grey-link);
	text-transform: uppercase;
}
.offer{
	position: relative;
	background: linear-gradient(270deg, #a0db58 0%, #3aaa35 100%);
	border-radius: 20px;
	overflow: hidden;
	padding: 44px 60px;
	color: #fff;
	margin-top: 60px;
}
.offer .h2{
	max-width: 360px;
}
.offer_subtitle{
	font-size: 18px;
	margin-top: 12px;
	margin-bottom: 32px;
	max-width: 360px;
}
.offer_subtitle span{
	font-weight: 700;
}



.footer{
	border-radius: 20px 20px 0 0;
	background: linear-gradient(0deg, #1f1f1f 0%, #292929 100%);
	padding-top: 60px;
	padding-bottom: 28px;
	margin-top: 60px;
}
.footer_row{
	display: flex;
	justify-content: space-between;
	flex-wrap: wrap;
}
.footer_contacts .phone{
	color: var(--grey-light);
}
.footer_contacts .phone span{
	color: #fff;
}
.address{
	position: relative;
	padding-left: 28px;
	max-width: 350px;
	color: #dbdbdb;
	font-size: 15px;
	margin-top: 12px;
}
.address span{
	font-weight: 700;
	color: #fff;
}
.address_svg{
	position: absolute;
	left: 0;
	top: 0;
}
.footer_social{
	margin-top: 20px;
	display: flex;
	gap: 8px;
}
.footer_menu{
	width: 32%;
	
}
.footer_nav{
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
}
.footer_nav li{
	list-style: none;
	width: 45%;
}
.footer_nav a{
	display: block;
	font-weight: 700;
	font-size: 13px;
	line-height: 140%;
	text-transform: uppercase;
	color: #999;
	padding: 20px 0;
	border-top: 1px solid #3d3d3d;
	transition: 0.3s;
}
.footer_nav li:first-child a, .footer_nav li:nth-child(2) a{
	border: none;
	padding-top: 0;
}
.footer_bottom{
	border-top: 1px solid #3d3d3d;
	text-align: center;
	font-size: 15px;
	line-height: 140%;
	color: #999;
	padding-top: 28px;
	margin-top: 60px;
}




.breadcrumbs{
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	gap: 12px;
	padding: 16px 40px;
	border-radius: 30px;
	background-color: #fff;
	margin-top: 40px;
	margin-bottom: 28px;
	font-size: 15px;
}
.breadcrumbs li{
	list-style: none;
	color: var(--black);
}
.breadcrumbs a{
	color: var(--grey-link);
}


.mains_tarif{
	margin-top: 28px;
	background-color: #fff;
	padding: 40px 0;
	border-radius: 20px;
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
	min-height: 500px;
	margin-bottom: 12px;
}
.mains_tarif_atr{
	width: 30%;
	position: relative;
}
.mains_tarif_atr_text{
	font-weight: 700;
	font-size: 13px;
	text-transform: uppercase;
	text-align: center;
	color: var(--grey-light);
}
.tarif_card_title{
	text-align: center;
	margin-top: 5px;
	margin-bottom: 12px;
	color: var(--black);
}
.skorost {
	position: absolute;
	left: 0;
	top: 105px;
	width: 80%;
	display: flex;
	justify-content: center;
	align-items: center;
	color: #fff;
	padding: 27px 0;
	border-radius: 0 60px 60px 0;
	font-weight: 700;
	font-size: 44px;
}
.skorost_rigth{
	font-weight: 400;
	font-size: 15px;
	display: flex;
	flex-direction: column;
}
.skorost_rigth span{
	border-bottom: 1px solid #fff;
}
.skorost_left{
	margin-right: 16px;
}
.tarif_line{
	width: 40px;
	height: 8px;
	border-radius: 4px;
	margin: 0 auto;
}
.czena{
	position: absolute;
	left: 0;
	top: 213px;
	width: 70%;
	display: flex;
	justify-content: center;
	align-items: center;
	padding: 27px 0;
	border-radius: 0 60px 60px 0;
	font-weight: 700;
	font-size: 44px;
	background-color: #F2F2F2;
	color: var(--black);
}
.czena_rigth{
	font-weight: 400;
	font-size: 15px;
	display: flex;
	flex-direction: column;
	margin-left: 16px;
}
.czena_rigth span{
	border-bottom: 1px solid var(--grey-light);;
}
.mains_tarif_col{
	width: 33%;
	padding: 0 40px;
}
.mains_tarif_col .h2{
	margin-bottom: 28px;
}
.mains_tarif_col p{
	position: relative;
	padding-left: 30px;
}
.mains_tarif_col p img{
	position: absolute;
	left: 0;
	top: 0;
}
.mains_tarif_col p:not(:last-child){
	border-bottom: 1px solid #ebebeb;
	padding-bottom: 16px;
	margin-bottom: 16px;
}
.mains_tarif_col_second p{
	padding-left: 40px;
}





.tarif_card{
	min-height: 522px;
	display: block;
}
.tarif_card .skorost {
	top: 138px;
}
.tarif_card:first-child .tarif_line, .tarif_card:first-child .skorost{
	background: linear-gradient(270deg, #a0db58 0%, #3aaa35 100%);
}
.tarif_card:nth-child(2) .tarif_line, .tarif_card:nth-child(2) .skorost{
	background: linear-gradient(270deg, #586edb 0%, #3549aa 100%);
}
.tarif_card .czena{
	left: unset;
	right: 0;
	border-radius: 60px 0 0 60px;
	top: 226px;
}
.tarif_card_desc{
	margin-top: 238px;
	color: var(--black);
	text-align: center;
	font-size: 15px;
	margin-bottom: 28px;
}
.tarif_card_desc span{
	font-weight: 700;
}
.redactor_dla_kvartiry{
	max-width: 780px;
	margin-top: 60px;
}


.mains_page{
	margin-top: 16px;
	display: flex;
	justify-content: space-between;
	flex-wrap: wrap;
}
.mains_page .redactor{
	margin: 28px 0;
}
.mains_page_left{
	width: 50%;
}
.mains_page_right{
	width: 43%;
}
.mains_page_img{
	width: 100%;
    padding-top: 100%;
    position: relative;
    border-radius: 50%;
    overflow: hidden;
}
.mains_page_img img{
	width: 100%;
	height: 100%;
	position: absolute;
	left: 0;
	top: 0;
	object-fit: cover;
}
.offer_form .offer_subtitle{
	font-size: 15px;
	max-width: 500px;
	position: relative;
	z-index: 1;
}
.wpcf7-form{
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
}
.offer_form .wpcf7-form{
	width: 60%;
}
.offer_form .wpcf7-form span{
	width: 49%;
}
.offer_form  .btn{
	border: none;
	width: 100%;
	width: 49%;
}
.acceptance{
	max-width: 275px;
	font-size: 13px;
}
.acceptance a{
	color: #fff;
	font-style: italic;
}
.wpcf7-spinner{
	margin: 0 4px;
	width: 24px !important;
}




.contacts_left{
	width: 49%;
}
.contacts_card{
	box-shadow: 0 12px 60px 0 rgba(0, 0, 0, 0.04);
    border-radius: 12px;
    padding: 40px;
    background-color: #fff;
}
.contacts_row{
	margin-top: 60px;
	display: flex;
	justify-content: space-between;
	flex-wrap: wrap;
}
.contacts_card_title{
	font-weight: 700;
	font-size: 32px;
	line-height: 120%;
	color: var(--black);
}
.contacts_card .phone{
	margin-top: 28px;
	border-bottom: 1px solid #ebebeb;
	padding-bottom: 16px;
}
.contacts_card .address, .contacts_card .address span{
	color: var(--black);
}
.contacts_card .address{
	margin-top: unset;
	display: flex;
	align-items: center;
	max-width: unset;
	gap: 8px;
	border-bottom: 1px solid #ebebeb;
	padding: 16px 0;
}
.contacts_left .card{
	width: 100%;
	margin-top: 12px;
}
.contacts_right{
	width: 49%;
}
.contacts_right .contacts_card {
	height: 100%;
}
.contacts_card .redactor{
	margin-top: 28px;
	display: flex;
	flex-direction: column;
	gap: 12px;
}



.page_contacts_row{
	margin-top: 28px;
	display: flex;
	justify-content: space-between;
	flex-wrap: wrap;
}
.page_contacts_left{
	width: 65.5%;
	border-radius: 12px;
	box-shadow: 0 12px 60px 0 rgba(0, 0, 0, 0.04);
	overflow: hidden;
}
.page_contacts_right{
	width: 33%;
	display: flex;
	flex-direction: column;
	gap: 12px;
}
.page_contacts_right .card{
	width: 100%;
	padding-top: 74px;
	padding-bottom: 74px;
}



.builds_row{
	margin-top: 28px;
	display: flex;
	justify-content: space-between;
	flex-wrap: wrap;
	gap: 12px;
}
.builds_card{
	padding-top: 220px;
	align-items: flex-start;
}
.builds_card_img{
	position: absolute;
	left: 0;
	top: 0;
	height: 220px;
	width: 100%;
}
.builds_card_img img{
	width: 100%;
	height: 100%;
	object-fit: cover;
}


.telefonia_row{
	display: flex;
	justify-content: space-between;
	flex-wrap: wrap;
	background-color: #fff;
	border-radius: 20px;
	padding: 40px;
	margin-top: 28px;
	margin-bottom: 12px;
}
.telefonia_row .mains_tarif_col{
	width: 48%;
	padding: unset;
}
.telefonia_row .mains_tarif_col_second{
	padding-bottom: 15px;
}



.equipment_card_title{
	font-weight: 700;
	font-size: 24px;
	line-height: 140%;
	color: var(--black);
	margin-top: 20px;
}
.equipment_card{
	padding-top: 270px;
	display: flex;
	flex-direction: column;
	justify-content: space-between;
}
.equipment_card_img{
	position: absolute;
	left: 0;
	top: 0;
	height: 270px;
	width: 100%;
	border-radius: 0 0 20px 20px;
	overflow: hidden;
}
.equipment_card_img img{
	height: 100%;
	width: 100%;
	object-fit: cover;
}
.equipment_card_desc{
	font-size: 15px;
	line-height: 140%;
	color: var(--grey-link);
	margin-top: 8px;
}
.equipment_card .btn{
	margin-top: 100px;
}
.equipment_card .czena{
	top: unset;
	bottom: 118px;
	font-size: 24px;
	padding: 17px 0;
	justify-content: flex-start;
	padding-left: 40px;
}
.equipment_card .czena_rigth{
	font-weight: 700;
}



.mains_equipment{
	padding: 40px;
	background-color: #fff;
	border-radius: 20px;
	display: flex;
	justify-content: space-between;
	flex-wrap: wrap;
}
.mains_equipment_left{
	width: 35%;
}

.mains_equipment_right {
	width: 60%;
}
.mains_equipment_img{
	width: 100%;
	height: 300px;
	border-radius: 12px;
	overflow: hidden;
}
.mains_equipment_img img{
	width: 100%;
	height: 100%;
	object-fit: cover;
}
.mains_equipment_left p:not(:last-child) {
    border-bottom: 1px solid #ebebeb;
    padding-bottom: 16px;
    margin-bottom: 16px;
}
.mains_equipment_left p {
    position: relative;
    padding-left: 30px;
}
.mains_equipment_left p img {
    position: absolute;
    left: 0;
    top: 0;
}
.equipment_usloviya{
	margin-top: 28px;
}
.mains_equipment_right .czena{
	position: relative;
	width: unset;
	top: unset;
	border-radius: 60px;
	font-size: 24px;
	padding: 17px 40px;
	justify-content: flex-start;
	margin-top: 28px;
	margin-bottom: 16px;
}
.mains_equipment_right .czena_rigth{
	font-weight: 700;
}
.mains_equipment_right .redactor{
	font-size: 15px;
	line-height: 140%;
	color: var(--grey-link);
}


.last_card{
	width: 100%;
}


.scachat{
	font-weight: 700;
	font-size: 13px;
	line-height: 140%;
	text-transform: uppercase;
	text-align: center;
	color: var(--grey-light);
	position: absolute;
	right: 48px;
    bottom: 14px;
}
.documents_row{
	display: flex;
	justify-content: space-between;
	flex-wrap: wrap;
	margin-top: 28px;
	row-gap: 12px;
}

.documents_card{
	min-height: 180px;
}
.documents_card .card_title{
	text-align: center;
	margin-top: unset;
}
.documents_card_bottom{
	height: unset;
	width: 25%;
}
.documents_row .contacts_card{
	width: 48%;
}
.green_card{
	background: linear-gradient(270deg, #a0db58 0%, #3aaa35 100%);
}
.green_card_title{
	font-weight: 700;
	font-size: 24px;
	line-height: 140%;
	text-align: center;
	color: #fff;
}


.header_address, .hamb_phone_close, .hamb_close, .main_screen_img_mobile, .hamb, .hamb_phone{
	display: none;
}



.header_nav li:hover{
	background: linear-gradient(0deg, #3d3d3d 0%, #525252 100%);
}
.btn:hover{
	background: linear-gradient(0deg, #3d3d3d 0%, #525252 100%);
}
.card:hover .card_title{
	color: var(--black);
}
.card:hover .card_hover{
	opacity: 1;
}
.footer_nav a:hover{
	color: #fff;
}