.our_services, .consult, .about_us, .reasons, .contact_with_us, .steps{
	padding-top:2rem;
	margin-top:1rem;
}
html{
	margin: 0;
	padding: 0;
}
body{
	font-size:16px;
	font-family: "Open Sans", sans-serif;
	font-weight: 700;
	font-style: normal;
	background-color:#f4f8f8;
	margin: 0;
	padding: 0;
}
.header{
	font-size:18px;
}
a{
	text-decoration:none;
	color:inherit;
}
a:hover{
	color:#2B5C8F;
}
h1,h2,h3,p,span,li,a{
	color:#1B3B5D;
}
h1,h2,h3{
	font-weight:bold;
}
h2{
	margin-bottom:2rem;
	margin-top:1rem;
}
.btn-primary, .btn-primary:active, .btn-primary:visited {
	background-color: #2B5C8F !important;
	font-size:1.15rem;
}
.btn-primary:hover{
	background-color: #1B4C7F !important;
}
.btn-outline-primary {
	background:#fff;
	color: #2B5C8F !important;
	border-color: #2B5C8F !important;
}
.btn-outline-primary:hover {
	color: #fff !important;
	background-color: #2B5C8F !important;
}
.header{
	min-height:70px;
	margin-top:0;
	background:#fafafa;
	border-bottom:2px ridge #0e0e0e;
}
.logo{
	padding:15px;
	display:flex;
	align-items:center;
	gap: 15px;
}
.header-contacts{
	padding:15px 0;
	display:inline-flex;
	align-items:center;
	gap: 15px;
	flex-direction: column;
}
.logo-image{
	display: inline-block;
	height: 70px;
}
.logo-text{
	display: inline-block;
}
.logo-name{
	display: block;
	font-size: 2rem;
	line-height: 1;
	color:#000;  
	font-weight: 400;
	font-style: normal;
}
.logo-descr{
	display: block;
	font-size: 1.25rem;
	line-height: 1;
	color:#000;
}
.header-phone{

}
.header-call_btn{

}
.header-menu{
	padding: 15px;
	display: inline-flex;
	align-items: center;
	gap: 15px;
}
ul.menu{
	display: flex;
	flex-direction: row;
	align-content: center;
	justify-content: space-evenly;
	align-items: center;
	padding:15px;
	margin:0;
	list-style: none;
	gap: 15px;
}
.header-bg{
	display:flex;
	flex-direction: column;
	justify-content: center;
	align-items: flex-start;
	padding:175px 25px 125px;
	background-image:url("https://cfoagency.ru/afd/wp-content/uploads/2024/12/mt-sample-background.jpg");
	background-repeat: no-repeat;
	background-position: top;
	background-size: cover;
	text-shadow:0 0 1px #000;
}
.header-bg span, .header-bg li{
	color:#fff;
	text-shadow:0 0 1px #000;
}
.header-bg h1{
	color:#fff;
	text-shadow:0 0 1px #000;
}
.our_services-wrapper{
	display:flex;
	flex-wrap: wrap;
	align-content: center;
	justify-content: center;
    align-items: stretch;
	gap: 25px;
	margin-top:2.5rem;
}
.our_service{
	display:inline-flex;
	min-height:320px;
	width:320px;
	background:#fff;
	background-repeat: no-repeat;
	background-position: center;
	background-size: 100% 100%;
	position: relative;    
	align-content: center;
	align-items: flex-start;
	justify-content: center;
	gap:25px;
}
.our_service-wrap{
	display: flex;
	flex-direction: column;
	flex-wrap: nowrap;
	align-content: center;
	justify-content: space-between;
	align-items: stretch;
	gap: 5px;
    height: 100%; 
	overflow: hidden;
}
.our_services-link{
	position: absolute;
	height: 100%;
	width: 100%;
}
.our_services-text{
	padding:5px;
	font-size: 0.9rem;
	color:#6e6e6e;   
	overflow: hidden;
	display: -webkit-box;
	-webkit-line-clamp: 2; 
	line-clamp: 2; 
	-webkit-box-orient: vertical;
    min-height: 3.2rem;
	text-align:center;
}
.our_services-title{
	padding:5px;
	text-align: center;
	font-weight:bold;
	color:#0e0e0e;
	min-height:3.6rem;
}
.our_services-image{
	max-width:100%;
	transition: all .3s ease;
}
.our_service:hover .our_services-image{
	transform: scale(1.1);
}
.contactform_1{
	max-width:320px;
	margin-top: 2rem;
}
.contactform_1 input{
	width:100%;
}
.step-wrapper{
    display: flex;
    flex-direction: row;
    flex-wrap: wrap;
	align-content: center;
	justify-content: center;
	align-items: center;
	gap: 25px;
}
.step-img, .about_us-img, .reasons-img{
	max-width:100%;
}
.about_us-img{
	width:auto;
	max-height:500px;
	margin: 15px auto;
	display: block;
}
.contact_with_us-phone, .contact_with_us-address{
	display:block;
	margin:15px 0;
	width:max-content;
	max-width:100%;
}
.contactform_2 .form-label,.contactform_2 .wpcf7-form-control{
	display:block;
	width:100%;
}
.consult{
	padding: 25px 0 10px;
}
.consult h2, .consult span{
	color:#0e0e0e;
}
.consult h2{
	margin-bottom:0;
}
.consult p{
}
.consult span{
	font-weight: 500;
}
/*.about_us{	
background: #fff;
padding: 25px 0;
box-shadow: 0 0 12px 2px #fff;
}*/
.steps, .our_services, .reasons, .single-service{
	box-shadow:inset 0 0 12px 2px #f4f8f8;
	border:1px ridge #eaeaea;
	background:#fefefe;
	padding:15px;
}
.our_services{
	margin-top:0;
}
.reasons, .single-service{
	margin-bottom:-24px;
	padding-bottom:24px;
}
.step{
	padding:25px;
	border:2px ridge #eaeaea;
	width:295px;
	height:295px;
    display: flex;
    flex-direction: column;
    align-content: center;
    justify-content: center;
    align-items: flex-start;
}
.step-title{
	font-size:1.5rem;
	line-height:1;
}
.step-number{
	font-size:2rem;
	line-height:1;
	margin-bottom:2rem;
}
.step.border-none{
	border:0;
}
.carousel-control-prev{
	left:-100px;
}
.carousel-control-next{
	right:-100px;
}
footer{	
	background: #181818;
	box-shadow: 0 0 24px 2px #181818;
	margin-bottom: -24px;
}
.contact_with_us h2, .contact_with_us h3, .contact_with_us a{
	color:#fff;
}
.contactform_2 h3, .reasons h2, .steps h2, .our_services h2{
	text-align:center;
}
@media(max-width:768px){
	html, body{
		font-size:14px;
	}
	.header{
		text-align:center;
		padding-top:50px;
	}
	.header-bg{
		background-image:none !important;
		padding:50px 0;
	}
	.header-bg h1{
		font-size:2rem;
		text-align:center;
	}
	.header-bg h1, .header-bg li{
		color:#0e0e0e;
	}
	.header-bg .btn{
		width:100%;
	}
	.logo-text{
		text-align:left;
	}
	.logo-name{
		font-size:1.5rem;
		line-height:1.5;
	}
	.logo-descr{
		font-size:0.9rem;
		line-height:1.5;
	}
	.logo{
		padding:0;
		gap:5px;
	}
	.header-phone{
		font-size:1rem;
	}
	.offcanvas-body{	
    display: flex;
    flex-direction: column;
    justify-content: space-evenly;
    align-content: center;
    align-items: center;
	}
	.offcanvas-body .menu{
		display:flex;
		flex-direction:column;
		gap:1rem;
	}
	.offcanvas-body .menu a{
		color:#101010;
	}
	.offcanvas-body .contact_with_us-phone, .offcanvas-body .contact_with_us-address{
		margin:3px auto;
		color:#101010;
	}
	.border-none{
		display:none;
	}
}
.header-bg > .container{
	padding:15px;
}
.menu{
	white-space: nowrap;
}
.footer-maps iframe{
	max-width:100%;
}
.contactform_2{
	max-width:540px;
}
footer .wpcf7-response-output{
	color:#fff;
	text-align:center;
}
.reasons h3{
	font-size:1.4rem;
}