.item_step .title {
	font-size: 25px;
	font-weight: bold;
	color: #000000;
	position: relative;
	margin-bottom: 24px;
}
.item_step .title span {
	height: 50px;
	width: 50px;
	background: #cff54a;
	line-height: 50px;
	text-align: center;
	border-radius: 50px;
	display: inline-block;
	vertical-align: middle;
}
.item_step .title ins { 
	padding: 0 20px;
	background: #fff; 
	vertical-align: middle;
	text-decoration: none;
}
.item_step .title:before {
	z-index: -1;
	background: #f1f1f1;
	height: 10px;
	position: absolute;
	top: 21px;
	left: 0;
	right: 0;
	content:'';
}

.d_title {
	font-size: 16px;
	color: #000000;
	padding-bottom: 14px;
}

.item_wrap {
	display: flex;
}
.calendar,
.date_nav { width: 372px;}

a.next,
a.prev { color: #000; text-decoration: none;}
div.date_nav input {
	font: 24px 'Fira Sans';
	color: #000000;
}
div.date_nav {
	background: #cef54a;
}
div.day_caption {
	background: #edffcd;
}
div.day_caption {
	color: #000;
}
div.day_active {
	color: #00a624;
}
div.day_none,
div.day_active,
div.day_caption {
	width: 51px;
	height: 51px;
}
div.calendar .net {
	background: #edffcd;
}
.time_ { padding-left: 72px;}

.hours input[type="button"] {
	width: 100px;
	height: 50px;
	text-align: center;
	border-radius: 25px;
	line-height: 50px;
	border: 1px solid #f1f1f1;
	font-size: 16px;
	color: #000000;
	background: #fff;
	margin: 0 20px 15px 0;
	cursor: pointer;
	outline: none;
}
.hours input[type="button"]:hover,
.hours input[type="button"].active {
	border-color: #cff54a;
}

.item_step + .item_step { margin-top: 24px;}

.item_wrap .calc input {
	width: 100px;
	height: 50px;
	background-color: white;
	border: 1px solid #826464;
	border-radius: 25px;
	text-align: center;
	outline: none;
	display: inline-block;
	vertical-align: middle;
}

.item_wrap .calc p {
	font-size: 16px;
	color: #000000;
	display: flex;
	flex-wrap: wrap;
	align-items: center;
}
.item_wrap .calc p ins { 
	text-decoration: none;
	width: 100%; 
	display: inline-block;
	vertical-align: middle;
	max-width: 330px;
	margin-right: 30px;
}

.custom-radio { font-size: 16px; color: #000000;}
.custom-radio>input {
  position: absolute;
  z-index: -1;
  opacity: 0;
}

/* Ð´Ð»Ñ ÑÐ»ÐµÐ¼ÐµÐ½Ñ‚Ð° label ÑÐ²ÑÐ·Ð°Ð½Ð½Ð¾Ð³Ð¾ Ñ .custom-radio */
.custom-radio>span {
  display: inline-flex;
  align-items: center;
  user-select: none;
}

/* ÑÐ¾Ð·Ð´Ð°Ð½Ð¸Ðµ Ð² label Ð¿ÑÐµÐ²Ð´Ð¾ÑÐ»ÐµÐ¼ÐµÐ½Ñ‚Ð°  before ÑÐ¾ ÑÐ»ÐµÐ´ÑƒÑŽÑ‰Ð¸Ð¼Ð¸ ÑÑ‚Ð¸Ð»ÑÐ¼Ð¸ */
.custom-radio>span::before {
  content: '';
  display: inline-block;
  width: 27px;
  height: 27px;
  flex-shrink: 0;
  flex-grow: 0;
  border: 1px solid #826464;
  border-radius: 50%;
  margin-right: 12px;
  background-repeat: no-repeat;
  background-position: center center;
  background-size: 50% 50%;
}

/* ÑÑ‚Ð¸Ð»Ð¸ Ð¿Ñ€Ð¸ Ð½Ð°Ð²ÐµÐ´ÐµÐ½Ð¸Ð¸ ÐºÑƒÑ€ÑÐ¾Ñ€Ð° Ð½Ð° Ñ€Ð°Ð´Ð¸Ð¾ */
/*.custom-radio>input:not(:disabled):not(:checked)+span:hover::before {
  border-color: #b3d7ff;
}*/

/* ÑÑ‚Ð¸Ð»Ð¸ Ð´Ð»Ñ Ð°ÐºÑ‚Ð¸Ð²Ð½Ð¾Ð¹ Ñ€Ð°Ð´Ð¸Ð¾ÐºÐ½Ð¾Ð¿ÐºÐ¸ (Ð¿Ñ€Ð¸ Ð½Ð°Ð¶Ð°Ñ‚Ð¸Ð¸ Ð½Ð° Ð½ÐµÑ‘) */
/*.custom-radio>input:not(:disabled):active+span::before {
  background-color: #b3d7ff;
  border-color: #b3d7ff;
}*/

/* ÑÑ‚Ð¸Ð»Ð¸ Ð´Ð»Ñ Ñ€Ð°Ð´Ð¸Ð¾ÐºÐ½Ð¾Ð¿ÐºÐ¸, Ð½Ð°Ñ…Ð¾Ð´ÑÑ‰ÐµÐ¹ÑÑ Ð² Ñ„Ð¾ÐºÑƒÑÐµ */
/*.custom-radio>input:focus+span::before {
  box-shadow: 0 0 0 0.2rem rgba(0, 123, 255, 0.25);
}*/

/* ÑÑ‚Ð¸Ð»Ð¸ Ð´Ð»Ñ Ñ€Ð°Ð´Ð¸Ð¾ÐºÐ½Ð¾Ð¿ÐºÐ¸, Ð½Ð°Ñ…Ð¾Ð´ÑÑ‰ÐµÐ¹ÑÑ Ð² Ñ„Ð¾ÐºÑƒÑÐµ Ð¸ Ð½Ðµ Ð½Ð°Ñ…Ð¾Ð´ÑÑ‰ÐµÐ¹ÑÑ Ð² ÑÐ¾ÑÑ‚Ð¾ÑÐ½Ð¸Ð¸ checked */
/*.custom-radio>input:focus:not(:checked)+span::before {
  border-color: #80bdff;
}*/

/* ÑÑ‚Ð¸Ð»Ð¸ Ð´Ð»Ñ Ñ€Ð°Ð´Ð¸Ð¾ÐºÐ½Ð¾Ð¿ÐºÐ¸, Ð½Ð°Ñ…Ð¾Ð´ÑÑ‰ÐµÐ¹ÑÑ Ð² ÑÐ¾ÑÑ‚Ð¾ÑÐ½Ð¸Ð¸ checked */
.custom-radio>input:checked+span::before {
  border: 4px solid #fff;
  background-color: #cff54a;
  width: 21px;
  height: 21px;
  box-shadow: 0 0 0 1px #826464;
}

/* ÑÑ‚Ð¸Ð»Ð¸ Ð´Ð»Ñ Ñ€Ð°Ð´Ð¸Ð¾ÐºÐ½Ð¾Ð¿ÐºÐ¸, Ð½Ð°Ñ…Ð¾Ð´ÑÑ‰ÐµÐ¹ÑÑ Ð² ÑÐ¾ÑÑ‚Ð¾ÑÐ½Ð¸Ð¸ disabled */
/*.custom-radio>input:disabled+span::before {
  background-color: #cff54a;
}*/

.personal_data { width: 100%; margin-top: 0; margin-bottom: 50px;}
.personal_data span { min-width: 348px; margin-right: 20px; display: inline-block; vertical-align: middle;}
.personal_data input,
.personal_data textarea { 
	outline: none;
	padding: 0 20px;
	width: 350px;
	height: 50px;
	background-color: white;
	border: 1px solid #826464;
	border-radius: 25px;
	display: inline-block; vertical-align: middle;
}
.personal_data textarea { padding-top: 12px; resize: none;}

.personal_data hr { width: 100%; height: 10px; background: #f1f1f1; border: 0; margin: 50px 0;}

.item_step:last-child .custom-radio > input + span::before { position: relative; top: 9px;}

.btn_from { text-align: right;}
.btn_from #send_button {
	background-color: #cff54a;
	border-radius: 25px;
	color: black;
	font-size: 18px;
	font-weight: 600;
	line-height: 50px;
	text-transform: uppercase;
	padding: 0 34px;
	cursor:pointer;
}

.calc { width: 100%;}
.calc p span { padding-left: 11px;}
.bottom_form {
	display: flex;
	justify-content: space-between;
	align-items: center;
}
.item_step:nth-child(3) .item_wrap,
.item_step:nth-child(4) .item_wrap { display: flex; width: 100%; justify-content: space-between;}
.tarif_result{
	padding: 18px 13px 13px;
	background: rgba(207,245,74,0.3);
	border-radius: 9px;
	min-width:175px;
}
.tarif_result .th div,
.tarif_result .td div{
	min-width:175px;
}
.th {
	font-weight: bold;
}
.th,
.td {
	display: flex;
	font-size: 14px;
	line-height: 1.3;
	color: #000000;
	justify-content: space-between;
	align-items: center;
	text-align: center;
}
.th div,
.td div { 
	padding-left: 4px;
	padding-right: 4px;
	padding-bottom: 8px;
	width: 43%;
	min-width: 129px;
}

.payment,
.tariff { padding-left: 10px;}
.totla_result { 
	font-size: 20px;
	color: #000000;
	width: 413px;
	min-width: 413px;
	height: 140px;
	padding: 18px 13px 13px 30px;
	background: rgba(207,245,74,0.3);
	border-radius: 9px;
}
.totla_result p { margin: 0 0 15px;}
.file_upload { margin-bottom: 40px; margin-left: 40px; margin-top: -10px; color: #000; font-weight: bold; display: none;}

.calc_new .item_step { display: none;}
.calc_new .item_step:nth-child(1) { display: block;}

.hours input[type="button"] { color: green;}
.by_org { color: red !important;}
.min-max { font-size: 12px; padding-left: 0 !important; max-width: 240px; line-height: 1.2; display: block; padding-top: 2px;}
.lgoti {
	display: block;
	padding-left: 0 !important;
	font-size: 12px;
	line-height: 1.2;
	padding-top: 3px;
}
.tarif_result { top: -30px; position: relative;}
.tariff p { margin-bottom: 0;}
.th div, .td div { padding-bottom: 28px;}
.tariff { padding-top: 19px;}
@media screen and (max-width: 768px) {
	.time_ {
	  padding-left: 30px;
	}
	.payment, .tariff {
	  padding-left: 10px;
	  padding-right: 15px;
	}
	.bottom_form {
	  flex-direction: column;
	  margin-top: 15px;
	}
}

@media screen and (max-width: 480px) {
	.item_wrap { 
	  flex-direction: column;
	}
	.calendar, .date_nav { margin: 0 auto;}
	.d_title { text-align: center;}
	.time_ { padding-left: 0; text-align: center;}
	.time_ .d_title { margin-top: 20px;}
	.item_wrap .calc input { width: 100%;}
	.calc p span { padding-left: 0;}
	.totla_result { margin-bottom: 15px;}
	.item_step .title { font-size: 19px;}
	.item_wrap .calc p,
	.custom-radio { font-size: 15px;}
	.personal_data input, .personal_data textarea { width: 100%;}
	.personal_data span { min-width: 100%; margin-right: 0;}
	.bottom_form .custom-radio { font-size: 13px;}
	.personal_data hr { margin-bottom: 0;}
	.btn_from { margin-top: 20px;}
	.hours { font-size: 0;}
	.hours input[type="button"] { width: 72px; margin-left: 3px; margin-right: 3px; margin-bottom: 10px; height: 42px; line-height: 42px;}
	.item_step .title span { width: 40px; height: 40px; line-height: 40px;}
	.item_step .title ins { padding-left: 10px;}
}

@media screen and (max-width: 380px) {
	.totla_result {
	  width: 100%;
	  min-width: auto;
	}
	.th div, .td div { min-width: auto;}
	div.calendar .net,
	.calendar, .date_nav { width: 100%;}
	div.day_none, div.day_active, div.day_caption {
	  width: 13.6%;
	  height: 48px;
	}
}

div.personal_data p span{
    color:black;
}
.personal_data input.error{
	border:1px solid red;
}