.grecaptcha-badge {
    display: none
}

input {
    width: 100%;
    float: left;
    padding: 0 22px;
    font-size: 12px;
}

input, .dropdown, .black-border {
    height: 55px;
    line-height: 55px;
    border: 1px solid #242424;
    font-size: 18px;
}

.input-row {
    margin-top: 15px;
    margin-bottom: 15px;
}

textarea + label[placeholder], input[type="number"] + label[placeholder], input[type="email"] + label[placeholder], input[type="text"] + label[placeholder] {
    padding-left: 24px;
    white-space: nowrap;
}

.required::after {
    content: "*";
    position: absolute;
    top: 0px;
    font-size: 24px;
    padding-left: 10px;
}

.error input {
    border: 1px solid #c30000;
    color: #c30000;
}

.error.required::after {
    color: #c30000;
}

/* START Fix birth date required/error */
.required.error .dropdown.text-dropdown {
    border: 1px solid #c30000;
}

.error .dropdown.text-dropdown {
    border: 1px solid #c30000;
    color: #c30000;
}

#form-rh #formacao .error .dropdown.text-dropdown, #form-rh #experiencia .error .dropdown.text-dropdown {
    border-left: 1px solid #c30000;
}

.error .dropdown-toggle .placeholder {
    color: #c30000 !important;
}

.family-form-container .disabled-input {
    background-color: rgb(235, 235, 228);
    pointer-events: none;
}

@media (min-width: 992px) {
    .dropdown-date-birth.required.error .dropdown.text-dropdown {
        border-left: none;
        border-right: none;
    }
}
/* END Fix birth date required/error */

/* START Fix address (textarea) required/error */
.required.error textarea {
    border: 1px solid #c30000;
}
/* END Fix address (textarea) required/error */

.dropdown {
    padding: 0px 24px;
    font-size: 18px;
}

.dropdown-menu {
    font-size: 18px;
    width: 100%;
    padding: 0;
    max-height: 200px;
    overflow-y: auto;
}

#members-step-create-family .dropdown-menu {
    max-height: 165px;
}

#members-step-create-family .steps-progress-page .button {
    margin-top: 20px; /* bug 60007 */
}

#members-step-create-family .steps-progress-page .dropaf {
    padding-left: 0;
    padding-right: 0;
}

#members-step-create-family .steps-progress-page .outer {
    margin-left: 0;
}

#members-step-create-family .steps-progress-page .dropdown-date-birth .dropdown.text-left {
    padding-left: 0;
    padding-right: 0;
}

.dropdown-menu li {
    padding-left: 24px;
    transition: color 200ms ease-in-out;
    cursor: pointer;
}

    .dropdown-menu li:hover {
        color: #c30000;
    }


.dropdown-toggle {
    display: flex;
    align-items: center;
    transition: color 200ms ease-in-out;
}



    .dropdown-toggle:hover {
        cursor: pointer;
    }

    .dropdown-toggle .placeholder.default {
        color: #bebebe;
    }

    .dropdown-toggle .arrow {
        margin-left: auto;
    }

.dropdown.open .arrow {
    transform: rotate(270deg);
}

#page-member-data .input-container:nth-child(1) {
    padding-left: 0;
    margin-bottom: 10px;
}

#page-member-data .input-container:nth-child(2) {
    padding-right: 0;
}


.steps-progress-page .step-section.form-container,
.form-container {
    padding-right: 25px;
}

    .form-container .input-container, .form-container.input-container {
        padding-right: 12px;
        padding-left: 12px;
    }

    .form-container.no-padding-right {
        padding-right: 0 !important;
    }


.steps-progress-container {
    padding: 0 10px;
    margin-bottom: 50px;
}

.steps-progress-page h3 {
    /*text-transform: uppercase;*/
}

    .steps-progress-page h3 span {
        text-transform: none;
        display: block;
    }

.steps-progress-pages-container {
    width: 100%;
    margin: auto;
    padding-bottom: 55px;
}

    .steps-progress-pages-container.no-margin {
        margin: 0;
        max-width: none;
    }

.steps-progress-page .button {
    width: 100%;
    text-align: center;
    margin-top: 20px;
}

.steps-progress-page .error-message {
    padding: 0px 12px;
    color: #C30000;
    display: none;
}

.warning {
    color: #C30000;
    padding-right: 20px;
}

    .warning::before {
        content: "!";
        display: inline-block;
        width: 20px;
        height: 20px;
        line-height: 20px;
        text-align: center;
        vertical-align: text-bottom;
        border: 1px solid #C30000;
        border-radius: 100%;
        margin-right: 7px;
    }


    .warning.warning-exclamation-black {
        color: rgb(36,36,36);
    }

        .warning.warning-exclamation-black::before {
            border: 2px solid rgb(36,36,36);
        }

    .warning.warning-exclamation-big {
        display: flex;
        align-items: center;
        font-size: 20px;
        padding-right: 7%;
        margin-bottom: 50px;
    }


        .warning.warning-exclamation-big::before {
            height: 65px;
            font-size: 44px;
            vertical-align: middle;
            display: inline-flex;
            align-items: center;
            justify-content: center;
            flex-basis: 65px;
            flex-grow: 0;
            flex-shrink: 0;
            margin-right: 7%;
            font-weight: 300;
        }




/* banner */
.banner {
    background-color: rgb(244,244,244);
    border-top: solid 1px rgb(230,230,230);
    border-bottom: solid 1px rgb(230,230,230);
    text-align: center;
    padding: 5px 13px;
    position: relative;
}

    .banner a {
        display: flex;
        align-items: center;
        justify-content: center;
    }


        .banner a > * {
            margin: 0;
            display: inline-block;
            text-transform: uppercase;
        }

    .banner svg {
        width: auto;
        max-width: 35px;
        height: 35px;
        margin-right: 10px;
    }

    .banner a > h6 {
        font-size: 14px;
        font-weight: normal;
        padding-left: 5px;
        text-decoration: underline;
    }

.step-section.has-banner {
    position: relative;
    padding-top: 50px;
    border-top: 0;
}

    .step-section.has-banner .banner {
        position: absolute;
        top: 0;
        left: 0;
        width: 100%;
    }



input.slb-radio[type="radio"] + label {
    font-size: 24px;
}

input.disabled {
    border-color: rgb(190,190,190);
}

.button.disabled {
    background-color: rgb(190,190,190);
    border-color: rgb(190,190,190);
    color: white;
}

    .button.disabled:before {
        content: none;
    }

    .button.disabled:hover {
        border-color: rgb(190,190,190) !important;
        cursor: default;
    }


.input-button {
    display: flex;
    align-items: stretch;
    flex-wrap: wrap;
}


    .input-button > .button {
        width: 33.33334% !important;
        margin: 0;
    }

.upload-document.disabled {
    color: rgb(190,190,190);
}

.upload-document input {
    pointer-events: none;
}

.upload-document.filled input + label[placeholder]::before {
    color: rgb(36,36,36);
    max-width: 99%;
    text-overflow: ellipsis;
    white-space: nowrap;
    overflow: hidden;
}

.upload-document .upload-info {
    padding-top: 15px;
    font-size: 14px;
}


.upload-document.input-button .button {
    padding-top: 16px;
}


.text-left {
    font-size: 18px;
}

    p.text-left,
    .text-left p {
        padding-left: 24px;
        text-transform: uppercase;
    }

.h55 {
    box-sizing: content-box;
    line-height: 55px;
}

textarea {
    resize: none;
    line-height: 55px;
    border: 1px solid #242424;
    font-size: 18px;
    width: 100%;
    float: left;
    padding: 0 24px;
}

.profile-data input.input-small {
    padding: 0px 15%;
    text-align: center;
}

.profile-data input.place {
    width: 80%;
    min-width: 60px; /* SLB fix 11575 -  18px to adjust required fields */
    margin-left: 20%;
}

    .profile-data input.place.place-left {
        margin-left: 0px !important;
    }

.profile-data .place-trace:before {
    content: "-";
    position: absolute;
    font-size: 18px;
    top: 10px; /* SLB fix 11575 -  18px to adjust required fields */
    left: -5px;
}

.profile-data .dropdown-country li {
    padding: 0;
    display: flex;
    align-items: center;
    justify-content: center;
}

.profile-data .dropdown-country img {
    margin: 0;
    margin-left: 15px;
}

.profile-data .phone-number-holder {
    margin-top: -1px;
}

    .profile-data .phone-number-holder input {
        padding-left: 24px;
    }

.profile-data .phone-initial {
    border-left: none;
}

/* SLB fix 11575 - adjust required fields */
.profile-data .zipCodeCompleteDiv,
.profile-data .zipCodeDiv {
    padding-right: 20px;
}

.dropdown-menu.dropdown-address .pdl10 p {
    width: 100%;
}

.input-error-message {
    color: #c30000;
    position: absolute;
    bottom: -25px;
    padding: 0;
    display: none;
}


.error .input-error-message {
    display: block;
}

textarea + label[placeholder]::before, input[type="email"] + label[placeholder]::before, input[type="number"] + label[placeholder]::before, input[type="text"] + label[placeholder]::before {
    font-size: 18px;
    text-transform: none;
}

.step-section-small-message {
    margin-bottom: 4px;
}



.confirmation-form {
    border-bottom: solid 1px rgb(221,221,221);
    margin-top: 40px;
}


    .confirmation-form .content {
        display: flex;
        flex-wrap: wrap;
        justify-content: flex-start;
    }

        .confirmation-form .content > div {
            width: 100%;
            margin-top: 20px;
        }

    .confirmation-form svg {
        stroke: #333;
        stroke-width: 0.3;
        max-width: 70px;
        max-height: 50px;
        fill: red;
    }

    .confirmation-form h2 {
        margin: 0;
        padding: 0;
        margin-bottom: 18px;
        text-align: left;
        font-size: 28px;
        font-weight: 300;
        text-transform: uppercase;
        font-family: 'Roboto', sans-serif;
    }

    .confirmation-form p {
        font-size: 16px;
        text-transform: none;
        margin-top: 15px;
        margin-bottom: 30px;
    }

    .confirmation-form ~ .button-holder .button {
        margin-top: 20px;
        width: 100%;
    }



@media (max-width: 425px) {


    input.slb-radio[type="radio"] + label {
        font-size: 20px;
    }


    .warning.warning-exclamation-big span {
        font-size: 18px;
    }

    .warning.warning-exclamation-big {
        padding-right: 0;
    }
}

@media (min-width: 426px) {

    .steps-progress-pages-container {
        padding-right: 15px;
        padding-left: 15px;
    }
}

@media (min-width: 768px) {

    .button-holder {
        text-align: right;
    }

    input, textarea {
        font-size: 24px;
    }


    .dropdown {
        padding: 0px 24px;
        font-size: 24px;
    }


    .dropdown-menu {
        font-size: 24px;
    }


    .upload-document .upload-info {
        padding-top: 10px;
        padding-left: 25px;
        font-size: 14px;
    }


    .text-left {
        font-size: 24px;
    }

    .profile-data .phone-initial,
    .profile-data .place-trace:before {
        font-size: 24px;
    }

    .profile-data .phone-initial {
        text-align: center;
    }

    textarea + label[placeholder]::before, input[type="email"] + label[placeholder]::before, input[type="number"] + label[placeholder]::before, input[type="text"] + label[placeholder]::before {
        font-size: 24px;
    }


    .warning.warning-exclamation-big::before {
        color: rgb(36,36,36);
    }



    .confirmation-form {
        margin-top: 50px;
    }

        .confirmation-form .content {
            flex-wrap: nowrap;
        }

            .confirmation-form .content > div {
                padding-left: 5%;
                margin-top: 0;
            }

        .confirmation-form h2 {
            padding-right: 20%;
            font-size: 32px;
        }

        .confirmation-form p {
            margin-top: 0;
            font-size: 24px;
            margin-bottom: 50px;
        }
}

@media (max-width: 991px) {


    /* #page-member-data - common form to insert member data (appears generally in the begining of the steps) */
    #page-member-data .input-container {
        padding: 0;
    }

    #members-step-create-family .steps-progress-page .gender-item {
        text-align: left;
    }
}

@media (min-width: 992px) {

    .division-right {
        padding-left: 25px;
    }

    .division-left {
        padding-right: 25px;
    }

    .steps-progress-pages-container {
        max-width: 870px;
        padding-right: 0;
        padding-left: 0;
    }

    #steps-progress .steps-progress-item:not(.current-step) {
        display: inline-block;
    }

    #steps-progress .steps-progress-item {
        width: 25% !important;
    }

        #steps-progress .steps-progress-item .steps-progress-item-wrapper .steps-progress-item-step {
            display: none;
        }

    .steps-progress-page .button {
        width: 222px;
    }

    .profile-data .dropdown-date-birth .dropdown {
        border-left: none;
        border-right: none;
    }

    .profile-data .postal-code-numbers + div {
        padding-left: 15px; /* SLB fix 11575 - 15px to adjust required fields */
        padding-right: 35px;
    }


    .profile-data .phone-number-holder {
        margin-top: 0;
    }

    .profile-data .gender form {
        display: flex;
    }

    .profile-data .gender p {
        width: 50%;
        display: inline-block;
    }

    .profile-data .phone-initial {
        border-right: none;
    }

    .dropdown-country {
        padding: 0 10px;
    }

    .mandatory-fields-message {
        padding-left: 20px;
        padding-bottom: 0 !important;
        padding-top: 0 !important;
    }

    .warning.warning-exclamation-big::before {
        margin-right: 20px;
        flex-basis: 58px;
        height: 58px;
    }

    .warning.warning-exclamation-big {
        font-size: 24px;
        padding-right: 0;
    }

    .steps-progress-page h3 span {
        display: inline;
    }

    .confirmation-form ~ .button-holder .button {
        width: 222px;
    }
}



@media (min-width: 1200px) {

    .confirmation-form h2 {
        font-size: 36px;
        margin-top: 0;
        margin-bottom: 12px;
    }
}
