*,
*:before,
*:after {
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
}
.df-alert {
  border-top-width: 1px;
  border-top-style: solid;
  border-bottom-width: 1px;
  border-bottom-style: solid;
  display: table;
  width: 100%;
}
.df-alert:before {
  content: '';
  background-position: center center;
  background-repeat: no-repeat;
  -webkit-background-size: 34px auto;
  -moz-background-size: 34px auto;
  background-size: 34px auto;
  display: table-cell;
  width: 44px;
  vertical-align: middle;
}
.df-button {
  position: relative;
  display: inline-block;
  border-width: 0;
  outline-width: 0;
  padding: 10px 22px;
  text-transform: uppercase;
  border-radius: 3px;
  background: #383838;
  color: #fff;
  font-size: 1em;
  font-weight: normal;
  -webkit-transition: background 0.2s;
  -moz-transition: background 0.2s;
  -o-transition: background 0.2s;
  -ms-transition: background 0.2s;
  transition: background 0.2s;
}
.df-button:hover {
  background: #000;
}
.df-button:active {
  top: 1px;
  left: 1px;
}
.df-button.clicked {
  background: #000;
  color: #000;
  font-size: 0 !important;
}
.df-button.clicked:after {
  content: '';
  position: absolute;
  top: 0;
  width: 100%;
  height: 100%;
  left: 0;
  background-image: url("images/df-button-clicked.svg");
  background-repeat: no-repeat;
  background-position: center center;
}
.df-comment {
  margin-bottom: -5px;
  color: #7e7e7e;
  font-size: 0.8em;
  font-weight: normal;
  font-style: italic;
}
.df-element {
  position: relative;
}
.df-field-error {
  display: none;
  padding: 3px 12px 5px;
  border-radius: 0 0 3px 3px;
  margin-right: 23px;
  line-height: 1.35em;
  color: #fff;
  font-size: 0.7em;
  font-weight: normal;
  background-color: #c74324;
  font-style: italic;
}
.has-error .df-field-error {
  display: table;
}
.df-field {
  position: relative;
}
.df-field:focus {
  outline-width: 0 !important;
}
textarea.df-field,
select.df-field,
input[type="text"].df-field,
input[type="password"].df-field,
input[type="email"].df-field,
input[type="number"].df-field,
input[type="search"].df-field,
input[type="tel"].df-field,
input[type="url"].df-field {
  border: 1px solid #ccc;
  outline-width: 0;
  border-radius: 3px;
  height: 32px;
  padding-left: 11px;
  padding-top: 1px;
  padding-bottom: 1px;
  margin: 0;
  width: 100%;
  display: block;
  color: #000;
  font-size: 0.95em;
  font-weight: 500;
}
textarea.df-field:focus,
select.df-field:focus,
input[type="text"].df-field:focus,
input[type="password"].df-field:focus,
input[type="email"].df-field:focus,
input[type="number"].df-field:focus,
input[type="search"].df-field:focus,
input[type="tel"].df-field:focus,
input[type="url"].df-field:focus {
  border-color: #000;
  border-width: 2px;
  padding-left: 10px;
  padding-top: 0;
  padding-bottom: 0;
}
.has-error textarea.df-field,
.has-error select.df-field,
.has-error input[type="text"].df-field,
.has-error input[type="password"].df-field,
.has-error input[type="email"].df-field,
.has-error input[type="number"].df-field,
.has-error input[type="search"].df-field,
.has-error input[type="tel"].df-field,
.has-error input[type="url"].df-field {
  border: 2px solid #c74324;
  padding-left: 10px;
  border-radius: 3px 3px 3px 0;
}
.df-form_type_global textarea.df-field,
.df-form_type_global select.df-field,
.df-form_type_global input[type="text"].df-field,
.df-form_type_global input[type="password"].df-field,
.df-form_type_global input[type="email"].df-field,
.df-form_type_global input[type="number"].df-field,
.df-form_type_global input[type="search"].df-field,
.df-form_type_global input[type="tel"].df-field,
.df-form_type_global input[type="url"].df-field {
  font-size: 1.05em;
  height: 36px;
}
textarea.df-field::placeholder,
select.df-field::placeholder,
input[type="text"].df-field::placeholder,
input[type="password"].df-field::placeholder,
input[type="email"].df-field::placeholder,
input[type="number"].df-field::placeholder,
input[type="search"].df-field::placeholder,
input[type="tel"].df-field::placeholder,
input[type="url"].df-field::placeholder {
  color: #d2d2d2;
  font-size: 1em;
  font-weight: lighter;
}
textarea.df-field:focus {
  padding-top: 2px;
}
select.df-field {
  padding-left: 7px;
}
input[type="file"].df-field {
  margin-bottom: 5px;
}
input[type="checkbox"].df-field,
input[type="radio"].df-field {
  vertical-align: baseline;
  position: relative;
  top: 1px;
}
textarea.df-field {
  height: auto;
  min-height: 75px;
  padding-top: 3px;
}
.df-files-panel {
  background: #f0f0f0;
  border-radius: 3px;
  position: relative;
  padding: 7px 35px 7px 13px;
  font-size: 0.85em;
  overflow: hidden;
}
.df-form {
  position: relative;
  margin: 0;
  padding: 0;
  color: #000;
  font-size: 15px;
  font-weight: normal;
}
.df-form__wrapper {
  position: relative;
}
.df-form__text {
  line-height: 1.4em;
  font-size: 0.95em;
}
.df-form__text:not(:empty) + * {
  margin-top: 30px;
}
.df-form__footer-link {
  margin-top: 20px;
  font-size: 13px;
  text-align: center;
}
.df-form__footer-link a {
  color: #383838;
}
.df-form__footer-link a:hover {
  color: #000;
}
.df-form__footer-link + .df-form__footer-link {
  margin-top: 7px;
}
.df-form__element {
  margin-bottom: 16px;
}
.df-form__element.df-element_mobile {
  margin-bottom: 12px;
}
.df-form__element:last-of-type {
  margin-bottom: 0;
}
.df-form__buttons {
  padding-left: 275px;
  margin-top: 26px;
}
.df-form_type_global .df-form__buttons {
  margin-top: 20px;
}
.df-form-mobile .df-form__buttons {
  padding-left: 0;
}
.df-form__buttons_align_right {
  padding-left: 0 !important;
  text-align: right;
}
.df-form__buttons_align_left {
  padding-left: 0 !important;
  text-align: left;
}
.df-form__buttons_align_center {
  padding-left: 0 !important;
  text-align: center;
}
.df-form__alert {
  margin-bottom: 20px;
}
.df-form_type_auth {
  margin: 0 auto;
  max-width: 600px;
}
.df-form_type_auth .df-form__wrapper {
  max-width: 350px;
  margin: 0 auto;
}
.df-label {
  display: block;
  margin: 0;
  color: #000;
  font-size: 1em;
  font-weight: normal;
}
.df-unit {
  position: relative;
}
.df-alert__wrapper {
  display: table-cell;
  vertical-align: middle;
  padding: 10px 10px 9px 15px;
  height: 65px;
}
.df-alert_success .df-alert__wrapper,
.df-alert_success .df-alert__wrapper * {
  color: #5b9e52 !important;
}
.df-alert_error .df-alert__wrapper,
.df-alert_error .df-alert__wrapper * {
  color: #c74324 !important;
}
.df-alert__wrapper > * {
  margin-top: 0 !important;
  margin-bottom: 0 !important;
}
.df-alert__wrapper,
.df-alert__wrapper * {
  font-size: 1.02em !important;
  font-weight: normal !important;
  line-height: 1.4em !important;
  font-style: italic !important;
}
.df-alert_error {
  border-top-color: #c74324;
  border-bottom-color: #c74324;
}
.df-alert_error:before {
  background-image: url("images/df-attention_red.svg");
}
.df-alert_success {
  border-top-color: #5b9e52;
  border-bottom-color: #5b9e52;
}
.df-alert_success:before {
  background-image: url("images/df-attention_green.svg");
}
.df-element__label {
  width: 275px;
  padding-right: 20px;
  float: left;
  z-index: 2;
  position: relative;
}
.df-element_textfield .df-element__label {
  padding-top: 3px;
}
.df-form-mobile .df-element__label,
.df-element_mobile .df-element__label {
  float: none;
  padding-right: 0;
  width: auto !important;
  padding-top: 0;
  text-align: left;
  margin-bottom: 5px;
}
.df-element__wrapper_unlabeled .df-element__label {
  display: none;
}
.df-element__unit {
  padding-left: 275px;
}
.df-form-mobile .df-element__unit,
.df-element_mobile .df-element__unit,
.df-element__wrapper_unlabeled .df-element__unit {
  padding-left: 0 !important;
}
.df-element__wrapper {
  display: block;
  zoom: 1;
}
.df-element__wrapper:before,
.df-element__wrapper:after {
  content: "";
  display: table;
}
.df-element__wrapper:after {
  clear: both;
}
.df-element_display_none {
  display: none;
}
.df-element_textfield-custom {
  margin-top: 3px;
  margin-bottom: 4px;
}
.df-field-error_type_group {
  border-radius: 3px;
  margin-top: 3px;
  padding-top: 5px;
}
.df-field__label {
  padding-left: 10px;
}
input[type="checkbox"]:checked + .df-field__label,
input[type="radio"]:checked + .df-field__label {
  font-weight: 500;
}
.df-files-panel__file {
  overflow: hidden;
  -o-text-overflow: ellipsis;
  text-overflow: ellipsis;
  white-space: nowrap;
}
.df-files-panel__remove {
  background: #383838;
  position: absolute;
  top: 0;
  right: 0;
  width: 28px;
  height: 100%;
  cursor: pointer;
}
.df-files-panel__remove:after {
  content: '';
  position: absolute;
  margin-left: -6.5px;
  top: 9.5px;
  left: 50%;
  width: 13px;
  height: 13px;
  background-image: url("images/df-cross.svg");
  -webkit-transition: -webkit-transform 0.3s;
  -moz-transition: -moz-transform 0.3s;
  -o-transition: -o-transform 0.3s;
  -ms-transition: -ms-transform 0.3s;
  transition: transform 0.3s;
}
.df-files-panel__remove:hover {
  background: #000;
}
.df-files-panel__remove:hover:after {
  -webkit-transform: rotate(180deg);
  -moz-transform: rotate(180deg);
  -o-transform: rotate(180deg);
  -ms-transform: rotate(180deg);
  transform: rotate(180deg);
}
.df-label_allied {
  color: #000;
  font-size: 0.95em;
  font-weight: normal;
  margin-bottom: 3px;
}
.df-label_allied:last-of-type {
  margin-bottom: 0;
}
.df-unit__checkboxes > *:last-of-type {
  margin-bottom: 0;
}
.df-unit__radios > *:last-of-type {
  margin-bottom: 0;
}
.df-element__label_align_center {
  text-align: center !important;
}
.df-element__label_align_left {
  text-align: left;
}
.df-element__label_align_right {
  text-align: right;
}
.df-element__unit_type_sub-unit {
  padding-left: 0 !important;
}
