.comp-card-cursos {
    box-shadow: 0px 1px 4px rgba(55, 71, 79, 0.25);
    border-radius: 6px;
}

/* START Form */

.comp-alert-icon-container {
    border-radius: 100%;
    height: 46px;
    width: 46px;
    position: absolute;
    top: 0;
    left: 50%;
    transform: translate(-50%, -50%)
}

.comp-alert-icon {
    font-size: 20px;
    color: white;
}

.comp-alert-wrapper {
    border-width: 1px;
}

.comp-alert-wrapper-2 {
    border-width: 2px;
}

.cursor-default {
    cursor: default;
}

.main-button-text-active {
    font-weight: 700;
}

.comp-button-primary {
    border-radius: 6px;
    font-weight: 700;
}

.comp-label-default {
    font-size: 14px;
    line-height: 18px;
}

.comp-input-default {
    background: #FFFFFF;
    border: 1px solid #CECECE;
    border-radius: 8px;
    padding: 12px;
    font-size: 16px;
    line-height: 18px;
    font-weight: 500;
}

/* TODO: Debe ser select.comp-input-default cuando revisemos todos los selects que ya estén usando comp-input-default */
.comp-input-select-default {
    border: 1px solid #CECECE;
    border-radius: 8px;
    padding: 12px;
    font-size: 16px;
    line-height: 18px;
    font-weight: 500;
    appearance: none;
    -webkit-appearance: none;
    -moz-appearance: none;
    background-image: url("data:image/svg+xml;charset=UTF-8,<svg xmlns='http://www.w3.org/2000/svg' width='10' height='6'><path fill='%23999' d='M0 0l5 6 5-6z'/></svg>");
    background-repeat: no-repeat;
    background-position: right 12px center;
    cursor: pointer;
}

.comp-input-disabled {
    color: #8F8F8F;
}

/* Chrome, Safari, Edge, Opera */
input::-webkit-outer-spin-button,
input::-webkit-inner-spin-button {
    -webkit-appearance: none;
    margin: 0;
}

/* Firefox */
input[type=number] {
    -moz-appearance: textfield;
}

.comp-eye-password {
    position: absolute;
    right: 0;
    height: 100%;
    z-index: 10;
}

.comp-form {
    color: var(--gray)
}

    .comp-form > label {
        display: block;
        margin-bottom: 0;
    }

    .comp-form > :not([hidden]) ~ :not([hidden]) {
        margin-top: 1.25rem;
    }

    .comp-form > label > span {
        font-weight: 700;
        font-size: 1.125rem;
        line-height: 1.75rem;
    }

        .comp-form > label > span > span {
            font-weight: 700;
            font-size: 1.125rem;
            line-height: 1.75rem;
            color: var(--pink);
        }

    .comp-form > label > input {
        padding-left: 1rem;
        padding-right: 1rem;
        padding-bottom: .5rem;
        padding-top: .5rem;
        border-width: 0px;
        background-color: var(--lightGray-20);
        display: block;
        margin-top: .25rem;
    }

    .comp-form > label > textarea {
        padding-left: 1rem;
        padding-right: 1rem;
        padding-bottom: .5rem;
        padding-top: .5rem;
        border-width: 0px;
        background-color: var(--lightGray-20);
        display: block;
        margin-top: .25rem;
    }

    .comp-form button {
        border: none;
        font-size: 1.125rem;
        line-height: 1.75rem;
        padding-left: 1rem;
        padding-right: 1rem;
        padding-top: .25rem;
        padding-bottom: .25rem;
    }

.comp-form-group-button {
    display: flex;
}

/* COLORS */

.comp-form-primary > h3 {
    color: var(--primary);
    margin-top: 3rem;
}

.comp-form-primary > hr {
    background-color: var(--primary);
}

.comp-form-primary button {
    background-color: var(--lightGray-20);
    color: var(--gray)
}

    .comp-form-primary button.active {
        background-color: var(--primary);
        color: white;
    }

/* END Form */

/* START Cards Steps */
.comp-cards-steps {
    position: relative;
}

    .comp-cards-steps > :not([hidden]) ~ :not([hidden]) {
        margin-top: 1rem;
    }

    .comp-cards-steps > div > :not([hidden]) ~ :not([hidden]) {
        margin-top: 1.25rem;
    }

    .comp-cards-steps > div > div p {
        margin-bottom: 0;
    }

    .comp-cards-steps > div > div:nth-child(1) {
        text-align: center;
        background-color: white;
    }

        .comp-cards-steps > div > div:nth-child(1) > p {
            font-weight: 700;
        }

            .comp-cards-steps > div > div:nth-child(1) > p:nth-child(1) {
                font-size: 3rem;
                line-height: 1;
            }

            .comp-cards-steps > div > div:nth-child(1) > p:nth-child(2) {
                font-size: 2.25rem;
                line-height: 2.5rem;
            }

    .comp-cards-steps > div > div:nth-child(2) {
        margin-right: auto;
        margin-left: auto;
        border-radius: 50%;
        color: white;
        width: 10rem;
    }

    .comp-cards-steps > div > div:nth-child(3) {
        display: flex;
        background-color: white;
    }

        .comp-cards-steps > div > div:nth-child(3) > div:nth-child(1) {
            width: 10rem;
        }

        .comp-cards-steps > div > div:nth-child(3) > p {
            display: flex;
            align-items: center;
        }

    .comp-cards-steps > div:last-child {
        position: absolute;
        top: 0;
        bottom: 0;
        right: 0;
        left: 0;
        padding-top: 12.5rem;
        padding-bottom: 12.5rem;
        display: flex;
        justify-content: center;
        z-index: -10;
    }

        .comp-cards-steps > div:last-child > div {
            height: 100%;
            border-right-width: .25rem;
            border-style: dotted;
            border-color: var(--lightGray);
            width: 1px;
        }

/* COLORS */
.comp-card-step-success > div:nth-child(1) > p:nth-child(2) {
    color: var(--success);
}

.comp-card-step-success > div:nth-child(2) {
    background-color: var(--success);
}

.comp-card-step-yellow > div:nth-child(1) > p:nth-child(2) {
    color: var(--yellow);
}

.comp-card-step-yellow > div:nth-child(2) {
    background-color: var(--yellow);
}

.comp-card-step-violet > div:nth-child(1) > p:nth-child(2) {
    color: var(--violet);
}

.comp-card-step-violet > div:nth-child(2) {
    background-color: var(--violet);
}

.comp-card-step-blue > div:nth-child(2) {
    background-color: var(--blue-70);
}

.comp-card-step-cyan > div:nth-child(2) {
    background-color: var(--lightBlue);
}

/* md */
@media (min-width: 768px) {
    .comp-cards-steps > :not([hidden]) ~ :not([hidden]) {
        margin-top: 0;
    }

    .comp-cards-steps > div:last-child {
        padding-left: 12rem;
        padding-right: 12rem;
    }

        .comp-cards-steps > div:last-child > div {
            height: 1px;
            width: 100%;
            border-right-width: 0rem;
            border-bottom-width: .25rem;
        }
}
/* END Cards Steps */

/* START Card Info */
.comp-card-info {
    background-color: var(--lightGray-20);
    /*rediseño*/
    /*padding: 1rem 1rem 1rem 1rem;*/
    max-width: 29rem;
    height: 100%;
    border: 2px solid #000000;
    border-radius: 8px;
}

    .comp-card-info:hover {
        box-shadow: 0 0 24px rgb(56 72 92 / 50%);
    }

    .comp-card-info > img {
        width: 100%;
        /*height: 10rem;*/
        object-fit: cover;
        /*rediseño*/
        height: 13rem;
        border-radius: 8px 8px 0px 0px;
    }

    .comp-card-info > div {
        display: flex;
        margin-top: 1rem;
        margin-left: .5rem;
        justify-content: space-between;
    }

        .comp-card-info > div > div:first-child {
            margin-right: .5rem;
            flex-grow: 1;
        }

            .comp-card-info > div > div:first-child > p:first-child {
                margin-bottom: .5rem;
                font-size: 1.125rem;
                line-height: 1.75rem;
                font-weight: 700;
            }

            .comp-card-info > div > div:first-child > p:not(:first-child) {
                /*margin-bottom: 0;*/
                /*rediseño*/
                margin-bottom: 12px;
                font-size: 20px;
            }

        .comp-card-info > div > div:last-child > svg {
            width: 3rem;
        }
/* COLORS */
.comp-card-info-terceary {
    color: var(--terceary);
}
/* md */
@media (min-width: 768px) {
    .comp-card-info {
        /*max-width: 24rem;*/
        max-width: 29rem;
        height: 100%;
        /*rediseño*/
        border: 2px solid #000000;
        border-radius: 8px;
    }

        .comp-card-info > div > div:first-child > p:first-child {
            /*font-size: 1.5rem;
            line-height: 2rem;*/
            /*rediseño*/
            font-size: 1.7rem;
            line-height: 2rem;
            padding-bottom: 12px;
        }

        .comp-card-info > div > div:last-child > svg {
            width: 4rem;
        }
}
/* END Card Info */

/* START Job Offer */
.comp-job-offer {
    background-color: var(--lightGray-20);
    padding-right: 1.5rem;
    padding-left: 1.5rem;
    padding-top: .5rem;
    padding-bottom: .5rem;
}

    .comp-job-offer > div:first-child > p:first-child {
        font-weight: 700
    }

    .comp-job-offer > div:last-child {
        text-align: right;
    }

        .comp-job-offer > div:last-child button {
            background: none;
            border: none;
            padding-top: .25rem;
            padding-bottom: .25rem;
            padding-left: 1rem;
            padding-right: 1rem;
        }
/* COLORS */
.comp-job-offer-terceary > div:last-child button {
    background-color: var(--terceary);
    color: white;
}
/* md */
@media (min-width: 768px) {
    .comp-job-offer {
        display: flex;
        align-items: center;
    }

        .comp-job-offer > div:first-child > p:first-child {
            font-size: 1.5rem;
            line-height: 2rem;
            margin-bottom: .25rem;
        }

        .comp-job-offer > div:last-child {
            margin-left: 6rem;
        }

            .comp-job-offer > div:last-child button {
                font-size: 1.125rem;
                line-height: 1.75rem;
                padding-left: 2.5rem;
                padding-right: 2.5rem;
            }
}
/* END Job Offer */

/* START Header */

.comp-header {
    padding-top: 37px;
    padding-bottom: 31px;
    z-index: 1;
}

@media (max-width: 992px) {
    .comp-header {
        padding-top: 16px;
        padding-bottom: 16px;
    }
}

/* END Header */

/* START Navbar */

.comp-navbar {
    z-index: 100;
}

.comp-nav-list {
    padding-top: 20px;
    padding-bottom: 20px;
}

.comp-nav-button {
    display: block;
    padding: 10px;
}

    .comp-nav-button:hover {
        color: white;
    }

@media (max-width: 992px) {
    .comp-navbar {
        top: 92px;
    }
}

.navbar-collapse.show {
    transition: all .15s linear !important;
    overscroll-behavior-y: contain;
    overflow-y: auto;
}

.navbar-height-overflow {
    height: calc(100vh - 54px)
}

.navbar-height-auto {
    height: auto
}



.collapsing {
    transition: all .15s linear !important;
}
/* END Navbar */

/* START Buttons */

/* COLORS */
.border-main-button {
    --border-button: #0072BB;
}

.border-white {
    --border-button: white;
}

.comp-button {
    border: 2px solid var(--border-button);
    border-radius: 6px;
    font-size: 16px;
    font-weight: 700;
    line-height: 20px;
    margin-left: 10px;
    margin-right: 10px;
    padding: 8px 34px;
}

@media (max-width: 992px) {
    .comp-button {
        border: 0;
        font-size: 18px;
        font-weight: 500;
        line-height: 25px;
        margin: 0;
        padding: 10px;
    }
}

.comp-button:hover {
    color: white
}

.comp-button-no-hover:hover {
    color: #0072BB
}

.comp-button-ciudadanos {
    border-width: 2px;
    border-radius: 6px;
    padding: 8px 34px;
}
/* END Buttons */

/* START Banner */

.comp-banner-text-container {
    transform: translateY(-50%)
}

/* END Banner */
