/* Custom Custom Scrollbar and Glassmorphism Styles */
html {
    scroll-padding-top: var(--navigation-offset, 96px);
}

body {
    font-family: 'Montserrat', sans-serif;
    background-color: #FAF8F5;
    color: #1A1A1A;
}
h1, h2, h3, h4, .font-serif-title {
    font-family: 'Cormorant Garamond', serif;
}
.gold-gradient-text {
    background: linear-gradient(135deg, #F3E5AB 0%, #D4AF37 50%, #AA7C11 100%);
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
}
.gold-border-gradient {
    border-image: linear-gradient(to right, #D4AF37, #F3E5AB, #D4AF37) 1;
}
.modal-blur {
    backdrop-filter: blur(8px);
}
/* Custom Animations */
@keyframes heroLetterFade {
    from { opacity: 0; }
    to { opacity: 1; }
}
.hero-word {
    display: inline-block;
    white-space: nowrap;
}
.hero-letter {
    display: inline-block;
    animation: heroLetterFade 650ms ease-out var(--letter-delay, 0ms) both;
}
.hero-letter-line.gold-gradient-text {
    background: none;
    -webkit-text-fill-color: currentColor;
    color: #D4AF37;
}
.gold-gradient-text .hero-letter {
    background: linear-gradient(135deg, #F3E5AB 0%, #D4AF37 50%, #AA7C11 100%);
    -webkit-background-clip: text;
    background-clip: text;
    -webkit-text-fill-color: transparent;
}
@media (prefers-reduced-motion: reduce) {
    .hero-letter {
        animation: none;
        opacity: 1;
    }
}

@keyframes fadeIn {
    from { opacity: 0; transform: translateY(10px); }
    to { opacity: 1; transform: translateY(0); }
}
.animate-fade-in {
    animation: fadeIn 0.4s ease-out forwards;
}
