.form_hint {
	background: #d45252;
	border-radius: 3px 3px 3px 3px;
	color: white;
	margin-left:8px;
	padding: 1px 6px;
	z-index: 999; /* ïîäñêàçêè ïîâåðõ âñåõ ýëåìåíòîâ */
	position: absolute; /* ïðàâèëüíîå îòîáðàæåíèå, åñëè ïîäñêàçêà â 2 ñòðîêè */
	display: none;
}
.form_hint::before {
	content: "\25C0";
	color:#d45252;
	position: absolute;
	top:1px;
	left:-6px;
}

.contact_form input:focus + .form_hint {display: inline;}
.contact_form input:required:valid + .form_hint {background: #28921f;}
.contact_form input:required:valid + .form_hint::before {color:#28921f;}



.ui-dialog {
    height: auto;
    max-width: 100%;
	border: 1px solid #e5e5e5;
    margin: 0 auto;
}

.ui-dialog .ui-dialog-titlebar {
	width: 100%;
    margin: 0;
    background-color: rgba(97, 121, 187, 0.9);
	color: rgb(255, 255, 255);
    padding: 10px 20px;
    font-weight: 600;
    font-size: 20px;
	text-align:center;
}

.ui-button {
    cursor: pointer;
}


.flex_column {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    position: relative;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
	width: 40%;
        
}

.flex_column_2 {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    position: relative;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    width: 20%;
}

.flex_column_3 {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    position: relative;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    width: 40%;
}

.flex {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
/*    width: 100%;*/
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
    
    font-weight: 400;
    
}

.calc-formlist {
    margin: 0px auto;
    padding: 30px;
    width: 100%;
    background-color: rgb(255, 255, 255);
    
}

.calc-inputs {
    border:none;
    padding: 10px;
    width: 92%;
    background: #e5e5e5;
    margin: 0px auto;
    border-radius: 10px
}

.calc-formlist select {
    width: 100%;
    margin: 5px;
	padding: 0 10px;
	min-height: 30px;
	line-height: 30px;
	border: 1px solid #e5e5e5;
	/*color: rgb(177, 177, 177);*/
	font-size: 14px;
	background-color: rgb(250, 250, 250);
	border-radius: 20px;
}

.calc-formlist label {
    /*padding: 5px;*/
    margin: 5px;
	padding: 0;
	min-height: 30px;
	line-height: 30px;
}

.calc-text{
    font-size: 18px;
	font-family: 'ProximaNova-Semibold';
    color: #444;
	/*text-align: center;*/
}

.calc-text label{
	border-bottom: 3px solid rgb(121, 18, 90);
	min-height: 17px;
    line-height: 17px;
}

.ots{
	min-height: 30px;
    line-height: 30px;
}

p.message {margin-bottom: 0;}


.flex_column_2 input {
    margin: 5px;
	padding: 0;
    /*padding: 0px 5px;*/
    color: rgb(177, 177, 177);
	border-radius: 20px;
	border: 1px solid #e5e5e5;
    font-size: 14px;
    font-weight: 300;
    text-align: center;
    width: 100%;
	line-height: 28px;
	background-color: rgb(250, 250, 250);
}

.content {
    width: 100%
}

.futter {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    position: relative;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
    margin: 10px auto;
}

.inter1,.knop {margin: 0 auto;text-align: center;padding: 10px;}

.futter a {
    text-decoration: none;
    color: #000
}
.futter a:hover {
    text-decoration: none;
    color:red
}

.futter input {
    cursor: pointer
}

#calc-results {
    margin: 0px auto;
    padding: 0 30px 30px 30px;
    width: 100%;
    background-color: rgb(255, 255, 255);
}

.calc-results p {
   margin: 1px;
    padding: 1px
}



.in {
  margin: 20px 0 0 30px;
  width: 88px
}

#calc-results input {
margin: 5px;
    padding: 0;
    /* padding: 0px 5px; */
    color: rgb(177, 177, 177);
    border: 1px solid #e5e5e5;
	border-radius: 20px;
    font-size: 14px;
    font-weight: 300;
    text-align: center;
	width: 70%;
	min-height: 50px;
    background-color: rgb(250, 250, 250);
}

.email {
  margin-left: 30px
}

.tel {
  margin-left: 8px
}
 

#calc-results textarea {
    border: 1px solid #e5e5e5;
    border-radius: 20px;
	width: 100%;
    padding: 15px;
	background-color: rgb(250, 250, 250);
}
	
@media (max-width: 767px) { 
.flex_column{width: 75%;}
.flex_column_2{width: 35%;}
.calc-formlist {padding: 15px;}
.inp_height, .calc-formlist label {
    min-height: 75px;
    margin: 5px 0;
    display: flex;
    align-items: center;
}
/*.flex_column_2 input,.calc-formlist select {line-height: inherit;max-height: 30px;}*/
.ots {
    min-height: 105px;
    line-height: 105px;
}
.calc-formlist select {margin: 5px 0;}
sup {display: contents;}
 }
	