/* Groupe Rouat : surcharges du thème (chargé après style.css) */

:root {
   --primary: #1E7BC4;
   --primary-rgb: 30, 123, 196;
   --dark: #0A0B39;
   --dark-rgb: 10, 11, 57;
   --headings-color: #0A0B39;
   --blue: #1E7BC4;
   --accent: #3E9B48;
   --accent-rgb: 62, 155, 72;
}

/* Couleurs écrites en dur dans style.css */
.text-primary { color: #1E7BC4 !important; }
.bg-primary { background-color: #1E7BC4 !important; }
.text-dark { color: #0A0B39 !important; }
.btn-primary { background-color: #1E7BC4; border-color: #1E7BC4; color: #fff; }
.btn-primary:hover, .btn-primary:focus, .btn-primary:active { background-color: #0A0B39; border-color: #0A0B39; color: #fff; }
.experien-stat:before { background: linear-gradient(163deg, #1E7BC4, #0A0B39); }

/* Accent vert : surtitres */
.sub-title, .sub-title2 { color: var(--accent); }
.sub-title2:before, .sub-title2:after { background-color: var(--accent); }
.slider-sec2 .slide-item .slide-content .sub-title { color: #fff; }

/* Logos */
.header .navbar-brand img { height: 54px; width: auto; max-width: none; }
.offcanvas-nav .offcanvas-header img { height: 46px; width: auto; }
.footer-widget .f-logo img { height: 62px; width: auto; }
@media (max-width: 767.98px) {
   .header .navbar-brand img { height: 44px; max-width: none; }
}

/* Menu principal */
@media (min-width: 1200px) {
   .navbar .navbar-nav > li a.nav-link { padding-left: 11px; padding-right: 11px; }
   header .header-nav-wrapper.header-sticky.scroll-on .navbar .navbar-nav > li a.nav-link { padding-left: 11px; padding-right: 11px; }
   .header .nav-cta .btn { padding-left: 22px; padding-right: 22px; }
}
@media (min-width: 1400px) {
   .navbar .navbar-nav > li a.nav-link { padding-left: 15px; padding-right: 15px; }
}
.navbar .navbar-nav > li a.nav-link.nav-ext { color: var(--accent) !important; font-weight: 600; }
.navbar .navbar-nav > li a.nav-link.nav-ext i { margin-right: 6px; font-size: 14px; }
.navbar .navbar-nav > li a.nav-link.nav-ext:hover { color: var(--primary) !important; }
.navbar .navbar-nav > li a.nav-link.active { color: var(--primary); }
.header.header-2 .header-nav-wrapper .navbar .navbar-nav > li a.nav-link.active { color: #8fc1e8; }

/* Menu mobile sur fond sombre (logo blanc) */
@media (max-width: 1199.98px) {
   .header .offcanvas-nav { background-color: var(--dark); }
   .header .offcanvas-nav .navbar-nav > li a.nav-link { color: #fff; }
   .header .offcanvas-nav .navbar-nav > li a.nav-link.active { color: #8fc1e8; }
   .offcanvas-nav .mobile-cta { margin-top: 28px; }
}

/* Barre du haut (accueil) */
.header-top .header-infos ul li i { color: var(--accent); margin-right: 6px; }
.header-top .header-cta .top-link { color: #fff; font-weight: 600; font-size: 15px; }
.header-top .header-cta .top-link i { color: var(--accent); margin-right: 6px; }
.header-top .header-cta .top-link:hover { color: #8fc1e8; }
.header-top .header-infos .dropdown-menu li i { color: var(--accent); margin-right: 6px; }

/* Boîte de suivi (accueil) */
.rouat-track { padding: 80px 0 0; }
.rouat-track .tracking-form2 { padding: 50px; }
.rouat-track .tracking-form2 .form-inner { padding: 40px; }
.rouat-track .tracking-form2 .form-inner h2 { margin-bottom: 12px; }
.rouat-track .tracking-form2 .form-inner p.track-intro { color: rgba(255, 255, 255, .85); text-align: center; margin-bottom: 30px; }
.rouat-track .tracking-form2 .form-inner input { border: 0; height: 56px; }
.rouat-track .tracking-form2 .form-inner .btn { height: 56px; }
.rouat-track .form-result { color: #fff; }
@media (max-width: 767.98px) {
   .rouat-track { padding-top: 50px; }
   .rouat-track .tracking-form2, .rouat-track .tracking-form2 .form-inner { padding: 20px; }
}

/* Icônes Font Awesome à la place des pictogrammes du thème */
.service-card2 .serv-thumb .icon i { font-size: 38px; color: #fff; }
.choose-sec2 .single-choose span.icon i { font-size: 28px; color: #fff; }
.qf-card span.icon i { font-size: 40px; color: var(--primary); transition: color .4s ease-in-out; }
.qf-card:hover span.icon i, .qf-card:nth-child(2n) span.icon i { color: #fff; }
.contact-card span.icon i { font-size: 30px; color: var(--primary); }
.about-details .abs-info .abs-icon { font-size: 40px; color: var(--primary); }
.abs-info-wrap > div:nth-child(2) .abs-info .abs-icon,
.abs-info-wrap > div:nth-child(3) .abs-info .abs-icon { color: #fff; }
.about-details .abs-info h3 { margin-bottom: 20px; }
.about-sec2 .about-footer .af-item i { font-size: 34px; color: var(--primary); }
.about-sec2 .about-footer .af-info h3 a { color: inherit; }
.about-sec2 .about-footer .af-info h3 a:hover { color: var(--primary); }

/* Champ piège anti-robots, hors écran */
.rouat-hp { position: absolute !important; left: -10000px !important; top: auto !important; width: 1px !important; height: 1px !important; overflow: hidden !important; }

/* Résultat des formulaires */
.form-result { margin-top: 14px; font-weight: 500; font-size: 15px; min-height: 1px; }
.form-result:empty { margin-top: 0; }
.form-result.is-ok { color: var(--accent); }
.form-result.is-error { color: #c0392b; }
.form-result.is-wait { color: var(--body-color); }
.rouat-track .form-result.is-error { color: #ffd2cc; }
button[disabled] { opacity: .7; cursor: wait; }

/* Zones de texte des formulaires */
.faq-sec .contact-form .form-group textarea { background-color: var(--light); border-radius: 22px; border: 0; padding: 14px 25px; min-height: 110px; resize: vertical; }
.faq-sec .contact-form .form-group.has-textarea { min-height: 0; }
.quote-form-wrap .quote-request-form textarea { border-radius: 22px; padding: 16px 25px; min-height: 130px; resize: vertical; }
.quote-form-wrap .quote-request-form .group-field.group-wide { flex: 0 0 64%; }
@media (max-width: 767.98px) {
   .quote-form-wrap .quote-request-form .group-field.group-wide { flex: 0 0 100%; }
}

/* Contact */
.contact-card .contact-info ul li { margin-bottom: 6px; }
.contact-actions .btn { margin: 6px; }
.rouat-map iframe { display: block; width: 100%; height: 610px; }
@media (max-width: 991.98px) {
   .rouat-map iframe { height: 380px; }
}

/* Services : blocs de détail */
.service-detail { padding: 70px 0; scroll-margin-top: 110px; }
.service-detail:nth-child(even) { background-color: var(--shade); }
.service-detail .sd-icon { width: 90px; height: 90px; border-radius: 20px; background-color: var(--dark); color: #fff; display: flex; align-items: center; justify-content: center; font-size: 36px; box-shadow: 0 12px 30px rgba(var(--dark-rgb), .18); }
.service-detail h2 { font-size: 36px; margin-bottom: 18px; }
.service-detail img { border-radius: 24px; }
@media (max-width: 767.98px) {
   .service-detail { padding: 50px 0; }
   .service-detail h2 { font-size: 28px; }
}

/* FAQ : encadré d'aide */
.faq-help { background-color: var(--dark); border-radius: 24px; padding: 40px; color: rgba(255, 255, 255, .85); box-shadow: 0 15px 40px rgba(var(--dark-rgb), .2); }
.faq-help h3 { color: #fff; font-size: 28px; margin-bottom: 16px; }
.faq-help a:not(.btn) { color: #8fc1e8; }
.faq-help .btn { margin-top: 12px; }
@media (min-width: 992px) { .faq-help { margin-left: 50px; } }

/* Pages légales */
.legal-sec .legal-content { max-width: 860px; margin: 0 auto; }
.legal-sec .legal-content .maj { color: var(--mute); font-size: 15px; margin-bottom: 28px; }
.legal-sec .legal-content h2 { font-size: 26px; margin: 36px 0 14px; }
.legal-sec .legal-content p { margin-bottom: 14px; }
.legal-sec .legal-content ul { margin: 0 0 16px; padding-left: 22px; list-style: disc; }
.legal-sec .legal-content li { margin-bottom: 8px; }
.legal-sec .legal-card { background-color: var(--light); border-radius: 18px; padding: 26px 28px; box-shadow: 0 8px 26px rgba(0, 0, 0, .05); margin-bottom: 18px; }

/* Pied de page */
.footer-widget .footer-contact li { color: var(--mute-alt); display: flex; gap: 10px; margin-bottom: 12px; line-height: 1.5; }
.footer-widget .footer-contact li i { color: var(--accent); margin-top: 4px; width: 16px; flex: 0 0 16px; }
.footer-widget .footer-contact li a { opacity: 1; }
.footer-widget .footer-contact li a:before { display: none; }
.footer-widget.about-footer .slogan { color: #fff; font-weight: 600; letter-spacing: .04em; text-transform: uppercase; font-size: 14px; }
.footer .footer-bottom .footer-nav ul { flex-wrap: wrap; }
.footer-2 .copy-right a, .footer .copy-right a { color: #fff; }

/* Page 404 */
.error-sec .error-wrap .btn { margin: 6px; }

/* Le français ne met pas de majuscule à chaque mot */
.btn, .custom-btn, .link-btn, .navbar .navbar-nav > li a.nav-link,
section.promo-sec ol.breadcrumb .breadcrumb-item, .slider-sec2 .slide-item .slide-content h1 { text-transform: none; }
.slider-sec2 .slide-item .slide-content .btn { width: auto; min-width: 182px; padding-left: 24px; padding-right: 24px; }
section.promo-sec ol.breadcrumb .breadcrumb-item a { color: #8fc1e8; }
