.form label {
    margin: 1em 0 .36em;
    display: block;
    color: #000;
    font-size: 14px;
    font-weight: 400;
    line-height: 20px
}
.form label .consent-info-icon {
    width: 15px; height: 15px;
    margin: 0 0 0 3px;
    display: inline-block;
    background: #00a9d5;
    color: #fff;
    font-size: 11px;
    font-weight: 600;
    line-height: 15px;
    text-decoration: none;
    text-align: center;
    border-radius: 50%;
    vertical-align: 50%;
}
.form label .consent-info-text {
    margin: 5px 0 0 0; padding: 15px;
    display: inline-block;
    background: #efefef;
    color: #000;
    font-size: 15px;
    font-weight: 400;
    line-height: 18px;
    display: none;
}

.form label.error {
    color: #c4161c
}

.form .pairs h2.h2, .form .pairs label.h2 {
    font-size: 16px;
    font-weight: 700;
    line-height: 20px;
    display: block !important;
    margin: 30px 0 5px;
    color: #58595b
}

@media only screen and (max-width: 767px) {
    .form .pairs h2.h2, .form .pairs label.h2 {
        font-size: 14px !important;
        line-height: 20px !important
    }
}

.form .pairs h2.h2.error, .form .pairs label.h2.error {
    color: #c4161c !important
}

.form .pairs p.info {
    margin-top: 5px;
    margin-bottom: 10px;
    font-size: 13px;
    font-weight: 400;
    line-height: 18px
}

.form .select2 ol, .form .select2 ul {
    margin: 0;
    padding: 0
}

.form .select2 ol li, .form .select2 ul li {
    margin: 0;
    padding: 0;
    list-style-type: none
}

.form .select2 ol li.select2-search, .form .select2 ul li.select2-search {
    display: none
}

.form .select2-container--classic .select2-selection--multiple, .form .select2-container--classic .select2-selection--single, .form .select2-container--classic.select2-container--open .select2-selection--multiple, .form .select2-container--classic.select2-container--open .select2-selection--single {
    border: 1px solid !important;
    -webkit-border-radius: 0;
    -moz-border-radius: 0;
    border-radius: 0;
    /*max-width: 300px*/
}

.form textarea {
    -webkit-appearance: none;
    -webkit-border-radius: 0;
    -moz-border-radius: 0;
    border-radius: 0
}

.form input[type=date],
.form input[type=email],
.form input[type=number],
.form input[type=password],
.form input[type=tel],
.form input[type=text],
.form select,
.form select option,
.form textarea {
    width: 100%;
    height: 32px;
    border: 1px solid #000;
    margin-top: 5px;
    margin-bottom: 10px;
    padding: .36em 10px;
    font-size: 16px;
    appearance: none;
    -moz-appearance: none;
    -webkit-appearance: none;
    border-radius: 0;
    -moz-border-radius: 0;
    -webkit-border-radius: 0;
    color: #000;
    background: #fff;
    font-family: 'Montserrat', sans-serif;
}
@supports (-ms-ime-align:auto) { /* EDGE */
    .form input[type=checkbox] {
        appearance: checkbox!important;
        -moz-appearance: checkbox!important;
        -webkit-appearance: checkbox!important;
    }
    .form input[type=radio] {
        appearance: radio;
        -moz-appearance: radio;
        -webkit-appearance: radio;
    }
}
@supports (-webkit-appearance:none) {
    .form input[type=checkbox],
    .form input[type=radio] {
        appearance: none;
        -moz-appearance: none;
        -webkit-appearance: none;
        width: 18px;
        height: 18px;
        background: #fff;
        border: 1px solid #000;
        vertical-align: middle;
        margin: 0 7px 0 0;
    }

    .form input[type=checkbox]:focus,
    .form input[type=radio]:focus {
        outline: 0;
    }

    .form input[type=checkbox]:checked,
    .form input[type=radio]:checked {
        position: relative;
    }

    .form input[type='checkbox']:checked:before {
        content: "\f00c";
        font-size: 15px;
        font-family: FontAwesome, sans-serif;
        line-height: 15px;
        display: inline-block;
        width: 16px;
        height: 16px;
        position: absolute;
        top: 0;
        left: 0;
        text-align: center;
        color: #000;
    }

    .form input[type='checkbox']:disabled {
        border-color: #ccc !important;
    }

    .form input[type='checkbox']:disabled:before {
        color: #ccc;
    }

    .bgBlue .form input[type='checkbox']:disabled:before {
        color: #ccc !important;
    }

    .bgBlue .form input[type=checkbox],
    .bgBlue .form input[type=radio] {
        border-color: #fff;
    }

    .bgBlue .form input[type=checkbox]:disabled,
    .bgBlue .form input[type=radio]:disabled {
        border-color: #fff !important;
    }

    .bgBlue .form input[type='checkbox']:checked:before {
        color: #00a9d5;
    }
}

.form input[type=date].error, .form input[type=email].error, .form input[type=number].error, .form input[type=password].error, .form input[type=tel].error, .form input[type=text].error, .form select.error, .form textarea.error {
    border-color: #c4161c
}

.form input:disabled, .form select:disabled, .form textarea:disabled {
    color: #efefef !important;
    border-color: #efefef !important
}

.form .error_message {
    display: block;
    color: #c4161c;
}

.form select.has-error + span.select2 .select2-selection {
    border: 2px solid #cc0000 !important;
}

.form .select2-container--classic {
    margin-top: 5px;
    margin-bottom: 10px;
}
.form .select2-container--classic .select2-selection--multiple,
.form .select2-container--classic .select2-selection--single,
.form select {
    background: url(../img/bg_select.png) calc(100% - 10px) 50% no-repeat #fff;
    background-size: 8px 7px;
    min-height: 32px;
    border: 1px solid #000 !important;
    box-sizing: border-box!important;
}
.bgBlue .form .select2-container--classic .select2-selection--multiple,
.bgBlue .form .select2-container--classic .select2-selection--single,
.bgBlue .form select {
    border: 1px solid #fff !important;
}
.select2-container--classic .select2-selection--single .select2-selection__arrow {
    display: none;
}
.select2-container--classic .select2-results__option--highlighted[aria-selected]{
    background-color:#326b65!important; color:#fff
}
.select2-container--classic.select2-container--open.select2-container--below .select2-selection--single {
    background: #fff!important;
}
.select2-container--classic.select2-container--open .select2-dropdown {
    border-color: #000!important;
    border-radius: 0!important;
}

bgBlue .form .select2-container--classic.select2-container--open .select2-dropdown {
    border-color: #fff!important;
}

@media (-webkit-min-device-pixel-ratio: 2),(min--moz-device-pixel-ratio: 2),(-o-min-device-pixel-ratio: 2/1),(min-device-pixel-ratio: 2),(min-resolution: 192dpi),(min-resolution: 2dppx) {
    .form .select2-container--classic .select2-selection--multiple, .form .select2-container--classic .select2-selection--single, .form select {
        background-image: url(../img/bg_select@2x.png);
        background-repeat: no-repeat;
        background-size: 8px 7px;
    }

    .form .select2-container--classic .select2-selection--multiple img, .form .select2-container--classic .select2-selection--single img, .form select img {
        visibility: hidden
    }
}

.form .select2-container--classic .select2-selection--single .select2-selection__rendered {
    line-height: 32px !important
}

.form textarea {
    height: auto
}

.form a.button .icon, .form span.button .icon {
    font-size: 14px
}

.form input {
    padding-top: 5px;
    padding-bottom: 5px
}

.form input.dateinput {
    background: url(../img/bg_input_date.png) 92.5% 50% no-repeat #fff
}

.form .checkbox input, .form .radio input {
    display: none
}

.form .checkbox label, .form .radio label {
    vertical-align: middle;
    display: inline-block;
    font-size: 14px;
    font-weight: 400;
    line-height: 30px;
    margin-right: 20px
}
.form #frm-group-consents label {
    font-size: 16px;
}

.form .checkbox label:before, .form .radio label:before {
    content: "";
    margin-right: 10px;
    display: inline-block;
    width: 20px;
    height: 20px;
    border: 1px solid;
    font-size: 15px;
    font-family: FontAwesome, sans-serif;
    line-height: 19px;
    background-color: #fff;
    vertical-align: middle;
    text-align: center
}

.form .checkbox input:checked + label:before {
    content: "\f00c"
}

.form .radio label:before {
    -webkit-border-radius: 50%;
    -moz-border-radius: 50%;
    border-radius: 50%;
    font-size: 14px
}

.form .radio input:checked + label:before {
    content: "\f111"
}

.form .button {
    border: 1px solid transparent;
    font-size: 12px
}

.form input[type=search] {
    -webkit-appearance: none !important
}

.form label.form-error {
    color: #cc0000; font-weight: bold!important;
}
.form label.form-error a {
    color: #cc0000!important
}
.form .required label {
    font-weight: bold;
}

.form input[type="text"].has-error,
.form input[type="password"].has-error,
.form input[type="number"].has-error,
.form input[type="tel"].has-error,
.form input[type="email"].has-error,
.form input[type="date"].has-error,
.form textarea.has-error,
.form select.has-error {
    border-color: #cc0000!important;
    border-width: 2px!important;
}