/* ===========================================
   CFGX Design System Overhaul
   Void Black · Sovereign Gold · Volt Cyan
   =========================================== */

:root {
    --void: #0A0E17;
    --gold: #D4A841;
    --cyan: #00D4FF;
    --ember: #C44536;
    --silver: #C0C0C0;
    --white: #FFFFFF;
    --white-80: rgba(255,255,255,0.8);
    --white-60: rgba(255,255,255,0.6);
    --void-light: #111827;
    --void-card: #141B2D;
}

/* === GLOBAL === */
body {
    background-color: var(--void) !important;
    font-family: 'Inter', -apple-system, sans-serif !important;
}

h1, h2, h3, h4, h5, h6,
.fusion-title h1, .fusion-title h2, .fusion-title h3,
.fusion-title h4, .fusion-title h5, .fusion-title h6,
.fusion-title p {
    font-family: 'Space Grotesk', sans-serif !important;
}

p, span, li, a, td, th, label, input, textarea, select,
.fusion-text p {
    font-family: 'Inter', sans-serif !important;
}

.cfgx-stat, .cfgx-mono {
    font-family: 'JetBrains Mono', monospace !important;
}

/* === HEADER / NAV === */
.fusion-header-wrapper,
.fusion-header,
.fusion-secondary-header,
.fusion-header .fusion-row,
header.fusion-header-wrapper {
    background-color: var(--void) !important;
    border-bottom: 1px solid rgba(212,168,65,0.2) !important;
}

.fusion-main-menu > ul > li > a,
.fusion-main-menu .fusion-menu-element-list > li > a {
    color: var(--white-80) !important;
    font-family: 'Space Grotesk', sans-serif !important;
    font-weight: 500 !important;
    letter-spacing: 0.5px !important;
    text-transform: uppercase !important;
    font-size: 13px !important;
}

.fusion-main-menu > ul > li > a:hover,
.fusion-main-menu .fusion-menu-element-list > li > a:hover {
    color: var(--cyan) !important;
}

.fusion-main-menu > ul > li.current-menu-item > a,
.fusion-main-menu > ul > li.current_page_item > a {
    color: var(--gold) !important;
    border-bottom: 2px solid var(--gold) !important;
}

.fusion-main-menu .sub-menu {
    background-color: var(--void-light) !important;
    border: 1px solid rgba(212,168,65,0.15) !important;
}

.fusion-main-menu .sub-menu li a {
    color: var(--white-80) !important;
}

.fusion-main-menu .sub-menu li a:hover {
    color: var(--cyan) !important;
    background-color: rgba(0,212,255,0.05) !important;
}

/* === HERO (row-2) === */
.fusion-builder-row-2 {
    background-image: none !important;
    background-color: var(--void) !important;
    position: relative !important;
    overflow: hidden !important;
    min-height: 90vh !important;
}

.fusion-builder-row-2 > .fusion-bg-wrapper {
    display: none !important;
}

.fusion-builder-row-2 .fusion-builder-row {
    position: relative;
    z-index: 1;
}

/* Grid canvas */
#cfgx-grid-canvas {
    position: absolute;
    top: 0; left: 0; right: 0; bottom: 0;
    z-index: 0;
    pointer-events: none;
}

/* Hero heading */
.fusion-builder-row-2 .fusion-title h1 {
    color: var(--gold) !important;
    font-family: 'Space Grotesk', sans-serif !important;
    font-size: clamp(32px, 5vw, 64px) !important;
    font-weight: 700 !important;
    line-height: 1.1 !important;
    letter-spacing: -1px !important;
    text-transform: uppercase !important;
}

/* Hero text */
.fusion-builder-row-2 .fusion-text p {
    color: var(--white-80) !important;
}

/* Hero trust bar */
.fusion-builder-row-2 .fusion-text p[style*="color:#c9a84c"] {
    color: var(--gold) !important;
    font-family: 'JetBrains Mono', monospace !important;
    font-size: 15px !important;
    letter-spacing: 1.5px !important;
}

/* Hero CTAs */
.fusion-builder-row-2 .fusion-button {
    background: var(--gold) !important;
    background-image: none !important;
    color: var(--void) !important;
    font-family: 'Space Grotesk', sans-serif !important;
    font-weight: 700 !important;
    font-size: 15px !important;
    letter-spacing: 1px !important;
    padding: 14px 36px !important;
    border: none !important;
    border-radius: 0 !important;
    transition: all 0.3s ease !important;
    text-transform: uppercase !important;
}

.fusion-builder-row-2 .fusion-button:hover {
    background: var(--cyan) !important;
    color: var(--void) !important;
    transform: translateY(-2px) !important;
    box-shadow: 0 4px 20px rgba(0,212,255,0.3) !important;
}

/* Hero cards */
.fusion-builder-row-2 .fusion-layout-column {
    background-color: var(--void-card) !important;
    border: 1px solid rgba(212,168,65,0.2) !important;
    border-radius: 4px !important;
    transition: border-color 0.3s ease !important;
}

.fusion-builder-row-2 .fusion-layout-column:hover {
    border-color: var(--cyan) !important;
}

.fusion-builder-row-2 .fusion-title h3,
.fusion-builder-row-2 .fusion-title h3 a {
    color: var(--white) !important;
}

.fusion-builder-row-2 a[href^="tel"] {
    color: var(--gold) !important;
    font-family: 'JetBrains Mono', monospace !important;
}

/* === SERVICES / LENDING PROGRAMS (row-3) === */
.fusion-builder-row-3 {
    background-color: var(--void-light) !important;
}

.fusion-builder-row-3 #headinghome h2 {
    color: var(--gold) !important;
}

.fusion-builder-row-3 .fusion-separator {
    border-color: var(--gold) !important;
}

.fusion-builder-row-3 #col-text-b p {
    color: var(--white-60) !important;
}

/* Service cards */
#serv1, #serv2, #serv3 {
    background-color: var(--void-card) !important;
    border: 1px solid rgba(212,168,65,0.15) !important;
    border-radius: 8px !important;
    overflow: hidden !important;
    transition: all 0.3s ease !important;
}

#serv1:hover, #serv2:hover, #serv3:hover {
    border-color: var(--cyan) !important;
    transform: translateY(-4px) !important;
    box-shadow: 0 8px 30px rgba(0,212,255,0.1) !important;
}

#serv1 .fusion-builder-column-inner,
#serv2 .fusion-builder-column-inner,
#serv3 .fusion-builder-column-inner {
    background-color: var(--void-card) !important;
}

#serv1 .service__heading a,
#serv2 .service__heading a,
#serv3 .service__heading a {
    color: var(--white) !important;
}

#serv1 .service__heading a:hover,
#serv2 .service__heading a:hover,
#serv3 .service__heading a:hover {
    color: var(--cyan) !important;
}

#serv1 .fusion-text p,
#serv2 .fusion-text p,
#serv3 .fusion-text p {
    color: var(--white-60) !important;
}

#serv1 .fusion-button,
#serv2 .fusion-button,
#serv3 .fusion-button {
    background: transparent !important;
    background-image: none !important;
    border: 1px solid var(--gold) !important;
    color: var(--gold) !important;
}

#serv1 .fusion-button:hover,
#serv2 .fusion-button:hover,
#serv3 .fusion-button:hover {
    background: var(--gold) !important;
    color: var(--void) !important;
}

/* === INTRODUCTION (row-4) === */
.fusion-builder-row-4 {
    background-color: var(--void) !important;
    background-image: none !important;
    border-top: 1px solid rgba(212,168,65,0.1) !important;
    border-bottom: 1px solid rgba(212,168,65,0.1) !important;
}

.fusion-builder-row-4 > .fusion-bg-wrapper {
    display: none !important;
}

.fusion-builder-row-4 .fusion-text p {
    color: var(--white-80) !important;
    font-size: 20px !important;
    line-height: 1.8 !important;
}

/* === WHY BORROWERS CHOOSE (row-5) === */
.fusion-builder-row-5 {
    background-color: var(--void) !important;
}

#peace-mind {
    background-color: var(--void) !important;
}

.benefits__heading {
    color: var(--gold) !important;
}

#peace-mind .fusion-content-box-container p,
#peace-mind .fusion-text p,
.fusion-builder-row-5 .fusion-content-boxes p {
    color: var(--white-80) !important;
}

.fusion-builder-row-5 .fusion-text p {
    color: var(--white) !important;
}

#subtitle-services p,
#subtitle-services {
    color: var(--white) !important;
}

#text-services-sb p {
    color: var(--white-60) !important;
}

/* SVG icons to cyan/gold */
.benefit__icon svg path[stroke="#3B7FFF"],
.icon-vivus path[stroke="#3B7FFF"],
.icon-vivus g[stroke="#377EF9"] path,
.icon-vivus path[stroke="#377EF9"] {
    stroke: var(--cyan) !important;
}

.benefit__icon svg path[stroke="#FE6E4F"],
.icon-vivus path[stroke="#FE6E4F"] {
    stroke: var(--gold) !important;
}

.icon-vivus path[fill="#3B7FFF"] {
    fill: var(--cyan) !important;
}

/* === BY THE NUMBERS (row-7) === */
.fusion-builder-row-7 {
    background-color: var(--void) !important;
    background-image: none !important;
}

.fusion-builder-row-7 > .fusion-bg-wrapper {
    display: none !important;
}

.fusion-builder-row-7 #headinghome p {
    color: var(--gold) !important;
}

.fusion-builder-row-7 .fusion-separator {
    border-color: var(--gold) !important;
}

#test1 .fusion-title p, #test2 .fusion-title p, #test3 .fusion-title p {
    color: var(--cyan) !important;
    font-family: 'JetBrains Mono', monospace !important;
    font-size: 42px !important;
    font-weight: 700 !important;
}

#test1 .fusion-text p, #test2 .fusion-text p, #test3 .fusion-text p {
    color: var(--white-60) !important;
}

/* === BOTTOM INFO BAR (row-8, #shortcode__info) === */
#shortcode__info {
    background-color: var(--void-card) !important;
    border-top: 1px solid rgba(212,168,65,0.2) !important;
    border-bottom: 1px solid rgba(212,168,65,0.2) !important;
}

#shortcode__info h4 {
    color: var(--gold) !important;
    font-family: 'Space Grotesk', sans-serif !important;
    text-transform: uppercase !important;
    letter-spacing: 2px !important;
}

/* === READY TO TALK (row-9) === */
.fusion-builder-row-9 {
    background-color: var(--void-light) !important;
    background-image: none !important;
}

.fusion-builder-row-9 > .fusion-bg-wrapper {
    display: none !important;
}

.fusion-builder-row-9 h2,
.txtrtt h2 {
    color: var(--gold) !important;
}

.fusion-builder-row-9 h4 {
    color: var(--white-60) !important;
}

.fusion-builder-row-9 .fusion-button {
    background: var(--gold) !important;
    background-image: none !important;
    color: var(--void) !important;
    font-family: 'Space Grotesk', sans-serif !important;
    font-weight: 700 !important;
    border: none !important;
    border-radius: 0 !important;
}

.fusion-builder-row-9 .fusion-button:hover {
    background: var(--cyan) !important;
    color: var(--void) !important;
}

/* === FOOTER === */
.fusion-footer-widget-area {
    background-color: var(--void) !important;
    border-top: 1px solid rgba(212,168,65,0.2) !important;
}

.fusion-footer-widget-area .widget-title,
.fusion-footer-widget-area h4 {
    color: var(--gold) !important;
    font-family: 'Space Grotesk', sans-serif !important;
}

.fusion-footer-widget-area p,
.fusion-footer-widget-area a,
.fusion-footer-widget-area li,
.fusion-footer-widget-area .textwidget {
    color: var(--white-60) !important;
}

.fusion-footer-widget-area a:hover {
    color: var(--cyan) !important;
}

.fusion-footer-copyright-area {
    background-color: var(--void) !important;
    border-top: 1px solid rgba(212,168,65,0.1) !important;
}

.fusion-footer-copyright-area .fusion-copyright-content {
    color: var(--white-60) !important;
}

/* === GLOBAL BUTTONS === */
.fusion-button.button-default {
    background: var(--gold) !important;
    background-image: none !important;
    color: var(--void) !important;
    font-family: 'Space Grotesk', sans-serif !important;
    font-weight: 600 !important;
    border: none !important;
    border-radius: 2px !important;
    text-transform: uppercase !important;
    letter-spacing: 0.5px !important;
}

.fusion-button.button-default:hover {
    background: var(--cyan) !important;
    color: var(--void) !important;
}

/* === STICKY BOTTOM CTA === */
#cfgx-sticky-cta {
    position: fixed;
    bottom: 0;
    left: 0;
    right: 0;
    z-index: 9999;
    background: var(--void);
    border-top: 2px solid var(--gold);
    padding: 12px 20px;
    transform: translateY(100%);
    transition: transform 0.4s ease;
    box-shadow: 0 -4px 20px rgba(0,0,0,0.5);
}

#cfgx-sticky-cta.visible {
    transform: translateY(0);
}

.cfgx-sticky-inner {
    max-width: 1200px;
    margin: 0 auto;
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 24px;
    flex-wrap: wrap;
}

.cfgx-sticky-text {
    color: var(--white);
    font-family: 'Space Grotesk', sans-serif;
    font-size: 18px;
    font-weight: 600;
}

.cfgx-sticky-btn {
    background: var(--gold);
    color: var(--void) !important;
    font-family: 'Space Grotesk', sans-serif;
    font-weight: 700;
    font-size: 14px;
    padding: 12px 32px;
    text-decoration: none !important;
    text-transform: uppercase;
    letter-spacing: 1px;
    transition: all 0.3s ease;
    display: inline-block;
    animation: cfgx-glow 3s ease-in-out infinite;
}

.cfgx-sticky-btn:hover {
    background: var(--cyan);
    color: var(--void) !important;
    transform: translateY(-1px);
}

@keyframes cfgx-glow {
    0%, 100% { box-shadow: 0 0 5px rgba(212,168,65,0.2); }
    50% { box-shadow: 0 0 20px rgba(212,168,65,0.4); }
}

/* === INTERIOR PAGES === */
.fusion-page-title-bar {
    background-color: var(--void) !important;
    border-bottom: 1px solid rgba(212,168,65,0.2) !important;
}

.fusion-page-title-bar h1 {
    color: var(--gold) !important;
    font-family: 'Space Grotesk', sans-serif !important;
}

.fusion-page-title-bar .fusion-breadcrumbs,
.fusion-page-title-bar .fusion-breadcrumbs a {
    color: var(--white-60) !important;
}

/* === MOBILE === */
@media (max-width: 768px) {
    .fusion-builder-row-2 {
        min-height: 70vh !important;
    }
    
    .fusion-builder-row-2 .fusion-title h1 {
        font-size: 28px !important;
    }
    
    #test1 .fusion-title p, #test2 .fusion-title p, #test3 .fusion-title p {
        font-size: 32px !important;
    }
    
    .cfgx-sticky-inner {
        flex-direction: column;
        gap: 8px;
        text-align: center;
    }
    
    .cfgx-sticky-text {
        font-size: 15px;
    }
    
    .fusion-mobile-nav-holder {
        background-color: var(--void) !important;
    }
    
    .fusion-mobile-nav-holder a {
        color: var(--white-80) !important;
        border-color: rgba(212,168,65,0.1) !important;
    }
}
