/* =========================
   RESET E BASE
========================= */
html {
    scroll-behavior: smooth;
}

body {
    font-family: 'Inter', sans-serif;
    background-color: #fdfcfb;
    color: #2d2d2d;
    overflow-x: hidden;
}

/* =========================
   ANIMAÇÕES
========================= */

/* Transição do background do banner */
#hero-bg {
    transition: opacity 1s ease-in-out;
}

/* Zoom suave do banner */
@keyframes slow-zoom {
    0% {
        transform: scale(1);
    }
    100% {
        transform: scale(1.1);
    }
}

.animate-slow-zoom {
    animation: slow-zoom 20s ease-in-out infinite alternate;
}

/* =========================
   NAVBAR
========================= */

.nav-scrolled {
    background: rgba(255, 255, 255, 0.95);
    backdrop-filter: blur(12px);
    box-shadow: 0 4px 20px rgba(0, 0, 0, 0.05);
    padding: 12px 0 !important;
}

.nav-scrolled .logo-text {
    color: #1a1a1a;
}

.nav-scrolled .nav-link {
    color: #4a4a4a;
}

.nav-scrolled .mobile-btn {
    color: #1a1a1a;
}

/* =========================
   GALERIA (Masonry Layout)
========================= */

.gallery-columns {
    column-count: 1;
    column-gap: 1.5rem;
}

@media (min-width: 768px) {
    .gallery-columns {
        column-count: 2;
    }
}

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

/* Item da galeria */
.gallery-item {
    break-inside: avoid;
    margin-bottom: 1.5rem;
    transition: all 0.4s ease;
}

/* Quando item é filtrado (escondido) */
.gallery-item.hide {
    opacity: 0;
    transform: scale(0.95);
    pointer-events: none;
    position: absolute;
}

/* =========================
   MENU MOBILE
========================= */

#mobile-menu {
    transition: all 0.3s ease-in-out;
    opacity: 0;
    transform: translateY(-10px);
    pointer-events: none;
}

#mobile-menu.active {
    opacity: 1;
    transform: translateY(0);
    pointer-events: all;
}

/* =========================
   SELEÇÃO DE TEXTO
========================= */

::selection {
    background: #d4af37;
    color: white;
}