body {
    font-family: 'Lato', sans-serif;
    color: #2d1b2e;
}

h1, h2, h3, h4, h5, h6 {
    font-family: 'Playfair Display', serif;
}

.gradient-burgundy {
    background: linear-gradient(135deg, #5a0530 0%, #830b48 50%, #5a0530 100%);
}

.gradient-hot {
    background: linear-gradient(135deg, #e11d48, #9f1239);
}

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

.text-gold {
    color: #fbbf24;
}

.text-shadow {
    text-shadow: 2px 2px 4px rgba(0,0,0,0.3);
}

.text-shadow-lg {
    text-shadow: 3px 3px 6px rgba(0,0,0,0.4);
}

.card-luxury {
    background: white;
    border-radius: 1rem;
    box-shadow: 0 10px 40px rgba(131, 11, 72, 0.15);
    transition: transform 0.3s, box-shadow 0.3s;
}

.card-luxury:hover {
    transform: translateY(-5px);
    box-shadow: 0 15px 50px rgba(131, 11, 72, 0.25);
}

.decorative-circle {
    position: absolute;
    border-radius: 50%;
    background: radial-gradient(circle, rgba(212, 175, 55, 0.1) 0%, transparent 70%);
}

@keyframes float {
    0%, 100% { transform: translateY(0px); }
    50% { transform: translateY(-20px); }
}

.float-animation {
    animation: float 6s ease-in-out infinite;
}

.badge-premium {
    background: linear-gradient(135deg, #fbbf24, #d97706);
    color: #5a0530;
    padding: 0.5rem 1rem;
    border-radius: 9999px;
    font-weight: 700;
    text-transform: uppercase;
    font-size: 0.75rem;
    letter-spacing: 0.05em;
    box-shadow: 0 4px 15px rgba(251, 191, 36, 0.4);
}
