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

body {
    font-family: 'Inter', sans-serif;
    scroll-behavior: smooth;
}

/* Custom Utilities for smooth transitions */
.nav-link {
    position: relative;
    transition: color 0.3s ease;
}

.nav-link::after {
    content: '';
    position: absolute;
    width: 0;
    height: 2px;
    display: block;
    margin-top: 5px;
    right: 0;
    background: #779c13;
    transition: width 0.3s ease;
}

.nav-link:hover::after, .nav-link.active::after {
    width: 100%;
    left: 0;
    background: #779c13;
}

/* Lightbox styles */
#lightbox {
    backdrop-filter: blur(8px);
    transition: opacity 0.3s ease;
}

.masonry-grid {
    column-count: 1;
    column-gap: 1.5rem;
}

@media (min-width: 640px) {
    .masonry-grid { column-count: 2; }
}

@media (min-width: 1024px) {
    .masonry-grid { column-count: 3; }
}

.masonry-item {
    break-inside: avoid;
    margin-bottom: 1.5rem;
}
