@import url('https://fonts.googleapis.com/css2?family=Alan+Sans:wght@300..900&display=swap');
@import url('https://fonts.googleapis.com/css2?family=Nunito:ital,wght@0,200..1000;1,200..1000&display=swap');

body {
    font-family: 'Nunito', sans-serif;
    background-color: #ffffff;
}

h1,
h2,
h3,
h4,
h5,
h6 {
    font-family: "Alan Sans", sans-serif;
}

.beige-pattern {
    background-color: #faf8f5;
    background-image: radial-gradient(#ebe1d1 0.75px, transparent 0.75px), radial-gradient(#ebe1d1 0.75px, #faf8f5 0.75px);
    background-size: 30px 30px;
    background-position: 0 0, 15px 15px;
}

.hide-scrollbar::-webkit-scrollbar {
    display: none;
}

.hide-scrollbar {
    -ms-overflow-style: none;
    scrollbar-width: none;
}

@keyframes marquee-left {
    0% {
        transform: translateX(0);
    }

    100% {
        transform: translateX(-50%);
    }
}

@keyframes marquee-right {
    0% {
        transform: translateX(-50%);
    }

    100% {
        transform: translateX(0);
    }
}

.marquee-track-left {
    display: flex;
    width: max-content;
    animation: marquee-left 30s linear infinite;
}

.marquee-track-right {
    display: flex;
    width: max-content;
    animation: marquee-right 30s linear infinite;
}

.marquee-row:hover .marquee-track-left,
.marquee-row:hover .marquee-track-right {
    animation-play-state: paused;
}


.beige-pattern {
    background-color: #faf8f5;
    background-image: radial-gradient(#ebe1d1 0.75px, transparent 0.75px), radial-gradient(#ebe1d1 0.75px, #faf8f5 0.75px);
    background-size: 30px 30px;
    background-position: 0 0, 15px 15px;
}

/* Custom Animations */
@keyframes float {

    0%,
    100% {
        transform: translateY(0px);
    }

    50% {
        transform: translateY(-10px);
    }
}

.animate-float {
    animation: float 4s ease-in-out infinite;
}

.reveal-on-scroll {
    opacity: 0;
    transform: translateY(20px);
    transition: all 0.8s cubic-bezier(0.16, 1, 0.3, 1);
}

.reveal-on-scroll.active {
    opacity: 1;
    transform: translateY(0);
}

.hide-scrollbar::-webkit-scrollbar {
    display: none;
}

.hide-scrollbar {
    -ms-overflow-style: none;
    scrollbar-width: none;
}

/* Custom CSS/Animations Injection for Services Page */
    @keyframes float-slower {
        0%, 100% { transform: translateY(0px) rotate(0deg); }
        50% { transform: translateY(-15px) rotate(3deg); }
    }
    @keyframes float-faster {
        0%, 100% { transform: translateY(0px) scale(1); }
        50% { transform: translateY(-10px) scale(1.03); }
    }
    .animate-float-slow {
        animation: float-slower 8s ease-in-out infinite;
    }
    .animate-float-fast {
        animation: float-faster 5s ease-in-out infinite;
    }
    .glow-hover:hover {
        box-shadow: 0 0 40px rgba(244, 178, 54, 0.25);
    }

/* Active amount button (modal donate form) */
.modal-preset-btn.btn-active {
    border-color: #F4B236 !important;
    color: #ee9a26 !important;
    background-color: #fff3d6 !important;
}

/* Active amount button (inline donate form) */
.amount-btn.btn-active {
    border-color: #0f223c !important;
    background-color: #0f223c !important;
    color: #ffffff !important;
}

/* New Logo Theme Color Variables & Utilities */
:root {
    --logo-blue: #2850a0;
    --logo-green: #50b450;
    --logo-orange: #f08c3c;
    --logo-navy: #0f223c;
}

.text-logo-blue { color: var(--logo-blue); }
.bg-logo-blue { background-color: var(--logo-blue); }
.border-logo-blue { border-color: var(--logo-blue); }

.text-logo-green { color: var(--logo-green); }
.bg-logo-green { background-color: var(--logo-green); }
.border-logo-green { border-color: var(--logo-green); }

.text-logo-orange { color: var(--logo-orange); }
.bg-logo-orange { background-color: var(--logo-orange); }
.border-logo-orange { border-color: var(--logo-orange); }

/* Filter Buttons active & hover white text fix */
.filter-btn {
    transition: all 0.3s ease;
}
.filter-btn.bg-\[\#264998\],
.filter-btn:hover {
    background-color: #264998 !important;
    color: #ffffff !important;
    border-color: #264998 !important;
}