/* Custom Animations and Overrides */

h1, h2, h3, .font-serif {
    font-family: 'Playfair Display', serif;
}

body {
    font-family: 'Montserrat', sans-serif;
    -webkit-font-smoothing: antialiased;
}

/* Custom Scrollbar */
::-webkit-scrollbar {
    width: 8px;
}

::-webkit-scrollbar-track {
    background: #faf9f6;
}

::-webkit-scrollbar-thumb {
    background: #8c7a6b;
    border-radius: 10px;
}

::-webkit-scrollbar-thumb:hover {
    background: #6b5d52;
}

/* Transitions */
.animate-on-scroll {
    opacity: 0;
    transform: translateY(20px);
    transition: all 0.6s ease-out;
}

.animate-on-scroll.visible {
    opacity: 1;
    transform: translateY(0);
}

/* Custom Buttons & Inputs */
input::placeholder {
    color: #a0aec0;
}

select {
    background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' fill='none' viewBox='0 0 20 20'%3e%3cpath stroke='%238c7a6b' stroke-linecap='round' stroke-linejoin='round' stroke-width='1.5' d='M6 8l4 4 4-4'/%3e%3c/svg%3e");
    background-position: right 1rem center;
    background-repeat: no-repeat;
    background-size: 1.5em 1.5em;
    padding-right: 2.5rem;
}

/* Mobile Menu Transition */
#mobile-menu {
    transition: transform 0.3s ease-in-out;
}

/* Soft Shadow */
.shadow-soft {
    box-shadow: 0 10px 40px -10px rgba(140, 122, 107, 0.1);
}
