:root {
    --bg-app: #020617;
    /* Slate 950 */
    --bg-surface: #0f172a;
    /* Slate 900 */
    --bg-card: #1e293b;
    /* Slate 800 */
    --text-main: #f8fafc;
    /* Slate 50 */
    --text-muted: #94a3b8;
    /* Slate 400 */
    --primary: #10B981;
    /* Emerald 500 */
    --secondary: #4F46E5;
    /* Indigo 600 */
    --font-main: 'Inter', system-ui, sans-serif;
}

body {
    background-color: var(--bg-app) !important;
    color: var(--text-main) !important;
    font-family: var(--font-main) !important;
}

/* Header Overrides */
.header-two,
.header-one,
.header--sticky {
    background-color: var(--bg-surface) !important;
    border-bottom: 1px solid rgba(255, 255, 255, 0.05);
}

.main-menu ul li a,
.main-menu ul li .main-menu {
    color: var(--text-main) !important;
}

.header-top {
    background-color: var(--bg-app) !important;
    border-bottom: 1px solid rgba(255, 255, 255, 0.05);
}

.map-area a,
.social-area-transparent ul li a {
    color: var(--text-muted) !important;
}

/* Override Template Backgrounds */
.rts-banner-area,
.rts-category-area,
.rts-portfolio-area,
.rts-section-gap,
.rts-counter-area-two,
.rts-about-area {
    background-color: var(--bg-app) !important;
}

/* Allow banner images but overlay them dark */
.bg_image_two {
    background-color: var(--bg-app);
    background-blend-mode: overlay;
}

h1,
h2,
h3,
h4,
h5,
h6,
.title,
.sub-title {
    color: var(--text-main) !important;
}

.section-title span {
    color: var(--primary) !important;
}

/* Cards & Wrappers - FIX for White on White */
.project-wrapper,
.category-wrapper,
.project-wrapper2,
.rts-counter-area-two .counter-inner .inner,
.review-wrapper,
.team-wrapper,
.service-wrapper {
    background-color: var(--bg-card) !important;
    border: 1px solid rgba(255, 255, 255, 0.05) !important;
    border-radius: 12px;
    box-shadow: none !important;
}

/* Specific fix for Stats/Counter Text */
.rts-counter-area-two .counter-inner .inner .title,
.rts-counter-area-two .counter-inner .inner .desc {
    color: var(--text-main) !important;
}

/* Buttons - FIX for White on White */
.rts-btn.btn-border {
    background-color: transparent !important;
    border: 1px solid rgba(255, 255, 255, 0.2) !important;
    color: var(--text-main) !important;
}

.rts-btn.btn-border:hover {
    background-color: var(--primary) !important;
    border-color: var(--primary) !important;
    color: white !important;
}

/* AI Input Field - Glassmorphism */
.banner-right-side-two {
    background: rgba(15, 23, 42, 0.6) !important;
    backdrop-filter: blur(12px) !important;
    border: 1px solid rgba(255, 255, 255, 0.1) !important;
    border-radius: 16px;
    padding: 30px;
}

/* Inputs */
input,
textarea,
select {
    background-color: var(--bg-card) !important;
    border: 1px solid rgba(255, 255, 255, 0.1) !important;
    color: white !important;
}

input::placeholder,
textarea::placeholder {
    color: var(--text-muted) !important;
}

/* True OTD Badge */
.vch-badge-otd {
    background-color: var(--bg-surface);
    color: var(--primary);
    border: 1px solid var(--primary);
    padding: 5px 10px;
    border-radius: 4px;
    font-weight: bold;
    display: inline-block;
}

.vch-badge-dom {
    background-color: var(--secondary);
    color: white;
    padding: 2px 8px;
    font-size: 0.8rem;
    border-radius: 10px;
    margin-left: 10px;
}

/* Footer */
.footer-two {
    background-color: var(--bg-surface) !important;
}

.copyright-area {
    background-color: var(--bg-app) !important;
}

.rts-btn.btn-indigo {
    color: var(--text-main);
    background: var(--bg-card);
}

.rts-btn.btn-indigo::after {
    background: #4f7cea;
}


.rts-btn.btn-indigo:hover {
    color: white;
}

/* About Page Stats Uniformity */
.rts-counter-area-two .counter-inner {
    display: flex !important;
    align-items: stretch !important;
    justify-content: center;
    flex-wrap: wrap;
    gap: 30px;
}

.rts-counter-area-two .counter-inner .inner {
    width: 100%;
    flex: 1 1 250px;
    margin: 0 !important;
    height: auto !important;
}