:root {
    --ivory-white: #F5F0EB;
    --warm-beige: #E8E0D6;
    --walnut-brown: #5C4033;
    --matte-black: #2C2C28;
    --champagne-gold: #C9A84C;
    --gold-light: rgba(201, 168, 76, 0.1);
    --gold-medium: rgba(201, 168, 76, 0.3);
    --bg-cream: #F5F0EB;
    --bg-warm: #E8E0D6;
    --text-dark: #2C2C28;
    --text-muted: #6b5d4d;
    --text-light: #8a7a6a;
    --border-color: #e0d5c8;
    --accent: #C9A84C;
    --primary-brown: #5C4033;
}

body {
    background-color: var(--ivory-white);
    color: var(--matte-black);
}

h1, h2, h3, h4, h5, h6 {
    font-family: 'Cormorant Garamond', Georgia, serif;
    color: var(--matte-black);
}

body, p, span, li, a, input, textarea, select, button {
    font-family: 'DM Sans', sans-serif;
}

a { color: var(--walnut-brown); transition: color 0.3s ease; }
a:hover { color: var(--champagne-gold); }

.text-gold { color: var(--champagne-gold); }
.text-walnut { color: var(--walnut-brown); }
.text-muted { color: var(--text-muted); }

.bg-cream { background-color: var(--ivory-white); }
.bg-warm { background-color: var(--warm-beige); }
.bg-dark-custom { background-color: var(--matte-black); }

.border-gold { border-color: var(--champagne-gold); }
.border-warm { border-color: var(--border-color); }

.btn-gold {
    background: var(--champagne-gold);
    border: 1.5px solid var(--champagne-gold);
    color: #fff;
    padding: 12px 30px;
    font-size: 13px;
    font-weight: 500;
    letter-spacing: 0.08em;
    text-transform: uppercase;
    transition: all 0.3s ease;
}
.btn-gold:hover {
    background: #b89430;
    border-color: #b89430;
    color: #fff;
}

.btn-outline-gold {
    background: transparent;
    border: 1.5px solid var(--champagne-gold);
    color: var(--champagne-gold);
    padding: 12px 30px;
    font-size: 13px;
    font-weight: 500;
    transition: all 0.3s ease;
}
.btn-outline-gold:hover {
    background: var(--champagne-gold);
    color: #fff;
}

.section-cream { background-color: var(--ivory-white); }
.section-warm { background-color: var(--warm-beige); }
.section-dark-custom { background-color: var(--matte-black); color: #fff; }

.gold-accent { color: var(--champagne-gold); }
.gold-border { border-color: var(--champagne-gold); }
.gold-bg { background-color: var(--champagne-gold); }

.walnut-bg { background-color: var(--walnut-brown); }
.walnut-text { color: var(--walnut-brown); }

input:focus, textarea:focus, select:focus {
    border-color: var(--champagne-gold) !important;
    box-shadow: 0 0 0 3px var(--gold-light) !important;
}

::selection {
    background: var(--champagne-gold);
    color: #fff;
}
