:root {
    --primary-red: #8b0000;
    --primary-red-dark: #5c0000;
    --primary-red-hover: #730000;
    --gold: #d4af37;
    --gold-light: #f7e5aa;
    --gold-dark: #aa8c2c;
    --dark-custom: #000000;
    --dark-brown: #2d1d11;
    --cream: #fdfaf6;
    --cream-dark: #f5eedf;
}

html, body {
    overflow-x: hidden;
}

body {
    font-family: 'Poppins', sans-serif;
    background-color: var(--cream);
    color: var(--dark-brown);
}

/* Typography & Colors */
.text-primary-red { color: var(--primary-red) !important; }
.text-gold { color: var(--gold) !important; }
.text-dark-brown { color: var(--dark-brown) !important; }
.bg-dark-custom { background-color: var(--dark-custom) !important; }
.bg-cream { background-color: var(--cream) !important; }
.bg-cream-dark { background-color: var(--cream-dark) !important; }
.bg-primary-red { background-color: var(--primary-red) !important; }
.bg-gradient-cream { background: linear-gradient(to bottom, #fdfaf6 0%, #f5eedf 100%) !important; }

/* Metallic Gold Text Gradient */
.text-gold-gradient {
    background: linear-gradient(135deg, #d4af37 0%, #f7e5aa 40%, #c59b27 100%);
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
}

/* Buttons */
.btn-primary-red {
    background: linear-gradient(135deg, #8b0000 0%, #5c0000 100%);
    border: 1px solid var(--gold);
    color: white !important;
    transition: all 0.3s ease;
}
.btn-primary-red:hover {
    background: linear-gradient(135deg, #a00000 0%, #6c0000 100%);
    border-color: var(--gold-light);
    color: white !important;
    box-shadow: 0 6px 18px rgba(139, 0, 0, 0.4) !important;
}

/* Navigation Links */
.nav-link {
    font-weight: 500;
    font-size: 1.05rem;
    padding-bottom: 0.35rem;
    letter-spacing: 0.5px;
    transition: color 0.2s ease;
}
.nav-link:hover {
    color: var(--gold-light) !important;
}
.nav-link.active {
    color: var(--gold) !important;
}
.nav-link.active::after {
    content: '';
    position: absolute;
    bottom: -3px;
    left: 10%;
    width: 80%;
    height: 2px;
    background-color: var(--gold);
    border-radius: 2px;
}
.nav-link.active::before {
    content: '';
    position: absolute;
    bottom: -5px;
    left: 50%;
    transform: translateX(-50%);
    width: 6px;
    height: 6px;
    background-color: var(--gold);
    border-radius: 50%;
    box-shadow: 0 0 5px var(--gold);
}

/* Hero Section */
.hero-section {
    background: radial-gradient(ellipse at 70% 30%, #ffffff 0%, #f9eed7 45%, #ebd3a2 100%);
    min-height: 550px;
}

.bg-gold-gradient {
    background: linear-gradient(135deg, var(--gold-light) 0%, var(--gold) 50%, var(--gold-dark) 100%);
}

.fs-7 { font-size: 0.9rem; }

.categories-section {
    background: linear-gradient(to bottom, #fdfbf7 0%, #f3e8d2 100%);
}

.category-card {
    transition: transform 0.3s ease, box-shadow 0.3s ease, border-color 0.3s ease;
}
.category-card:hover {
    transform: translateY(-8px);
    border-color: var(--gold) !important;
    box-shadow: 0 15px 30px rgba(181, 133, 42, 0.2) !important;
}

.bg-gold-banner {
    background: linear-gradient(90deg, #e4c995 0%, #c19b52 50%, #e4c995 100%);
}

.text-pink { color: #e895c1; }

.border-gold { border-color: var(--gold) !important; }
.border-gold-light { border-color: rgba(212, 175, 55, 0.3) !important; }
.border-gold-dark { border-color: rgba(212, 175, 55, 0.6) !important; }

@media (min-width: 992px) {
    .border-end-lg {
        border-right: 1px solid rgba(212, 175, 55, 0.3) !important;
    }
}

.footer {
    background: linear-gradient(to bottom, #2d1d11 0%, #000000 100%);
}
