body {
    font-family: 'Crimson Text', serif;
}

.playfair {
    font-family: 'Playfair Display', serif;
}

.batik-pattern {
    background-image: 
        radial-gradient(circle at 25% 25%, #d4af37 2px, transparent 2px),
        radial-gradient(circle at 75% 75%, #d4af37 1px, transparent 1px);
    background-size: 50px 50px;
}

.gold-gradient {
    background: linear-gradient(135deg, #d4af37, #f4e4bc, #d4af37);
}

.maroon-gradient {
    background: linear-gradient(135deg, #8b0000, #a0522d, #8b0000);
}

.fade-in {
    animation: fadeIn 1s ease-in;
}

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

.slide-up {
    animation: slideUp 0.8s ease-out;
}

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

.ornament {
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 100 100'%3E%3Cpath d='M50 10 L60 30 L80 30 L65 45 L70 65 L50 55 L30 65 L35 45 L20 30 L40 30 Z' fill='%23d4af37' opacity='0.3'/%3E%3C/svg%3E");
    background-size: 30px 30px;
}