/* 
 * TroviaPay Clean Solid Dark Theme Override
 * Removes gradients and enforces high-contrast visibility for FAQs, Contact Details, Headings, and Buttons.
 */

:root {
    --bg-main: #0A0E1A;
    --bg-surface: #0F172A;
    --bg-card: #1E293B;
    --bg-card-hover: #334155;
    
    --text-heading: #FFFFFF;
    --text-primary: #F8FAFC;
    --text-secondary: #CBD5E1;
    --text-muted: #94A3B8;
    
    --brand-primary: #0284C7;
    --brand-primary-hover: #0369A1;
    --brand-accent: #38BDF8;
    
    --border-subtle: #334155;
    --border-accent: #0284C7;
}

body {
    background-color: var(--bg-main) !important;
    color: var(--text-primary) !important;
    font-family: "Poppins", sans-serif;
}

/* 1. SOLID BACKGROUNDS (NO GRADIENTS) */
.first_nav_hero_about {
    background-color: var(--bg-surface) !important;
    background-image: none !important;
}

.finance, .gateway, .services, .visa, .pricing, .profaessional, .question, .news-cards, .core, .round-word, .behind {
    background-color: var(--bg-main) !important;
    background-image: none !important;
}

/* 2. SOLID HEADINGS & TYPOGRAPHY (NO GRADIENTS) */
h1, h2 {
    color: var(--text-heading) !important;
    background: none !important;
    -webkit-background-clip: unset !important;
    -webkit-text-fill-color: var(--text-heading) !important;
}

h3, h4, h5, h6 {
    color: var(--text-heading) !important;
}

p, .p-f-s {
    color: var(--text-secondary) !important;
}

span {
    color: var(--text-primary);
}

/* 3. SOLID BUTTONS (NO GRADIENTS) */
.btn-hover1 {
    border: 1.5px solid var(--brand-primary) !important;
    background-color: var(--brand-primary) !important;
    background-image: none !important;
    color: #FFFFFF !important;
    box-shadow: 0 4px 14px rgba(2, 132, 199, 0.4) !important;
    border-radius: 50px !important;
    transition: all 0.25s ease-in-out !important;
}

.btn-hover1::before {
    display: none !important;
}

.btn-hover1:hover {
    background-color: var(--brand-primary-hover) !important;
    border-color: var(--brand-primary-hover) !important;
    color: #FFFFFF !important;
    transform: translateY(-2px) !important;
}

#backToTopBtn {
    background-color: var(--brand-primary) !important;
    background-image: none !important;
    color: #FFFFFF !important;
}

/* 4. CARDS & SECTIONS */
.ab_card1, .ab_card2, .fin-card, .core-card, .core-card1, .card, .help-crd1, .contact-email, .offers, .sticker {
    background-color: var(--bg-card) !important;
    background-image: none !important;
    border: 1px solid var(--border-subtle) !important;
    border-radius: 16px !important;
    box-shadow: 0 8px 24px rgba(0, 0, 0, 0.4) !important;
}

.fin-card:hover, .core-card:hover, .core-card1:hover, .card:hover {
    border-color: var(--brand-accent) !important;
}

/* 5. FAQ ACCORDION VISIBILITY FIX */
.accordion-item {
    background-color: var(--bg-card) !important;
    border: 1px solid var(--border-subtle) !important;
    border-radius: 12px !important;
    margin-bottom: 14px !important;
    overflow: hidden !important;
}

.accordion-button {
    background-color: #1E293B !important;
    color: #FFFFFF !important;
    font-weight: 600 !important;
    box-shadow: none !important;
    border: none !important;
    padding: 18px 22px !important;
}

.accordion-button:not(.collapsed) {
    background-color: #0F172A !important;
    color: var(--brand-accent) !important;
    border-bottom: 1px solid var(--border-subtle) !important;
}

.accordion-button::after {
    filter: invert(1) grayscale(100%) brightness(200%) !important;
}

.accordion-body {
    background-color: #0F172A !important;
    color: var(--text-secondary) !important;
    padding: 20px 22px !important;
}

.accordion-body p {
    color: #E2E8F0 !important;
    font-size: 15px !important;
    line-height: 1.6 !important;
    margin-bottom: 0 !important;
}

/* 6. CONTACT DETAILS VISIBILITY FIX */
.help-crd1 {
    background-color: var(--bg-card) !important;
    color: #FFFFFF !important;
    padding: 30px !important;
}

.help-crd1 h4, .help-crd1 h5 {
    color: #FFFFFF !important;
    font-weight: 700 !important;
}

.help-crd1 p {
    color: #E2E8F0 !important;
}

.help-crd1 span, .help-crd1 div span {
    color: #FFFFFF !important;
    font-weight: 500 !important;
}

.help-crd1 i {
    color: var(--brand-accent) !important;
    font-size: 20px !important;
}

.help-crd1 a {
    color: var(--brand-accent) !important;
    text-decoration: none !important;
}

.help-crd1 a:hover {
    color: #FFFFFF !important;
}

/* 7. FORM INPUTS HIGH-CONTRAST */
input[type="text"], input[type="email"], input[type="number"], textarea, .footer-search input {
    background-color: #0F172A !important;
    border: 1px solid var(--border-subtle) !important;
    color: #FFFFFF !important;
    border-radius: 10px !important;
}

input::placeholder, textarea::placeholder {
    color: #94A3B8 !important;
}

input:focus, textarea:focus {
    border-color: var(--brand-accent) !important;
    box-shadow: 0 0 0 2px rgba(56, 189, 248, 0.25) !important;
    outline: none !important;
}

/* 8. FOOTER & NAVBAR */
.navbar ul li a {
    color: #FFFFFF !important;
}

.navbar ul li a:hover, .nav-item .active {
    color: var(--brand-accent) !important;
}

.sidenav, .right-sidbar {
    background-color: #0F172A !important;
}

footer {
    background-color: #070913 !important;
    border-top: 1px solid var(--border-subtle) !important;
}
