/* Dark Mode Styles */
body.dark-mode {
    --bg-color: #17110E;
    --bg-light: #241914;
    --card-color: #30221B;
    --elevated-color: #3A2920;
    --text-color: #F5EDE4;
    --primary-color: #C98A52;
    --primary-dark: #D9A16A;
    --text-light: #B9AAA0;
    --secondary-color: #F5EDE4;
    --border-color: #4A382D;
    --accent-color: #C98A52;
    --shadow: 0 5px 15px rgba(0, 0, 0, 0.35);
    --shadow-hover: 0 10px 25px rgba(0, 0, 0, 0.5);
}

body.dark-mode #main-header {
    background-color: var(--bg-color);
}

body.dark-mode,
body.dark-mode #main-content {
    background-color: #17110E;
    color: #F5EDE4;
}

body.dark-mode .section-bg,
body.dark-mode .section-padding {
    background-color: #241914;
}

body.dark-mode .card,
body.dark-mode .s-3c288c35,
body.dark-mode .before-after-item,
body.dark-mode .pricing-card,
body.dark-mode .form-control {
    background-color: #30221B;
    color: #F5EDE4;
    border-color: #4A382D;
}

body.dark-mode p,
body.dark-mode li,
body.dark-mode label,
body.dark-mode .section-title p {
    color: #D5C6BB;
}

body.dark-mode h1,
body.dark-mode h2,
body.dark-mode h3,
body.dark-mode h4,
body.dark-mode h5,
body.dark-mode h6 {
    color:var(--primary-color);
}

body.dark-mode #desktop-nav a {
    color: var(--text-color);
}

body.dark-mode #desktop-nav a:hover,
body.dark-mode #desktop-nav a.active {
    color: #C98A52;
}

body.dark-mode .dropdown-menu {
    background-color: #30221B !important;
    border-color: #4A382D !important;
    box-shadow: 0 12px 28px rgba(0, 0, 0, 0.45);
}

body.dark-mode .dropdown-menu li + li,
body.dark-mode .mobile-dropdown-menu {
    border-color: #4A382D;
}

body.dark-mode .dropdown-menu a,
body.dark-mode .mobile-dropdown-menu a {
    color: #F5EDE4 !important;
}

body.dark-mode .dropdown-menu a:hover,
body.dark-mode .dropdown-menu a:focus,
body.dark-mode .mobile-dropdown-menu a:hover {
    background-color: #3A2920;
    color: #C98A52 !important;
}

body.dark-mode #main-content > section:first-of-type,
body.dark-mode .s-b9813d52,
body.dark-mode .s-51d574fc,
body.dark-mode .s-c2c5e3bc,
body.dark-mode .s-b4a1a302 {
    background-color: #2B1D17;
    color: #F5EDE4;
}

body.dark-mode #main-content > section:first-of-type h1,
body.dark-mode #main-content > section:first-of-type h2,
body.dark-mode #main-content > section:first-of-type p {
    color: #F5EDE4;
}

body.dark-mode img {
    opacity: 1;
}

body.dark-mode #main-footer {
    background-color: #17110E;
    color: #D5C6BB;
}

body.dark-mode .footer-widget h4 {
    color: #F5EDE4;
}

body.dark-mode .footer-widget p,
body.dark-mode .footer-links a,
body.dark-mode .footer-contact li,
body.dark-mode .footer-bottom {
    color: #B9AAA0;
}

body.dark-mode #dark-mode-toggle,
body.dark-mode #rtl-toggle,
body.dark-mode #hamburger-menu,
body.dark-mode #close-menu {
    color: var(--text-color);
}

body.dark-mode #dark-mode-toggle:hover,
body.dark-mode #rtl-toggle:hover {
    color: var(--primary-color);
}

body.dark-mode #mobile-menu {
    background-color: var(--bg-color);
}

body.dark-mode #mobile-menu a {
    color: var(--text-color);
    border-color: var(--border-color);
}

body.dark-mode .form-control {
    background-color: var(--bg-light);
    color: var(--text-color);
    border-color: var(--border-color);
}

body.dark-mode .form-control:focus {
    border-color: var(--primary-color);
}

body.dark-mode .s-e79ae1b7,
body.dark-mode .s-4a905439,
body.dark-mode .s-75f8f0ce,
body.dark-mode .s-3c288c35 {
    background-color: #30221B;
    border-color: #4A382D;
    color: #F5EDE4;
}

body.dark-mode .s-c30a1847,
body.dark-mode .s-641d075b {
    background-color: #241914;
    color: #F5EDE4;
    border-color: #4A382D;
}

body.dark-mode .s-b47472ee {
    color: #D5C6BB;
}

body.dark-mode [style*="background: white"],
body.dark-mode [style*="background-color: white"] {
    background: #30221B !important;
}

body.dark-mode .faq-section {
    background-color: #17110E;
}

body.dark-mode .section-heading h2,
body.dark-mode .faq-question {
    color: #F5EDE4;
}

body.dark-mode .section-heading p,
body.dark-mode .faq-answer p {
    color: #D5C6BB;
}

body.dark-mode .faq-item {
    border-color: #4A382D;
    background-color: #30221B;
    box-shadow: 0 5px 15px rgba(0, 0, 0, 0.25);
}

body.dark-mode .faq-item:hover,
body.dark-mode .faq-item.active {
    border-color: #C98A52;
    background-color: #3A2920;
}

body.dark-mode .faq-answer-inner {
    border-color: #4A382D;
}

body.dark-mode .faq-icon {
    color: #C98A52;
}

body.dark-mode #main-content .hero-banner h1,
body.dark-mode #main-content .hero-banner h2 {
    color: #FFFDF8;
}

body.dark-mode #main-content > section:first-of-type.hero-banner h1,
body.dark-mode #main-content > section:first-of-type.hero-banner h2 {
    color: #FFFDF8;
}

body.dark-mode #main-content .hero-banner p,
body.dark-mode #main-content .hero-banner .s-4412b45f {
    color: #E8DCD1;
}

body.dark-mode #main-content > section:first-of-type.hero-banner p {
    color: #E8DCD1;
}

/* Complete theme coverage for shared surfaces and page-specific components. */
body.dark-mode {
    --bg-primary: #17110e;
    --bg-secondary: #241914;
    --bg-card: #30221b;
    --bg-card-hover: #3a2920;
    --text-primary: #f5ede4;
    --text-secondary: #d5c6bb;
    --text-muted: #b9aaa0;
    --border-color: #4a382d;
    --accent-color: #c98a52;
    --primary-color: #c98a52;
    --primary-dark: #d9a16a;
    --secondary-color: #f5ede4;
    --bg-color: var(--bg-primary);
    --bg-light: var(--bg-secondary);
    --card-color: var(--bg-card);
    --elevated-color: var(--bg-card-hover);
    --text-color: var(--text-primary);
    --text-light: var(--text-muted);
    --shadow: 0 5px 15px rgba(0, 0, 0, 0.35);
    --shadow-hover: 0 10px 25px rgba(0, 0, 0, 0.5);
    color-scheme: dark;
}

body.dark-mode,
body.dark-mode #main-content,
body.dark-mode #main-header,
body.dark-mode #mobile-menu,
body.dark-mode #page-loader,
body.dark-mode .section-bg,
body.dark-mode .section-padding,
body.dark-mode .faq-section {
    background-color: var(--bg-primary);
    color: var(--text-primary);
}

body.dark-mode h1,
body.dark-mode h2,
body.dark-mode h3,
body.dark-mode h4,
body.dark-mode h5,
body.dark-mode h6,
body.dark-mode .section-heading h2,
body.dark-mode .faq-question,
body.dark-mode [class*="-card"] h3,
body.dark-mode .mini-stat strong {
    color: var(--text-primary);
}

body.dark-mode p,
body.dark-mode li,
body.dark-mode label,
body.dark-mode .section-title p,
body.dark-mode .section-heading p,
body.dark-mode [class*="-card"] p,
body.dark-mode .faq-answer p,
body.dark-mode .check-list li,
body.dark-mode .service-list li,
body.dark-mode .value-list li,
body.dark-mode .tip-list li {
    color: var(--text-secondary);
}

body.dark-mode a,
body.dark-mode #desktop-nav a,
body.dark-mode #mobile-menu a,
body.dark-mode .s-816ec9ac,
body.dark-mode .s-c918814d,
body.dark-mode .s-81c09b0f,
body.dark-mode .s-40d071dd {
    color: var(--text-primary);
}

body.dark-mode a:hover,
body.dark-mode #desktop-nav a:hover,
body.dark-mode #desktop-nav a.active,
body.dark-mode #mobile-menu a.active,
body.dark-mode .footer-links a:hover {
    color: var(--accent-color);
}

body.dark-mode .dropdown-menu,
body.dark-mode .mobile-dropdown-menu {
    background-color: var(--bg-card) !important;
    border-color: var(--border-color) !important;
    box-shadow: var(--shadow-hover);
}

body.dark-mode .dropdown-menu a,
body.dark-mode .mobile-dropdown-menu a {
    color: var(--text-primary) !important;
}

body.dark-mode .dropdown-menu a:hover,
body.dark-mode .dropdown-menu a:focus,
body.dark-mode .mobile-dropdown-menu a:hover {
    background-color: var(--bg-card-hover);
    color: var(--accent-color) !important;
}

body.dark-mode #dark-mode-toggle,
body.dark-mode #rtl-toggle,
body.dark-mode #hamburger-menu,
body.dark-mode #close-menu {
    color: var(--text-primary);
}

body.dark-mode #dark-mode-toggle:hover,
body.dark-mode #rtl-toggle:hover {
    color: var(--accent-color);
}

body.dark-mode .card,
body.dark-mode .value-card,
body.dark-mode [class*="-card"],
body.dark-mode .s-3c288c35,
body.dark-mode .s-6dd6be3b,
body.dark-mode .s-75f8f0ce,
body.dark-mode .s-43e99212,
body.dark-mode .s-1f4f0a98,
body.dark-mode .s-7ef140e9,
body.dark-mode .before-after-item,
body.dark-mode .pricing-card,
body.dark-mode .faq-item,
body.dark-mode .form-control,
body.dark-mode .s-c30a1847,
body.dark-mode .s-641d075b {
    background-color: var(--bg-card);
    color: var(--text-primary);
    border-color: var(--border-color);
    box-shadow: var(--shadow);
}

body.dark-mode [class*="-card"]:hover,
body.dark-mode .faq-item:hover,
body.dark-mode .faq-item.active {
    background-color: var(--bg-card-hover);
    border-color: var(--accent-color);
    box-shadow: var(--shadow-hover);
}

body.dark-mode .card-icon,
body.dark-mode [class*="-card"] .card-icon {
    /* background-color: rgba(201, 138, 82, 0.18); */
    color: var(--accent-color);
}

body.dark-mode .faq-answer-inner {
    border-color: var(--border-color);
}

body.dark-mode .faq-item.active::before {
    background: var(--accent-color);
}

body.dark-mode .faq-icon,
body.dark-mode .section-eyebrow,
body.dark-mode .check-list i,
body.dark-mode .service-list i,
body.dark-mode .value-list i,
body.dark-mode .tip-list i,
body.dark-mode .s-f00e44ae {
    color: var(--accent-color);
}

body.dark-mode input,
body.dark-mode textarea,
body.dark-mode select,
body.dark-mode .form-control,
body.dark-mode .s-75af807a {
    background-color: var(--bg-card);
    color: var(--text-primary);
    border-color: var(--border-color);
}

body.dark-mode input::placeholder,
body.dark-mode textarea::placeholder {
    color: var(--text-muted);
}

body.dark-mode .form-control:focus,
body.dark-mode input:focus,
body.dark-mode textarea:focus,
body.dark-mode select:focus {
    border-color: var(--accent-color);
    box-shadow: 0 0 0 3px rgba(201, 138, 82, 0.18);
}

body.dark-mode .btn-outline,
body.dark-mode .s-21870abf {
    background-color: var(--bg-card);
    color: var(--text-primary);
    border-color: var(--accent-color);
}

body.dark-mode .btn-outline:hover,
body.dark-mode .s-21870abf:hover {
    background-color: var(--accent-color);
    color: var(--bg-primary);
}

body.dark-mode .btn-primary,
body.dark-mode .s-7a9cfddb {
    background-color: var(--accent-color);
    color: var(--bg-primary);
}

body.dark-mode #main-footer {
    background-color: var(--bg-primary);
    color: var(--text-secondary);
}

body.dark-mode .footer-widget h4 {
    color: var(--text-primary);
}

body.dark-mode .footer-widget p,
body.dark-mode .footer-links a,
body.dark-mode .footer-contact li,
body.dark-mode .footer-bottom {
    color: var(--text-secondary);
}

/* Image-based sections keep their imagery, but their theme surfaces and text adapt. */
body.dark-mode .hero-banner,
body.dark-mode .hero-section,
body.dark-mode .premium-cta-band,
body.dark-mode .s-fe34199b,
body.dark-mode .s-f701564a,
body.dark-mode .s-b9813d52,
body.dark-mode .s-51d574fc,
body.dark-mode .s-c2c5e3bc,
body.dark-mode .s-b4a1a302 {
    background-color: var(--bg-secondary);
    color: var(--text-primary);
}

body.dark-mode .hero-banner h1,
body.dark-mode .hero-banner h2,
body.dark-mode .hero-banner p,
body.dark-mode .hero-section,
body.dark-mode .premium-cta-band h3,
body.dark-mode .premium-cta-band p,
body.dark-mode .s-fe34199b,
body.dark-mode .s-dcd3112e,
body.dark-mode .s-af3f1849,
body.dark-mode .s-83ddfdd0,
body.dark-mode .s-3dbff527 {
    color: var(--text-primary);
}

body.dark-mode .s-376c771d {
    background-color: var(--bg-card);
    color: var(--accent-color);
}

/* Explicit light utilities and inline colors that bypass the base variables. */
body.dark-mode .bg-white,
body.dark-mode [class~="text-white"],
body.dark-mode [style*="background: white"],
body.dark-mode [style*="background-color: white"],
body.dark-mode [style*="background:#fff"],
body.dark-mode [style*="background-color:#fff"] {
    background-color: var(--bg-card) !important;
}

body.dark-mode [style*="color: #1A1A1A"],
body.dark-mode [style*="color:#1A1A1A"],
body.dark-mode [style*="color: #555"],
body.dark-mode [style*="color: #2B1D17"],
body.dark-mode [style*="color:#2B1D17"] {
    color: var(--text-primary) !important;
}

body.dark-mode [style*="color: #ccc"],
body.dark-mode [style*="color:#ccc"] {
    color: var(--text-secondary) !important;
}

body.dark-mode [style*="border-color: #fff"],
body.dark-mode [style*="border-color:#fff"] {
    border-color: var(--border-color) !important;
}

body.dark-mode .s-d4d3f7cb {
    background-color: #193323;
    color: #b9e0c4;
}

