/* ═══════════════════════════════════════════════════════════════
   THE BUSINESS LAB — CLASSY THEME OVERRIDE
   Black / White / Muted Gold
   Loaded AFTER each page's existing styles to override colors.
   ═══════════════════════════════════════════════════════════════ */

:root {
    --gold: #b8965a !important;
    --gold-light: rgba(184,150,90,0.10) !important;
    --dark: #0a0a0a !important;
    --slate: #111111 !important;
    --light: #fafafa !important;
    --border: #e6e6e6 !important;
    --text: #222222 !important;
    --text-light: #6b6b6b !important;
}

/* ─── Global typography polish ─── */
body {
    -webkit-font-smoothing: antialiased !important;
    color: #222 !important;
}

/* ─── Kill all gradients, replace with flat ─── */
.nav-cta,
.btn-primary,
.cta-btn,
.btn-gold,
.btn,
.hero-btn,
.service-icon,
.section-header::after,
[class*="gradient"] {
    background-image: none !important;
}

/* ═══════════ NAVBAR (index.html via styles.css) ═══════════ */
.navbar {
    background: #0a0a0a !important;
    backdrop-filter: none !important;
    border-bottom: 1px solid #1a1a1a !important;
    box-shadow: none !important;
}
.nav-container {
    max-width: 1320px !important;
    padding: 0 32px !important;
    height: 72px !important;
}
.nav-logo h2 {
    color: #fff !important;
    font-weight: 500 !important;
    font-size: 1.4rem !important;
    letter-spacing: 0.5px !important;
    white-space: nowrap !important;
}
.nav-menu {
    gap: 1.6rem !important;
    flex-wrap: nowrap !important;
}
.nav-link {
    color: #cfcfcf !important;
    font-size: 13px !important;
    font-weight: 400 !important;
    letter-spacing: 0.4px !important;
    white-space: nowrap !important;
    padding: 0.4rem 0 !important;
    transition: color .25s ease !important;
}
.nav-link:hover {
    color: #fff !important;
    transform: none !important;
}
.nav-link::after {
    background: #b8965a !important;
}
.nav-cta, .nav-link.nav-cta {
    background: transparent !important;
    color: #fff !important;
    border: 1px solid #fff !important;
    border-radius: 0 !important;
    padding: 10px 22px !important;
    font-size: 11px !important;
    text-transform: uppercase !important;
    letter-spacing: 1.5px !important;
    box-shadow: none !important;
    font-weight: 500 !important;
}
.nav-cta:hover {
    background: #fff !important;
    color: #0a0a0a !important;
    transform: none !important;
    box-shadow: none !important;
}
.hamburger .bar {
    background: #fff !important;
}

/* ═══════════ HERO ═══════════ */
.hero {
    background: #0a0a0a !important;
}
.hero::before, .hero-overlay {
    background: linear-gradient(180deg, rgba(0,0,0,0.6), rgba(0,0,0,0.85)) !important;
}
.hero-title, .hero h1 {
    color: #fff !important;
    font-weight: 400 !important;
    letter-spacing: -1.2px !important;
}
.hero-subtitle, .hero .sub, .hero p {
    color: #b5b5b5 !important;
    font-weight: 300 !important;
}

/* ═══════════ BUTTONS ═══════════ */
.btn,
.btn-primary,
.btn-secondary,
.cta-btn,
.hero-btn {
    border-radius: 0 !important;
    text-transform: uppercase !important;
    letter-spacing: 2px !important;
    font-size: 12px !important;
    font-weight: 500 !important;
    padding: 16px 32px !important;
    box-shadow: none !important;
    transition: all .3s ease !important;
}
.btn-primary, .hero-btn-primary {
    background: #fff !important;
    color: #0a0a0a !important;
    border: 1px solid #fff !important;
}
.btn-primary:hover {
    background: transparent !important;
    color: #fff !important;
    transform: none !important;
}
.btn-secondary, .hero-btn-secondary {
    background: transparent !important;
    color: #fff !important;
    border: 1px solid #444 !important;
}
.btn-secondary:hover {
    border-color: #fff !important;
    background: transparent !important;
    color: #fff !important;
    transform: none !important;
}

/* ═══════════ SECTIONS ═══════════ */
.services, section, .section {
    background: #fff !important;
}
.section-title, .section-header h2, h2.section-title {
    color: #0a0a0a !important;
    font-family: 'Playfair Display', serif !important;
    font-weight: 400 !important;
    letter-spacing: -0.6px !important;
}
.section-header::after {
    background: #b8965a !important;
}

/* Service cards */
.service-card {
    background: #fff !important;
    border: 1px solid #e6e6e6 !important;
    border-radius: 0 !important;
    box-shadow: none !important;
    transition: background .35s ease !important;
}
.service-card:hover {
    background: #fafafa !important;
    transform: none !important;
    box-shadow: none !important;
}
.service-icon {
    background: transparent !important;
    color: #0a0a0a !important;
    border: 1px solid #0a0a0a !important;
    border-radius: 0 !important;
}
.service-title {
    font-family: 'Playfair Display', serif !important;
    color: #0a0a0a !important;
    font-weight: 500 !important;
}
.service-description {
    color: #6b6b6b !important;
    font-weight: 300 !important;
}

/* ═══════════ STAT / CONTACT / FOOTER ═══════════ */
.stats, .contact-section {
    background: #fafafa !important;
}
.stat-number, [class*="stat"] strong {
    color: #0a0a0a !important;
}
footer, .footer {
    background: #0a0a0a !important;
    color: #888 !important;
}
footer a, .footer a {
    color: #bbb !important;
}
footer a:hover, .footer a:hover {
    color: #fff !important;
}

/* ═══════════ PAGE-SPECIFIC (offerings/investors/switch/signup inline-styled) ═══════════ */
/* These pages use --gold and --dark CSS vars; the :root override above handles them.
   Below are extra hardenings for hard-coded hex literals. */

[style*="#d4af37"], [style*="#0f172a"] { /* inline style fallback hint - no-op */ }

.cta-btn {
    background: #fff !important;
    color: #0a0a0a !important;
    border: 1px solid #fff !important;
}
.cta-btn:hover {
    background: transparent !important;
    color: #fff !important;
    opacity: 1 !important;
}

/* ═══════════ MOBILE NAV FIX ═══════════ */
@media (max-width: 1100px) {
    .nav-menu {
        gap: 1.2rem !important;
    }
    .nav-link {
        font-size: 12px !important;
    }
}
@media (max-width: 968px) {
    .nav-menu {
        background: #0a0a0a !important;
        border-top: 1px solid #1a1a1a !important;
    }
    .nav-link {
        color: #cfcfcf !important;
        font-size: 14px !important;
    }
}
