/* Google Fonts */
@import url('https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;600;700&family=Outfit:wght@300;400;500;600;700;800&display=swap');

:root {
    --primary-blue: #1e3a8a;
    --secondary-blue: #0ea5e9;
}

body {
    font-family: 'Inter', sans-serif;
    scroll-behavior: smooth;
}

h1,
h2,
h3,
h4,
h5,
h6,
.font-serif {
    font-family: 'Outfit', sans-serif;
}

/* Custom Gradients & Animations */
.hero-gradient {
    background: linear-gradient(to right, rgba(248, 250, 252, 1) 0%, rgba(248, 250, 252, 0.95) 40%, rgba(248, 250, 252, 0) 100%);
}

@media (max-width: 1024px) {
    .hero-gradient {
        background: linear-gradient(to right, rgba(248, 250, 252, 0.9) 0%, rgba(248, 250, 252, 0.7) 100%);
    }
}

/* Smooth Transitions */
.transition-all {
    transition-duration: 300ms;
}

/* Hover Effects */
.hover-lift {
    transition: transform 0.3s ease;
}

.hover-lift:hover {
    transform: translateY(-5px);
}

@keyframes bounce-slow {

    0%,
    100% {
        transform: translateY(-5%);
        animation-timing-function: cubic-bezier(0.8, 0, 1, 1);
    }

    50% {
        transform: translateY(0);
        animation-timing-function: cubic-bezier(0, 0, 0.2, 1);
    }
}

.animate-bounce-slow {
    animation: bounce-slow 3s infinite;
}

@keyframes fade-in-up {
    from {
        opacity: 0;
        transform: translateY(20px);
    }

    to {
        opacity: 1;
        transform: translateY(0);
    }
}

.content-fade-in {
    animation: fade-in-up 1s ease-out forwards;
}

/* Custom underline for headings */
.decoration-8 {
    text-decoration-thickness: 8px;
}