body {
    background-color: #FAF7F2;
    color: #3D312B;
}

/* Custom Scrollbar */
::-webkit-scrollbar {
    width: 8px;
}

::-webkit-scrollbar-track {
    background: #FAF7F2;
}

::-webkit-scrollbar-thumb {
    background: #D6C4AE;
    border-radius: 4px;
}

::-webkit-scrollbar-thumb:hover {
    background: #8A6A52;
}

/* Scroll Reveal Animations */
.reveal {
    opacity: 0;
    transform: translateY(30px);
    transition: all 1.2s cubic-bezier(0.215, 0.61, 0.355, 1);
}

.reveal.active {
    opacity: 1;
    transform: translateY(0);
}

.fade-in-only {
    opacity: 0;
    transition: opacity 1.5s ease-out;
}

.fade-in-only.active {
    opacity: 1;
}

/* Masonry column setup */
.break-inside-avoid {
    break-inside: avoid;
    -webkit-column-break-inside: avoid;
}

/* Mobile Menu Max Height Transition */
#mobile-menu {
    transition: max-height 0.4s cubic-bezier(0.4, 0, 0.2, 1), opacity 0.3s ease;
    max-height: 0;
    opacity: 0;
    overflow: hidden;
}

#mobile-menu.open {
    max-height: 350px;
    opacity: 1;
}