/*Header local color styles*/

.header_contact_container a{
	background: #000;
	color: #fff;
}
.header_contact_container a:hover{
	background: #39AEC2;
}
.header_w nav{
	background: #fff;
}
.header_logo{
	background: #fff;
}
.header_nav{
	background: #fff;
}
.header_logo svg .logo_path{
	fill:#000;
}

.title_steps_block{
	margin: 100px 0 100px 0;
	display: grid;
	grid-template-columns: 80px repeat(11, 1fr 30px) 1fr 80px;
	grid-row-gap: 50px;
	grid-template-areas: 
	". . . . . . . contact_title contact_title contact_title contact_title contact_title contact_title contact_title contact_title contact_title contact_title contact_title . . . . . . ."
	". . . . contact_steps contact_steps contact_steps contact_steps contact_steps contact_steps contact_steps contact_steps contact_steps contact_steps contact_steps contact_steps contact_steps contact_steps contact_steps contact_steps contact_steps . . . .";
	grid-row-gap:70px;
}

.contact_title{
	grid-area: contact_title;
}
.contact_title h1{
	text-align: center;
	margin-bottom: 50px;
}
.contact_title p{
	text-align: center;	
	color: rgba(0,0,0,.7);
}
.contact_title p a{
	padding: 3px 12px;
	font-family: "IBM Plex mono";
	font-weight: 500;
	background: #f00;
	text-decoration: none;
	color: #000;
	border-radius: 100px; 
	transition: .2s;
}
.contact_title .contact_email{
	background: rgba(255,177,3,.7); 
	transition: .2s;
}
.contact_title .contact_email:hover{
	background: rgba(255,177,3,1); 
}
.contact_title .contact_phone{
	background: rgba(98,186,201,.7); 
	transition: .2s;
}
.contact_title .contact_phone:hover{
	background: rgba(98,186,201,1); 
}
.contact_steps{
	grid-area: contact_steps;
}

.title_steps_title{
	text-align: center;
	margin-bottom: 30px;
}
.steps_block{
	display: grid;
	grid-template-columns: 1fr 1fr 1fr;
	grid-column-gap: 30px;
}
.steps_block .step_ico{
	display: grid;
}

.steps_block .step_ico img, .steps_block .step_ico svg{
	background: #EDF3F5;
	border-radius: 50%;
	width: 140px;
	height:140px;
	padding: 20px;
	border: 5px solid #fff;
	align-self: center;
	justify-self:center;
}
.steps_block .step_1 .step_ico img, .steps_block .step_1 .step_ico svg{
	background:#FFB103;
}
.steps_block .step_1 h3{
	color: rgba(0,0,0,1);
}

.steps_block h3{
	text-align: center;
	font-size: 1.4em;
	line-height: 1.4em;
	font-family: 'PTRootUI';
	font-variation-settings: 'wght' 500;
	color: rgba(0,0,0,.7);
	font-weight: inherit;
	margin: 0 0 15px 0;
}
.steps_block .step_n{
	font-family: 'IBM Plex Mono';
	color: rgba(0,0,0,.5);
	font-size: .8em;
	line-height: 1em;
	text-align: center;
	margin-top: 10px;
}
.steps_block .step_desc{
	text-align: center;
	color: rgba(0,0,0,.7);
	font-variation-settings: 'wght' 350;
}
.step_desc a{
	color: rgba(0,0,0,.7);
	font-family: 'IBM Plex Mono';
	font-size: .8em;
	font-weight: 500;
}
.step_desc a:hover{
	color: rgba(0,0,0,1);
}


/*********FORM*********/

.form_container{
	display: grid;
	grid-template-columns: 50px repeat(12,1fr) 50px;
	margin-bottom: 50px;
	grid-column-gap: 30px;
	grid-template-areas: 
	". . form_block form_block form_block form_block form_block form_block form_block form_block form_block form_block . . ";
}
.form_block{
	grid-area: form_block;
	padding: 80px 0;
	border: 3px solid #EDF3F5;
	display: grid;
	grid-template-columns: repeat(10,1fr);
	grid-column-gap: 30px;
	grid-template-areas: 
	". form_title_block form_title_block form_title_block form_title_block form_title_block form_title_block form_title_block form_title_block ."
	". input_block_container input_block_container input_block_container input_block_container input_block_container input_block_container input_block_container input_block_container ."
	". form_submit form_submit form_submit form_submit form_submit form_submit form_submit form_submit .";
}
.form_title_block{
	grid-area: form_title_block;
}
.form_title_block h2, .form_title_block p{
	text-align: center;
}
.form_title_block p{
	margin-top: 10px;
	font-size: .8em;
	color: rgba(0,0,0,.7);
}
.input_block_container{
	grid-area: input_block_container;
	display: grid;
	grid-template-columns: repeat(2,1fr);
	padding: 75px 0 50px 0;
	grid-gap: 50px 30px;
}
.input_block input{
	width: calc(100% - 60px);
	height: 24px;
	padding: 33px 30px 33px 30px;
	font-size: 1em;
	font-family: "PTRootUI";
	font-variation-settings: 'wght' 400;
	border: none;
    box-shadow: inset 0px 0px 0px 3px #D0DADD;
    transition: .2s ease-in;
}
.input_block input:hover{
    box-shadow: inset 0px 0px 0px 6px #D0DADD;
    transition: .2s ease-out;
}
.input_block input:focus{
    box-shadow: inset 0px 0px 0px 6px #AFC3CA;
    transition: .2s ease-out;
}
.input_block input::placeholder{
	color: rgba(0,0,0,.5);
}

.input_block p{
	font-family: "IBM Plex Sans";
	font-weight: 500;
	color: rgba(0,0,0,.7);
	margin-bottom: 10px;
}
.input_block p span{
	font-size: 1.5em;
	color: #FFB103;
}

.checkbox_block input{
	display: none;
}
.checkbox_block p{
	display: inline-block;
	padding-left: 30px;
	color: rgba(0,0,0,.7);
	margin-top: 12px;
	font-size: .8em;
}
.checkbox_block p a{
	font-family: "IBM Plex Mono";
	font-weight: 500;
	color: rgba(0,0,0,.7);
	transition: .2s;
}
.checkbox_block p a:hover{
	color: rgba(0,0,0,.9);
	transition: .2s;
}
.checkbox_block label{
	display: inline-block;
	float: left;
	width: 50px;
	height: 50px;
    box-shadow: inset 0px 0px 0px 3px #D0DADD;
	outline: none;
    transition: .2s ease-in;
}
.checkbox_block label:hover{
	display: inline-block;
	width: 50px;
	height: 50px;
    box-shadow: inset 0px 0px 0px 6px #D0DADD;
	outline: none;
    transition: .2s ease-out;
}
.checkbox_block input:checked + label:hover{
    background: #AFC3CA;
    box-shadow: inset 0px 0px 0px 6px #AFC3CA;
    transition: .2s ease-out;
}
.checkbox_block input:checked + label{
    background: #D0DADD;
    transition: .2s ease-out;
}
.form_validation img{
	width: 100%;
	max-width: 300px;
}

.form_submit{
	grid-area: form_submit;
}
#form_submit_input{
	display: none;
}
.form_submit label{
	display: block;
	width: 220px;
	text-align: center;
	background: #FEB100;
	padding: 30px 30px;
	font-size: 1.4em;
	font-family: "IBM Plex Mono";
	font-weight: 500;
	margin:0 auto;
	margin-bottom: 10px;
	transition: .2s ease-in;
	border: 3px solid rgba(0,0,0,0);
	color: rgba(0,0,0,1);
}
.form_submit label:hover{
	cursor: pointer;
	border: 3px solid #000;
}
.form_submit input.sending + label:hover {
    /*pointer-events: none;*/
    text-decoration: none;
    border: 3px solid rgb(0, 0, 0)!important;
}
.form_submit input.button_inactive + label:hover {
    pointer-events: none;
    text-decoration: none;
    cursor: default;
    border: 3px solid rgba(0,0,0,0)!important;
}
.form_submit input.denied + label {
    background: #C24139;
    color: rgba(255,255,255,1)!important;
}
.form_submit input.denied + label p {
    font-weight:600;
    color: #C24139
}

.form_submit input.denied + label:hover {
    cursor: default;
    pointer-events: none;
    border: 3px solid rgba(0,0,0,0);
    text-decoration: none;
}

.form_submit input.button_inactive + label  {
    pointer-events: none;
    background-color: #d0dadd;
    color: rbga(0,0,0,1);
}

.form_submit input.button_inactive + label span {
    display: none;
}
.form_submit input.sent + label {
    background: #269E5D;
    color: rgba(255,255,255,1);
}

/*Вырубаем хавер*/
.form_submit input.sent + label:hover{
    pointer-events: none;
    text-decoration: none;
    /*border: 3px solid rgb(0, 0, 0)!important;*/
}
.form_submit input.denied + label span {
    display: none;
}


.checkbox_block {
    cursor: pointer;
}


.input_correct {
	color: #269E5D !important;
 }
 .input_correct + input {
	 box-shadow: inset 0px 0px 0px 3px rgba(38,158,93,.3);
	 color: #269E5D;
 }

 .input_correct + input:hover {
	 box-shadow: inset 0px 0px 0px 6px #269E5D;
	 transition: .2s ease-out;
	 color: #269E5D;
 }
 .input_correct + input:focus {
	 box-shadow: inset 0px 0px 0px 6px #269E5D;
	 transition: .2s ease-out;
	 color: #000;
 }

.error, .error span  {
    color: #C24139 !important;
}
#contacts_form .error + input, .checkbox_block .error, .checkbox_block label.error:hover {
	box-shadow: inset 0px 0px 0px 3px rgba(194,65,57,.3);
	color: #C24139;
}
#contacts_form .error + input:hover, .checkbox_block .error:hover, .checkbox_block label.error:hover {
	box-shadow: inset 0px 0px 0px 6px #C24139;
	transition: .2s ease-out;
	color: #C24139;
}
#contacts_form .error + input:focus, .checkbox_block .error:focus, .checkbox_block label.error:focus {
	box-shadow: inset 0px 0px 0px 6px #C24139;
	transition: .2s ease-out;
	color: #000;
}
.form_submit p{
	font-size: .7em;
	color: rgba(0,0,0,.5);
	text-align: center;
}
.grecaptcha-badge { 
    visibility: hidden;
}




.questions_block{
	margin-bottom: 100px;
	text-align: center;
}
.questions_block h3{
	font-family: "IBM Plex Sans";
	font-size: 1.4em;
	font-weight: 500;
	margin-bottom: 10px;
}
.questions_block p{
	font-variation-setting: 'wght' 350;
	color: rgba(0,0,0,.8);
}
.questions_block p a{
	font-family: "IBM Plex Mono";
	color: #000;
}

.questions_block p a:hover{
	text-decoration: none;
}

/*Footer Button disabled*/
.footer_contact .hidden, .footer_contact p{	
	display: none;
}


@media screen and (max-width: 1440px){


.title_steps_block{
	grid-template-columns: 40px repeat(11, 1fr 30px) 1fr 40px;
	grid-template-areas: 
	". . . . . contact_title contact_title contact_title contact_title contact_title contact_title contact_title contact_title contact_title contact_title contact_title contact_title contact_title contact_title contact_title . . . . ."
	". contact_steps contact_steps contact_steps contact_steps contact_steps contact_steps contact_steps contact_steps contact_steps contact_steps contact_steps contact_steps contact_steps contact_steps contact_steps contact_steps contact_steps contact_steps contact_steps contact_steps contact_steps contact_steps contact_steps .";
	grid-row-gap:70px;
}
.steps_block{
	grid-column-gap: 100px;
}

.form_container{
	grid-template-columns: 10px repeat(12,1fr) 10px;
	grid-template-areas: 
	". form_block form_block form_block form_block form_block form_block form_block form_block form_block form_block form_block form_block . ";
}
.form_block{
	display: grid;
	grid-template-columns: repeat(10,1fr);
	grid-column-gap: 30px;
	grid-template-areas: 
	". form_title_block form_title_block form_title_block form_title_block form_title_block form_title_block form_title_block form_title_block ."
	". input_block_container input_block_container input_block_container input_block_container input_block_container input_block_container input_block_container input_block_container ."
	". form_submit form_submit form_submit form_submit form_submit form_submit form_submit form_submit .";
}

}

@media screen and (max-width: 1300px){

.steps_block{
	grid-column-gap: 30px;
	}
}


@media screen and (max-width: 1080px){

.title_steps_block{
	grid-template-columns: 30px repeat(5, 1fr 30px) 1fr 30px;
	grid-template-areas: 
	". . . contact_title contact_title contact_title contact_title contact_title contact_title contact_title . . ."
	". contact_steps contact_steps contact_steps contact_steps contact_steps contact_steps contact_steps contact_steps contact_steps contact_steps contact_steps .";
	grid-row-gap:70px;
}
.steps_block h3{
	font-size: 1.2em;
    margin: 5px 0 15px 0;
}
.steps_block .step_ico img{
	width: 90px;
	height: 90px;
}
.steps_block .step_n{
	margin-top:15px;
}
.steps_block .step_desc{
	font-size: .8em;
	font-variation-settings: 'wght' 350;
}

.form_container{
	grid-template-columns: 0px repeat(6,1fr) 0px;
	grid-template-areas: 
	"form_block form_block form_block form_block form_block form_block form_block form_block ";
}
.form_block{
    padding: 60px 0;
	border: 3px solid #EDF3F5;
	border-right: 0;
	border-left: 0;
	grid-template-columns: 0px repeat(6,1fr) 0px;
	grid-template-areas: 
	". form_title_block form_title_block form_title_block form_title_block form_title_block form_title_block ."
	". input_block_container input_block_container input_block_container input_block_container input_block_container input_block_container ."
	". form_submit form_submit form_submit form_submit form_submit form_submit .";
}
.input_block input{
	font-size: .8em;
}
.checkbox_block{
	position: relative;
}
.checkbox_block p {
    display: inline;
    color: rgba(0,0,0,.7);
    font-size: .7em;
    margin-top: 0;

	position: absolute;
	top: 0;
}
.checkbox_block p a {
    display: inline-block;
}	
}

@media screen and (max-width: 600px) {
	
.title_steps_block{
	grid-template-columns: 20px repeat(3, 1fr 20px) 1fr 20px;
	grid-template-areas: 
	". contact_title contact_title contact_title contact_title contact_title contact_title contact_title ."
	". contact_steps contact_steps contact_steps contact_steps contact_steps contact_steps contact_steps .";
	grid-row-gap:70px;
}
.contact_title p{
	font-size: .8em;
}

.steps_block{
	display: grid;
	grid-template-columns: 1fr;
	grid-template-rows: auto auto auto;
	grid-column-gap: 20px;
	grid-row-gap: 80px;
}

.form_container{
	grid-template-columns: 0px repeat(4,1fr) 0px;
	grid-column-gap: 20px;
	grid-template-areas: 
	"form_block form_block form_block form_block form_block form_block ";
}
.form_block{
    padding: 60px 0;
	grid-template-columns: 0px repeat(4,1fr) 0px;
	grid-column-gap: 20px;
	grid-template-areas: 
	". form_title_block form_title_block form_title_block form_title_block ."
	". input_block_container input_block_container input_block_container input_block_container ."
	". form_submit form_submit form_submit form_submit .";
}

.input_block_container{
	grid-template-columns: 1fr;
	grid-template-rows: auto;
	padding: 75px 0 100px 0;
	grid-gap: 30px 50px;
}
.form_submit label {
    width: calc(100% - 60px);
}

}


