/* Généré par _source/build.py (theme.py) : ne pas modifier ici */
html[data-theme="light"] input::-moz-placeholder:not(.theme-keep-dark):not(.theme-keep-dark *),
html[data-theme="light"] textarea::-moz-placeholder:not(.theme-keep-dark):not(.theme-keep-dark *) { color: #64748b; }
html[data-theme="light"] input:-ms-input-placeholder:not(.theme-keep-dark):not(.theme-keep-dark *),
html[data-theme="light"] textarea:-ms-input-placeholder:not(.theme-keep-dark):not(.theme-keep-dark *) { color: #64748b; }
html[data-theme="light"] .bg-\[\#0b1220\]:not(.theme-keep-dark):not(.theme-keep-dark *) { background-color: #f8fafc; }
html[data-theme="light"] .bg-\[\#0d1117\]:not(.theme-keep-dark):not(.theme-keep-dark *) { background-color: #f8fafc; }
html[data-theme="light"] .bg-\[\#0f1115\]:not(.theme-keep-dark):not(.theme-keep-dark *) { background-color: #f8fafc; }
html[data-theme="light"] .bg-black:not(.theme-keep-dark):not(.theme-keep-dark *) { background-color: #f8fafc; }
html[data-theme="light"] .bg-gray-800\/30:not(.theme-keep-dark):not(.theme-keep-dark *) { background-color: rgba(15, 23, 42, 0.036); }
html[data-theme="light"] .bg-gray-900:not(.theme-keep-dark):not(.theme-keep-dark *) { background-color: #ffffff; }
html[data-theme="light"] .text-blue-100:not(.theme-keep-dark):not(.theme-keep-dark *) { color: #0f172a; }
html[data-theme="light"] .text-gray-200:not(.theme-keep-dark):not(.theme-keep-dark *) { color: #0f172a; }
html[data-theme="light"] .text-gray-400:not(.theme-keep-dark):not(.theme-keep-dark *) { color: #64748b; }
html[data-theme="light"] .text-orange-400:not(.theme-keep-dark):not(.theme-keep-dark *) { color: #c2410c; }
html[data-theme="light"] .text-orange-500:not(.theme-keep-dark):not(.theme-keep-dark *) { color: #c2410c; }
html[data-theme="light"] .text-white:not(.theme-keep-dark):not(.theme-keep-dark *) { color: #0f172a; }
html[data-theme="light"] .hover\:text-orange-400:hover:not(.theme-keep-dark):not(.theme-keep-dark *) { color: #c2410c; }
html[data-theme="light"] .hover\:text-white:hover:not(.theme-keep-dark):not(.theme-keep-dark *) { color: #0f172a; }
html[data-theme="light"] body { background-color: #f8fafc; color: #0f172a; }
html[data-theme="light"] .nav-link:hover:not(.theme-keep-dark):not(.theme-keep-dark *) { color: #c2410c; }
html[data-theme="light"] .mobile-nav-toggle:not(.theme-keep-dark):not(.theme-keep-dark *) { border: 1px solid rgba(15, 23, 42, 0.19); background: rgba(255, 255, 255, 0.92); }
html[data-theme="light"] .mobile-nav-panel:not(.theme-keep-dark):not(.theme-keep-dark *) { background: rgba(248, 250, 252, 0.96); border-top: 1px solid rgba(15, 23, 42, 0.12); }
html[data-theme="light"] .mobile-nav-panel a:not(.theme-keep-dark):not(.theme-keep-dark *) { color: #0f172a; }
html[data-theme="light"] .bento-item:not(.theme-keep-dark):not(.theme-keep-dark *) { background-color: #ffffff; border: 1px solid #e2e8f0; }
html[data-theme="light"] .bento-item:hover:not(.theme-keep-dark):not(.theme-keep-dark *) { background-color: #ffffff; box-shadow: 0 15px 30px rgba(15, 23, 42, 0.12); }
html[data-theme="light"] .bg-circuit:not(.theme-keep-dark):not(.theme-keep-dark *) { background-color: #f8fafc; }
html[data-theme="light"] { --dark: #f8fafc; --glass: #f1f5f9; }
html[data-theme="light"] body { background-color: #f8fafc; color: #0f172a; }
html[data-theme="light"] #header:not(.theme-keep-dark):not(.theme-keep-dark *) { background: rgba(248, 250, 252, 0.92) !important; border-bottom: 1px solid rgba(15, 23, 42, 0.09); }
html[data-theme="light"] .glass-card:not(.theme-keep-dark):not(.theme-keep-dark *) { background: #f1f5f9; border: 1px solid rgba(15, 23, 42, 0.09); }
html[data-theme="light"] .about-img-container:not(.theme-keep-dark):not(.theme-keep-dark *) { box-shadow: 0 25px 50px -12px rgba(15, 23, 42, 0.15); }
html[data-theme="light"] .about-img-container:not(.theme-keep-dark):not(.theme-keep-dark *)::after { background: linear-gradient(to top, #f8fafc, transparent); }
html[data-theme="light"] .check-icon:not(.theme-keep-dark):not(.theme-keep-dark *) { color: #c2410c; }
html[data-theme="light"] #footer:not(.theme-keep-dark):not(.theme-keep-dark *) { background: #f8fafc; border-top: 1px solid rgba(15, 23, 42, 0.09); }
html[data-theme="light"] #footer .footer-social a:hover:not(.theme-keep-dark):not(.theme-keep-dark *) { box-shadow: 0 18px 30px rgba(15, 23, 42, 0.075); }
html[data-theme="light"] #footer .footer-link:not(.theme-keep-dark):not(.theme-keep-dark *) { color: #334155; }
html[data-theme="light"] #footer .footer-link:hover:not(.theme-keep-dark):not(.theme-keep-dark *) { color: #0f172a; }
html[data-theme="light"] #footer .footer-bottom:not(.theme-keep-dark):not(.theme-keep-dark *) { border-top: 1px solid rgba(15, 23, 42, 0.12); }
html[data-theme="light"] .dropdown-menu:not(.theme-keep-dark):not(.theme-keep-dark *) { box-shadow: 0 25px 50px rgba(15, 23, 42, 0.06); background: #ffffff; border: 1px solid #e2e8f0; }
html[data-theme="light"] .dropdown-menu a:not(.theme-keep-dark):not(.theme-keep-dark *) { color: #0f172a; }
html[data-theme="light"] .nav-link:not(.theme-keep-dark):not(.theme-keep-dark *) { color: #0f172a; }
html[data-theme="light"] .nav-dropdown .dropdown-toggle.active:not(.theme-keep-dark):not(.theme-keep-dark *) { color: #c2410c; }
html[data-theme="light"] .header-animated:not(.theme-keep-dark):not(.theme-keep-dark *) { box-shadow: 0 8px 25px rgba(15, 23, 42, 0.135); border-bottom: 1px solid rgba(15, 23, 42, 0.07); }
html[data-theme="light"] .header-animated.scrolled:not(.theme-keep-dark):not(.theme-keep-dark *) { box-shadow: 0 18px 50px rgba(15, 23, 42, 0.18); }
html[data-theme="light"] .nav-link.active:not(.theme-keep-dark):not(.theme-keep-dark *),
html[data-theme="light"] .nav-link:hover:not(.theme-keep-dark):not(.theme-keep-dark *) { color: #c2410c; }
html[data-theme="light"] .wa-float:not(.theme-keep-dark):not(.theme-keep-dark *) { box-shadow: 0 15px 30px rgba(15, 23, 42, 0.075); }
html[data-theme="light"] .news-item .news-content-panel:not(.theme-keep-dark):not(.theme-keep-dark *) { background: rgba(255, 255, 255, 0.92); border: 1px solid rgba(15, 23, 42, 0.1); }
html[data-theme="light"] .news-item .news-content-panel p:not(.theme-keep-dark):not(.theme-keep-dark *) { color: #334155; }
html[data-theme="light"] .news-item .news-badge:not(.theme-keep-dark):not(.theme-keep-dark *) { color: #c2410c; }
html[data-theme="light"] .news-item:nth-child(even) .news-content-panel:not(.theme-keep-dark):not(.theme-keep-dark *) { background: rgba(248, 250, 252, 0.96); }
html[data-theme="light"] .news-item .news-meta:not(.theme-keep-dark):not(.theme-keep-dark *) { color: #64748b; }
html[data-theme="light"] .registration-section:not(.theme-keep-dark):not(.theme-keep-dark *) { background: #f1f5f9; }
html[data-theme="light"] .registration-section .card-custom:not(.theme-keep-dark):not(.theme-keep-dark *) { border: 1px solid rgba(15, 23, 42, 0.12); }
html[data-theme="light"] .registration-section .form-control:not(.theme-keep-dark):not(.theme-keep-dark *),
html[data-theme="light"] .registration-section select:not(.theme-keep-dark):not(.theme-keep-dark *),
html[data-theme="light"] .registration-section textarea:not(.theme-keep-dark):not(.theme-keep-dark *) { background: #f1f5f9; border-color: rgba(15, 23, 42, 0.14); color: #0f172a; }
html[data-theme="light"] .registration-section .training-checklist li:not(.theme-keep-dark):not(.theme-keep-dark *)::before { color: #c2410c; }
html[data-theme="light"] .modal-card:not(.theme-keep-dark):not(.theme-keep-dark *) { background: #ffffff; box-shadow: 0 40px 90px rgba(15, 23, 42, 0.195); color: #0f172a; }
html[data-theme="light"] .modal-card label:not(.theme-keep-dark):not(.theme-keep-dark *) { color: #64748b; }
html[data-theme="light"] .modal-card input:not(.theme-keep-dark):not(.theme-keep-dark *),
html[data-theme="light"] .modal-card textarea:not(.theme-keep-dark):not(.theme-keep-dark *),
html[data-theme="light"] .modal-card select:not(.theme-keep-dark):not(.theme-keep-dark *) { background: #f1f5f9; border: 1px solid rgba(15, 23, 42, 0.12); color: #0f172a; }
html[data-theme="light"] .modal-card .close-modal:not(.theme-keep-dark):not(.theme-keep-dark *) { color: #0f172a; }
html[data-theme="light"] .values-section:not(.theme-keep-dark):not(.theme-keep-dark *) { background: rgba(15, 23, 42, 0.024); }
html[data-theme="light"] .site-header:not(.theme-keep-dark):not(.theme-keep-dark *) { background: #f8fafc; background: rgba(248, 250, 252, 0.92); border-bottom: 1px solid rgba(15, 23, 42, 0.1); }
html[data-theme="light"] .site-header.is-scrolled:not(.theme-keep-dark):not(.theme-keep-dark *) { background: rgba(248, 250, 252, 0.97); box-shadow: 0 12px 35px rgba(15, 23, 42, 0.165); }
html[data-theme="light"] .site-nav-link:not(.theme-keep-dark):not(.theme-keep-dark *) { color: #0f172a; }
html[data-theme="light"] .site-nav-link:hover:not(.theme-keep-dark):not(.theme-keep-dark *),
html[data-theme="light"] .site-nav-link:focus:not(.theme-keep-dark):not(.theme-keep-dark *),
html[data-theme="light"] .site-dropdown:hover > .site-nav-link:not(.theme-keep-dark):not(.theme-keep-dark *),
html[data-theme="light"] .site-nav-link.is-active:not(.theme-keep-dark):not(.theme-keep-dark *) { color: #c2410c; }
html[data-theme="light"] .site-dropdown__menu:not(.theme-keep-dark):not(.theme-keep-dark *)::before { background: #ffffff; border: 1px solid #e2e8f0; box-shadow: 0 25px 50px rgba(15, 23, 42, 0.135); }
html[data-theme="light"] .site-dropdown__menu a:not(.theme-keep-dark):not(.theme-keep-dark *) { color: #0f172a; }
html[data-theme="light"] .site-dropdown__menu a:hover:not(.theme-keep-dark):not(.theme-keep-dark *),
html[data-theme="light"] .site-dropdown__menu a:focus:not(.theme-keep-dark):not(.theme-keep-dark *) { background: #f1f5f9; color: #0f172a; }
html[data-theme="light"] .header-tool:not(.theme-keep-dark):not(.theme-keep-dark *) { border: 1px solid rgba(15, 23, 42, 0.2); background: rgba(255, 255, 255, 0.92); color: #0f172a; }
html[data-theme="light"] .header-tool:hover:not(.theme-keep-dark):not(.theme-keep-dark *),
html[data-theme="light"] .header-tool:focus:not(.theme-keep-dark):not(.theme-keep-dark *) { color: #c2410c; }
html[data-theme="light"] .preloader:not(.theme-keep-dark):not(.theme-keep-dark *) { background: #f8fafc; background: radial-gradient(circle at 50% 42%, #132033 0%, #f8fafc 45%, #f8fafc 100%); }
html[data-theme="light"] .preloader__ring--3:not(.theme-keep-dark):not(.theme-keep-dark *) { border-top-color: rgba(15, 23, 42, 0.2); }
html[data-theme="light"] .preloader__word span:nth-child(5):not(.theme-keep-dark):not(.theme-keep-dark *) { color: #c2410c; }
html[data-theme="light"] .preloader__text:not(.theme-keep-dark):not(.theme-keep-dark *) { color: #64748b; }
html[data-theme="light"] .preloader__bar:not(.theme-keep-dark):not(.theme-keep-dark *) { background: #f1f5f9; }
html[data-theme="light"][data-theme="light"] .lang-flag { box-shadow: 0 0 0 1px rgba(15, 23, 42, 0.06); }

/* =====================================================================
   THÈME CLAIR : ajustements manuels
   (le reste est généré automatiquement par _source/theme.py)
   ===================================================================== */
html[data-theme="light"] { color-scheme: light; }
html[data-theme="dark"] { color-scheme: dark; }

/* Zones volontairement sombres : bannières sur photo, carrousel, pied de page */
html[data-theme="light"] .theme-keep-dark { color: #e2e8f0; }

/* Texte blanc conservé sur les boutons et pastilles de couleur */
html[data-theme="light"] .bg-orange-500,
html[data-theme="light"] .bg-orange-600,
html[data-theme="light"] .bg-blue-500,
html[data-theme="light"] .bg-blue-600,
html[data-theme="light"] .bg-blue-700,
html[data-theme="light"] .btn-discover,
html[data-theme="light"] .site-cta,
html[data-theme="light"] .btn-primary,
html[data-theme="light"] .news-btn,
html[data-theme="light"] .news-filter.is-active,
html[data-theme="light"] .news-featured__badge { color: #fff !important; }

/* En-tête clair */
html[data-theme="light"] .site-header { background: rgba(255, 255, 255, 0.92); border-bottom-color: rgba(15, 23, 42, 0.08); }
html[data-theme="light"] .site-header.is-scrolled { background: rgba(255, 255, 255, 0.98); box-shadow: 0 10px 30px rgba(15, 23, 42, 0.08); }
html[data-theme="light"] .site-nav-link { color: #1e293b; }
html[data-theme="light"] .site-nav-link:hover,
html[data-theme="light"] .site-nav-link.is-active,
html[data-theme="light"] .site-dropdown:hover > .site-nav-link { color: #ea580c; }
html[data-theme="light"] .site-dropdown__menu::before { background: #fff; border-color: #e2e8f0; box-shadow: 0 25px 50px rgba(15, 23, 42, 0.12); }
html[data-theme="light"] .site-dropdown__menu a { color: #1e293b; }
html[data-theme="light"] .site-dropdown__menu a:hover { background: #f1f5f9; color: #0f172a; }
html[data-theme="light"] .mobile-nav-toggle { background: #fff; border-color: #cbd5e1; }
html[data-theme="light"] .mobile-nav-toggle span { background: #0f172a; }
html[data-theme="light"] .mobile-nav-panel { background: rgba(255, 255, 255, 0.98); border-top-color: #e2e8f0; }
html[data-theme="light"] .mobile-nav-panel a { color: #1e293b; }
html[data-theme="light"] .header-tool { color: #1e293b; border-color: #cbd5e1; background: #fff; }
html[data-theme="light"] .header-tool:hover { border-color: #f97316; color: #ea580c; }

/* Scènes animées : un peu plus marquées sur fond clair */
html[data-theme="light"] .bg-scene::before { opacity: 0.3; }
html[data-theme="light"] .bg-tile--circuit::after,
html[data-theme="light"] .bg-tile--binary::after { opacity: 0.1; }
html[data-theme="light"] .bg-circuit::before,
html[data-theme="light"] .bg-circuit::after { filter: invert(1); opacity: 0.6; }

/* Cartes : légère ombre pour les détacher du fond clair */
html[data-theme="light"] .news-card,
html[data-theme="light"] .news-featured,
html[data-theme="light"] .partner-card,
html[data-theme="light"] .team-card,
html[data-theme="light"] .card-custom,
html[data-theme="light"] .testimonial-card,
html[data-theme="light"] .bento-item { box-shadow: 0 8px 24px rgba(15, 23, 42, 0.06); }

/* Utilitaires Bootstrap (définis par variables CSS, non convertis automatiquement) */
html[data-theme="light"] .bg-dark:not(.theme-keep-dark):not(.theme-keep-dark *),
html[data-theme="light"] .bg-black:not(.theme-keep-dark):not(.theme-keep-dark *) { background-color: #f8fafc !important; }
html[data-theme="light"] .text-white:not(.theme-keep-dark):not(.theme-keep-dark *):not(.bg-orange-500):not(.bg-orange-600):not(.bg-blue-500):not(.bg-blue-600):not(.bg-blue-700):not(.btn),
html[data-theme="light"] .text-light:not(.theme-keep-dark):not(.theme-keep-dark *) { color: #0f172a !important; }
html[data-theme="light"] .text-white-50:not(.theme-keep-dark):not(.theme-keep-dark *) { color: #475569 !important; }
html[data-theme="light"] .nav-tabs .nav-link:not(.active) { color: #334155; }
html[data-theme="light"] .form-control,
html[data-theme="light"] .form-select { background-color: #fff; color: #0f172a; border-color: #cbd5e1; }

html[data-theme="light"] .news-chip { color: #c2410c; }

/* Pastilles des services et liens des services phares */
html[data-theme="light"] .service-badges span { color: #c2410c; background: rgba(249, 115, 22, 0.1); }
html[data-theme="light"] .flagship-card__more { color: #1d4ed8; }
html[data-theme="light"] .flagship-card__text { color: #475569; }

/* =====================================================================
   PALETTE CLAIRE HARMONISÉE
   fond #f8fafc · cartes #ffffff · éléments internes #f1f5f9
   titres #0f172a · texte #334155 · bleu #1d4ed8 · orange #c2410c
   ===================================================================== */
html[data-theme="light"] body { background: #f8fafc; color: #334155; }
html[data-theme="light"] .text-primary:not(.theme-keep-dark *) { color: #1d4ed8 !important; }
html[data-theme="light"] .hero-title { background: linear-gradient(45deg, #1d4ed8, #ea580c); -webkit-background-clip: text; background-clip: text; }

/* Cartes : blanc, bordure et ombre identiques partout */
html[data-theme="light"] .flagship-card,
html[data-theme="light"] .news-card,
html[data-theme="light"] .news-featured,
html[data-theme="light"] .partner-card,
html[data-theme="light"] .team-card,
html[data-theme="light"] .card-custom,
html[data-theme="light"] .testimonial-card,
html[data-theme="light"] .bento-item,
html[data-theme="light"] .glass-card,
html[data-theme="light"] .premium-card,
html[data-theme="light"] .eng-interface,
html[data-theme="light"] .form-card,
html[data-theme="light"] .registration-panel,
html[data-theme="light"] .partner-pop {
    background: #ffffff !important;
    border: 1px solid #e2e8f0 !important;
    box-shadow: 0 10px 30px rgba(15, 23, 42, 0.06);
}
html[data-theme="light"] .flagship-card:hover,
html[data-theme="light"] .news-card:hover,
html[data-theme="light"] .partner-card:hover,
html[data-theme="light"] .card-custom:hover,
html[data-theme="light"] .bento-item:hover { border-color: #ea580c !important; box-shadow: 0 18px 40px rgba(15, 23, 42, 0.1); }

/* Éléments internes : gris très clair, accent orange conservé */
html[data-theme="light"] .feature-item,
html[data-theme="light"] .scope-list li,
html[data-theme="light"] .nav-tabs .nav-link:not(.active) { background: #f1f5f9 !important; }
html[data-theme="light"] .nav-tabs .nav-link.active { background: #1d4ed8 !important; color: #fff !important; }
html[data-theme="light"] .feature-item h5 { color: #0f172a; }
html[data-theme="light"] .feature-item p { color: #475569; }
html[data-theme="light"] .feature-item i { color: #1d4ed8; }

/* Titres et chiffres */
html[data-theme="light"] h1:not(.theme-keep-dark *),
html[data-theme="light"] h2:not(.theme-keep-dark *),
html[data-theme="light"] h3:not(.theme-keep-dark *),
html[data-theme="light"] h4:not(.theme-keep-dark *) { color: #0f172a; }
html[data-theme="light"] .text-orange-500:not(.theme-keep-dark *),
html[data-theme="light"] .text-orange-400:not(.theme-keep-dark *) { color: #c2410c !important; }
html[data-theme="light"] .text-blue-500:not(.theme-keep-dark *),
html[data-theme="light"] .text-blue-400:not(.theme-keep-dark *) { color: #1d4ed8 !important; }
