.form-element {
    height: auto;
    width: 100%;
    margin: 0;
    position: relative;; }
    .form-element .form-element-label {
      display: block; }
    .form-element input[type="text"],
    .form-element input[type="radio"],
    .form-element input[type="checkbox"],
    .form-element input[type="password"],
    .form-element input[type="email"],
    .form-element input[type="submit"] {
      height: 36px;
      width: 100%;
      border-radius: 2px;
      color: #454545;
      display: block;
      border: 1px solid #ccc;
      padding: 0 12px 0;
      background-color: #eee;
      -webkit-appearance: none;
      -moz-appearance: none;
      -ms-appearance: none;
      -o-appearance: none;
      appearance: none; }
      .form-element input[type="text"] :-moz-placeholder,
      .form-element input[type="radio"] :-moz-placeholder,
      .form-element input[type="checkbox"] :-moz-placeholder,
      .form-element input[type="password"] :-moz-placeholder,
      .form-element input[type="email"] :-moz-placeholder,
      .form-element input[type="submit"] :-moz-placeholder {
        color: #858585; }
      .form-element input[type="text"] ::-webkit-input-placeholder,
      .form-element input[type="radio"] ::-webkit-input-placeholder,
      .form-element input[type="checkbox"] ::-webkit-input-placeholder,
      .form-element input[type="password"] ::-webkit-input-placeholder,
      .form-element input[type="email"] ::-webkit-input-placeholder,
      .form-element input[type="submit"] ::-webkit-input-placeholder {
        color: #858585; }
    .form-element select {
      height: 36px;
      width: 100%;
      border-radius: 2px;
      color: #454545;
      border: 1px solid #ccc;
      padding-left: 10px;
      padding-right: 20px;
      margin: 0 0 0;
      background-color: #eee;
      -webkit-appearance: none;
      -moz-appearance: none;
      -ms-appearance: none;
      -o-appearance: none;
      appearance: none; }
    .form-element textarea {
      border: 1px solid #ccc;
      border-radius: 2px;
      height: 110px;
      width: 100%;
      padding: 6px 12px;
      resize: vertical;
      background-color: #eee;
      -webkit-appearance: none;
      -moz-appearance: none;
      -ms-appearance: none;
      -o-appearance: none;
      appearance: none; }
      .form-element textarea :-moz-placeholder {
        color: #858585; }
      .form-element textarea ::-webkit-input-placeholder {
        color: #858585; }
    .form-element input, .form-element textarea, .form-element select {
      transition: background-color 0.1s ease, border-color 0.1s ease;
      -webkit-transition: background-color 0.1s ease, border-color 0.1s ease;
      -moz-transition: background-color 0.1s ease, border-color 0.1s ease;
      -ms-transition: background-color 0.1s ease, border-color 0.1s ease;
      -o-transition: background-color 0.1s ease, border-color 0.1s ease; }
      .form-element input:focus, .form-element textarea:focus, .form-element select:focus {
        background-color: #f6f6f6;
        border-color: #bfbfbf;
        outline: none; }
    .form-element input[type="radio"] {
      display: none; }
      .form-element input[type="radio"].error :-moz-placeholder {
        color: red; }
      .form-element input[type="radio"].error ::-webkit-input-placeholder {
        color: red; }
    .form-element input[type="radio"] ~ span.radio-btn {
      background-color: #eee;
      border: 1px solid #ccc;
      vertical-align: middle;
      display: inline-block;
      margin: 0 5px 0 0;
      position: relative;
      border-radius: 20px;
      -webkit-border-radius: 20px;
      -moz-border-radius: 20px;
      height: 20px;
      width: 20px; }
      .form-element input[type="radio"] ~ span.radio-btn:before {
        background: #666;
        content: "";
        position: absolute;
        top: 50%;
        left: 50%;
        transform: translate(-50%, -50%);
        -webkit-transform: translate(-50%, -50%);
        -moz-transform: translate(-50%, -50%);
        -ms-transform: translate(-50%, -50%);
        -o-transform: translate(-50%, -50%);
        border-radius: 10px;
        -webkit-border-radius: 10px;
        -moz-border-radius: 10px;
        height: 10px;
        width: 10px;
        transform-origin: 50% 50%;
        -webkit-transform-origin: 50% 50%;
        -moz-transform-origin: 50% 50%;
        -ms-transform-origin: 50% 50%;
        -o-transform-origin: 50% 50%;
        transform: translate(-50%, -50%) scale(0);
        -webkit-transform: translate(-50%, -50%) scale(0);
        -moz-transform: translate(-50%, -50%) scale(0);
        -ms-transform: translate(-50%, -50%) scale(0);
        -o-transform: translate(-50%, -50%) scale(0);
        transition: all 0.1s ease;
        -webkit-transition: all 0.1s ease;
        -moz-transition: all 0.1s ease;
        -ms-transition: all 0.1s ease;
        -o-transition: all 0.1s ease; }
    .form-element input[type="radio"] ~ span.text {
      margin: 0 10px 0 0;
      vertical-align: middle; }
    .form-element input[type="radio"]:checked ~ span.radio-btn:before {
      transform: translate(-50%, -50%) scale(1);
      -webkit-transform: translate(-50%, -50%) scale(1);
      -moz-transform: translate(-50%, -50%) scale(1);
      -ms-transform: translate(-50%, -50%) scale(1);
      -o-transform: translate(-50%, -50%) scale(1); }
    .form-element input[type="radio"].custom-radio {
      display: none; }
    .form-element input[type="radio"].custom-radio ~ span.text {
      vertical-align: middle; }
    .form-element input[type="radio"].custom-radio ~ span.radio-btn {
      vertical-align: middle;
      display: inline-block;
      margin: 0 14px 0 0; }
    .form-element input[type="checkbox"].custom-checkbox {
      margin: 0;
      opacity: 0;
      padding: 0;
      position: absolute;
      height: 0;
      width: 0; }
      .form-element input[type="checkbox"].custom-checkbox:focus + label span.checkbox-btn {
        background-color: #f6f6f6;
        border-color: #bfbfbf; }
    .form-element input[type="checkbox"].custom-checkbox ~ span.text {
      vertical-align: middle; }
    .form-element input[type="checkbox"].custom-checkbox ~ span.checkbox-btn {
      border-radius: 2px;
      background-color: #eee;
      border: 2px solid #818181;
      vertical-align: middle;
      display: inline-block;
      margin: 0 8px 0 0;
      position: relative;
      height: 12px;
      width: 12px; }
      .form-element input[type="checkbox"].custom-checkbox ~ span.checkbox-btn svg {
        position: absolute;
        top: 50%;
        left: 50%;
        transform: translate(-50%, -50%);
        -webkit-transform: translate(-50%, -50%);
        -moz-transform: translate(-50%, -50%);
        -ms-transform: translate(-50%, -50%);
        -o-transform: translate(-50%, -50%);
        height: 14px;
        width: 14px; }
        .form-element input[type="checkbox"].custom-checkbox ~ span.checkbox-btn svg path {
          fill: #f0f5f8;
          transform-origin: 50% 50%;
          -webkit-transform-origin: 50% 50%;
          -moz-transform-origin: 50% 50%;
          -ms-transform-origin: 50% 50%;
          -o-transform-origin: 50% 50%;
          transform: scale(0);
          -webkit-transform: scale(0);
          -moz-transform: scale(0);
          -ms-transform: scale(0);
          -o-transform: scale(0);
          transition: all 0.1s ease;
          -webkit-transition: all 0.1s ease;
          -moz-transition: all 0.1s ease;
          -ms-transition: all 0.1s ease;
          -o-transition: all 0.1s ease; }
    .form-element input[type="checkbox"].custom-checkbox:checked ~ span.checkbox-btn svg path {
      transform: scale(1);
      -webkit-transform: scale(1);
      -moz-transform: scale(1);
      -ms-transform: scale(1);
      -o-transform: scale(1); }
    .form-element input[type="checkbox"].custom-checkbox:checked ~ span.checkbox-btn{
    background: #818181;;
      }
    .form-element .form-element-dropdown {
      position: relative;
      font: 16px 'barlowsemiregular', Arial, sans-serif; }
      .form-element .form-element-dropdown.active a {
    border-radius: 4px 4px 0 0;
    border-bottom: 0;
    box-shadow: 0 0px 0px 0 rgba(0, 0, 0, 0.28);
    z-index: 10;
    position: relative;
    border-color: #8d928f;;;;; }
      .form-element .form-element-dropdown.active ul {
        display: block;
        border-top: 0;
        box-shadow: 0 1px 4px 0 rgba(0, 0, 0, 0.18);
        border-color: #9a9e9c;; }
      .form-element .form-element-dropdown a {
        height: 40px;
        width: 100%;
        border-radius: 4px;
        color: #727272;
        cursor: pointer;;
        display: inline-block;
        border: 1px solid #afb1b0;
        padding-left: 15px;
        padding-right: 20px;
        line-height: 38px;
        position: relative;
        text-decoration: none;
        background-color: #fff;
        transition: background-color 0.1s ease, border-color 0.1s ease;
        -webkit-transition: background-color 0.1s ease, border-color 0.1s ease;
        -moz-transition: background-color 0.1s ease, border-color 0.1s ease;
        -ms-transition: background-color 0.1s ease, border-color 0.1s ease;
        -o-transition: background-color 0.1s ease, border-color 0.1s ease; 
        -webkit-box-sizing: border-box;
        -moz-box-sizing: border-box;
        box-sizing: border-box;
        outline: none;; }
        .form-element .form-element-dropdown a:after {
          border-top-color: #666;
          content: "";
          margin-top: -2px;
          position: absolute;
          right: 15px;
          top: 50%;
          height: 14px;;
          width: 14px;;
          background: url(../images/icon-arrow-select.png) left top no-repeat;
          display: inline-block;;; }
        .form-element .form-element-dropdown.active a:after{
          -webkit-transform: rotate(180deg);
          -ms-transform: rotate(180deg);
          -o-transform: rotate(180deg);
          transform: rotate(180deg);
          top: 27%;
        }
      .form-element .form-element-dropdown ul {
        background-color: #fff;
        border: 1px solid #c1c4c4;
        border-radius: 2px;
        display: none;
        left: 0;
        list-style: none;
        margin: 0;
        min-width: 100%;
        overflow-y: auto;
        padding: 14px 0 15px;
        position: absolute;
        top: 82%;
        z-index: 1;
        -webkit-box-sizing: border-box;
         -moz-box-sizing: border-box;
         box-sizing: border-box;
        color: #727272;
        line-height: 33px;
        height: inherit!important;;; }
        .form-element .form-element-dropdown ul li {
          padding: 0 15px;
          cursor: pointer;; }
          .form-element .form-element-dropdown ul li:hover {
            background-color: #f6f6f6; }
          .form-element .form-element-dropdown ul li.selected {
            display: none; }
    .form-element input[type="file"].input-file-hidden {
      width: 0.1px;
      height: 0.1px;
      opacity: 0;
      overflow: hidden;
      position: absolute;
      z-index: -1; }
    .form-element input[type="file"] + .form-element-inputfile {
      height: 36px;
      width: 100%;
      border-radius: 2px;
      cursor: pointer;
      color: #454545;
      display: block;
      line-height: 34px;
      border: 1px solid #ccc;
      padding: 0 12px 0 36px;
      position: relative;
      background-color: #eee;
      -webkit-appearance: none;
      -moz-appearance: none;
      -ms-appearance: none;
      -o-appearance: none;
      appearance: none;
      font-family: 'Open Sans', sans-serif;
      font-size: 14px;
      font-weight: 400;
      line-height: 36px; }
      .form-element input[type="file"] + .form-element-inputfile:before {
        background: transparent url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAEgAAABICAYAAABV7bNHAAAAGXRFWHRTb2Z0d2FyZQBBZG9iZSBJbWFnZVJlYWR5ccllPAAAAyhpVFh0WE1MOmNvbS5hZG9iZS54bXAAAAAAADw/eHBhY2tldCBiZWdpbj0i77u/IiBpZD0iVzVNME1wQ2VoaUh6cmVTek5UY3prYzlkIj8+IDx4OnhtcG1ldGEgeG1sbnM6eD0iYWRvYmU6bnM6bWV0YS8iIHg6eG1wdGs9IkFkb2JlIFhNUCBDb3JlIDUuNi1jMTM4IDc5LjE1OTgyNCwgMjAxNi8wOS8xNC0wMTowOTowMSAgICAgICAgIj4gPHJkZjpSREYgeG1sbnM6cmRmPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5LzAyLzIyLXJkZi1zeW50YXgtbnMjIj4gPHJkZjpEZXNjcmlwdGlvbiByZGY6YWJvdXQ9IiIgeG1sbnM6eG1wPSJodHRwOi8vbnMuYWRvYmUuY29tL3hhcC8xLjAvIiB4bWxuczp4bXBNTT0iaHR0cDovL25zLmFkb2JlLmNvbS94YXAvMS4wL21tLyIgeG1sbnM6c3RSZWY9Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC9zVHlwZS9SZXNvdXJjZVJlZiMiIHhtcDpDcmVhdG9yVG9vbD0iQWRvYmUgUGhvdG9zaG9wIENDIDIwMTcgKE1hY2ludG9zaCkiIHhtcE1NOkluc3RhbmNlSUQ9InhtcC5paWQ6ODdGQUFDOTI4MEZCMTFFN0FGNjk5QzI1NzJBREMzRjIiIHhtcE1NOkRvY3VtZW50SUQ9InhtcC5kaWQ6ODdGQUFDOTM4MEZCMTFFN0FGNjk5QzI1NzJBREMzRjIiPiA8eG1wTU06RGVyaXZlZEZyb20gc3RSZWY6aW5zdGFuY2VJRD0ieG1wLmlpZDo4N0ZBQUM5MDgwRkIxMUU3QUY2OTlDMjU3MkFEQzNGMiIgc3RSZWY6ZG9jdW1lbnRJRD0ieG1wLmRpZDo4N0ZBQUM5MTgwRkIxMUU3QUY2OTlDMjU3MkFEQzNGMiIvPiA8L3JkZjpEZXNjcmlwdGlvbj4gPC9yZGY6UkRGPiA8L3g6eG1wbWV0YT4gPD94cGFja2V0IGVuZD0iciI/PhhTqOIAAAKySURBVHja7JpPSJRBGMbX0tCDhPgHybOipGaglomIFwU9Ch3Di25EdCjyqnXoIh5EolY6dE2EDnrwz030IiJKB4VKDx6sQM1CChPW54VX+PhwW3e+71vnW58HHoYdvpmd/e3MO+/MblY8Ho9QiXWFCAiIgAiIgAiIgAiIgCgCIiACIiACIiACIiCKgAiIgAiIgEKh7IseQDQadVeVwrXwdVh+k9qG1+C/Z7WPxWKZDcihBrgHboOrHPW/4U/wR/gd/POyLbFceAxegh+54Ijy4XvwEPwZfnhpAGF5laBYhnvP2aQIfgO/zXhAgCPLewG+adIcHsn0GfQeLvfQ/gncFfQgs4L+8wJmiuxGj+F2uERjzQb8yofuv8E3sJMF9iGyA4ZTj2JSt+5TVfr4FtJvNzwRuiUGOIUo5l1wgtD9sMagZ3BeGmLZrdABwuypRvEgTcG+IFRBGnBea8Jnqj8pzrx/8LDmUwsI2N+tBOTIa+546GYG7tPMusOg/aEkkoD03EZAUx7zEtn+m+Fj3V0X4UbDvlbhVoD6ZUUMApwuj3DktN6icCJatmi9iergaZuCdL+Htus6c45c9Udav27YbxO+uB5bADUZtttSCIf/iSnN+pyJntoCKMegzSZ8G95P8ty+LplNg/eoCeth9YvMDATRg3M+L8FW7oS+pnugF3WjKHnOOGJEsb6e09O5W6O63ctW+yNNmXkggDZSPISWqU+VKLmrdlyJVBgmnVYssTGP7XcT1O957HfWFkCyFHYi9mnQCkAItpLYdWqssEUvMK5Va3YxHcxd3aFS1bUU65PpJcYz6Mfn8nWbx6DkPFWlmfWK4+iQTFd9GJ9cv36QIwrGMWDtdUemib/NExABERABERABERABUQREQAREQAREQAREQBQBERABERABhUMnAgwAeTmWxmxR2bsAAAAASUVORK5CYII=") 0 0/36px 36px no-repeat;
        content: "";
        left: 0;
        position: absolute;
        top: 50%;
        transform: translateY(-50%);
        -webkit-transform: translateY(-50%);
        -moz-transform: translateY(-50%);
        -ms-transform: translateY(-50%);
        -o-transform: translateY(-50%);
        height: 36px;
        width: 36px; }
      .form-element input[type="file"] + .form-element-inputfile.form-element-inputfile-filled .form-element-inputfile-reset {
        display: block; }
      .form-element input[type="file"] + .form-element-inputfile span {
        display: block;
        margin-right: 36px;
        overflow: hidden;
        text-overflow: ellipsis;
        white-space: nowrap; }
      .form-element input[type="file"] + .form-element-inputfile .form-element-inputfile-reset {
        display: none;
        position: absolute;
        right: 0;
        top: 0;
        height: 36px;
        width: 36px; }
        .form-element input[type="file"] + .form-element-inputfile .form-element-inputfile-reset:before, .form-element input[type="file"] + .form-element-inputfile .form-element-inputfile-reset:after {
          background-color: #666;
          content: "";
          position: absolute;
          left: 50%;
          top: 50%;
          transform-origin: 50% 50%;
          height: 2px;
          width: 12px; }
        .form-element input[type="file"] + .form-element-inputfile .form-element-inputfile-reset:before {
          transform: translate(-50%, -50%) rotate(45deg); }
        .form-element input[type="file"] + .form-element-inputfile .form-element-inputfile-reset:after {
          transform: translate(-50%, -50%) rotate(-45deg); }
    .form-element .form-element-error {
      color: #FF4D4D;
      display: none; }
    .form-element.error .form-element-error {
      display: block; }
    .form-element.error input[type="checkbox"],
    .form-element.error input[type="text"],
    .form-element.error input[type="password"],
    .form-element.error input[type="email"],
    .form-element.error textarea,
    .form-element.error span.radio-btn,
    .form-element.error select,
    .form-element.error input[type="file"] + label {
      background-color: #ffe6e6;
      border: 1px solid #FF4D4D;
      color: #FF4D4D; }
    