html {
    font-size: 62.5%;
}

* {
    box-sizing: border-box;
    font-family: 'Open Sans', sans-serif;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
}

body,
html {
    margin: 0;
    padding: 0;
    height: 100%;
    overflow-x: hidden;
}

body {
    font-family: sans-serif;
}

    body .container {
        width: auto;
        font-size: 0;
        overflow: hidden;
        padding: 24px 0;
    }

        body .container input {
            display: none;
        }

            body .container input#tab1:checked ~ .line {
                left: 0%;
            }

            body .container input#tab1:checked ~ .content-container #c1 {
                opacity: 1;
            }

            body .container input#tab2:checked ~ .line {
                left: 16%;
            }

            body .container input#tab2:checked ~ .content-container #c2 {
                opacity: 1;
            }

            body .container input#tab3:checked ~ .line {
                left: 32%;
            }

            body .container input#tab3:checked ~ .content-container #c3 {
                opacity: 1;
            }

            body .container input#tab4:checked ~ .line {
                left: 48%;
            }

            body .container input#tab4:checked ~ .content-container #c4 {
                opacity: 1;
            }

            body .container input#tab5:checked ~ .line {
                left: 64%;
            }

            body .container input#tab5:checked ~ .content-container #c5 {
                opacity: 1;
            }

            body .container input#tab6:checked ~ .line {
                left: 80%;
            }

            body .container input#tab6:checked ~ .content-container #c6 {
                opacity: 1;
            }

        body .container label {
            display: inline-block;
            font-size: 18px;
            line-height: 21px;
            width: 16%;
            text-align: center;
            color: #555;
            position: relative;
            transition: 0.25s background ease;
            cursor: pointer;
            border-bottom: 1px solid #E6E3E3;
            padding: 24px 0;
        }

        body .container .line {
            position: relative;
            height: 2px;
            background: #1E88E5;
            width: 16%;
            left: 0;
            top: -1px;
            transition: 0.25s ease;
        }

        body .container .content-container {
            position: relative;
            height: 100px;
        }

            body .container .content-container .content {
                position: absolute;
                padding: 10px;
                width: 100%;
                top: 0;
                opacity: 0;
                transition: 0.25s ease;
                color: #333;
            }

                body .container .content-container .content h3 {
                    font-weight: 200;
                    margin: 10px 0;
                }

                body .container .content-container .content p {
                    margin: 10px 0;
                }

                body .container .content-container .content p, body .container .content-container .content i {
                    font-size: 13px;
                }

p,
span,
label {
    color: #363636;
}

button,
input[type="button"]
input[type="submit"] {
    border: none;
    background-color: transparent;
}

.link {
    color: #0098CD;
    text-decoration: none;
}

    .link:hover {
        cursor: pointer;
    }

header {
    border-bottom: 1px solid #E6E3E3;
    padding: 0px 32px;
}

    header .wrapper {
        max-width: 1344px;
        padding: 0 32px;
        margin: 0 auto;
        display: flex;
        align-items: center;
        justify-content: space-between;
    }

    header .logo {
        width: 192px;
        padding: 24px 0;
    }

    header .title-container h1 {
        color: #363636;
        font-size: 2.4rem;
        font-weight: bold;
        margin: 0;
    }

    header .title-container p {
        font-size: 1.6rem;
        color: #555555;
        margin: 0;
    }

    header .info-container p {
        color: #555555;
        font-size: 1.4rem;
        margin: 0 0 4px;
        text-align: right;
    }

    header .info-container a {
        color: #363636;
        text-decoration: none;
        display: flex;
        align-items: center;
        justify-content: flex-end;
    }

        header .info-container a img {
            margin-right: 6px;
        }

        header .info-container a span {
            font-size: 2.1rem;
            color: #363636;
            font-weight: bold;
        }

.alert {
    width: 100%;
    border-radius: 16px;
    padding: 24px;
    display: flex;
    align-items: center;
}

    .alert img {
        width: 54px;
        margin-right: 32px;
    }

    .alert span {
        font-size: 1.6rem;
    }

        .alert span.block {
            display: block;
        }

    .alert.warning {
        background-color: rgba(255, 246, 168, 0.25);
    }

    .alert.promo {
        background-color: rgba(0, 152, 205, 0.08);
    }

.radio-container {
    margin: 0.5rem 0.5rem 1.6rem;
    padding-left: 39px;
    position: relative;
    display: flex;
    align-items: center;
    min-height: 2.8rem;
}

    .radio-container input[type="radio"] {
        position: absolute;
        opacity: 0;
    }

        .radio-container input[type="radio"] + .radio-label {
            font-size: 1.6rem;
        }

            .radio-container input[type="radio"] + .radio-label:before {
                content: '';
                background: #F0EEEE;
                border-radius: 100%;
                position: absolute;
                border: none;
                display: inline-block;
                width: 28px;
                height: 28px;
                top: 0;
                left: 0px;
                margin-right: 12px;
                vertical-align: top;
                cursor: pointer;
                text-align: center;
                transition: all 250ms ease;
            }

            .radio-container input[type="radio"] + .radio-label:hover {
                cursor: pointer;
            }

        .radio-container input[type="radio"]:checked + .radio-label:before {
            background-color: #0098CD;
            box-shadow: inset 0 0 0 7px #F0EEEE;
        }

        .radio-container input[type="radio"]:focus + .radio-label:before {
            outline: none;
            border-color: #0098CD;
        }

        .radio-container input[type="radio"]:disabled:hover {
            cursor: not-allowed;
        }

        .radio-container input[type="radio"]:disabled + .radio-label:before {
            box-shadow: inset 0 0 0 4px #F0EEEE;
            background: #b4aaaa;
        }

            .radio-container input[type="radio"]:disabled + .radio-label:before:hover {
                cursor: not-allowed;
            }

        .radio-container input[type="radio"]:disabled + .radio-label:hover {
            cursor: not-allowed;
        }

        .radio-container input[type="radio"] + .radio-label:empty:before {
            margin-right: 0;
        }

.checkbox-container {
    display: block;
    position: relative;
    padding-left: 35px;
    cursor: pointer;
    font-size: 1.6rem;
    -webkit-user-select: none;
    -moz-user-select: none;
    -ms-user-select: none;
    user-select: none;
}

    .checkbox-container + .checkbox-container {
        margin-top: 20px;
    }

    .checkbox-container input {
        position: absolute;
        opacity: 0;
        cursor: pointer;
        height: 0;
        width: 0;
    }

        .checkbox-container input:checked ~ .checkmark {
            background-color: #0098CD;
        }

            .checkbox-container input:checked ~ .checkmark:after {
                display: block;
            }

        .checkbox-container input:checked:hover ~ .checkmark {
            background-color: #0098CD;
        }

        .checkbox-container input:disabled ~ .checkmark {
            background-color: #b4aaaa !important;
        }

            .checkbox-container input:disabled ~ .checkmark:hover {
                cursor: not-allowed;
            }

    .checkbox-container .checkmark {
        position: absolute;
        top: 0;
        left: 0;
        height: 25px;
        width: 25px;
        background-color: #F0EEEE;
    }

        .checkbox-container .checkmark:after {
            content: "";
            position: absolute;
            display: none;
            left: 9px;
            top: 5px;
            width: 5px;
            height: 10px;
            border: solid white;
            border-width: 0 3px 3px 0;
            -webkit-transform: rotate(45deg);
            -ms-transform: rotate(45deg);
            transform: rotate(45deg);
        }

    .checkbox-container:hover input ~ .checkmark {
        background-color: #F0EEEE;
    }

input[type="date"]::-webkit-inner-spin-button,
input[type="date"]::-webkit-calendar-picker-indicator {
    display: none;
    -webkit-appearance: none;
}

.label-withinfo-container .flat-title {
    width: 100%;
    font-size: 2.1rem;
    font-weight: 600;
}
.label-withinfo-container {      
    position: relative;
    display: flex;
    align-items: center;
   vertical-align:middle;
  
}
.space {
    padding: 0.3rem 0 0.8rem
}
.bold {
    font-weight: bold;
}

.semi-bold {
    font-weight: 600;
}

.btn {
    padding: 1.6rem 0;
    min-width: 6rem;
    font-size: 1.1rem;
    text-transform: uppercase;
    display: flex;
    align-items: center;
    justify-content: center;
    font-weight: bold;
}

    .btn img {
        height: 12px;
    }

    .btn:hover {
        cursor: pointer;
    }

    .btn.btn-primary {
        background-color: #0098CD;
        color: white;
        border: 1px solid #0098CD;
    }

        .btn.btn-primary span {
            color: white;
        }

    .btn.btn-secondary {
        background-color: white;
        color: #0098CD;
        border: 1px solid #0098CD;
    }

        .btn.btn-secondary span {
            color: #0098CD;
        }

    .btn.large {
        height: 60px;
        padding: 0 3.2rem;
    }

    .btn.small {
        padding: 1rem 2.4rem;
    }

    .btn.icon-right span {
        display: block;
        margin-right: 8px;
    }

    .btn.icon-left img {
        transform: rotate(180deg);
    }

    .btn.icon-left span {
        display: block;
        margin-left: 8px;
    }

    .btn.btn-action {
        background-color: #0098CD;
        color: white;
        border: 1px solid #0098CD;
        padding: 20px;
        min-width: 150px;
        max-width: 235px;
    }

    .btn.btn-actionlarge {
        background-color: #0098CD;
        color: white;
        border: 1px solid #0098CD;
        padding: 20px;
        min-width: 150px;
    }


    .btn.btn-action span {
        color: white;
    }

.btn-tooltip {
    position: relative;
    background-color: transparent;
    border: none;
    display: flex;
    align-items: center;
}

    .btn-tooltip:hover {
        cursor: pointer;
    }

    .btn-tooltip .tooltip {
        display: none;
        font-size: 1.4rem;
        color: #363636;
        line-height: 1.9rem;
        padding: 1.6rem 2.4rem;
        border-radius: 8px;
        background-color: #F4F4F4;
        box-shadow: 0 8px 9px -3px rgba(157, 157, 157, 0.38);
        z-index: 100;
        position: absolute;
        top: calc(100% + 12px);
        left: -134px;
        width: 300px;
        text-align: left;
    }

        /*    .btn-tooltip .tooltip {
        display: none;
        font-size: 1.4rem;
        color: #363636;
        line-height: 1.9rem;
        padding: 1.6rem 2.4rem;
        border-radius: 8px;
        background-color: #F4F4F4;
        box-shadow: 0 8px 9px -3px rgba(157, 157, 157, 0.38);
        z-index: 100;
        position: absolute;
        left: calc(100% - 450px);
        width: 300px;
        text-align: left;
    }*/


        .btn-tooltip .tooltip:before {
            content: '';
            display: block;
            height: 30px;
            width: 30px;
            background-color: #F4F4F4;
            position: absolute;
            z-index: -1;
            top: -7px;
            left: calc((100% - 30px) / 2);
            transform: rotate(45deg);
        }
        /*

        .btn-tooltip .tooltip:before {
            content: '';
            display: block;
            height: 30px;
            width: 30px;
            background-color: #F4F4F4;
            position: absolute;
            z-index: -1;
            top: calc((100% - 30px) / 2);
            left: calc((100% - 330px) / 2);
            transform: rotate(45deg);
        }
*/


        .btn-tooltip .tooltip.show {
            display: block;
        }



.btn-tooltip-rigth {
    position: relative;
    background-color: transparent;
    border: none;
    display: flex;
    align-items: center;
}

    .btn-tooltip-rigth:hover {
        cursor: pointer;
    }



    .btn-tooltip-rigth .tooltip {
        display: none;
        font-size: 1.4rem;
        color: #363636;
        line-height: 1.9rem;
        padding: 1.6rem 2.4rem;
        border-radius: 8px;
        background-color: #F4F4F4;
        box-shadow: 0 8px 9px -3px rgba(157, 157, 157, 0.38);
        z-index: 100;
        position: absolute;
        left: 50px;
        width: 300px;
        text-align: left;
    }



        .btn-tooltip-rigth .tooltip:before {
            content: '';
            display: block;
            height: 30px;
            width: 30px;
            background-color: #F4F4F4;
            position: absolute;
            z-index: -1;
            top: calc((100% - 30px) / 2);
            left: calc((100% - 330px) / 2);
            transform: rotate(45deg);
        }



        .btn-tooltip-rigth .tooltip.show {
            display: block;
        }








.btn-tooltip-left {
    position: relative;
    background-color: transparent;
    border: none;
    display: flex;
    align-items: center;
}

    .btn-tooltip-left:hover {
        cursor: pointer;
    }



    .btn-tooltip-left .tooltip {
        display: none;
        font-size: 1.4rem;
        color: #363636;
        line-height: 1.9rem;
        padding: 1.6rem 2.4rem;
        border-radius: 8px;
        background-color: #F4F4F4;
        box-shadow: 0 8px 9px -3px rgba(157, 157, 157, 0.38);
        z-index: 100;
        position: absolute;
        left: calc(100% - 400px);
        width: 200px;
        text-align: left;
    }


        .btn-tooltip-left .tooltip:before {
            content: '';
            display: block;
            height: 30px;
            width: 30px;
            background-color: #F4F4F4;
            position: absolute;
            z-index: -1;
            left: calc((100% + 150px) / 2);
            transform: rotate(45deg);
        }

        .btn-tooltip-left .tooltip.show {
            display: block;
        }


#background-modal {
    height: 100vh;
    width: 100vw;
    position: fixed;
    top: 0;
    left: 0;
    z-index: 1;
    background-color: rgba(77, 77, 77, 0.54);
    display: none;
}

    #background-modal.show {
        display: block;
    }

.modal-container {
    display: none;
    position: fixed;
    background-color: white;
    box-shadow: 0 8px 9px -3px rgba(101, 101, 101, 0.9);
    border-radius: 3px;
    width: 600px;
    height: 300px;
    z-index: 2;
    left: calc((100vw - 600px) / 2);
    top: calc((100vh - 300px) / 2);
    padding: 32px;
    flex-direction: column;
    justify-content: space-between;
    align-items: baseline;
}

.modal-container-alerta {
    display: none;
    position: fixed;
    background-color: white;
    box-shadow: 0 8px 9px -3px rgba(101, 101, 101, 0.9);
    border-radius: 3px;
    width: 600px;
    min-height: 50px;
    z-index: 2;
    left: calc((100vw - 600px) / 2);
    top: calc((100vh - 300px) / 2);
    padding: 32px;
    flex-direction: column;
    justify-content: space-between;
    align-items: baseline;
}

    .modal-container .close-btn {
        position: absolute;
        right: 8px;
        top: 8px;
        height: 32px;
        width: 32px;
        padding: 0;
        border: 0;
        background: transparent;
    }

        .modal-container .close-btn:hover {
            cursor: pointer;
        }

    .modal-container .modal-title {
        font-size: 3rem;
        margin: 0;
        font-weight: 400;
        line-height: 3rem;
    }

    .modal-container .modal-description {
        margin-top: 48px;
        font-size: 1.6rem;
    }

        .modal-container .modal-description.total-height {
            height: 100%;
        }

    .modal-container .btn-ok {
        align-self: flex-end;
    }

    .modal-container.show {
        display: flex;
    }

    .modal-container#recover-password {
        height: auto;
    }

        .modal-container#recover-password section {
            width: 100%;
            margin-bottom: 0;
        }

            .modal-container#recover-password section .form-group {
                width: calc(100% - 160px);
                margin-bottom: 0;
            }

            .modal-container#recover-password section .btn {
                width: 130px;
                font-size: 1.4rem;
            }

    .modal-container#modal-alert-loading {
        height: auto;
    }

        .modal-container#modal-alert-loading .loading {
            margin: 0 auto;
        }

        .modal-container#modal-alert-loading .modal-title {
            margin: 12px 0 16px;
            font-size: 2.4rem;
            line-height: 3.3rem;
            font-weight: bold;
            width: 100%;
            text-align: center;
        }

        .modal-container#modal-alert-loading .modal-description {
            margin-top: 0;
            width: 100%;
            text-align: center;
        }

    .modal-container .modal-description-largetext {
        font-size: 1.4rem;
        margin-top: 0px;
    }

.summary {
    display: flex;
    align-items: center;
    justify-content: flex-start;
}

    .summary .summaryConcept {
        height: 40px;    
        color: #555555;
        font-size: 1.4rem;
        font-weight: 600;
        text-transform: uppercase;
        padding: 0 20px;
        line-height: 40px;
        background-color: #F0EEEE;
        margin-left:10px;
    }

    .summary .summaryValue {
        height: 40px;
        color: white;
        font-size: 2.4rem;
        font-weight: 700;
        padding: 0 20px;
        line-height: 40px;
        background-color: #0098CD;
    }
        .summary .summaryValue span {
            color: white;                   
            background-color: #0098CD;
        }


.mandatory {
    color: #0098CD;
}

.content {
    max-width: 1344px;
    margin: 0 auto;
    padding: 0 32px;
}

    .content .nav {
        list-style: none;
        display: flex;
        justify-content: space-between;
        align-items: flex-end;
        width: 100%;
        padding: 0;
        border-bottom: 2px solid #E6E3E3;
        margin-top: 40px;
    }

        .content .nav li {
            padding: 0 8px 16px 8px;
        }

            .content .nav li a {
                text-decoration: none;
                display: flex;
                align-items: flex-end;
            }

                .content .nav li a div {
                    display: inline-block;
                    font-size: 2rem;
                    border: 2px solid currentColor;
                    border-radius: 0.6rem;
                    height: 2.4rem;
                    width: 2.4rem;
                    text-align: center;
                    line-height: 2rem;
                }

                .content .nav li a span {
                    max-width: calc(100% - 3.2rem);
                    display: inline-block;
                    margin-left: 8px;
                    font-size: 1.8rem;
                    line-height: 1.8rem;
                }

            .content .nav li.disabled a {
                cursor: not-allowed;
            }

                .content .nav li.disabled a div,
                .content .nav li.disabled a span {
                    color: #E6E3E3;
                }

            .content .nav li.active {
                position: relative;
            }

                .content .nav li.active:after {
                    position: absolute;
                    content: '';
                    display: block;
                    height: 2px;
                    width: calc(100% - 8px);
                    background-color: #0098CD;
                    bottom: -2px;
                    left: 4px;
                }

                .content .nav li.active a {
                    cursor: pointer;
                }

                    .content .nav li.active a div,
                    .content .nav li.active a span {
                        color: #0098CD;
                    }
            /*ssssssssss*/
            .content .nav li.next {
                position: relative;
            }
                /*.content .nav li.next:after {
            position: absolute;
            content: '';
            display: block;
            height: 2px;
            width: calc(100% - 8px);
            background-color: #0098CD;
            bottom: -2px;
            left: 4px;
        }*/
                .content .nav li.next a {
                    cursor: pointer;
                }

                    .content .nav li.next a div,
                    .content .nav li.next a span {
                        color: #0098CD;
                    }
            /*sssssss*/

            .content .nav li.done a {
                cursor: pointer;
            }

                .content .nav li.done a div {
                    color: transparent;
                    border-color: #0098CD;
                    content: '';
                    position: relative;
                }

                    .content .nav li.done a div::before {
                        content: '';
                        display: block;
                        width: 6px;
                        height: 2px;
                        background-color: #0098CD;
                        border-radius: 2px;
                        position: absolute;
                        transform: rotate(-130deg);
                        top: 11px;
                        left: 4px;
                    }

                    .content .nav li.done a div::after {
                        content: '';
                        display: block;
                        width: 11px;
                        height: 2px;
                        background-color: #0098CD;
                        border-radius: 2px;
                        position: absolute;
                        transform: rotate(126deg);
                        top: 9px;
                        right: 3px;
                    }

                .content .nav li.done a span {
                    color: #0098CD;
                }

    .content .step-indicator {
        font-size: 3.1rem;
        margin: 38px 0 24px;
    }

    .content .info-text {
        color: #555555;
        font-size: 1.6rem;
        line-height: 2.4rem;
        margin: 6.4rem 0 2.4rem;
    }

    .content section {
        display: flex;
        align-items: flex-start;
        justify-content: space-between;
        flex-wrap: wrap;
        margin-bottom: 1.6rem;
    }

        .content section .section-title {
            width: 100%;
            margin: 2.4rem 0 1.6rem;
            font-size: 2.1rem;
            font-weight: 600;
        }


        .content section .section-title-asignatura {
            margin: 2.4rem 0 1.6rem;
            font-size: 2.1rem;
            font-weight: 600;
        }


        .content section .intro {
            width: 100%;
            display: flex;
            align-items: center;
            flex-wrap: wrap;
            margin-bottom: 24px;
        }

            .content section .intro .intro-title {
                font-size: 1.6rem;
                color: #363636;
                font-weight: 600;
            }

                .content section .intro .intro-title + .intro-description {
                    margin-top: 8px;
                }

            .content section .intro .intro-description {
                display: block;
                font-size: 1.6rem;
                width: 100%;
                font-weight: 400;
                color: #363636;
            }

            .content section .intro .btn-tooltip {
                position: relative;
                border: none;
                background-color: transparent;
                display: flex;
                align-items: center;
            }

                .content section .intro .btn-tooltip:hover {
                    cursor: pointer;
                }

        .content section .form-group {
            width: calc((100% - 56px) / 3);
            margin-bottom: 16px;
            position: relative;
        }

            .content section .form-group.double {
                width: calc(((100% - 56px) / 3) * 2 + 28px);
            }

            .content section .form-group.full {
                width: 100%;
            }

            .content section .form-group.with-intro {
                margin-top: 8px;
            }

            .content section .form-group.with-radio {
                margin-bottom: 0;
            }

            .content section .form-group.legend {
                width: 100%;
            }

            .content section .form-group input[type="text"]:not(.chosen-search-input),
            .content section .form-group input[type="number"],
            .content section .form-group input[type="date"],
            .content section .form-group input[type="password"],
            .content section .form-group input[type="email"],
            .content section .form-group select {
                height: 60px;
                width: 100%;
                position: relative;
                background-color: #F0EEEE;
                border: none;
                padding: 20px;
                font-size: 1.6rem;
                color: #363636;
            }

                .content section .form-group input[type="text"]:not(.chosen-search-input) + label,
                .content section .form-group input[type="number"] + label,
                .content section .form-group input[type="date"] + label,
                .content section .form-group input[type="password"] + label,
                .content section .form-group input[type="email"] + label,
                .content section .form-group select + label                 
                {
                    position: absolute;
                    height: auto;
                    left: 20px;
                    top: calc((100% - 17px) / 2);
                    font-size: 1.2rem;
                    color: #8F8F8F;
                    text-transform: uppercase;
                    font-weight: bold;
                    width: auto; /*calc(100% - 40px);*/
                    background-color: #F0EEEE;
                    transition: top 0.1s ease-in;
                }

                    .content section .form-group input[type="text"]:not(.chosen-search-input) + label .mandatory,
                    .content section .form-group input[type="number"] + label .mandatory,
                    .content section .form-group input[type="date"] + label .mandatory,
                    .content section .form-group input[type="password"] + label .mandatory,
                    .content section .form-group input[type="email"] + label .mandatory,
                    .content section .form-group select + label .mandatory {
                        display: inline-block;
                        margin-left: 2px;
                    }

                    .content section .form-group input[type="text"]:not(.chosen-search-input) + label:hover,
                    .content section .form-group input[type="number"] + label:hover,
                    .content section .form-group input[type="date"] + label:hover,
                    .content section .form-group input[type="password"] + label:hover,
                    .content section .form-group input[type="email"] + label:hover,
                    .content section .form-group select + label:hover {
                        cursor: text;
                    }

                .content section .form-group input[type="text"]:not(.chosen-search-input):focus,
                .content section .form-group input[type="number"]:focus,
                .content section .form-group input[type="date"]:focus,
                .content section .form-group input[type="password"]:focus,
                .content section .form-group input[type="email"]:focus,
                .content section .form-group select:focus {
                    border: none;
                    outline: none;
                }

                .content section .form-group input[type="text"]:not(.chosen-search-input):disabled,
                .content section .form-group input[type="text"]:not(.chosen-search-input):disabled + label,
                .content section .form-group input[type="number"]:disabled,
                .content section .form-group input[type="number"]:disabled + label,
                .content section .form-group input[type="date"]:disabled,
                .content section .form-group input[type="date"]:disabled + label,
                .content section .form-group input[type="password"]:disabled,
                .content section .form-group input[type="password"]:disabled + label,
                .content section .form-group input[type="email"]:disabled,
                .content section .form-group input[type="email"]:disabled + label,
                .content section .form-group select:disabled,
                .content section .form-group select:disabled + label {
                    background-color: #F8F8F8;
                }

                    .content section .form-group input[type="text"]:not(.chosen-search-input):disabled:hover,
                    .content section .form-group input[type="text"]:not(.chosen-search-input):disabled + label:hover,
                    .content section .form-group input[type="number"]:disabled:hover,
                    .content section .form-group input[type="number"]:disabled + label:hover,
                    .content section .form-group input[type="date"]:disabled:hover,
                    .content section .form-group input[type="date"]:disabled + label:hover,
                    .content section .form-group input[type="password"]:disabled:hover,
                    .content section .form-group input[type="password"]:disabled + label:hover,
                    .content section .form-group input[type="email"]:disabled:hover,
                    .content section .form-group input[type="email"]:disabled + label:hover,
                    .content section .form-group select:disabled:hover,
                    .content section .form-group select:disabled + label:hover {
                        cursor: default;
                    }

                .content section .form-group input[type="date"] + label {
                    width: calc(100% - 60px);
                }

                .content section .form-group input[type="date"]::-webkit-calendar-picker-indicator {
                    position: absolute;
                    right: 16px;
                    top: 20px;
                }

            .content section .form-group input[type="radio"] {
                background-color: #F0EEEE;
            }

            .content section .form-group select {
                -webkit-appearance: none;
            }

                .content section .form-group select + label + img {
                    position: absolute;
                    width: 60px;
                    right: -10px;
                    background-color: #F0EEEE;
                    top: 10px;
                    padding: 20px 20px 0px 20px;
                    transform: rotate(90deg);
                }

            .content section .form-group.search-select {
                background-color: #F0EEEE;
            }

                .content section .form-group.search-select .chosen-container-single .chosen-single div {
                    display: none;
                }

                .content section .form-group.search-select img {
                    position: absolute;
                    width: 60px;
                    right: -10px;
                    background-color: #F0EEEE;
                    top: 10px;
                    padding: 20px 20px 0px 20px;
                    transform: rotate(90deg);
                }

                .content section .form-group.search-select .chosen-container {
                    width: 100% !important;
                }

                    .content section .form-group.search-select .chosen-container + label {
                        position: absolute;
                        height: 30px;
                        left: 20px;
                        top: 8px;
                        font-size: 1.2rem;
                        line-height: 1.2rem;
                        color: #8F8F8F;
                        text-transform: uppercase;
                        font-weight: bold;
                        width: calc(100% - 40px);
                        background-color: transparent;
                    }

                        .content section .form-group.search-select .chosen-container + label .mandatory {
                            display: inline-block;
                            margin-left: 2px;
                        }

                    .content section .form-group.search-select .chosen-container .chosen-single {
                        height: 60px;
                        width: 100%;
                        position: relative;
                        background-color: #F0EEEE;
                        background: transparent;
                        z-index: 1;
                        border: none;
                        padding: 24px 20px 10px;
                        font-size: 1.6rem;
                        color: #363636;
                        border-radius: 0;
                        box-shadow: none;
                    }

                        .content section .form-group.search-select .chosen-container .chosen-single > span {
                            font-size: 1.6rem;
                            color: #363636;
                        }

                    .content section .form-group.search-select .chosen-container.chosen-container-active.chosen-with-drop + label + img {
                        transform: rotate(270deg);
                        padding-top: 0px;
                        padding-bottom: 20px;
                    }

                    .content section .form-group.search-select .chosen-container .chosen-drop {
                        border: none;
                        border-radius: 0;
                        box-shadow: 0 8px 9px -3px rgba(157, 157, 157, 0.38);
                    }

                        .content section .form-group.search-select .chosen-container .chosen-drop .chosen-search {
                            padding: 18px 20px 8px !important;
                        }

                            .content section .form-group.search-select .chosen-container .chosen-drop .chosen-search input[type=text] {
                                padding: 4px 5px 4px 30px !important;
                                height: 34px;
                                border-color: #BFBFBF;
                                font-size: 1.6rem;
                                font-family: inherit;
                                color: #363636;
                                /*background: url(../img/Loupe.svg) no-repeat 4px 6px; */
                            }

                        .content section .form-group.search-select .chosen-container .chosen-drop .chosen-results {
                            padding: 0;
                            margin: 0;
                        }

                            .content section .form-group.search-select .chosen-container .chosen-drop .chosen-results li {
                                font-size: 1.6rem;
                                color: #363636;
                                line-height: 2.2rem;
                                padding: 13px 20px;
                            }

                                .content section .form-group.search-select .chosen-container .chosen-drop .chosen-results li.disabled-result {
                                    display: none;
                                }

                                .content section .form-group.search-select .chosen-container .chosen-drop .chosen-results li.highlighted {
                                    background-color: #c0e7f5;
                                    background-image: none;
                                    color: #363636;
                                }

            .content section .form-group select:disabled + .chosen-container,
            .content section .form-group select:disabled + .chosen-container + label + img,
            .content section .form-group .chosen-disabled,
            .content section .form-group .chosen-disabled + label + img {
                background-color: #F8F8F8;
                opacity: 1 !important;
            }

                .content section .form-group select:disabled + .chosen-container + label,
                .content section .form-group .chosen-disabled + label,
                .content section .form-group select:disabled + .chosen-container .chosen-single,
                .content section .form-group .chosen-disabled .chosen-single {
                    opacity: 0.8;
                }

            .content section .form-group.show input[type="text"],
            .content section .form-group.show input[type="number"],
            .content section .form-group.show input[type="date"],
            .content section .form-group.show input[type="password"],
            .content section .form-group.show input[type="email"],
            .content section .form-group.show select {
                padding: 24px 20px 10px;
            }

                .content section .form-group.show input[type="text"] + label,
                .content section .form-group.show input[type="number"] + label,
                .content section .form-group.show input[type="date"] + label,
                .content section .form-group.show input[type="password"] + label,
                .content section .form-group.show input[type="email"] + label,
                .content section .form-group.show select + label {
                    top: 8px;
                    height: auto;
                    background-color: transparent;
                }

            .content section .form-group.legend > span {
                display: block;
                font-size: 1.3rem;
            }

                .content section .form-group.legend > span .lighter {
                    color: #8F8F8F;
                }

            .content section .form-group .forgot-password {
                font-size: 1.3rem;
                text-decoration: underline;
                text-transform: uppercase;
                font-weight: 700;
                height: 32px;
                position: absolute;
                right: 0;
                top: 70px;
            }

        .content section.bottom-bar {
            position: relative;
            display: flex;
            align-items: center;
            flex-wrap: nowrap;
            padding: 24px 0;
        }

            .content section.bottom-bar:before {
                position: absolute;
                content: "";
                display: block;
                height: 1px;
                width: 100vw;
                background-color: #E6E3E3;
                left: -32px;
                top: 0;
            }

            .content section.bottom-bar .bottom-bar_info_mobile {
                display: none;
            }

            .content section.bottom-bar .bottom-bar_info {
                display: flex;
                align-items: flex-start;
                width: calc(100% - 340px);
            }

                .content section.bottom-bar .bottom-bar_info p {
                    color: #555555;
                    margin: 0;
                    font-size: 1.3rem;
                }

            .content section.bottom-bar .btn {
                min-width: 145px;
            }

                .content section.bottom-bar .btn:first-of-type {
                    margin-right: 10px;
                }

        .content section#confirmation {
            flex-direction: column;
            justify-content: flex-start;
            min-height: calc(100vh - 383px);
        }

            .content section#confirmation .step-indicator {
                margin-bottom: 0;
            }

            .content section#confirmation .info-text {
                margin-top: 2.4rem;
            }








.credits-table {
    width: 100%;
}

    .credits-table .summary {
        justify-content: flex-end;
        margin-bottom: 32px;
    }

    .credits-table .table-section {
        margin-bottom: 32px;
    }

        .credits-table .table-section .section-container {
            position: relative;
            max-height: 0;
            overflow: hidden;
            transition: max-height 0.3s ease-out;
        }

        .credits-table .table-section .table-header {
            background-color: #0098CD;
            color: white;
            font-size: 1.4rem;
            text-transform: uppercase;
            font-weight: 700;
            height: 32px;
            padding-left: 70px;
            line-height: 32px;
            border: none;
            width: 100%;
            text-align: left;
            display: flex;
            align-items: center;
            justify-content: space-between;
        }
            .credits-table .table-section .table-header .label-table-header {
                color: white !important;
            }

            .credits-table .table-section .table-header .arrow {
                width: 20px;
                margin-right: 4px;
                display: inline-block;
                transform: rotate(180deg);
                transition: transform 0.2s ease;
            }

            .credits-table .table-section .table-header.show .arrow {
                transform: rotate(0deg);
            }

            .credits-table .table-section .table-header.show + .section-container {
                max-height: 10000px;
                transition: max-height 0.3s ease-in;
            }

            .credits-table .table-section .table-header:hover {
                cursor: pointer;
            }

        .credits-table .table-section .table-sub-header {
            height: 30px;
            color: #555555!important;
            font-size: 1.4rem;
            font-weight: 700;
            text-transform: uppercase;
            display: flex;
            align-items: center;
            padding-left: 70px;
            background-color: #E6E3E3;
            border: none;
            width: 100%;
            text-align: left;
        }

            .credits-table .table-section .table-sub-header > div:first-of-type {
                width: 55%;
            }

            .credits-table .table-section .table-sub-header > div:nth-of-type(2) {
                width: 20%;
            }

            .credits-table .table-section .table-sub-header > div:nth-of-type(3) {
                width: 15%;
            }

            .credits-table .table-section .table-sub-header > div:nth-of-type(4) {
                width: 10%;
            }

            .credits-table .table-section .table-sub-header + .rows-container {
                max-height: 0;
                overflow: hidden;
            }

            .credits-table .table-section .table-sub-header .arrow {
                position: absolute;
                right: 10px;
                transform: rotate(180deg);
                transition: transform 0.2s ease;
            }

            .credits-table .table-section .table-sub-header.show .arrow {
                transform: rotate(0deg);
            }

            .credits-table .table-section .table-sub-header.show + .rows-container {
                max-height: 10000px;
                transition: max-height 0.3s ease-in;
            }

            .credits-table .table-section .table-sub-header:hover {
                cursor: pointer;
            }

        .credits-table .table-section .table-row {
            height: 30px;
            font-weight: 300;
            font-size: 1.4rem;
            display: flex;
            align-items: center;
            padding-left: 70px;
            border-bottom: 1px solid #E5E5E5;
        }

            .credits-table .table-section .table-row:nth-child(2n) {
                background-color: #F4FCFF;
            }

            .credits-table .table-section .table-row .section-title {
                display: none;
            }

            .credits-table .table-section .table-row .checkbox-container {
                position: absolute;
                height: 30px;
                width: 100%;
                left: 0px;
            }

                .credits-table .table-section .table-row .checkbox-container .checkmark {
                    top: 4px;
                    left: 25px;
                    height: 24px;
                    width: 24px;
                }

            .credits-table .table-section .table-row.disabled {
                background-color: #EFEFEF;
            }

                .credits-table .table-section .table-row.disabled div {
                    color: #5d5d5d;
                }

                .credits-table .table-section .table-row.disabled:hover,
                .credits-table .table-section .table-row.disabled .checkbox-container:hover {
                    cursor: not-allowed;
                }

            .credits-table .table-section .table-row.completed {
                background-color: #bcffa64a;
            }

                .credits-table .table-section .table-row.completed div {
                    color: #5d5d5d;
                }

                .credits-table .table-section .table-row.completed:hover,
                .credits-table .table-section .table-row.completed .checkbox-container:hover {
                    cursor: not-allowed;
                }

            .credits-table .table-section .table-row > div.subject {
                width: 55%;
            }

            .credits-table .table-section .table-row > div.kind {
                width: 20%;
            }

            .credits-table .table-section .table-row > div.status {
                width: 15%;
            }

            .credits-table .table-section .table-row > div.ects {
                width: 10%;
            }

.conditions-confirmation {
    padding-top: 20px;
}

footer {

/*    margin-top:80px;*/
    bottom: 0;
    width: 100%;
    z-index:41;
    background-color: white;
}

    footer .contentDiv {
        max-width: 1344px;
        margin: 0 auto;
        padding: 0 32px;
    }

footer .wrapper {
    background-color: #006C8F;
    padding: 14px 32px;
    max-width: 1344px;
    margin: 0 auto;
    display: flex;
    align-items: center;
    justify-content: space-between;

}

    footer p {
        color: white;
        font-size: 1.3rem;
    }

    footer .wrapper .btn {
        background-color: transparent;
        border: none;
        color: white;
        font-size: 1.2rem;
        text-transform: uppercase;
        text-decoration: underline;
        padding: 0.8rem 1.2rem;
        cursor: pointer;
    }


    footer section.bottom-bar {
        position: relative;
        /*        display: flex;
        align-items: center;*/
        flex-wrap: nowrap;
        padding: 24px 0;
        background-color: white;
        
        max-width: 1344px;
        margin: 0 auto;

        display: flex;
        align-items: center;
        justify-content: space-between;
    }

        footer section.bottom-bar:before {
            position: absolute;
            content: "";
            display: block;
            height: 1px;
            width: 100vw;
            background-color: #E6E3E3;
            left: -32px;
            top: 0;
        }

        footer section.bottom-bar .bottom-bar_info_mobile {
            display: none;
        }

        footer section.bottom-bar .bottom-bar_info {
            display: flex;
            align-items: flex-start;
            width: calc(100% - 340px);
        }

            footer section.bottom-bar .bottom-bar_info p {
                color: #555555;
                margin: 0;
                font-size: 1.3rem;
            }

        footer section.bottom-bar .btn {
            min-width: 145px;
        }

            footer section.bottom-bar .btn:first-of-type {
                margin-right: 10px;
            }







@media screen and (min-width: 1344px) {
    .content section.bottom-bar:before {
        left: calc((100vw - 1280px) / 2 * -1);
    }
}

@media screen and (max-width: 1023px) {
    header {
        padding: 0;
        border-bottom: 0;
    }

        header .wrapper {
            justify-content: center;
            padding: 0;
            flex-direction: column;
        }

        header .logo {
            width: 192px;
            padding: 12px 0;
        }

        header .title-container {
            width: 100%;
            border-top: 1px solid #E6E3E3;
            padding: 12px 16px;
        }

            header .title-container h1 {
                font-size: 2.1rem;
                line-height: 2.4rem;
            }

            header .title-container p {
                margin-top: 12px;
            }

        header .info-container {
            display: none;
        }

    .content {
        padding: 0 16px;
    }

        .content .nav {
            margin-top: 12px;
        }

            .content .nav li a span {
                display: none;
            }

        .content .step-indicator {
            font-size: 2.8rem;
            margin: 24px 0;
        }

        .content .info-text {
            margin: rem 0 2.4rem;
        }

        .content .form-group {
            width: 100% !important;
        }

        .content section#confirmation {
            min-height: calc(100vh - 466px);
        }

        .content section.bottom-bar {
            flex-wrap: wrap;
            padding: 16px 16px 0;
            margin: 0 -16px;
        }

            .content section.bottom-bar::before {
                display: none;
            }

            .content section.bottom-bar .btn {
                margin-bottom: 16px;
                min-width: calc(50% - 5px);
            }

            .content section.bottom-bar .bottom-bar_info {
                display: none;
            }

            .content section.bottom-bar .bottom-bar_info_mobile {
                display: block;
                width: 100vw;
                padding: 16px;
                margin: 0 -16px;
                border-top: 1px solid #E6E3E3;
            }

                .content section.bottom-bar .bottom-bar_info_mobile p {
                    font-size: 13px;
                    color: #363636;
                    margin: 0;
                }

                    .content section.bottom-bar .bottom-bar_info_mobile p a {
                        text-decoration: none;
                        cursor: pointer;
                        color: #0098CD;
                    }

    .summary {
        flex-wrap: wrap;
        width: 100%;
    }

        .summary span {
            width: 100%;
            text-align: center;
        }

    .credits-table .table-section {
        margin-bottom: 32px;
    }

        .credits-table .table-section .table-header {
            padding: 0 18px;
            color: white;
            height: 40px;
            display: flex;
            align-items: center;
            justify-content: space-between;
        }
        .credits-table .table-section .table-header .label-table-header {
            color:white!important;
        }

            .credits-table .table-section .table-header .arrow {
                margin-right: 0;
            }

        .credits-table .table-section .table-sub-header {
            padding: 0 18px;
            height: 40px;
            position: relative;
        }

            .credits-table .table-section .table-sub-header > div:first-of-type {
                width: 100%;
            }

            .credits-table .table-section .table-sub-header > div:nth-of-type(2), .credits-table .table-section .table-sub-header > div:nth-of-type(3), .credits-table .table-section .table-sub-header > div:nth-of-type(4) {
                display: none;
            }

            .credits-table .table-section .table-sub-header .arrow {
                right: 18px;
            }

        .credits-table .table-section button:hover,
        .credits-table .table-section input[type="button"]:hover,
        .credits-table .table-section input[type="submit"]:hover {
            cursor: pointer;
        }

        .credits-table .table-section .table-row {
            height: auto;
            padding: 16px 16px 16px 18px;
            align-items: flex-start;
            flex-wrap: wrap;
            position: relative;
        }

            .credits-table .table-section .table-row .section-title {
                display: none;
            }

            .credits-table .table-section .table-row .checkbox-container {
                height: 100%;
                top: 0;
                left: 0;
                padding: 0;
            }

                .credits-table .table-section .table-row .checkbox-container .checkmark {
                    top: 18px;
                }

            .credits-table .table-section .table-row > div.section-title {
                display: block;
                font-size: 1.2rem;
                color: #555555;
                text-transform: uppercase;
                margin: 0;
            }

                .credits-table .table-section .table-row > div.section-title:nth-child(3), .credits-table .table-section .table-row > div.section-title:nth-child(7) {
                    width: calc(((100% - 60px) / 2) + 60px);
                    padding-left: 60px;
                }

                .credits-table .table-section .table-row > div.section-title:nth-child(4) {
                    width: calc(((100% - 60px) / 2));
                }

                .credits-table .table-section .table-row > div.section-title:nth-child(7) {
                    margin-top: 8px;
                }

            .credits-table .table-section .table-row > div.subject {
                width: 100%;
                padding-left: 60px;
                margin-bottom: 8px;
            }

            .credits-table .table-section .table-row > div.kind, .credits-table .table-section .table-row > div.ects {
                width: calc(((100% - 60px) / 2) + 60px);
                padding-left: 60px;
            }

            .credits-table .table-section .table-row > div.status {
                width: calc(((100% - 60px) / 2));
            }

            .credits-table .table-section .table-row.disabled .section-title,
            .credits-table .table-section .table-row.completed .section-title {
                color: #5d5d5d;
            }

    .alert span {
        font-size: 1.4rem;
    }

    .alert img {
        width: 32px;
        margin-right: 16px;
    }

    #background-modal {
        height: 100vh;
        width: 100vw;
        position: fixed;
        top: 0;
        left: 0;
        z-index: 1;
        background-color: rgba(77, 77, 77, 0.54);
        display: none;
    }

        #background-modal.show {
            display: block;
        }

    .modal-container {
        width: calc(100vw - 32px);
        height: 50vh;
        top: 50%;
        left: 16px;
        padding: 32px 16px;
        position: absolute;
        transform: translateY(-50%);
    }

        .modal-container .modal-title {
            font-size: 3rem;
            line-height: 3rem;
        }

        .modal-container .modal-description {
            margin-top: 3.2rem;
            font-size: 1.6rem;
        }

        .modal-container .btn-ok {
            align-self: flex-end;
        }

        .modal-container#recover-password section .btn {
            width: 100%;
            margin-top: 1.6rem;
        }

    footer .wrapper {
        display: block;
        text-align: center;
    }

/*
    footer section.bottom-bar .btn {
        font-size: 1.2rem;
        text-transform: uppercase;
        text-decoration: underline;
        padding: 0.8rem 1.2rem;
        cursor: pointer;
    }*/


    footer section.bottom-bar {
        display: block;
        text-align: center;
    }




    footer section.bottom-bar {
/*        display: block;
        text-align: center;*/
        flex-wrap: wrap;
        padding: 16px 16px 0;
        margin: 0 -16px;
    }

        footer section.bottom-bar::before {
            display: none;
        }

        footer section.bottom-bar .btn {
            margin-bottom: 16px;
            min-width: calc(50% - 5px);
        }

        footer section.bottom-bar .bottom-bar_info {
            display: none;
        }

        footer section.bottom-bar .bottom-bar_info_mobile {
            display: block;
            width: 100vw;
            padding: 16px;
            margin: 0 -16px;
            border-top: 1px solid #E6E3E3;
        }

            footer section.bottom-bar .bottom-bar_info_mobile p {
                font-size: 13px;
                color: #363636;
                margin: 0;
            }

                footer section.bottom-bar .bottom-bar_info_mobile p a {
                    text-decoration: none;
                    cursor: pointer;
                    color: #0098CD;
                }


}

.touch .content section .form-group select {
    width: 100% !important;
    padding: 24px 20px 10px;
    background: transparent;
    z-index: 1;
}

    .touch .content section .form-group select + label {
        position: absolute;
        height: 30px;
        left: 20px;
        top: 8px;
        font-size: 1.2rem;
        color: #8F8F8F;
        text-transform: uppercase;
        font-weight: bold;
        width: calc(100% - 40px);
        background-color: transparent;
    }

        .touch .content section .form-group select + label .mandatory {
            display: inline-block;
            margin-left: 2px;
        }

.centrado {
    display: flex;
    justify-content: center;
}


.outside {
    position: relative;
    width: 100%;
    height: 200px;
}


.contenido {

}
/*CSS versión del ensamblado*/
.box-build {
    font: normal 14px Arial, Helvetica, sans-serif;
    text-align: center;
    padding: 5px;
    margin-top: 5px;
    color: #666666;
}

.VersionEnsamblado {
    display: flex;
    margin-top: 10px;
}

/*Div de bloqueo y spinner*/
.spinner {
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    width: 40px;
    height: 40px;
    border-radius: 50%;
    border: 3px solid #f3f3f3;
    border-top: 3px solid #3498db;
    animation: spin 2s linear infinite;
}


.bloqueo {
    position: fixed;
    top: 0;
    left: 0;
    z-index: 9000;
    width: 100%;
    height: 100%;
    background-color: rgba(0, 0, 0, 0.25);
    display: none;
    pointer-events: auto;
}


.custom-textarea {
    cursor: default;
    padding: 30px 20px 10px;
    background-color: #F8F8F8;
    height: 130px;
    width: 100%;
    position: relative;
    border: none;
    font-size: 1.6rem;
    color: #363636;
    box-sizing: border-box;
    font-family: 'Open Sans', sans-serif;
    -webkit-font-smoothing: antialiased;
    resize: none !important;
}


 .custom-textarea + label {
        top: 8px;
        height: auto;
        margin-bottom: 2px;
        background-color: transparent;        
        position: absolute;
        height: auto;
        left: 20px;       
        font-size: 1.2rem;
        color: #8F8F8F;
        text-transform: uppercase;
        font-weight: bold;
        width: auto;       
        transition: top 0.1s ease-in;
 }

    .custom-textarea:focus {
        outline: none;
    }



.alerta {
    padding: 1rem;
    margin: 1rem 0;
    border-radius: 0.25rem;
    list-style-type: none; 
}

.alerta-success {
    font-size: 1.6rem !important;   
    color: #363636; 
    background-color: #d4edda;
    border: 1px solid #c3e6cb; 
}
.alerta-primary {
    font-size: 1.6rem !important;
    color: white;
    background-color: rgba(0, 152, 205, 0.7);
    border: 1px solid rgba(0, 152, 205, 0.7);
}

.txt-observaciones {
    background-color: transparent;
    color: #363636;
    border: none;
    width: 100%;
    min-height: 125px;
    resize: none;
    border-color: transparent;
    box-sizing: border-box;
}

    .txt-observaciones:focus {
        outline: none;
        border: none;
    }


.custom-card {
    background-color: #f8f9fa; 
    color: #212529;
    border: 1px solid #ced4da;
    border-radius: 0.25rem;
    box-shadow: 0 0.125rem 0.25rem rgba(0, 0, 0, 0.075);
    width: 300px;
    margin: 20px;
}

.custom-card-body {
    padding-top: 3px;
    padding-left: 10px;
    padding-bottom: 3px;
    padding-right: 10px;
    border-bottom-width: 2px;
}

.section-legend {
    font-size: 1.6rem;
    margin-top: 6px;
    margin-bottom: 6px;
    /*margin: 2.4rem 0 1.6rem;*/
    font-weight: 600;
}


@keyframes spin {
    0% {
        transform: rotate(0deg);
    }

    100% {
        transform: rotate(360deg);
    }
}