@keyframes fadeInDown {
    from {
        opacity: 0;
        transform: translateY(-20px);
    }
    to {
        opacity: 1;
        transform: translateY(0);
    }
}

@keyframes fadeInUp {
    from {
        opacity: 0;
        transform: translateY(20px);
    }
    to {
        opacity: 1;
        transform: translateY(0);
    }
}

@keyframes scaleIn {
    from {
        opacity: 0;
        transform: scale(0.9);
    }
    to {
        opacity: 1;
        transform: scale(1);
    }
}

.animate-fade-in-down {
    animation: fadeInDown 1s ease-out forwards;
}

.animate-fade-in-up {
    animation: fadeInUp 1s ease-out forwards;
}

.animate-scale-in {
    animation: scaleIn 0.8s ease-out forwards;
}

.font-lato {
    font-family: 'Lato', sans-serif;
}

.font-merriweather {
    font-family: 'Merriweather', serif;
}

body {
    background: linear-gradient(to bottom right, #D8D4C7, #E9E6D7, #C6AA8D, #B0927B);
    background-attachment: fixed;
}

@media (max-width: 767px) {
    #main-navigation {
        background-color: #0A2613 !important;
    }
}

.hero-background {
    background-size: cover;
    background-position: center;
    transform: scale(1.0);
    transition: transform 0.5s ease-out;
}

.hero-background.scrolled {
    transform: scale(1.05);
}

.hero-overlay {
    background-image: url('data:image/svg+xml,%3Csvg width=%226%22 height=%226%22 viewBox=%220 0 6 6%22 xmlns=%22http://www.w3.org/2000/svg%22%3E%3Cg fill=%22%23000000%22 fill-opacity=%220.08%22 fill-rule=%22evenodd%22%3E%3Cpath d=%22M5 0h1L0 6V5zM6 5v1H5z%22/%3E%3C/g%3E%3C/svg%3E');
    background-repeat: repeat;
}