/* Basic Animations */

@keyframes float {
    0% { transform: translate(0, 0) scale(1); }
    100% { transform: translate(6vw, 6vh) scale(1.1); }
}

/* Fluid reveal class used as fallback if GSAP isn't used everywhere */
.reveal {
    opacity: 0;
    transform: translateY(40px);
    transition: all 0.8s cubic-bezier(0.5, 0, 0, 1);
}

.reveal.active {
    opacity: 1;
    transform: translateY(0);
}

/* Hover effects for project cards — accent top-border glow */
.project-card::after {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 3px;
    background: linear-gradient(90deg, var(--accent-color), var(--accent-glow));
    opacity: 0;
    transition: opacity 0.4s ease;
    z-index: 3;
    border-radius: 16px 16px 0 0;
}

.project-card:hover::after {
    opacity: 1;
}

/* Lenis Recommended CSS */
html.lenis {
  height: auto;
}

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

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

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

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