@import url('https://fonts.googleapis.com/css2?family=Playfair+Display:wght@400;700&family=Source+Sans+Pro:wght@300;400;600&display=swap');

body {
    font-family: 'Source Sans Pro', sans-serif;
    color: #333;
    line-height: 1.6;
}

h1, h2, h3, h4, h5, h6 {
    font-family: 'Playfair Display', serif;
    font-weight: 700;
}

/* Smooth scrolling */
html {
    scroll-behavior: smooth;
}

/* Custom animation for cards */
@keyframes float {
    0% { transform: translateY(0px); }
    50% { transform: translateY(-10px); }
    100% { transform: translateY(0px); }
}

.hover-float:hover {
    animation: float 3s ease-in-out infinite;
}

/* Custom scrollbar */
::-webkit-scrollbar {
    width: 8px;
}

::-webkit-scrollbar-track {
    background: #f1f1f1;
}

::-webkit-scrollbar-thumb {
    background: #3b82f6;
    border-radius: 4px;
}

::-webkit-scrollbar-thumb:hover {
    background: #2563eb;
}


/* ----------------------------------------- */

/* === Dark Mode Styles === */

.dark body {
    background-color: #111827;
    color: #e5e7eb;
}

.dark .bg-white {
    background-color: #1f2937;
}

.dark .text-blue-900 {
    color: #cbd5e1;
}

.dark .text-gray-700,
.dark .text-gray-600 {
    color: #d1d5db;
}

.dark .bg-blue-600 {
    background-color: #2563eb;
}

.dark .bg-blue-700 {
    background-color: #1e40af;
}

.dark .bg-blue-900 {
    background-color: #0f172a;
}

.dark .text-white {
    color: #f9fafb;
}

.dark .bg-grey {
    background-color: rgba(31, 41, 55, 0.8);
}

.dark input[type="email"] {
    background-color: #1f2937;
    color: #f3f4f6;
}
