@import url('https://fonts.googleapis.com/css2?family=Inter:wght@400;500;600;700;900&display=swap');

html { scroll-behavior: smooth; }
body { font-family: 'Inter', sans-serif; color: #18181B; }

.gradient-hero { background: linear-gradient(135deg, #2563EB 0%, #7C3AED 45%, #EC4899 100%); }
.gradient-cta { background: linear-gradient(180deg, #2563EB 0%, #7C3AED 100%); }
.gradient-logo { background: linear-gradient(135deg, #2563EB 0%, #7C3AED 50%, #EC4899 100%); }
.gradient-text {
    background: linear-gradient(180deg, #2563EB 0%, #7C3AED 50%, #EC4899 100%);
    -webkit-background-clip: text; -webkit-text-fill-color: transparent; background-clip: text;
}
/* Page Loader */
#page-loader {
    position: fixed; inset: 0; z-index: 9999;
    background: #fff;
    display: flex; align-items: center; justify-content: center;
    transition: opacity 0.4s ease;
}
#page-loader.hidden {
    opacity: 0;
    pointer-events: none;
}
.loader-spinner {
    width: 40px; height: 40px;
    border-radius: 50%;
    border: 3px solid #E4E4E7;
    border-top-color: #2563EB;
    animation: spin 0.7s linear infinite;
}
@keyframes spin { to { transform: rotate(360deg); } }

.card-hover { transition: border-color 0.2s ease; }
.card-hover:hover { border-color: #2563EB; }
.tab-active { background-color: #EFF6FF; color: #2563EB; font-weight: 600; }
.tab-inactive { color: #71717A; font-weight: 500; }
.tab-inactive:hover { background-color: #F9FAFB; }
