/* Header mobile : icône menu toujours blanche sur fond sombre */
html.theme-light #mobile-menu-btn,
html.theme-light #mobile-menu-btn i,
html.theme-light #close-mobile-menu,
html.theme-light #close-mobile-menu i {
    color: #ffffff !important;
}

html.theme-light #mobile-menu-btn:hover,
html.theme-light #mobile-menu-btn:hover i {
    color: #e87835 !important;
}

html.theme-light #navbar button.text-white,
html.theme-light #navbar button.text-white i,
html.theme-light #navbar .btn-modern,
html.theme-light #navbar .btn-modern i,
html.theme-light #navbar [class*="bg-gradient-to-r"].text-white,
html.theme-light #navbar [class*="bg-gradient-to-r"].text-white i {
    color: #ffffff !important;
}

/* Corrections contraste theme-light — bandes sombres et heros */

.home-band-light {
    background: linear-gradient(180deg, #ffffff 0%, #fdf8f4 42%, #fde8d8 100%);
    color: #1d1d1b;
}

.home-band-dark {
    background: linear-gradient(180deg, #1d1d1b 0%, #141816 55%, #0f1210 100%);
    color: #f8fafc;
}

html.theme-light .home-band-dark:not(#contact-form) {
    background: linear-gradient(180deg, #1d1d1b 0%, #141816 55%, #0f1210 100%) !important;
    color: #f8fafc !important;
}

html.theme-light .home-band-dark:not(#contact-form) .text-white,
html.theme-light .home-band-dark:not(#contact-form) h1.text-white,
html.theme-light .home-band-dark:not(#contact-form) h2.text-white,
html.theme-light .home-band-dark:not(#contact-form) h3.text-white,
html.theme-light .home-band-dark:not(#contact-form) .text-gray-100 {
    color: #ffffff !important;
}

html.theme-light .home-band-dark:not(#contact-form) .text-gray-200 {
    color: #e5e7eb !important;
}

html.theme-light .home-band-dark:not(#contact-form) .text-gray-300 {
    color: #d1d5db !important;
}

html.theme-light .home-band-dark:not(#contact-form) .text-gray-400 {
    color: #9ca3af !important;
}

html.theme-light .home-band-dark:not(#contact-form) .from-primary {
    --tw-gradient-from: #1d1d1b var(--tw-gradient-from-position) !important;
    --tw-gradient-to: rgb(29 29 27 / 0) var(--tw-gradient-to-position) !important;
    --tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to) !important;
}

html.theme-light .home-band-dark:not(#contact-form) .to-gray-800 {
    --tw-gradient-to: #1f2937 var(--tw-gradient-to-position) !important;
}

html.theme-light .home-band-dark:not(#contact-form) .via-gray-900 {
    --tw-gradient-stops: var(--tw-gradient-from), #111827 var(--tw-gradient-via-position), var(--tw-gradient-to) !important;
}

html.theme-light .home-band-dark .bg-white.rounded-2xl .text-primary,
html.theme-light .home-band-dark .bg-white.rounded-2xl h3.text-primary,
html.theme-light .home-band-dark .bg-white.rounded-2xl .text-gray-600,
html.theme-light .home-band-dark .bg-white.p-8 .text-primary,
html.theme-light .home-band-dark .bg-white.p-8 .text-gray-600 {
    color: #1d1d1b !important;
}

html.theme-light .home-band-dark .bg-white.rounded-2xl .text-gray-600,
html.theme-light .home-band-dark .bg-white.p-8 .text-gray-600 {
    color: #475569 !important;
}

html.theme-light .home-band-dark:not(#contact-form) .bg-white.bg-opacity-10 .text-white,
html.theme-light .home-band-dark:not(#contact-form) .bg-white.bg-opacity-10 h3,
html.theme-light .home-band-dark:not(#contact-form) [class*="bg-opacity-10"] .text-white,
html.theme-light .home-band-dark:not(#contact-form) [class*="bg-opacity-10"] h3 {
    color: #ffffff !important;
}

html.theme-light .home-band-dark:not(#contact-form) .bg-white.bg-opacity-10 .text-gray-300,
html.theme-light .home-band-dark:not(#contact-form) [class*="bg-opacity-10"] .text-gray-300,
html.theme-light .home-band-dark:not(#contact-form) [class*="bg-opacity-10"] p {
    color: #d1d5db !important;
}

html.theme-light section:has(.gradient-overlay) .text-white,
html.theme-light section:has(.hero-bg) .text-white,
html.theme-light section.h-screen .text-white,
html.theme-light section:has(.gradient-overlay) .text-gray-100,
html.theme-light section:has(.hero-bg) .text-gray-100,
html.theme-light section.h-screen .text-gray-100,
html.theme-light section:has(.gradient-overlay) .text-gray-200,
html.theme-light section:has(.hero-bg) .text-gray-200,
html.theme-light section.h-screen .text-gray-200 {
    color: #ffffff !important;
}

html.theme-light section:has(.gradient-overlay) .text-gray-300,
html.theme-light section:has(.hero-bg) .text-gray-300,
html.theme-light section.h-screen .text-gray-300 {
    color: #e5e7eb !important;
}

html.theme-light section.min-h-\[60vh\] .text-white,
html.theme-light section.min-h-\[70vh\] .text-white,
html.theme-light section.min-h-\[60vh\] .text-gray-100,
html.theme-light section.min-h-\[70vh\] .text-gray-100 {
    color: #ffffff !important;
}

html.theme-light section.min-h-\[60vh\] .from-primary\/80,
html.theme-light section.min-h-\[70vh\] .from-primary\/80 {
    --tw-gradient-from: rgb(29 29 27 / 0.82) var(--tw-gradient-from-position) !important;
    --tw-gradient-to: rgb(29 29 27 / 0) var(--tw-gradient-to-position) !important;
    --tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to) !important;
}
