:root {
    --primary-dark: #1C2529;
    --primary-gold: #9E7649;
    --accent-gold: #E6C38B;
}

body {
    font-family: 'Open Sans', sans-serif;
    color: var(--primary-dark);
}

/* Typography */
.font-serif-heading {
    font-family: 'Montserrat', sans-serif;
    /* Enhance with Montserrat for headings */
}

/* Script Font for Signatures */
@import url('https://fonts.googleapis.com/css2?family=Allura&display=swap');

.font-allura {
    font-family: 'Allura', cursive;
}

.font-montserrat {
    font-family: 'Montserrat', sans-serif;
}

/* Animations */
@keyframes fadeInUp {
    from {
        opacity: 0;
        transform: translateY(20px);
    }

    to {
        opacity: 1;
        transform: translateY(0);
    }
}

.animate-fade-in-up {
    animation: fadeInUp 1s ease-out forwards;
    opacity: 0;
    /* Start hidden */
}

.delay-100 {
    animation-delay: 0.1s;
}

.delay-200 {
    animation-delay: 0.2s;
}

.delay-300 {
    animation-delay: 0.3s;
}

@keyframes widthExpand {
    from {
        width: 0;
    }

    to {
        width: 6rem;
    }

    /* w-24 */
}

.animate-width-expand {
    animation: widthExpand 1s ease-out forwards;
}

@keyframes spinSlow {
    from {
        transform: rotate(0deg);
    }

    to {
        transform: rotate(360deg);
    }
}

.animate-spin-slow {
    animation: spinSlow 10s linear infinite;
}

/* Editorial Card Enhancements */
.editorial-card {
    transition: transform 0.3s, box-shadow 0.3s;
}

.editorial-card:hover {
    transform: translateY(-5px);
}

/* Stats Count Up */
.count-up {
    font-variant-numeric: tabular-nums;
}