@layer utilities {
    .text-balance {
        text-wrap: balance;
    }
}

html.lenis {
    height: auto;
}

.lenis.lenis-smooth {
    scroll-behavior: auto;
}

.lenis.lenis-smooth [data-lenis-prevent] {
    overscroll-behavior: contain;
}

.lenis.lenis-stopped {
    overflow: hidden;
}

.lenis.lenis-scrolling iframe {
    pointer-events: none;
}

/* Custom Scrollbar */
::-webkit-scrollbar {
    width: 6px;
}

::-webkit-scrollbar-track {
    background: #050505;
}

::-webkit-scrollbar-thumb {
    background: #333;
    border-radius: 3px;
}

::-webkit-scrollbar-thumb:hover {
    background: #eab308;
}

/* Custom Cursor */
#cursor {
    pointer-events: none;
    z-index: 9999;
}

#cursor-follower {
    pointer-events: none;
    z-index: 9998;
}

/* Typography Enhancements */
body {
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
}

h1, h2, h3, h4, h5, h6 {
    text-rendering: optimizeLegibility;
}

/* Animation Utilities */
.staggered-text span {
    display: inline-block;
}

/* Image Hover Effects */
.project-card:hover h3 {
    text-shadow: 0 0 20px rgba(234, 179, 8, 0.3);
}
