/* Host Child Theme Custom CSS
   Inherits from: Twenty-One
*/

/* --- Fonts & Typography --- */
body {
    font-family: 'Open Sans', sans-serif;
    color: #343A40; /* Deep charcoal for body text */
}

h1, h2, h3, h4, h5, h6 {
    font-family: 'Montserrat', sans-serif;
}

/* --- Brand Colors --- */
/* Added !important to force override */
.bg-primary {
    background-color: #0A4D68 !important;
}

.text-primary {
    color: #0A4D68 !important;
}

.border-primary {
    border-color: #0A4D68 !important;
}

/* Force Yellow Button - ID Selector added for specificity */
#login-btn, .bg-secondary, a.bg-secondary {
    background-color: #FFC107 !important;
    color: #0A4D68 !important; /* Ensure text is Primary Blue on Yellow button */
    border-color: #FFC107 !important;
}

.text-secondary {
    color: #FFC107 !important;
}

.border-secondary {
    border-color: #FFC107 !important;
}

.bg-neutral-light {
    background-color: #F8F9FA !important;
}

/* --- Navigation --- */
.nav-link-active {
    color: #FFC107 !important;
}

/* --- Accordion (FAQ) --- */
.accordion-button svg {
    transition: transform 0.3s ease;
}

.accordion-button[aria-expanded="true"] svg {
    transform: rotate(180deg);
}

/* --- Animations --- */
.fade-in-section {
    opacity: 0;
    transform: translateY(30px);
    transition: opacity 0.8s cubic-bezier(0.645, 0.045, 0.355, 1), transform 0.8s cubic-bezier(0.645, 0.045, 0.355, 1);
}

    .fade-in-section.is-visible {
        opacity: 1;
        transform: translateY(0);
    }

@keyframes fadeInUp {
    from {
        opacity: 0;
        transform: translateY(20px);
    }

    to {
        opacity: 1;
        transform: translateY(0);
    }
}

.animate-fade-in-up {
    animation: fadeInUp 1s ease-out forwards;
}

/* --- Flyout Menu --- */
.flyout-menu {
    /* Handled by Tailwind/JS */
}
