h1, h2, h3, h4, h5, h6 { color: #0a3348; text-transform: none; }

.navbar .nav__item .nav__item-link { padding-right: 0; margin-right: 15px; }
.navbar .navbar-brand img { height: 55px; }

.miniPopup { left: auto; right: 0; }
.miniPopup-emergency-trigger, .miniPopup-emergency-trigger.active { margin-top: 0; background-color: #377796; color: #ffffff; font-weight: 600; border-radius: 50px; padding: 0 20px; margin-left: 40px; }
.miniPopup-emergency-trigger:after, .miniPopup-emergency-trigger.active::after { content: none; }
.miniPopup { border-radius: 10px; }
.miniPopup-emergency .emergency__icon { font-size: 30px; }
.miniPopup-emergency .phone__number { font-size: 18px; }

.contact__list > li { position: relative; }

.login-popup-btn { margin-top: 5px; color: #295a7f; }
.login-popup-btn i { font-size: 26px; }

.form-control::placeholder { color: #cccccc; }
.alert { font-size: 11px; }
span.error { font-size: 11px; color: red; }

form .form__title {
    font-size: 19px;
    margin-bottom: 23px;
}

.phone__number { font-size: 18px; color: #295a7f !important; }

.breadcrumb-item + .breadcrumb-item::before { font-weight: 300; position: relative; top: 2px; }

.slider .slide__desc { font-size: 18px; }
.heading__desc { font-size: 18px; }

.work-process .cta { padding: 70px 0px; }
.cta__img { width: auto; height: 80px; }

.about-layout1 .about__Text, .about-layout4 .about__Text { padding: 0 40px 0 0; }
.about-layout1 .about__Text p:first-of-type:before, .about-layout4 .about__Text p:first-of-type:before { content: none; }
.about-layout1 .about__Text p:first-of-type, .about-layout4 .about__Text p:first-of-type { font-weight: normal; }

.timeline-item .timeline__body { font-size: 16px; }

.sidebar li.active { font-weight: 700; }

.bg-img2 { position: relative; z-index: auto; }
.bg-overlay-secondary-gradient:before { opacity: 0.80; background-image: linear-gradient(180deg, #0a3348 19%, #0a3348 71%); }
.bg-light-green { background-color: #377796 !important; }
/*.bg-overlay-secondary-gradient:before { opacity: 1; background-image: linear-gradient(180deg, #377796 19%, #377796 71%); }*/

.image-banner { position: relative; z-index: 2; }

.member:before { content: none; }
.member .member__img { border-bottom-left-radius: 0; border-bottom-right-radius: 0; }
.related__members-title { font-size: 24px; }

.feature-item .feature__img { position: static; bottom: auto; z-index: auto; opacity: 1; pointer-events: auto; transition: none; }
.feature-item .feature__img img { border-bottom-left-radius: 0; border-bottom-right-radius: 0; }
.feature-item .feature__content { padding-top: 27px; }

.service__service .service-item { background-color: transparent; box-shadow: none; }
.service__service .service-item:before { content: none; }
.service__service .service__img img { border-radius: 10px; }
.service__service .service__content { padding: 10px 0; }
.service__service .service__title { margin-bottom: 5px; font-size: 14px; }
.service__service .service__desc { margin-bottom: 0; line-height: 1.5; }
.fancybox-item .fancybox__image { margin-right: 30px; }
.fancybox-item .fancybox__image img { border-radius: 10px; width: 1000px; }

.post-item .post__img { border-bottom-left-radius: 0; border-bottom-right-radius: 0; }
.post-item .post__meta-cat { border-radius: 4px; }
.blog-single .post-item .post__img { border-radius: 10px; }

.widget { background-color: #f1f4f4; }
.widget:after { content: none; }
.widget-services ul li a { border-radius: 10px; }
.widget-categories ul li a { text-transform: none; }
.widget-help .phone__number { font-size: 19px; }
.widget-help .phone__number .icon-phone { background-color: #377796; }

.time__list { color: #295a7f; }

.contact-panel__info { background-color: #f0f6f6; }
.contact-layout1 .contact-panel__info:after, .contact-layout2 .contact-panel__info:after { content: none; }
.contact-layout1 .contact-panel__info .contact__list li a, .contact-layout2 .contact-panel__info .contact__list li a { font-size: 16px; }
.contact-layout1 .contact-panel__info .contact__img img {
    border-radius: 8px;
    border: 2px solid #cccccc;
}
.contact-panel__info .time__list { color: #ffffff; }
.contact-panel__info .panel__info-contact { position: relative; overflow: hidden; color: #ffffff; }
.contact-panel__info .panel__info-contact .contact-list li { display: flex; align-items: flex-start; gap: 8px; line-height: 22px; }
.contact-panel__info .panel__info-contact .contact-list li i { flex-shrink: 0; margin-top: 3px; font-size: 18px; }
.contact-panel__info .panel__info-contact .contact-list li span { flex: 1; }
.contact-panel__info .panel__info-contact .contact-list li a { color: #ffffff !important; }



.admin-nav .has-submenu {
    position: relative;
    display: flex !important;
    flex-direction: column !important; /* Force l'empilement vertical du lien et du sous-menu */
    align-items: stretch !important;
    width: 100%;
}

.admin-nav .submenu-trigger {
    display: flex !important;
    flex-direction: row !important; /* Garde l'icône, le texte et la flèche alignés horizontalement */
    align-items: center;
    width: 100%;
    cursor: pointer;
    text-decoration: none;
}

.admin-nav .submenu-trigger > span {
    flex: 1;
}

.admin-nav .submenu-arrow {
    margin-left: auto;
    font-size: 10px;
    transition: transform 0.3s ease;
}

/* Masqué par défaut (manipulable par jQuery) */
.admin-nav .submenu {
    display: none;
    width: 100% !important; /* S'assure que le sous-menu occupe toute la largeur disponible */
    box-sizing: border-box;
    margin: 5px 0 10px 0;
    padding: 0 0 0 30px;
}

/* Rotation de la flèche uniquement lorsque la classe .open est là */
.admin-nav .has-submenu.open > .submenu-trigger .submenu-arrow {
    transform: rotate(90deg);
}

.admin-nav .submenu li {
    margin: 0;
    padding: 0;
    display: block !important; /* Évite qu'un style parent passe les items en flex/inline */
}

.admin-nav .submenu li a {
    display: block;
    padding: 5px 0;
    font-size: 15px;
    text-decoration: none;
}

.admin-nav .submenu li a.active {
    font-weight: bold;
}





.modal-header { padding: 30px 40px; }
.modal-body { padding: 30px 40px; color: #848e9f; }

.form-control { border-radius: 10px; }

.btn { font-size: 14px; text-transform: none; }

.page-link { padding: 0; }
.page-item:first-child .page-link, .page-item:last-child .page-link { border-radius: 50%; }
.page-item.active .page-link { background-color: #377796; border-color: #377796; }
.pagination li a { font-size: 16px; font-weight: 600; }
.pagination li a i { font-weight: 500; }

.footer .footer-primary { background-color: #0a3348; padding-bottom: 20px; }
.footer .footer-widget-about img { height: 80px; }
/*.footer .footer-widget-nav li a { font-size: 15px; }*/
.footer .footer-widget-contact:before { content: none; }
.footer .footer-widget-contact:after { content: none; }
.footer .footer-widget-contact .contact-list li { display: flex; align-items: flex-start; gap: 8px; line-height: 22px; }
.footer .footer-widget-contact .contact-list li i { flex-shrink: 0; margin-top: 3px; font-size: 18px; }
.footer .footer-widget-contact .contact-list li span { flex: 1; }
.footer .phone__number { margin: 0 0 10px 0; }
.footer .footer-secondary { background-color: #377796; padding: 10px 0; }
.footer .footer-secondary:after { content: none; }
.footer .footer-secondary a, .footer .footer__copyright-links li a { color: #f9f9f9; }
.footer .footer-secondary a:hover, .footer .footer__copyright-links li a:hover { color: #0a3348; }
/*#scrollTopBtn { border: 2px solid #ffffff; }*/
#scrollTopBtn:hover { background-color: #295a7f; }

@media (min-width: 1200px) {

    .header-layout3 .navbar .navbar-brand, .header-layout3 .action__btn-search {
        border-right: none;
    }

    .blog-single .post-item .post__body { border-top-right-radius: 0; margin-right: 0; }

}

/*@media (min-width: 992px) and (max-width: 1199px) {

    .login-popup-btn { margin-right: 0px; }
    
}*/


@media (max-width: 991px) {

    .work-process .cta { padding: 50px 0px; }

  .login-popup-btn { position: relative; right: 60px; bottom: 0px; }

}

@media (min-width: 320px) and (max-width: 1200px) {

    .footer .footer-primary { padding-top: 50px; }

}    