body {
        font-family: 'Sora', sans-serif;
        background-color: #FBF9F6;
        color: #1E2A4A;
}

.fade-in-up {
        opacity: 0;
        transform: translateY(30px);
        transition: opacity 0.8s cubic-bezier(0.25, 0.46, 0.45, 0.94), transform 0.8s cubic-bezier(0.25, 0.46, 0.45, 0.94);
}

.fade-in-up.visible {
        opacity: 1;
        transform: translateY(0);
}

.page {
        transition: opacity 0.5s ease-in-out;
}

.page.hidden {
        opacity: 0;
        pointer-events: none;
        position: absolute;
}

.modal-overlay {
        transition: opacity 0.3s ease;
}

.modal-content {
        transition: transform 0.3s ease;
        transform: scale(0.95);
}

.modal-overlay:not(.hidden) .modal-content {
        transform: scale(1);
}

.loader {
        border: 4px solid #f3f3f3;
        border-top: 4px solid #F56565;
        border-radius: 50%;
        width: 40px;
        height: 40px;
        animation: spin 1s linear infinite;
        margin: 20px auto;
}

@keyframes spin {
        0% {
                transform: rotate(0deg);
        }

        100% {
                transform: rotate(360deg);
        }
}

.faq-answer {
        max-height: 0;
        overflow: hidden;
        transition: max-height 0.5s ease-in-out, padding 0.5s ease-in-out;
        padding-left: 1.5rem;
        padding-right: 1.5rem;
}