:root {
    --primary-50: #EBF5FF;
    --primary-100: #E1EFFE;
    --primary-200: #C3DDFD;
    --primary-300: #A4CAFE;
    --primary-400: #76A9FA;
    --primary-500: #3F83F8;
    --primary-600: #0064FA; /* Theme color */
    --primary-700: #1C64F2;
    --primary-800: #1E429F;
    --primary-900: #233876;
}

/* Tailwind Color Overrides */
.bg-primary-50 { background-color: var(--primary-50); }
.bg-primary-100 { background-color: var(--primary-100); }
.bg-primary-200 { background-color: var(--primary-200); }
.bg-primary-300 { background-color: var(--primary-300); }
.bg-primary-400 { background-color: var(--primary-400); }
.bg-primary-500 { background-color: var(--primary-500); }
.bg-primary-600 { background-color: var(--primary-600); }
.bg-primary-700 { background-color: var(--primary-700); }
.bg-primary-800 { background-color: var(--primary-800); }
.bg-primary-900 { background-color: var(--primary-900); }

.text-primary-50 { color: var(--primary-50); }
.text-primary-100 { color: var(--primary-100); }
.text-primary-200 { color: var(--primary-200); }
.text-primary-300 { color: var(--primary-300); }
.text-primary-400 { color: var(--primary-400); }
.text-primary-500 { color: var(--primary-500); }
.text-primary-600 { color: var(--primary-600); }
.text-primary-700 { color: var(--primary-700); }
.text-primary-800 { color: var(--primary-800); }
.text-primary-900 { color: var(--primary-900); }

.border-primary-50 { border-color: var(--primary-50); }
.border-primary-100 { border-color: var(--primary-100); }
.border-primary-200 { border-color: var(--primary-200); }
.border-primary-300 { border-color: var(--primary-300); }
.border-primary-400 { border-color: var(--primary-400); }
.border-primary-500 { border-color: var(--primary-500); }
.border-primary-600 { border-color: var(--primary-600); }
.border-primary-700 { border-color: var(--primary-700); }
.border-primary-800 { border-color: var(--primary-800); }
.border-primary-900 { border-color: var(--primary-900); }

.focus\:ring-primary-500:focus { --tw-ring-color: var(--primary-500); }
.hover\:bg-primary-700:hover { background-color: var(--primary-700); }
.hover\:text-primary-600:hover { color: var(--primary-600); }

/* Decorative font */
.font-geist-mono {
    font-family: ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Geist Mono", monospace;
}

/* AI Logos Scroll */
.partner-logos-scroll {
    width: 100%;
    overflow: hidden;
    position: relative;
}

.logo-container {
    display: flex;
    animation: scroll 30s linear infinite;
    white-space: nowrap;
}

.logo-item {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    margin: 0 1.5rem;
    padding: 1rem 1.5rem;
    border: 1px solid #e5e7eb;
    border-radius: 0.75rem;
    background-color: white;
    min-width: 120px;
    height: 48px;
    font-weight: 500;
    color: #6b7280;
}

@keyframes scroll {
    0% {
        transform: translateX(0);
    }
    100% {
        transform: translateX(-50%);
    }
}

/* Testimonials slider */
.testimonials-slider {
    width: 100%;
    overflow: hidden;
    position: relative;
}

.testimonials-track {
    display: flex;
    animation: testimonialScroll 40s linear infinite;
}

.testimonial-card {
    flex: 0 0 350px;
    margin: 0 1rem;
    padding: 1.5rem;
    border: 1px solid #ECEEF2;
    border-radius: 0.5rem;
    background-color: white;
    box-shadow: 0 2px 8px 0 rgba(0, 0, 0, 0.03), 0 1px 3px 0 rgba(0, 0, 0, 0.01);
}

@keyframes testimonialScroll {
    0% {
        transform: translateX(0);
    }
    100% {
        transform: translateX(-50%);
    }
}

/* Responsive adjustments */
@media (max-width: 768px) {
    .testimonial-card {
        flex: 0 0 300px;
    }
    
    .logo-item {
        min-width: 100px;
        margin: 0 1rem;
    }
}
