body {
  display: flex;
  flex-direction: column;
  min-height: 100vh; /* Минимальная высота = 100% высоты окна просмотра */
}

footer {
  margin-top: auto; /* Прижимает футер к низу */
  padding-top:20px !important;
  padding-bottom:20px !important;  
}


.parent {
  display: flex;
  justify-content: center; /* Горизонтальное центрирование */
  align-items: center; /* Вертикальное центрирование */
  height: 100vh; /* Задайте высоту родителя, например, 100% высоты окна просмотра */
}

.pb-5 {padding-bottom: 5px;}
.pb-10 {padding-bottom: 10px;}
.pb-20 {padding-bottom: 20px;}

.mb-5 {margin-bottom: 5px;}
.mb-10 {margin-bottom: 10px;}
.mb-15 {margin-bottom: 15px;}
.mb-20 {margin-bottom: 20px;}
.mb-30 {margin-bottom: 30px;}
.mt-5 {margin-top: 5px;}
.mt-10 {margin-top: 10px;}
.mt-20 {margin-top: 20px;}


textarea {
  width: 100%;
  height: 300px;
}

/* Стили полей ввода */
textarea.textbox{

  border-radius:3px;
  border:rgba(212, 217, 212, 0.8) 2px solid;
  box-sizing:border-box;
  font-family: 'Open Sans', sans-serif;
  font-size:16px;
  color:rgba(54, 56, 59, 0.8);
  padding:10px;
  margin-bottom:10px;  
}

input {
  width: 100%;
  height: 30px;
}

input.textbox{

  border-radius:3px;
  border:rgba(212, 217, 212, 0.8) 2px solid;
  box-sizing:border-box;
  font-family: 'Open Sans', sans-serif;
  font-size:16px;
  color:rgba(54, 56, 59, 0.8);
  padding:24px;
  margin-bottom:30px;  
}

input.textbox-file{

  border-radius:3px;
  border:rgba(212, 217, 212, 0.8) 2px solid;
  box-sizing:border-box;
  font-family: 'Open Sans', sans-serif;
  font-size:16px;
  color:rgba(54, 56, 59, 0.8);
  padding-bottom: 34px;
  padding-top: 14px;
  padding-left: 24px;
  padding-right: 24px;
  margin-bottom:30px;
  background-color: rgba(247, 248, 248, 0.8);
  cursor: pointer;
}

.textbox:focus{
  outline:none;
   border:rgba(24,149,215,1) 2px solid;
   color:rgba(54, 56, 59, 0.8);
}

.red-star {color: red;}

small {
  font-size: 0.8em;
}

.button {
    background-color: #008CBA;
    border: none;
    color: white;
    padding: 15px 32px;
    text-align: center;
    text-decoration: none;
    display: inline-block;
    font-size: 14px;
    cursor: pointer;
}

.button:hover {
      box-shadow: 0 12px 16px 0 rgba(0,0,0,0.24), 0 17px 50px 0 rgba(0,0,0,0.19);

}  

.alert-success {

  background-color: #4CAF50; /* Green */
   padding: 24px;
   color: #FFF;
}

.alert-danger {
  background-color: #F2581B; 
   padding: 4px;
   color: #FFF;
   margin-bottom: 10px;
   border-radius: 5px;
}

.fc-warning{
  color: #494D49;
  background-color: #F2F21B;
  border-radius: 5px;
  padding: 1px;
}

.fc-success{
  color: #494D49;
  background-color: #D1E7DD;
  border-radius: 5px;
  padding: 1px;
}