/* Faz o body e html ocuparem toda a altura da tela */
html,
body {
    height: 100% !important;
    margin: 0;
    display: flex;
    flex-direction: column;
}

/* O main deve crescer para empurrar o footer para o fim */
main {
    flex: 1;
}

/* Estilização do footer */
footer {
    background-color: #f4f4f4;
    padding: 10px;
    text-align: center;
    width: 100%;
}

body.swal2-shown {
    overflow: hidden !important;
    /* Evita rolagem forçada */
    padding-right: 0 !important;
    /* Evita deslocamento lateral ao abrir o modal */
}

.swal2-container {
    position: fixed !important;
    /* Mantém o modal fixo na tela sem afetar o body */
    z-index: 9999;
    /* Garante que ele sempre fique acima do conteúdo */
}

.lobster-regular {
    font-family: "Lobster", serif;
    font-weight: 400;
    font-style: normal;
}

.btn-orange {
    background-color: orange;
    border-color: orange;
    color: #fff;
}

.btn-orange-active {
    background-color: #e59400;;
    border-color: #e59400;;
    color: #fff;
}

.btn-outline-orange {
    background-color: transparent;
    border-color: orange;
    color: orange;
}

.text-orange {
    --bs-text-opacity: 1;
    color: #FFA500 !important;
}

.bg-orange {
    background-color: #FFA500 !important;
}

.border-orange {
    border-color: #FFA500 !important;
}

.animate {
    opacity: 0;
}

.animate.visible {
    animation: fadeIn 0.5s ease-in-out forwards;
}

@keyframes fadeIn {
    from {
        opacity: 0;
        transform: translateY(50px);
    }

    to {
        opacity: 1;
        transform: translateY(0);
    }
}