@keyframes aparecer-modal {
    from {
        background-color: #00000000;
        backdrop-filter: blur(0px);
        opacity: 0;
    }

    to {
        background-color: #00000040;
        backdrop-filter: blur(10px);
        opacity: 1;
    }
}

@keyframes desaparecer-modal {
    from {
        background-color: #00000040;
        backdrop-filter: blur(10px);
        opacity: 1;
    }

    to {
        background-color: #00000000;
        backdrop-filter: blur(0px);
        opacity: 0;
    }
}

@keyframes descer-modal {
    from {
        top: -60px;
    }

    to {
        top: 0;
    }
}

@keyframes subir-modal {
    from {
        top: 0;
    }

    to {
        top: -60px;
    }
}

main {
    display: flex;
    flex-direction: column;
    gap: 30px;

    margin-block: 30px 60px;
}

#titulo {

    h1 {
        font-size: 2.5rem;
        font-weight: 700;
        color: var(--blue-dark);
        margin: 0;
    }

    em {
        font-size: 1.25rem;
        font-weight: 300;
        font-style: normal;
        letter-spacing: 0px;
        color: var(--gray-dark);

        margin: 0;
    }
}

#cursosDisponiveis {

    display: flex;
    flex-direction: column;
    gap: 30px;

    margin-block: 30px;

    h2 {
        font-size: 2.25rem;
        font-weight: 700;
        color: var(--blue-dark);
        margin: 0 90px;
    }

    .carrossel-customizado-container {
        --carrossel-itens-visiveis: 3;
        --carrossel-height: 100%;

        .carrossel-item {
            height: -webkit-fill-available;
            min-height: 500px;

            .cartao-curso {
                width: 100%;

                .curso-miniatura img {
                    aspect-ratio: 1;
                }
            }


        }

        .nome-duracao-container {
            display: flex;
            gap: 10px;

            .tempo-de-curso {
                display: flex;
                align-items: center;
                gap: 5px;

                font-size: 0.875rem;
                line-height: 1rem;
                font-weight: 500;
                color: var(--gray-dark);

                text-wrap-mode: nowrap;

                .icone-relogio {
                    width: 1rem;
                    height: 1rem;
                }
            }
        }


        .botao-ver-areas {
            color: var(--blue-dark);
            border: 1px solid var(--blue-dark);
        }

        .areas-do-curso {
            color: var(--blue-dark);
            border: 1px solid var(--blue-dark);
        }
    }

    .carrossel-customizado-btn-proximo,
    .carrossel-customizado-btn-anterior {
        width: 40px;
        height: 40px;

        border: none;
        background-color: transparent;
        background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16' fill='white' %3e%3cpath d='M4.646 1.646a.5.5 0 0 1 .708 0l6 6a.5.5 0 0 1 0 .708l-6 6a.5.5 0 0 1-.708-.708L10.293 8 4.646 2.354a.5.5 0 0 1 0-.708z'/%3e%3c/svg%3e");
    }

    .carrossel-lista:not(:has(.carrossel-item))+.carrossel-customizado-btn-proximo~img {
        display: none;
    }

}

#videosDisponiveis {

    display: flex;
    flex-direction: column;
    gap: 30px;

    margin-block: 30px;

    h2 {
        font-size: 2.25rem;
        font-weight: 700;
        color: var(--red-mid);
        margin: 0 90px;
    }

    .carrossel-customizado-container {
        --carrossel-itens-visiveis: 3;
        --carrossel-height: 100%;

        .carrossel-item {
            height: -webkit-fill-available;
            min-height: 460px;

            .cartao-video {
                width: 100%;

                .curso-miniatura {
                    position: relative;

                    &::after {
                        content: '';
                        position: absolute;
                        inset: 50% auto auto 50%;
                        transform: translate(-50%, -50%);

                        width: 3.75rem;
                        height: 3.75rem;

                        border-radius: 50%;
                        background: rgba(255, 255, 255, .08);
                        border: 2px solid transparent;

                        box-shadow: 0 0 0 2px rgba(255, 255, 255, .6), 0 16px 32px rgba(0, 0, 0, .12);
                        backdrop-filter: url(#frosted);
                        -webkit-backdrop-filter: url(#frosted);

                        background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='28' height='35' viewBox='0 0 28 35' fill='none'%3E%3Cpath d='M0.225098 34.9543V0.537598L27.2668 17.7459L0.225098 34.9543ZM5.14176 25.9813L18.048 17.7459L5.14176 9.51051V25.9813Z' fill='white'/%3E%3C/svg%3E");
                        background-repeat: no-repeat;
                        background-position: center;
                        background-position-x: 55%;
                        background-size: 40%;

                        display: grid;
                        place-items: center;
                        cursor: pointer;
                        outline: 0;
                    }

                    img {
                        aspect-ratio: 1;
                    }
                }
            }
        }
    }

    .carrossel-customizado-btn-proximo,
    .carrossel-customizado-btn-anterior {
        width: 40px;
        height: 40px;

        border: none;
        background-color: transparent;
        background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16' fill='white' %3e%3cpath d='M4.646 1.646a.5.5 0 0 1 .708 0l6 6a.5.5 0 0 1 0 .708l-6 6a.5.5 0 0 1-.708-.708L10.293 8 4.646 2.354a.5.5 0 0 1 0-.708z'/%3e%3c/svg%3e");
    }

    .carrossel-lista:not(:has(.carrossel-item))+.carrossel-customizado-btn-proximo~img {
        display: none;
    }

}

#cursosDisponiveis:has(.avisos-sem-conteudo) .avisos-sem-conteudo,
#videosDisponiveis:has(.avisos-sem-conteudo) .avisos-sem-conteudo {
    margin-left: 90px;
}

.carrossel-customizado-container {
    --carrossel-itens-visiveis: 3;
    --carrossel-height: 100%;
    position: relative;

    .carrossel-lista {

        .carrossel-item {
            background-color: rgba(255, 255, 255, 0.650);
            backdrop-filter: blur(40px);
            border-radius: 4px;

            height: -webkit-fill-available;

            &:hover,
            &:focus {
                background-color: #eeeeeea6;
            }

            button {
                display: flex;
                flex-direction: column;
                height: 100%;
                text-decoration: none;

                padding: 0;
                border: 0;
                background: transparent;
                text-align: start;
            }

            .curso-miniatura {
                width: 100%;

                img {
                    width: 100%;
                    height: 100%;
                    object-fit: cover;
                }
            }

            .corpo-item {
                position: relative;

                display: flex;
                flex-direction: column;
                justify-content: space-between;
                gap: 10px;

                padding: 20px;
                height: 100%;

                .informacoes-item {
                    display: flex;
                    flex-direction: column;
                    gap: 1rem;

                    h3 {
                        font-size: 1.25rem;
                        font-weight: 500;
                        color: var(--gray-dark);
                        margin: 0;
                        letter-spacing: 0px;

                        overflow: hidden;
                        text-overflow: ellipsis;
                        display: -webkit-box;
                        -webkit-line-clamp: 2;
                        -webkit-box-orient: vertical;
                    }

                    p {
                        font-size: 0.875rem;
                        font-weight: 500;
                        color: var(--gray-dark);
                        margin: 0;
                        letter-spacing: 0px;

                        overflow: hidden;
                        text-overflow: ellipsis;
                        display: -webkit-box;
                        -webkit-line-clamp: 3;
                        -webkit-box-orient: vertical;
                    }
                }


                .botao-ver-areas {
                    font-size: 1rem;
                    font-weight: 500;

                    border-radius: 18px;
                    padding: 5px 10px;

                    width: max-content;

                    background-color: #ffffff66;
                    transition: calc(var(--delay-default) / 2);

                    /* Remove o hover acidental em dispositivos móveis */
                    @media (hover: hover) and (pointer: fine) {
                        &:hover~.areas-do-curso {
                            bottom: 60px;
                            opacity: 1;
                        }
                    }

                    &.areas-aberto {
                        background-color: #ebebeb;

                        ~.areas-do-curso {
                            bottom: 60px;
                            opacity: 1;
                        }
                    }
                }

                .areas-do-curso {
                    list-style: none;
                    position: absolute;
                    bottom: 55px;

                    display: block;

                    color: white;
                    font-size: 1rem;
                    font-weight: 500;
                    opacity: 0;

                    background-color: #ffffffa6;

                    backdrop-filter: blur(7px);

                    border-radius: 18px;
                    padding: 10px 20px;
                    margin: 0;

                    width: max-content;
                    max-width: calc(100% - 40px);

                    transition: var(--delay-default);

                    li::first-letter {
                        text-transform: uppercase;
                    }
                }
            }
        }
    }



    .elemento-grafico {
        position: absolute;
        z-index: -1;

        &:nth-of-type(1) {
            left: 0;
        }

        &:nth-of-type(2) {
            right: 0;
            transform: rotate(90deg) translateX(80px);
        }
    }
}

.botao-carrossel {
    background: none;

    border: none;
    padding: 0;

    cursor: pointer;
    transition: var(--delay-default);

    .seta-carrossel {
        width: 50px;
        height: 50px;
    }

    &.botao-carrossel.botao-anterior {
        transform: rotate(180deg);

        &:hover,
        &:focus {
            transform: rotate(180deg) translateX(5px);
        }
    }

    &.botao-carrossel {

        &:hover,
        &:focus {
            background: none;
            transform: translateX(5px);
        }
    }
}

#materialDeApoio {

    .titulo-material-de-aapoio {
        margin-bottom: 30px;

        h2 {
            font-size: 2.25rem;
            font-weight: 700;
            color: var(--blue-dark);
            margin: 0;
        }

        em {
            font-size: 1rem;
            font-weight: 500;
            letter-spacing: 0px;
            color: var(--gray-dark);
        }
    }

    h3 {
        width: 100%;
        border-bottom: 1px solid var(--blue-dark);

        font-size: 1.5rem;
        font-weight: 700;
        letter-spacing: 0px;
        color: var(--blue-dark);
    }

    .documentos-de-apoio {
        display: grid;
        justify-content: start;
        grid-auto-flow: column;
        grid-template-columns: 180px;
        gap: 20px;

        padding-block: 2px 8px;

        overflow-x: scroll;

        &::-webkit-scrollbar {
            width: 8px;
            /* Largura da barra vertical */
            height: 8px;
            /* Largura da barra vertical */
        }

        &::-webkit-scrollbar-track {
            background: #f0f0f000;
            /* Cor do fundo da barra */
            border-radius: 4px;
            margin-left: 5px;
            /* cria espaço visual no topo e embaixo */
        }

        &::-webkit-scrollbar-thumb {
            background: #888;
            /* Cor da "alça" da barra */
            border-radius: 4px;
        }

        .anexo {
            display: flex;
            flex-direction: column;
            justify-content: space-between;
            align-items: center;

            width: 180px;
            height: 200px;

            padding: 20px 18px;
            border: 1px solid var(--blue-dark);
            border-radius: 25px;

            text-decoration: none;
            color: var(--blue-dark);
            font-weight: 500;
            font-size: 0.75rem;


            .icone-anexo {
                width: 56px;
                height: 56px;
            }

            span {
                font-size: 0.75rem;
                font-weight: 700;
                color: var(--blue-dark);
            }

            hr {
                border-bottom: 1px solid var(--blue-dark);
                border-top: 0;
                margin: 0;
                width: 100%;
            }

            h4 {
                font-size: 0.75rem;
                font-weight: 700;
                letter-spacing: 0px;
                text-align: center;
                color: var(--blue-dark);
                margin: 0;
            }

        }
    }
}

#modalCurso {
    position: fixed;
    top: 0;
    z-index: 10;

    display: none;

    width: 100vw;
    height: 100vh;

    opacity: 0;

    .modal-loading i {
        color: #0563bbd8;
    }

    &.modal-aberto {
        display: flex;
        align-items: center;

        animation: aparecer-modal calc(var(--delay-default) / 2) forwards;

        .container-modal {
            position: relative;

            display: flex;
            flex-direction: column;

            width: 1140px;
            max-width: 85vw;
            height: min-content;
            max-height: 85vh;
            background-color: white;

            margin: auto;
            border-radius: 40px;

            animation: descer-modal calc(var(--delay-default) / 2) forwards;

            .titulo-modal {
                font-size: 2.5rem;
                font-weight: 500;
                color: var(--gray-dark);

                padding: 30px;
                margin: 0;
            }

            .botao-fechar-modal {

                position: absolute;
                top: 0;
                right: 0;

                transform: translate(50%, -50%);

                width: 74px;
                height: 74px;

                clip-path: circle(50%);
                background-color: rgb(235 235 235);
                transition: var(--delay-default);
                border: none;

                z-index: 9998;

                svg {
                    width: 40px;
                    height: 40px;
                }

                &:hover {
                    background-color: rgba(255, 255, 255, 0.55);
                    backdrop-filter: blur(40px);
                }
            }

            .aspectos-do-curso {
                display: grid;
                grid-template-columns: repeat(4, 1fr);
                gap: 30px;
                padding: 0 30px 30px 30px;

                overflow-y: auto;

                &::-webkit-scrollbar {
                    width: 8px;
                    /* Largura da barra vertical */
                }

                &::-webkit-scrollbar-track {
                    background: #f0f0f000;
                    /* Cor do fundo da barra */
                    border-radius: 4px;
                    margin-bottom: 35px;
                    /* cria espaço visual no topo e embaixo */
                }

                &::-webkit-scrollbar-thumb {
                    background: #888;
                    /* Cor da "alça" da barra */
                    border-radius: 4px;
                }

                .informacoes-gerais-curso {
                    grid-column: span 2;

                    border-radius: 40px;

                    padding: 2.25rem;
                    background: linear-gradient(121deg, rgba(13, 99, 153, 1) 0%, rgba(105, 176, 214, 1) 100%);
                    box-shadow: 5px 5px 10px 0px #00000040;

                    h2 {
                        font-size: 1.5rem;
                        font-weight: 700;
                        color: white;

                        margin-bottom: 1.5rem;
                    }

                    ul {
                        display: flex;
                        flex-direction: column;
                        gap: 20px;

                        margin: 0;
                        padding: 0;

                        list-style: none;

                        li {
                            display: flex;
                            align-items: center;
                            gap: 10px;

                            color: white;

                            i {
                                font-size: 1.625rem;
                            }

                            h3 {
                                font-size: 1.25rem;
                                font-weight: 700;
                                color: white;

                                margin: 0;
                            }

                            em {
                                font-size: 1rem;
                                font-weight: 400;
                            }
                        }
                    }
                }

                .objetivos-curso {

                    grid-column: span 2;

                    border-radius: 40px;

                    padding: 2.25rem;

                    background: linear-gradient(120deg, rgba(243, 243, 243, 1) 0%, rgba(255, 255, 255, 1) 100%);
                    box-shadow: 5px 5px 10px 0px #00000040;

                    h2 {
                        font-size: 1.5rem;
                        font-weight: 700;
                        color: var(--blue-dark);

                        margin-bottom: 1.5rem;
                    }

                    ul {
                        display: flex;
                        flex-direction: column;
                        gap: 20px;

                        margin: 0;
                        padding: 0;

                        list-style: none;

                        li {
                            display: flex;
                            align-items: center;
                            gap: 10px;

                            color: var(--gray-dark);

                            i {
                                font-size: 1.625rem;
                                color: var(--blue-dark);
                            }
                        }
                    }
                }

                .sobre-curso {
                    grid-column: span 3;

                    padding: 30px;

                    h2 {
                        font-size: 1.5rem;
                        font-weight: 700;

                        color: var(--blue-dark);
                    }

                    p {
                        font-size: 1.25rem;
                        font-weight: 500;

                        color: var(--gray-dark);

                        margin: 0;
                    }
                }

                .container-acessar-curso {
                    grid-column: span 1;

                    display: flex;
                    justify-content: flex-end;
                    align-items: flex-end;


                    .caixa-acessar-curso {
                        display: flex;
                        flex-direction: column;
                        justify-content: space-between;
                        align-items: center;

                        width: 314px;
                        height: 154px;

                        border-radius: 25px;
                        padding: 12px;

                        background: linear-gradient(121deg, rgba(226, 239, 246, 1) 0%, rgba(167, 203, 237, 1) 100%);
                        box-shadow: 5px 5px 10px 0 #00000040;

                        h2 {
                            font-size: 1.5rem;
                            font-weight: 400;
                            place-content: center;

                            margin: 0;
                            height: 100%;

                            strong {
                                font-weight: 600;
                            }
                        }

                        .botao-acessar-curso {
                            position: relative;

                            flex-shrink: 0;
                            display: flex;
                            justify-content: center;
                            align-items: center;

                            color: white;
                            font-size: 1.5rem;
                            font-weight: 600;

                            width: 100%;
                            height: 74px;
                            padding-block: 10px;

                            background-color: #14a5ffb3;
                            border-radius: 25px;

                            text-decoration: none;
                            overflow: hidden;

                            span {
                                z-index: 2;
                            }

                            &::before {
                                content: '';
                                position: absolute;
                                top: 0;
                                left: -30%;
                                z-index: 1;

                                width: 100px;
                                height: 200%;

                                transform: rotate(30deg) translateY(-25%);
                                transition: var(--delay-default);
                                background: linear-gradient(90deg, rgba(22, 166, 255, 0) 0%, rgba(97, 194, 255, 1) 50%, rgba(22, 166, 255, 0) 100%);
                            }

                            &:hover::before {
                                left: 60%;
                            }
                        }
                    }
                }
            }
        }
    }

    &.modal-aberto.fechar-modal {
        animation: desaparecer-modal calc(var(--delay-default) / 2) forwards;
    }

    .container-modal {
        animation: subir-modal calc(var(--delay-default) / 2);
    }
}

#modalVideo {
    position: fixed;
    top: 0;
    z-index: 10;

    display: none;

    width: 100vw;
    height: 100vh;

    opacity: 0;

    .modal-loading i {
        color: #a10606cc;
    }

    &.modal-aberto {
        display: flex;
        align-items: center;

        animation: aparecer-modal calc(var(--delay-default) / 2) forwards;

        .container-modal {
            position: relative;

            display: flex;
            flex-direction: column;

            width: 1140px;
            max-width: 85vw;
            height: min-content;
            max-height: 85vh;
            background-color: white;

            margin: auto;
            border-radius: 40px;

            animation: descer-modal calc(var(--delay-default) / 2) forwards;

            &::before {
                content: '';

                position: absolute;
                top: 0;
                left: 0;
                z-index: -1;
                transform: translate(-40px, -40px);

                background-color: var(--red-mid);
                opacity: 35%;
                backdrop-filter: blur(30px);

                width: 55%;
                height: 80%;

                border-radius: 25px 10px 10px 10px;
            }

            .video-do-youtube {
                width: 100%;
                height: 550px;

                border-bottom-left-radius: 25px;
                border-bottom-right-radius: 25px;
            }

            .informacoes-video {
                display: flex;
                flex-direction: column;
                gap: 30px;

                padding-inline: 30px;
                padding-block: 15px;

                .titulo-modal {
                    font-size: 2.5rem;
                    font-weight: 500;

                    color: var(--gray-dark);
                    margin: 0;
                }

                p {
                    color: #666;
                    font-size: 1.25rem;
                    font-weight: 500;
                }
            }

            .botao-fechar-modal {
                position: absolute;
                top: 0;
                right: 0;

                transform: translate(50%, -50%);

                width: 74px;
                height: 74px;

                clip-path: circle(50%);
                background-color: rgb(235 235 235);
                transition: var(--delay-default);
                z-index: 9998;

                border: none;

                svg {
                    width: 40px;
                    height: 40px;
                }

                &:hover {
                    background-color: rgba(255, 255, 255, 0.55);
                    backdrop-filter: blur(40px);
                }
            }
        }
    }

    &.modal-aberto.fechar-modal {
        animation: desaparecer-modal calc(var(--delay-default) / 2) forwards;

        .container-modal {
            animation: subir-modal calc(var(--delay-default) / 2);
        }
    }
}

@media (max-width: 1200px) {

    #cursosDisponiveis,
    #videosDisponiveis {
        .carrossel-customizado-container {
            --carrossel-itens-visiveis: 2;
            justify-content: center;
        }
    }
}

@media (max-width: 1024px) {

    #cursosDisponiveis,
    #videosDisponiveis {
        .carrossel-customizado-container {
            --carrossel-itens-visiveis: 2.2;

            .carrossel-customizado-lista {
                width: calc(var(--carrossel-width) - var(--carrossel-itens-gap) * 2);

                .carrossel-item {
                    min-height: auto;
                }
            }
        }
    }

    #cursosDisponiveis,
    #videosDisponiveis {
        h2 {
            margin: 0 10px;
        }
    }

    #cursosDisponiveis:has(.avisos-sem-conteudo) .avisos-sem-conteudo,
    #videosDisponiveis:has(.avisos-sem-conteudo) .avisos-sem-conteudo {
        margin-left: 10px;
    }


    #modalCurso.modal-aberto {
        .container-modal {
            .titulo-modal {
                font-size: 1.5rem;
            }

            .aspectos-do-curso {
                grid-template-columns: 1fr;

                .informacoes-gerais-curso {
                    grid-column: span 1;
                }

                .objetivos-curso {
                    grid-column: span 1;
                }

                .sobre-curso {
                    grid-column: span 1;
                }

                .container-acessar-curso {
                    grid-column: span 1;
                }
            }
        }
    }
}

@media (max-width: 991px) {

    #modalVideo.modal-aberto {
        .container-modal {
            .botao-fechar-modal {
                transform: translate(25%, -25%);
                width: 50px;
                height: 50px;
            }

            .informacoes-video {
                .titulo-modal {
                    font-size: 1.5rem;
                }

                p {
                    font-size: 1rem;
                }
            }
        }
    }
}

@media (max-width: 767px) {

    #cursosDisponiveis,
    #videosDisponiveis {
        .carrossel-customizado-container {
            --carrossel-itens-visiveis: 1.5;
        }
    }

    .carrossel-customizado-container {
        .elemento-grafico {
            &:nth-of-type(1) {
                left: 50%;
                transform: translateX(-50%);
            }

            &:nth-of-type(2) {
                display: none;
            }
        }
    }

    #modalCurso.modal-aberto {
        .container-modal {

            .botao-fechar-modal {
                transform: translate(25%, -25%);
                width: 50px;
                height: 50px;
            }

            .titulo-modal {
                font-size: 1.5rem;
            }

            .aspectos-do-curso {
                grid-template-columns: 1fr;
                padding-inline: 15px;
                padding-bottom: 15px;
                margin-bottom: 15px;

                .informacoes-gerais-curso {
                    h2 {
                        font-size: 1rem;
                    }

                    ul {
                        li {
                            h3 {
                                font-size: 1rem;
                            }

                            em {
                                font-size: 0.875rem;
                            }
                        }
                    }
                }

                .objetivos-curso {
                    h2 {
                        font-size: 1rem;
                    }

                    ul {
                        li {
                            font-size: 0.8rem;
                        }
                    }
                }

                .sobre-curso {
                    padding: 15px 30px;

                    h2 {
                        font-size: 1rem;
                    }

                    p {
                        font-size: 0.8rem;
                    }
                }

                .container-acessar-curso {

                    h2 {
                        font-size: 1rem;
                    }

                    .caixa-acessar-curso {
                        width: 275px;
                        height: 120px;

                        .botao-acessar-curso {
                            font-size: 1rem;
                            height: 54px;
                        }
                    }
                }
            }
        }
    }
}

@media (max-width: 558px) {

    #cursosDisponiveis,
    #videosDisponiveis {
        .carrossel-customizado-container {
            --carrossel-itens-visiveis: 1.3;
        }
    }

    #modalCurso.modal-aberto {
        .container-modal {
            .aspectos-do-curso {
                .container-acessar-curso {
                    justify-content: center;
                }
            }
        }
    }
}

@media (max-width: 425px) {
    #titulo {
        h1 {
            font-size: 1.5rem;
        }

        em {
            font-size: 1rem;
        }
    }

    #cursosDisponiveis,
    #videosDisponiveis {
        margin-block: 0;

        h2 {
            font-size: 1.5rem;
        }

        .carrossel-customizado-container {
            --carrossel-itens-visiveis: 1.2;

            .carrossel-lista {
                .carrossel-item {
                    .corpo-item {
                        .informacoes-item {
                            h3 {
                                font-size: 1rem;
                            }
                        }
                    }

                    .botao-ver-areas {

                        /* Remove o hover acidental em dispositivos móveis */
                        @media (hover: hover) and (pointer: fine) {
                            &:hover~.areas-do-curso {
                                bottom: 50px;
                            }
                        }

                        &.areas-aberto {
                            background-color: #C3DBED;

                            ~.areas-do-curso {
                                bottom: 50px;
                            }
                        }
                    }

                    .areas-do-curso {
                        bottom: 40px;
                    }
                }
            }
        }
    }

    #materialDeApoio {
        .titulo-material-de-aapoio {
            h2 {
                font-size: 1.5rem;
            }

            em {
                font-size: 0.8rem;
            }
        }
    }

    #modalCurso.modal-aberto {
        .container-modal {
            max-width: 90vw;
        }
    }

    .carrossel-customizado-container {
        .carrossel-lista {
            .carrossel-item {
                .corpo-item {
                    padding: 10px 15px;
                }
            }
        }
    }
}

@media (max-width: 350px) {

    #modalCurso.modal-aberto {
        & .container-modal {
            max-width: 98vw;

            & .aspectos-do-curso {
                padding-inline: 10px;

                & .informacoes-gerais-curso {
                    border-radius: 15px;
                    padding-inline: 15px;
                }
            }

            .botao-fechar-modal {
                transform: translate(-25%, -25%);
                width: 50px;
                height: 50px;
            }
        }
    }
}