body {
font-size: 1.1rem;
background-color: transparent;  
}
.jumbotron {
  background-color: #eee;
}
.top {
  padding-top: 5px;
}
.header {
  padding-top: 1rem;
}
.header .logo {
  padding-top: 5px;
}
.header .title {
  color: #003366;
  margin-top: 15px;
  text-transform: uppercase;
}
.header .logo-right {
  text-align: right;
}
.header .logo-right img {
  max-width: 180px;
  padding-top: 10px;
}
.main.smartreg {
  margin-top: 1rem;
}
.main .main-inner .jumbotron p {
  font-size: 1rem;
}
.main .main-inner .jumbotron p.pretext {
  font-size: 1rem;
}
.main .main-inner .jumbotron .alert {
  font-size: 1rem;
}
.main .main-inner form {
  font-size: 1rem;
}
.main .main-inner .jumbotron p.mini-text {
  margin: 0;
  text-align: left;
  font-size: 14px;
}
hr {
  border-top-color: #ddd;
}
.custom-control-indicator {
  background-color: #fff;
  /* margin-top:-3px; */
  margin-top:0; /* ++Roman 08.11.2023 */
}
.color-success .custom-control-input:active ~ .custom-control-indicator {
  background-color: #218838;
}
.color-success .custom-control-input:checked ~ .custom-control-indicator {
  background-color: #218838;
}
.color-success .custom-control-input:focus ~ .custom-control-indicator {
  box-shadow: 0 0 0 1px #ffffff, 0 0 0 0.2rem rgba(52, 223, 90, 0.25);
}
.color-danger .custom-control-input:active ~ .custom-control-indicator {
  background-color: #dc3545;
}
.color-danger .custom-control-input:checked ~ .custom-control-indicator {
  background-color: #dc3545;
}
.color-danger .custom-control-input:focus ~ .custom-control-indicator {
  box-shadow: 0 0 0 1px #ffffff, 0 0 0 0.2rem rgba(220, 53, 69, 0.25);
}
p.suberror {
  color: #333;
  font-size: 14px;
  margin-top: 7px;
}
textarea {
  resize: vertical;
}
.form-horizontal label,
.form-horizontal legend {
  font-weight: 600;
}
.form-horizontal .custom-control {
  font-weight: normal;
}
.form-horizontal select {
  width: 100%;
}
.form-horizontal .form-group.row span.sublegend {
  font-size: 0.75rem;
  display: block;
}
.div-label {
  font-weight: 700;
}
.bootstrap-select {
  max-width: 536px;
  margin-top: 6px;
}
.bootstrap-select .dropdown-menu > li > a {
  white-space: normal;
  padding-top: 5px;
  padding-bottom: 5px;
}
#alertBottom {
  margin-top: 2rem;
}
#alertBottom .b-info-text {
  padding-right: 1rem;
}
.company_req {
  display: none;
}
.inp_ext {
  margin-top: 0.5rem;
  display: none;
}
.jumbotron {
  color: #000;
}
.jumbotron,
.container .jumbotron {
  margin: 0;
  padding: 20px 30px;
}
@media screen and (max-width: 768px) {
  .logo {
    text-align: center;
    margin-bottom: 20px;
  }
  .logo-right {
    text-align: center!important;
  }
  .but-left,
  .but-right {
    text-align: center!important;
  }
  .but-left {
    margin-bottom: 15px;
  }
  .b-info-block {
    justify-content: center;
  }
  .b-info-block .b-info-text {
    padding-bottom: 0.5rem;
    text-align: center;
  }
}
.resend_b button {margin: 5px 0}
.darkblue.btn-primary {background-color:#0065a4;border-color:#0065a4}
.darkblue.btn-primary:hover {background-color:#004976;border-color:#004976}
.darkblue .custom-control-input:active ~ .custom-control-indicator {background-color:#0065a4}
.darkblue .custom-control-input:checked ~ .custom-control-indicator {background-color:#0065a4}
.darkblue .custom-control-input:focus ~ .custom-control-indicator {box-shadow: 0 0 0 1px #ffffff, 0 0 0 0.2rem rgba(0, 101, 164, 0.25)}

.purple.btn-danger {background-color:#800080;border-color:#800080}
.purple.btn-danger:hover {background-color: #660066;border-color:#660066}
.purple .custom-control-input:active ~ .custom-control-indicator {background-color:#800080}
.purple .custom-control-input:checked ~ .custom-control-indicator {background-color:#800080}
.purple .custom-control-input:focus ~ .custom-control-indicator {box-shadow: 0 0 0 1px #ffffff, 0 0 0 0.2rem rgba(204, 0, 204, 0.25)}

.black.btn-dark {background-color:#000;border-color:#000;border-radius:0}
.black.btn-dark:hover {background-color:#FFF;border-color:#FFF;color:#000}
.black .custom-control-input:active ~ .custom-control-indicator {background-color:#000}
.black .custom-control-input:checked ~ .custom-control-indicator {background-color:#000}
.black .custom-control-input:focus ~ .custom-control-indicator {box-shadow: 0 0 0 1px #ffffff, 0 0 0 0.2rem rgba(0, 101, 164, 0.25)}

.form-group {
  margin-bottom: 1.5rem;
}
.form-group .col-form-label,
.form-group .col-form-legend {
  padding-top: 0;
}
.div_anket .cancel_ans {
  font-size: 70%;
  display: none;
  position: absolute;
  right: 20px;
  top: -10px;
}
.div_anket.ank_active .cancel_ans {
  display: block;
}

.phone_mask_lbl {font-size: 13px;line-height: 16px;font-weight: normal !important;color:#495057}
.phone_mask_inp {margin:5px 5px 0 0;display:inline}
.mobile_mask {max-width:180px;}
.phone_mask {max-width:280px;}

#rating {}
#rating div { float: left; }
#rating p { margin: 0; padding: 0; width:0}
.param {width: 110px;margin: 0 20px 0 0;text-align: right}
.param, .rating, #summ {line-height: 28px}
.stars, #sum_stars {background: url(../img/stars.png)}
.stars, #sum_stars, .stprogress, #sum_progress {width: 130px;height: 28px;cursor: pointer}
.stprogress {background: #FFEE00;}
#sum_progress {background: #00EE00;}
.rating, #summ {margin: 0 0 0 20px;font-weight: bold;}
.input_rating{2px 0 2px 15px;border: none;background-color: transparent !important;font-weight:800;width:40px}

@media (max-width: 767px) {
	.stars, #sum_stars {background: url(../img/stars-sm.png)}
	.stars, #sum_stars, .stprogress, #sum_progress {width: 228px;height: 49px}
}

#drop-files{border:1px solid gray;border-radius:5px; padding:5px}
.date-min-height{min-height: 38px;}

.custom-control-description-header{padding-bottom:10px;text-decoration:underline}
.custom-control-description-header h5 {margin-left:0}


/* ++Roman убирает увеличение экрана при фокусе на мобильном */
@media screen and (max-width: 767px) {
  input, select {
    font-size: 16px !important;
  }
}

/* ++Roman 04.04.2022 Стилизация select2 */
.select2-selection--single .select2-selection__rendered {
  line-height: 35px !important;
}

.select2-container .select2-selection--single {
  height: 38px !important;
}.select2-container .select2-selection--multiple {
  min-height: 38px !important;
}
.select2-selection__arrow {
  height: 37px !important;
}
.select2-container--default .select2-selection--multiple .select2-search__field {
  font-family: var(--font-family-sans-serif);
}
.select2-selection--multiple textarea.select2-search__field::placeholder {
  color: #999;
}
.select2-container--default .select2-selection--single,
.select2-container--default .select2-selection--multiple,
.select2-dropdown {
  border-color: #ced4da;
}

.select2-container--default .select2-selection--multiple .select2-selection__choice__display {
  padding-left: 5px;
  padding-right: 2px;
}
.select2-container--default .select2-selection--multiple .select2-selection__choice {
  border: 1px solid #e4e4e4;
  padding: 0 20px 0 0;
}
.select2-container--default .select2-selection--multiple .select2-selection__choice__remove {
  border: none;
  left: auto;
  right: 0;
}
/* endRoman 04.04.2022 */

.wrap-general-invalid {justify-content: flex-end; flex-wrap: wrap;}
#general-invalid-feedback{margin: auto;} /* ++Roman 22.04.2022 дублирование ошибки рядом с submit */
@media screen and (max-width: 600px) {
    .wrap-general-invalid {flex-direction: column;align-items: center;}
    .wrap-general-invalid #general-invalid-feedback{margin-bottom: 1.5rem;}
}
label.confirm-format-one{margin: 0;min-height: 1.5rem;padding-left: 1rem;} /* ++Roman 09.06.22 формат подтверждения */

/* ++ modalCheckDataForm */
#modalCheckDataForm .form-group.row span.sublegend{display: none;}
#modalCheckDataForm .form-group.row .col{font-weight: 600;}
#modalCheckDataForm .modal-body{font-size: 0.9rem;padding: 20px 30px;}
#modalCheckDataForm .modal-body label,#modalCheckDataForm .modal-body legend{color:gray}
#modalCheckDataForm .modal-body .form-group{margin-bottom: 0.6rem;}
/* -- modalCheckDataForm */

.grecaptcha-badge{display: none;}
.btn:hover{cursor: pointer;}

select.custom-select.is-invalid + .select2-container .select2-selection.select2-selection--single,
select.custom-select.is-invalid + .select2-container .select2-selection.select2-selection--multiple {
  border-color: #dc3545;
}


/* validate mobilephone */

#buttonConfirmNumber {
  margin-left: 15px;
  color: #FFF !important;
}

#checkCodeConfirm {
  margin-left: 15px;
  color: #FFF !important;
}

#sendCodeAgain {
  margin-left: 15px;
  color: #FFF !important;
}

#sendCodeAgain.disabled {
  pointer-events: none;
  background-color: #ccc;
  border-color: #ccc;
  color: #000 !important;
}

#changeNumber {
  margin-left: 15px;
  color: #FFF !important;
}

@media screen and (max-width: 786px) {
  #buttonConfirmNumber {
    margin-left: 0;
    margin-top: 15px;
  }

  #sendCodeAgain {
    margin-left: 0;
    margin-top: 15px;
  }

  #changeNumber {
    margin-left: 0;
    margin-top: 15px;
  }
}

/* ++Roman 08.11.2023 стрелки в древовидном инпуте */
span.custom-control-indicator-hasChild::before {
    content: "\00BB";
    font-size: 28px;
    position: absolute;
    background-repeat: no-repeat;
    background-size: contain;
    left: 0px;
    top: -12px;
    transition: .2s;
    color:black;
}
.custom-control-input:checked~span.custom-control-indicator-hasChild::before {
    left: 6px;
    top: -8px;
    transform: rotate(90deg);
    color:#4a4a4a;
}
/* end Roman 08.11.2023 */
.inp-confirm .col .small {margin-top: 0.2rem;}


/* ++Enikeev 30.09.2024 Photo Crop */
.photo-box {
  margin-top: 25px;
  display: flex;
}
.photo-crop {
  max-width: calc(60% - 20px);
  margin-right: 20px;
  display: inline-block;
}
.photo-crop>img {
  width: 100%;
  max-width: 450px;
  box-sizing: border-box;
  margin-top: 25px;
}
.photo-crop .cropper-container {
  border-radius: 5px !important;
  overflow: hidden;
}
.photo-prev {
  max-width: 40%;
  display: inline-block;
}
.photo-prev .img-preview {
  overflow: hidden;
  text-align: center;
  width: 100%;
  margin-bottom: 20px;
  border: 1px solid #ddd;
}
.photo-prev .img-preview.img-preview-sm {
  width: 150px;
  height: 200px;
}

@media screen and (max-width: 992px){
  .photo-box {
    display: block;
  }
  .photo-crop {
    max-width: 100%;
    margin-right: 0;
  }
  .photo-prev {
    max-width: 80%;
  }
}

/* end Enikeev 30.09.2024 */

/* ++Enikeev 09.10.2024 Files view */
.img-preview-sm {
  max-width: 150px;
  max-height: 150px;
  margin-left: 20px;
}
/* end 09.10.2024 */

/* ++ Volkov 24.04.2026 Step Registration */
@media (min-width: 576px) {
    .w-sm-auto { width: auto !important; }
}