/* Custom styles that complement Tailwind */

/* Smooth scroll offset for fixed nav */
section[id] {
    scroll-margin-top: 80px;
}

/* Custom scrollbar */
::-webkit-scrollbar {
    width: 8px;
}
::-webkit-scrollbar-track {
    background: #f1f5f9;
}
::-webkit-scrollbar-thumb {
    background: #94a3b8;
    border-radius: 4px;
}
::-webkit-scrollbar-thumb:hover {
    background: #64748b;
}

/* Subtle gradient animation for hero background blobs */
@keyframes float {
    0%, 100% { transform: translate(0, 0) scale(1); }
    33% { transform: translate(30px, -30px) scale(1.05); }
    66% { transform: translate(-20px, 20px) scale(0.95); }
}

.hero-pattern .absolute.top-20.right-0 {
    animation: float 8s ease-in-out infinite;
}
.hero-pattern .absolute.bottom-20.left-0 {
    animation: float 10s ease-in-out infinite reverse;
}

/* Ensure all links have proper contrast */
a:not(.btn-primary):not([class*="text-white"]):not([class*="text-slate-"]) {
    color: inherit;
    text-decoration: none;
}

/* Focus visible for accessibility */
*:focus-visible {
    outline: 2px solid #14b8a6;
    outline-offset: 2px;
}

/* Prevent layout shift on images */
img {
    max-width: 100%;
    height: auto;
}
