/* --- BRAND COLOR PALETTE --- */
:root {
    --coffee-brown: #4A2E1F;
    --olive-green: #6B7C3E;
    --mutual-gold: #D4AF37;
    --warm-ivory: #FAF7F2;
    --charcoal-ink: #2E2E2E;
    --soft-clay: #E5DED6;
    --white: #FFFFFF;
}

/* --- BASE STYLING --- */
body {
    background-color: var(--warm-ivory);
    color: var(--charcoal-ink);
    font-family: 'Inter', system-ui, -apple-system, sans-serif;
    -webkit-font-smoothing: antialiased;
}

/* --- LOGO STYLING --- */
.navbar-brand, .footer-logo {
    font-weight: 800;
    font-size: 1.5rem;
    color: var(--coffee-brown);
    letter-spacing: -0.5px;
    text-decoration: none;
    display: inline-block;
}

.logo-accent-dot {
    color: var(--mutual-gold);
}

.bg-dark .navbar-brand, .bg-dark .footer-logo {
    color: var(--warm-ivory);
}

/* --- MICRO-ANIMATIONS (Slow & Calm) --- */
.fade-in-load {
    animation: fadeIn 1.2s ease-out forwards;
}

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

.btn, .card, .feature-icon {
    transition: all 0.3s ease-in-out;
}

/* --- BUTTONS --- */
.btn-primary {
    background-color: var(--coffee-brown) !important;
    border-color: var(--coffee-brown) !important;
    color: var(--white) !important;
    border-radius: 4px;
    font-weight: 600;
}

.btn-primary:hover {
    background-color: #382318 !important; /* Darker Coffee */
    transform: translateY(-2px);
    box-shadow: 0 4px 12px rgba(74, 46, 31, 0.15);
}

.btn-secondary {
    background-color: var(--olive-green) !important;
    border-color: var(--olive-green) !important;
    color: var(--white) !important;
    border-radius: 4px;
}

.btn-secondary:hover {
    background-color: #596834 !important; /* Darker Olive */
    border-color: var(--mutual-gold) !important; /* Subtle Gold Accent border */
    transform: translateY(-2px);
}

/* --- SECTION VARIANTS --- */
.hero-section {
    background-color: var(--coffee-brown);
    color: var(--warm-ivory);
    border-bottom: 4px solid var(--mutual-gold);
}

.bg-light {
    background-color: var(--soft-clay) !important;
}

.bg-dark {
    background-color: var(--coffee-brown) !important;
}

/* --- CARDS & ICONS --- */
.card {
    background-color: var(--white);
    border: 1px solid var(--soft-clay);
    border-radius: 8px;
}

.card:hover {
    box-shadow: 0 10px 30px rgba(74, 46, 31, 0.08);
    border-color: var(--mutual-gold);
}

.feature-icon {
    color: var(--olive-green);
    font-size: 2rem;
}

hr {
    color: var(--soft-clay);
    opacity: 1;
}