.psf_form,
.input_checkbox {
   width: 100%;
   position: relative;
   display: -webkit-box;
   display: -ms-flexbox;
   display: flex;
   -ms-flex-wrap: wrap;
   flex-wrap: wrap;
}

.psf_form_field,
.psf_form_field input,
.psf_form_field textarea,
.psf_form_field select {
   width: 100%;
   position: relative;
   display: block;
   box-shadow: none;
   outline: none;
}

.psf_form_field input,
.psf_form_field textarea,
.psf_form_field select {
   background-color: #f2f2f2;
   border: 1px solid #e6e6e6;
   border-radius: 5px;
   width: 100%;
   padding: 10px 20px;
   margin-bottom: 10px;
   font-size: 19px;
   color: #414141;
}

.psf_form label.error {
   color: red;
   font-size: 14px;
   line-height: 1;
}

.psf_form_field,
.button_form {
   position: relative;
   flex: 0 0 100%;
   max-width: 100%;
   padding: 0 15px;
}

.psf_form_field.half,
.psf_form_field .div_label {
   flex: 0 0 50%;
   max-width: 50%;
}

.psf_form_field .div_label label {
   margin: 0;
   position: relative;
   z-index: 2;
   cursor: pointer;
   display: -webkit-box;
   display: -ms-flexbox;
   display: flex;
   -webkit-box-align: center;
   -ms-flex-align: center;
   align-items: center;
}

.form_field_input.input_checkbox input {
   height: 22px;
   width: 22px;
}

.button_form button {
   width: 100%;
   background-image: -webkit-gradient(linear, left bottom, right top, from(#00a6a6), to(#e04426));
   background-image: -o-linear-gradient(left bottom, #00a6a6, #e04426);
   background-image: linear-gradient(to right top, #00a6a6, #e04426);
   border: 0 solid transparent !important;
   border-radius: 30px;
   padding: 10px 20px;
   color: #fff;
   text-transform: uppercase;
   font-size: 16px;
   font-weight: 700;
   overflow: hidden;
   position: relative;
}

#psf_dropzone {
   display: -webkit-box;
   display: -ms-flexbox;
   display: flex;
   -ms-flex-wrap: wrap;
   flex-wrap: wrap;
   position: relative;
}

.dz-message {
   flex: 0 0 100%;
   max-width: 100%;
   height: 200px;
   background: #f1f1f1;
   display: -webkit-box;
   display: -ms-flexbox;
   display: flex;
   -webkit-box-align: center;
   -ms-flex-align: center;
   align-items: center;
   -webkit-box-pack: center;
   -ms-flex-pack: center;
   justify-content: center;
   border-radius: 4px;
}

.dz-message .error-size {
   margin: 0;
}

.psf-preview-file {
   position: absolute;
   width: 100%;
   text-align: center;
   pointer-events: none;
}

.psf-preview-file img {
   max-height: 200px;
}

/*.psf_button {
   position: relative;
   display: -webkit-box;
   display: -ms-flexbox;
   display: flex;
   width: 228px;
   margin: 0 15px;
   cursor: pointer;
   -webkit-box-align: center;
   -ms-flex-align: center;
   align-items: center;
   -webkit-box-pack: center;
   -ms-flex-pack: center;
   justify-content: center;
   padding: 10px 25px;
   line-height: 1;
   text-transform: uppercase;
   border-radius: 25px;
   text-decoration: none;
   font-size: 15px;
   color: #fff;
   background: #e04426;
   background-image: -webkit-gradient(linear, left bottom, right top, from(#00a6a6), to(#e04426));
   background-image: -o-linear-gradient(left bottom, #00a6a6, #e04426);
   background-image: linear-gradient(to right top, #00a6a6, #e04426);
}*/

.psf_button svg {
   width: 18px;
   margin-left: 10px;
   fill: #fff;
}

.psf_button:hover {
   text-decoration: none;
}

.psf_content_front {
   padding: 0 15px 30px 15px;
}

.psf_loader {
   display: none;
   position: absolute;
   height: 100%;
   z-index: 20;
   left: 15px;
   top: 0;
   right: 15px;
   background-image: -webkit-gradient(linear, left bottom, right top, from(#00a6a6), to(#e04426));
   background-image: -o-linear-gradient(left bottom, #00a6a6, #e04426);
   background-image: linear-gradient(to right top, #00a6a6, #e04426);
   border-radius: 30px;
}

.psf_loader .psf_loader_inner {
   position: absolute;
   left: 50%;
   top: 50%;
   content: "";
   width: 30px;
   height: 30px;
   border-radius: 50%;
   -webkit-transform: translate(-50%, -50%);
   transform: translate(-50%, -50%);
}

.psf_loader .psf_loader_inner::after,
.psf_loader .psf_loader_inner::before {
   position: absolute;
   left: 0;
   top: 0;
   content: "";
   width: 100%;
   height: 100%;
   border-radius: 50%;
}

.psf_loader .psf_loader_inner::after {
   border: 3px solid transparent;
   -webkit-transform: translateZ(0);
   transform: translateZ(0);
   -webkit-animation: rotatefull 0.7s infinite linear;
   animation: rotatefull 0.7s infinite linear;
}

.psf_loader .psf_loader_inner::before {
   border: 3px solid #fff;
}

.psf_loader .psf_loader_inner::after {
   border-left: 3px solid #00a6a6;
}

@-webkit-keyframes rotatefull {
   0% {
      -webkit-transform: rotate(0deg);
      transform: rotate(0deg);
   }

   100% {
      -webkit-transform: rotate(360deg);
      transform: rotate(360deg);
   }
}

@keyframes rotatefull {
   0% {
      -webkit-transform: rotate(0deg);
      transform: rotate(0deg);
   }

   100% {
      -webkit-transform: rotate(360deg);
      transform: rotate(360deg);
   }
}

@media (min-width: 576px) {
   .psf_modal .modal-dialog {
      max-width: 700px;
   }
}

@media (max-width: 575px) {

   .psf_form_field.half,
   .psf_form_field .div_label {
      flex: 0 0 100%;
      max-width: 100%;
   }
}